precision_matrix_multivariate: Compute the precision matrix for multivariate model

View source: R/models.R

precision_matrix_multivariateR Documentation

Compute the precision matrix for multivariate model

Description

Compute the precision matrix for multivariate model

Usage

precision_matrix_multivariate(
  p,
  operator_list,
  rho,
  theta = NULL,
  Q = NULL,
  scale = NULL
)

Arguments

p

dimension, should be integer and greater than 1

operator_list

a list of ngme_operator object (length should be p)

rho

vector with the p(p-1)/2 correlation parameters rho_11, rho_21, rho_22, ... rho_p1, rho_p2, ... rho_p(p-1)

theta

parameter for Q matrix (length of 1 when p=2, length of 3 when p=3)

Q

orthogonal matrix of dim p*p (provide when p > 3)

scale

A vector of length p with constants to multiply each operator matrix with

Details

The general model is defined as $D diag(L_1, ..., L_p) x = M$. D is the dependence matrix, it is paramterized by $D = Q(theta) * D_l(cor_mat)$, where $Q$ is the orthogonal matrix, and $D_l$ is matrix controls the cross-correlation. See the section 2.2 of Bolin and Wallin (2020) for exact parameterization of Dependence matrix.

Value

the precision matrix of the multivariate model

References

Bolin, D. and Wallin, J. (2020), Multivariate type G Matérn stochastic partial differential equation random fields. J. R. Stat. Soc. B, 82: 215-239. https://doi.org/10.1111/rssb.12351

Examples

rho <- c(-0.5, 0.5, -0.25) # correlation parameters
operator_list <- list(ar1(1:5, rho = 0.4), ar1(1:5, rho = 0.5), ar1(1:5, rho = 0.6))
precision_matrix_multivariate(3, operator_list, rho, theta = c(1, 2, 3))

ngme2 documentation built on May 20, 2026, 9:10 a.m.