bdm::Kalman< sq_T > Class Template Reference

#include <libKF.h>

Inheritance diagram for bdm::Kalman< sq_T >:

bdm::BM bdm::bdmroot

List of all members.


Detailed Description

template<class sq_T>
class bdm::Kalman< sq_T >

Kalman filter with covariance matrices in square root form.

Parameter evolution model:

\[ x_t = A x_{t-1} + B u_t + Q^{1/2} e_t \]

Observation model:

\[ y_t = C x_{t-1} + C u_t + Q^{1/2} w_t. \]

Where $e_t$ and $w_t$ are independent vectors Normal(0,1)-distributed disturbances.

Public Member Functions

 Kalman ()
 Default constructor.
 Kalman (const Kalman< sq_T > &K0)
 Copy constructor.
void set_parameters (const mat &A0, const mat &B0, const mat &C0, const mat &D0, const sq_T &Q0, const sq_T &R0)
 Set parameters with check of relevance.
void set_est (const vec &mu0, const sq_T &P0)
 Set estimate values, used e.g. in initialization.
void bayes (const vec &dt)
 Here dt = [yt;ut] of appropriate dimensions.
const epdfposterior () const
 access function
const enorm< sq_T > * _e () const
mat & __K ()
 access function
vec _dP ()
 access function
Constructors
virtual BM_copy_ ()
Mathematical operations
virtual void bayesB (const mat &Dt)
 Batch Bayes rule (columns of Dt are observations).
virtual double logpred (const vec &dt) const
vec logpred_m (const mat &dt) const
 Matrix version of logpred.
virtual epdfepredictor () const
 Constructs a predictive density $ f(d_{t+1} |d_{t}, \ldots d_{0}) $.
virtual mpdfpredictor () const
 Constructs a conditional density 1-step ahead predictor.
Access to attributes
const RV_drv () const
void set_drv (const RV &rv)
void set_rv (const RV &rv)
double _ll () const
void set_evalll (bool evl0)

Protected Attributes

RV rvy
 Indetifier of output rv.
RV rvu
 Indetifier of exogeneous rv.
int dimx
 cache of rv.count()
int dimy
 cache of rvy.count()
int dimu
 cache of rvu.count()
mat A
 Matrix A.
mat B
 Matrix B.
mat C
 Matrix C.
mat D
 Matrix D.
sq_T Q
 Matrix Q in square-root form.
sq_T R
 Matrix R in square-root form.
enorm< sq_T > est
 posterior density on $x_t$
enorm< sq_T > fy
 preditive density on $y_t$
mat _K
 placeholder for Kalman gain
vec & _yp
 cache of fy.mu
sq_T & _Ry
 cache of fy.R
vec & _mu
 cache of est.mu
sq_T & _P
 cache of est.R
RV drv
 Random variable of the data (optional).
double ll
 Logarithm of marginalized data likelihood.
bool evalll
 If true, the filter will compute likelihood of the data record and store it in ll . Set to false if you want to save computational time.


Member Function Documentation

virtual BM* bdm::BM::_copy_ (  )  [inline, virtual, inherited]

Copy function required in vectors, Arrays of BM etc. Have to be DELETED manually! Prototype:

 BM* _copy_(){return new BM(*this);} 

Reimplemented in bdm::ARX.

virtual double bdm::BM::logpred ( const vec &  dt  )  const [inline, virtual, inherited]

Evaluates predictive log-likelihood of the given data record I.e. marginal likelihood of the data with the posterior integrated out.

Reimplemented in bdm::ARX, bdm::MixEF, and bdm::multiBM.

Referenced by bdm::BM::logpred_m().


The documentation for this class was generated from the following file:

Generated on Sun Feb 15 23:09:35 2009 for mixpp by  doxygen 1.5.6