spleaf.term.ESKernel#

class spleaf.term.ESKernel(sig, rho, coef_la=1.0907260149419182, mu=1.326644517327145)#

The Exponential-sine (ES) kernel is a rank 3 twice mean-square differentiable kernel approximating the squared-exponential (SE) kernel.

The exact SE kernel is written as

\[k(\Delta t) = \sigma^2 \exp\left(-\frac{1}{2} \left(\frac{\Delta t}{\rho}\right)^2\right),\]

while the ES kernel approximates it with

\[k(\Delta t) = \sigma^2 \exp\left(-\lambda \Delta t\right) \left(1 + \frac{1-2\mu^{-2}}{3} \left(\cos(\mu\lambda\Delta t) - 1\right) + \mu^{-1}\sin(\mu\lambda\Delta t)\right),\]

with \(\lambda = \frac{c_\lambda}{\rho}\).

Parameters:
sigfloat

Amplitude (std).

rhofloat

Scale.

coef_lafloat

Coefficient \(c_\lambda\). The default value is chosen such as the deviation from the SE kernel is below 0.9%.

mufloat

Coefficient \(\mu\). The default value is chosen such as the deviation from the SE kernel is below 0.9%.

Methods

eval(dt[, series_id])

Evaluate the kernel at lag dt.

set_conditional_coef(*args, **kwargs)

Set the coefficients used for the conditional computations.