This function wraps existing built-in routines to construct a covariance matrix based on data type, covariance type, and distance type with distances as inputs. The constructed covariance matrix can be directly used for GaSP fitting and and prediction for spatial data, spatio-temporal data, and computer experiments.
kernel(d, range, tail, nu, covmodel)a correlation matrix
a matrix or a list of distances
a vector of range parameters, which could be a scalar.
a vector of tail decay parameters, which could be a scalar.
a vector of smoothness parameters, which could be a scalar.
a list of two strings: family, form, where family indicates the family of covariance functions including the Confluent Hypergeometric class, the Matérn class, the Cauchy class, the powered-exponential class. form indicates the specific form of covariance structures including the isotropic form, tensor form, automatic relevance determination form.
The Confluent Hypergeometric correlation function is given by $$C(h) = \frac{\Gamma(\nu+\alpha)}{\Gamma(\nu)} \mathcal{U}\left(\alpha, 1-\nu, \left(\frac{h}{\beta}\right)^2\right),$$ where \(\alpha\) is the tail decay parameter. \(\beta\) is the range parameter. \(\nu\) is the smoothness parameter. \(\mathcal{U}(\cdot)\) is the confluent hypergeometric function of the second kind. For details about this covariance, see Ma and Bhadra (2019) at https://arxiv.org/abs/1911.05865.
The generalized Cauchy covariance is given by $$C(h) = \left\{ 1 + \left( \frac{h}{\phi} \right)^{\nu} \right\}^{-\alpha/\nu},$$ where \(\phi\) is the range parameter. \(\alpha\) is the tail decay parameter. \(\nu\) is the smoothness parameter with default value at 2.
The Matérn correlation function is given by $$C(h)=\frac{2^{1-\nu}}{\Gamma(\nu)} \left( \frac{h}{\phi} \right)^{\nu} \mathcal{K}_{\nu}\left( \frac{h}{\phi} \right),$$ where \(\phi\) is the range parameter. \(\nu\) is the smoothness parameter. \(\mathcal{K}_{\nu}(\cdot)\) is the modified Bessel function of the second kind of order \(\nu\).
The powered-exponential correlation function is given by $$C(h)=\exp\left\{-\left(\frac{h}{\phi}\right)^{\nu}\right\},$$ where \(\phi\) is the range parameter. \(\nu\) is the smoothness parameter.
The Gaussian correlation function is given by $$C(h)=\exp\left(-\frac{h^2}{\phi^2}\right),$$ where \(\phi\) is the range parameter.
This indicates the isotropic form of covariance functions. That is, $$C(\mathbf{h}) = C^0(\|\mathbf{h}\|; \boldsymbol \theta),$$ where \(\| \mathbf{h}\|\) denotes the Euclidean distance or the great circle distance for data on sphere. \(C^0(\cdot)\) denotes any isotropic covariance family specified in family.
This indicates the tensor product of correlation functions. That is, $$ C(\mathbf{h}) = \prod_{i=1}^d C^0(|h_i|; \boldsymbol \theta_i),$$ where \(d\) is the dimension of input space. \(h_i\) is the distance along the \(i\)th input dimension. This type of covariance structure has been often used in Gaussian process emulation for computer experiments.
This indicates the automatic relevance determination form. That is, $$C(\mathbf{h}) = C^0\left(\sqrt{\sum_{i=1}^d\frac{h_i^2}{\phi^2_i}}; \boldsymbol \theta \right),$$ where \(\phi_i\) denotes the range parameter along the \(i\)th input dimension.
Pulong Ma mpulong@gmail.com
CH, matern, ikernel, GPBayes-package, GaSP
input = seq(0,1,length=10)
d = distance(input,input,type="isotropic",dtype="Euclidean")
cormat = kernel(d,range=0.5,tail=0.2,nu=2.5,
covmodel=list(family="CH",form="isotropic"))
Run the code above in your browser using DataLab