These have STAN_kernel_*
counterparts. These R versions
are provided for reference and are not optimized for speed. These are
used when generating simulated data, and not during model inference.
kernel_eq(x1, x2, alpha = 1, ell) kernel_ns(x1, x2, alpha = 1, ell, a) kernel_zerosum(x1, x2, M) kernel_bin(x1, x2, pos_class = 0) kernel_cat(x1, x2) kernel_varmask(x1, x2, a, vm_params) kernel_beta(beta, idx1_expand, idx2_expand)
x1 | vector of length \(n\) |
---|---|
x2 | vector of length \(m\) |
alpha | marginal std (default = 1) |
ell | lengthscale |
a | steepness of the warping function rise |
M | number of categories |
pos_class | binary (mask) kernel function has value one if both inputs have this value, other wise it is zero |
vm_params | vector of two mask function parameters. |
beta | a parameter vector (row vector) of length |
idx1_expand | integer vector of length \(n\) |
idx2_expand | integer vector of length \(m\) |
A matrix of size \(n\) x \(m\).
kernel_eq
: Uses the exponentiated quadratic kernel.
kernel_ns
: Uses the non-stationary kernel (input warping + squared
exponential).
kernel_zerosum
: Uses the zero-sum kernel. Here, x1
and
x2
must be integer vectors (integers denoting different categories).
Returns a binary matrix.
kernel_bin
: Uses the binary (mask) kernel. Here, x1
and
x2
must be integer vectors (integers denoting different categories).
Returns a binary matrix.
kernel_cat
: Uses the categorical kernel. Here, x1
and
x2
must be integer vectors (integers denoting different categories).
Returns a binary matrix.
kernel_varmask
: Computes variance mask multiplier matrix. NaN
's
in x1
and x2
will be replaced by 0.
kernel_beta
: Computes the heterogeneity multiplier matrix.
NOTE: idx_expand
needs to be given so that
idx_expand[j]-1
tells the index of the beta parameter that should be
used for the \(j\)th observation. If observation \(j\) doesn't
correspond to any beta parameter, then idx_expand[j]
should be 1.