inla.spde.make.index.RdGenerates a list of named index vectors for an SPDE model.
inla.spde.make.index(name, n.spde, n.group = 1, n.repl = 1, ...)A list of named index vectors.
Indices into the vector of latent variables
'group' indices
Indices for replicates
loc <- matrix(runif(100 * 2), 100, 2)
mesh <- fmesher::fm_mesh_2d_inla(loc.domain = loc, max.edge = c(0.1, 0.5))
spde <- inla.spde2.matern(mesh)
index <- inla.spde.make.index("spatial", spde$n.spde, n.repl = 2)
spatial.A <- inla.spde.make.A(mesh, loc,
index = rep(1:nrow(loc), 2),
repl = rep(1:2, each = nrow(loc))
)
y <- 10 + rnorm(100 * 2)
stack <- inla.stack(
data = list(y = y),
A = list(spatial.A),
effects = list(c(index, list(intercept = 1))),
tag = "tag"
)
data <- inla.stack.data(stack, spde = spde)
formula <- y ~ -1 + intercept + f(spatial,
model = spde,
replicate = spatial.repl
)
result <- inla(formula,
family = "gaussian", data = data,
control.predictor = list(A = inla.stack.A(stack))
)
spde.result <- inla.spde2.result(result, "spatial", spde)