TruncatedPeriodic#
- class gpjax.state_space.TruncatedPeriodic(*, active_dims=None, lengthscale=1.0, variance=1.0, period=1.0, truncation_order=6, n_dims=None, compute_engine=None)[source]#
Bases:
StationaryKernelTruncated-Fourier approximation of the periodic kernel.
See Solin & Särkkä (2014). The kernel is the truncated cosine series
k(τ) = σ² · (Ĩ_0(c) + 2 Σ_{k=1}^{K} Ĩ_k(c) cos(2π k τ / period))
where Ĩ_k(c) = e^{-c} I_k(c) is the scaled modified Bessel function and c = 1/(4ℓ²). Acceptance of a 1-D temporal input is enforced by
_validate_temporal_kernelatto_sdetime, not here.Example
>>> from gpjax.state_space import TruncatedPeriodic >>> kernel = TruncatedPeriodic( ... lengthscale=1.0, variance=1.0, period=1.0, truncation_order=6, ... ) >>> kernel.truncation_order 6
- Parameters:
lengthscale (AbstractUnwrappable)
variance (AbstractUnwrappable)
period (AbstractUnwrappable)
truncation_order (int)
n_dims (int | None)
compute_engine (AbstractKernelComputation)