EKFfixed Class Reference

Extended Kalman Filter with full matrices in fixed point arithmetic. More...

#include <ekf_obj.h>

List of all members.

Public Member Functions

void init_ekf (double Tv)
void ekf (double ux, double uy, double isxd, double isyd)
void prediction (int *ux)
void correction (void)
void update_psi (void)
 EKFfixed ()
 Default constructor.
void bayes (const vec &dt)
 Here dt = [yt;ut] of appropriate dimensions.
epdfposterior ()
 dummy!
void condition (const vec &Q0)
 Substitute val for rvc.
Constructors
virtual BM * _copy_ () const
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 epdf * epredictor () const
 Constructs a predictive density $ f(d_{t+1} |d_{t}, \ldots d_{0}) $.
virtual mpdf * predictor () 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)
virtual const epdf & posterior () const =0
virtual const epdf * _e () const =0

Public Attributes

int Q [16]
int R [4]
int x_est [4]
int x_pred [4]
int P_pred [16]
int P_est [16]
int Y_mes [2]
int ukalm [2]
int Kalm [8]
int PSI [16]
int temp15a [16]
int cA
int cB
int cC
int cG
int cH
long temp30a [4]
enorm< fsqmatE
mat Ry

Protected Attributes

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.

Extension to conditional BM

This extension is useful e.g. in Marginalized Particle Filter (bdm::MPF). Alternatively, it can be used for automated connection to DS when the condition is observed

RV rvc
 Name of extension variable.
const RV & _rvc () const
 access function

Logging of results

ivec LIDs
 IDs of storages in loggers.
bool opt_L_bounds
 Option for logging bounds.
void set_options (const string &opt)
 Set boolean options from a string.
void log_add (logger *L, const string &name="")
 Add all logged variables to a logger.
void logit (logger *L)


Detailed Description

Extended Kalman Filter with full matrices in fixed point arithmetic.

An approximation of the exact Bayesian filter with Gaussian noices and non-linear evolutions of their mean.


Member Function Documentation

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

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

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

Reimplemented in bdm::ARX, bdm::KalmanCh, bdm::EKF< sq_T >, bdm::EKFCh, and bdm::BMEF.

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 files:

Generated on Thu Apr 9 14:33:20 2009 for mixpp by  doxygen 1.5.8