Celerite#

class tinygp.kernels.quasisep.Celerite(a: tinygp.helpers.JAXArray, b: tinygp.helpers.JAXArray, c: tinygp.helpers.JAXArray, d: tinygp.helpers.JAXArray)[source]#

Bases: tinygp.kernels.quasisep.Quasisep

The baseline kernel from the celerite package

This form of the kernel was introduced by Foreman-Mackey et al. (2017), and implemented in the celerite package. It shouldn’t generally be used on its own, and other kernels described in this subpackage should generally be preferred.

This kernel takes the form:

\[k(\tau)=\exp(-c\,\tau)\,\left[a\,\cos(d\,\tau)+b\,\sin(d\,\tau)\right]\]

for \(\tau = |x_i - x_j|\).

A(X1: tinygp.helpers.JAXArray, X2: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray[source]#

The transition matrix between two neighboring coordinates

Pinf() tinygp.helpers.JAXArray[source]#

The stationary covariance of the process

coord_to_sortable(X: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray#

A helper function used to convert coordinates to sortable 1-D values

By default, this is the identity, but in cases where X is structured (e.g. multivariate inputs), this can be used to appropriately unwrap that structure.

evaluate(X1: tinygp.helpers.JAXArray, X2: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray#

The kernel evaluated via the quasiseparable representation

evaluate_diag(X: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray#

For quasiseparable kernels, the variance is simple to compute

h(X: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray[source]#

The ‘observation model’ for the process

to_general_qsm(X1: tinygp.helpers.JAXArray, X2: tinygp.helpers.JAXArray) tinygp.solvers.quasisep.general.GeneralQSM#

The generalized quasiseparable representation of this kernel

to_symm_qsm(X: tinygp.helpers.JAXArray) tinygp.solvers.quasisep.core.SymmQSM#

The symmetric quasiseparable representation of this kernel