Data is simulated for the space-time locations in
object
using the parameters in x
.
# S3 method for STmodel
simulate (object, nsim = 1,
seed = NULL, x, nugget.unobs = 0, ...)
A STmodel
object to perform
unconditional simulation from.
Number of replicates to simulate.
if !=NULL used in a call to
set.seed
, allowing for
replicatable simulation studies.
Parameters to use when simulating the data; both
regression and covariance parameters must be given, see
loglikeSTgetPars
.
Value of nugget at unonserved locations, either a scalar or a vector with one element per unobserved site.
Additional parameters for
set.seed
A list containing:
Parameters used in the
simulation, i.e. x
.
The simulated beta fields in a (number of locations) - by - (number of temporal trends) - by - (number of replicates) array.
The simulated spatio-temporal fields in a (number of timepoints) - by - (number of locations) - by - (number of replicates) array. Row and column names indicate the time and locations for each point.
A list with one element per replicate,
containing the simulated observations extracted at
space-time locations matching those in object$obs
.
To replace the observations with the i:th simulated
values do: object$obs <- res$obs[[i]]
.
Other STmodel methods: c.STmodel
,
createSTmodel
, estimate
,
estimate.STmodel
, estimateCV
,
estimateCV.STmodel
, MCMC
,
MCMC.STmodel
, plot.STdata
,
plot.STmodel
,
predict.STmodel
, predictCV
,
predictCV.STmodel
,
print.STmodel
,
print.summary.STmodel
,
qqnorm.predCVSTmodel
,
qqnorm.STdata
,
qqnorm.STmodel
,
scatterPlot.predCVSTmodel
,
scatterPlot.STdata
,
scatterPlot.STmodel
,
summary.STmodel
# NOT RUN {
##load the data
data(mesa.model)
data(est.mesa.model)
##Get estimated parameters
x <- coef(est.mesa.model)$par
##Simulate 5 replicates from these parameters
sim.data <- simulate(mesa.model, nsim=5, x=x)
##compute average beta fields
beta <- calc.mu.B(mesa.model$LUR, loglikeSTgetPars(x, mesa.model)$alpha)
##plot the simulated observations as a function of time
par(mfrow=c(2,2), mar=c(4,4,.5,.5))
plot(sim.data$obs[[1]]$date, sim.data$obs[[1]]$obs,
type="n", ylab="obs", xlab="Date")
for(i in 1:5){
points(sim.data$obs[[i]]$date, sim.data$obs[[i]]$obs, col=i)
}
##and the latent beta-fields
for(i in 1:3){
plot(sim.data$B[,i,1], ylim=range(sim.data$B[,i,]), type="n",
xlab="loc", ylab=paste("beta",colnames(sim.data$B)[i]))
for(j in 1:5){
points(sim.data$B[,i,j], col=j)
}
lines( beta[,i], col="grey")
}
# }
Run the code above in your browser using DataLab