Learn R Programming

MuFiMeshGP (version 0.0.1)

predict.MuFiMeshGP: predict.MuFiMeshGP

Description

The function computes the posterior mean and standard deviation of the MuFiMeshGP model.

Usage

# S3 method for MuFiMeshGP
predict(object, x, t, ...)

Value

  • mean: vector of predictive posterior mean.

  • sd: vector of predictive posterior standard deviation.

Arguments

object

an object of class MuFiMeshGP.

x

matrix of new input locations to predict.

t

vector or new fidelity levels to use for predictions.

...

no other argument.

Details

Prediction of the MuFiMeshGP emulator for any fidelity level.

From the object fitted by MuFiMeshGP or update.MuFiMeshGP the posterior mean and standard deviation are calculated for any input location and fidelity level. For details, see Boutelet and Sung (2025, <arXiv:2503.23158>).

See Also

MuFiMeshGP for the model

Examples

Run this code
# Example code
f <- function(x, t){
  x <- c(x)
  return(exp(-1.4*x)*cos(3.5*pi*x)+sin(40*x)/10*t^2)
}

set.seed(1)
X <- matrix(runif(15,0,1), ncol = 1)
tt <- runif(15,0.5,2)

Y <- f(c(X), tt)

fit.mufimeshgp <- MuFiMeshGP(X, tt, Y)

xx <- matrix(seq(0,1,0.01), ncol = 1)
ftrue <- f(xx, 0)

# predict
pred.mufimeshgp <- predict(fit.mufimeshgp, xx, rep(0,101))

mu <- pred.mufimeshgp$mean
s <- pred.mufimeshgp$sd
lower <- mu + qnorm(0.025)*s
upper <- mu + qnorm(0.975)*s

# plot

oldpar <- par(mfrow = c(1,1))
plot(xx, ftrue, "l", ylim = c(-1,1.3), ylab = "y", xlab = "x")
lines(c(xx), mu, col = "blue")
lines(c(xx), lower, col = "blue", lty = 2)
lines(c(xx), upper, col = "blue", lty = 2)
points(c(X), Y, col = "red")
par(oldpar)

### RMSE ###
print(sqrt(mean((ftrue - mu))^2))

Run the code above in your browser using DataLab