covariance__functions::PeriodicSquareExponential

Search for usage in LXR

covariance_functions::PeriodicSquareExponential Class Reference

#include <covariance_functions.h>

Inheritance diagram for covariance_functions::PeriodicSquareExponential:

Public Member Functions

 PeriodicSquareExponential (const Eigen::VectorXd &hyperParameters)
 
virtual CovFuncclone () const override
 
Eigen::MatrixXd evaluate (const Eigen::VectorXd &x1, const Eigen::VectorXd &x2) override
 
int getExtraParameterCount () const override
 
const Eigen::VectorXd & getExtraParameters () const override
 
int getParameterCount () const override
 
const Eigen::VectorXd & getParameters () const override
 
void setExtraParameters (const Eigen::VectorXd &params) override
 
void setParameters (const Eigen::VectorXd &params) override
 

Detailed Description

The function computes a combined covariance function. It is a periodic covariance function with an additional square exponential. This combination makes it possible to learn a signal that consists of both periodic and aperiodic parts.

Square Exponential Component:

\[ k _{\textsc{se}}(t,t';\theta_\textsc{se},\ell_\textsc{se}) = \theta_\textsc{se} \cdot \exp\left(-\frac{(t-t')^2}{2\ell_\textsc{se}^{2}}\right) \]

Periodic Component:

\[ k_\textsc{p}(t,t';\theta_\textsc{p},\ell_\textsc{p},\lambda) = \theta_\textsc{p} \cdot \exp\left(-\frac{2\sin^2\left(\frac{\pi}{\lambda} (t-t')\right)}{\ell_\textsc{p}^2}\right) \]

Kernel Combination:

\[ k _\textsc{c}(t,t';\theta_\textsc{se},\ell_\textsc{se},\theta_\textsc{p}, \ell_\textsc{p},\lambda) = k_{\textsc{se}}(t,t';\theta_\textsc{se},\ell_\textsc{se}) + k_\textsc{p}(t,t';\theta_\textsc{p},\ell_\textsc{p},\lambda) \]

Definition at line 93 of file covariance_functions.h.

Member Function Documentation

◆ clone()

virtual CovFunc* covariance_functions::PeriodicSquareExponential::clone ( ) const
inlineoverridevirtual

Produces a clone to be able to copy the object.

Implements covariance_functions::CovFunc.

Definition at line 124 of file covariance_functions.h.

◆ evaluate()

Eigen::MatrixXd covariance_functions::PeriodicSquareExponential::evaluate ( const Eigen::VectorXd &  x1,
const Eigen::VectorXd &  x2 
)
overridevirtual

Evaluates the covariance function, caches the quantities that are needed to calculate gradient and Hessian.

Implements covariance_functions::CovFunc.

Definition at line 33 of file covariance_functions.cpp.

◆ getParameterCount()

int covariance_functions::PeriodicSquareExponential::getParameterCount ( ) const
overridevirtual

Returns the number of hyper-parameters.

Implements covariance_functions::CovFunc.

Definition at line 90 of file covariance_functions.cpp.

◆ getParameters()

const Eigen::VectorXd & covariance_functions::PeriodicSquareExponential::getParameters ( ) const
overridevirtual

Returns the hyper-parameters.

Implements covariance_functions::CovFunc.

Definition at line 80 of file covariance_functions.cpp.

◆ setParameters()

void covariance_functions::PeriodicSquareExponential::setParameters ( const Eigen::VectorXd &  params)
overridevirtual

Method to set the hyper-parameters.

Implements covariance_functions::CovFunc.

Definition at line 70 of file covariance_functions.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Jun 5 2023 03:56:24 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.