Bayes++ Bayesian Filtering Classes  Release 2014.5 - Copyright (c) 2003,2004,2005,2006,2011,2012,2014 Michael Stevens
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Bayesian_filter::UD_scheme Class Reference

#include <UDFlt.hpp>

Inheritance diagram for Bayesian_filter::UD_scheme:
Bayesian_filter::Linrz_kalman_filter Bayesian_filter::Linrz_filter Bayesian_filter::Kalman_state_filter Bayesian_filter::Bayes_filter_base Bayesian_filter::State_filter Bayesian_filter::Bayes_base Bayesian_filter::Bayes_filter_base Bayesian_filter::Bayes_base Bayesian_filter::Filter_scheme< UD_scheme >

Public Member Functions

 UD_scheme (std::size_t x_size, std::size_t q_maxsize, std::size_t z_initialsize=0)
 
UD_schemeoperator= (const UD_scheme &)
 
void init ()
 
void update ()
 
Float predict (Linrz_predict_model &f)
 
Float observe (Linrz_correlated_observe_model &h, const FM::Vec &z)
 
Float observe (Linrz_uncorrelated_observe_model &h, const FM::Vec &z)
 
Float observe (Linear_correlated_observe_model &h, const FM::Vec &z)
 
Float observe (UD_sequential_observe_model &h, const FM::Vec &z)
 
- Public Member Functions inherited from Bayesian_filter::Bayes_base
virtual ~Bayes_base ()=0
 
- Public Member Functions inherited from Bayesian_filter::Kalman_state_filter
 Kalman_state_filter (std::size_t x_size)
 
void init_kalman (const FM::Vec &x, const FM::SymMatrix &X)
 
- Public Member Functions inherited from Bayesian_filter::State_filter
 State_filter (std::size_t x_size)
 

Public Attributes

FM::Matrix UD
 
FM::Vec s
 
FM::Vec Sd
 
- Public Attributes inherited from Bayesian_filter::Kalman_state_filter
FM::SymMatrix X
 
Numerical_rcond rclimit
 
- Public Attributes inherited from Bayesian_filter::State_filter
FM::Vec x
 

Protected Member Functions

Float predictGq (const FM::Matrix &Fx, const FM::Matrix &G, const FM::Vec &q)
 
Float observeUD (FM::Vec &gain, Float &alpha, const FM::Vec &h, const Float r)
 
void observe_size (std::size_t z_size)
 
- Protected Member Functions inherited from Bayesian_filter::Linrz_kalman_filter
 Linrz_kalman_filter ()
 

Protected Attributes

FM::Vec d
 
FM::Vec dv
 
FM::Vec v
 
FM::Vec a
 
FM::Vec b
 
std::size_t last_z_size
 
FM::Vec h1
 
FM::Vec w
 
FM::Vec znorm
 
FM::Vec zpdecol
 
FM::Matrix Gz
 
FM::Matrix GIHx
 

Additional Inherited Members

- Public Types inherited from Bayesian_filter::Bayes_base
typedef Bayesian_filter_matrix::Float Float
 
- Static Public Member Functions inherited from Bayesian_filter::Bayes_base
static void error (const Numeric_exception &a)
 
static void error (const Logic_exception &a)
 

Constructor & Destructor Documentation

Bayesian_filter::UD_scheme::UD_scheme ( std::size_t  x_size,
std::size_t  q_maxsize,
std::size_t  z_initialsize = 0 
)

References last_z_size, and observe_size().

Member Function Documentation

void Bayesian_filter::UD_scheme::init ( )
virtual
Bayes_base::Float Bayesian_filter::UD_scheme::observe ( Linrz_correlated_observe_model h,
const FM::Vec z 
)
virtual
Bayes_base::Float Bayesian_filter::UD_scheme::observe ( Linrz_uncorrelated_observe_model h,
const FM::Vec z 
)
virtual
Bayes_base::Float Bayesian_filter::UD_scheme::observe ( Linear_correlated_observe_model h,
const FM::Vec z 
)
Bayes_base::Float Bayesian_filter::UD_scheme::observe ( UD_sequential_observe_model h,
const FM::Vec z 
)
void Bayesian_filter::UD_scheme::observe_size ( std::size_t  z_size)
protected

References last_z_size, s, Sd, and znorm.

Referenced by observe(), and UD_scheme().

UD_scheme::Float Bayesian_filter::UD_scheme::observeUD ( FM::Vec gain,
Float alpha,
const FM::Vec h,
const Float  r 
)
protected

Linear UD factorisation update Bierman UdU' factorisation update. Bierman p.100 Input h observation coefficients r observation variance Output gain observation Kalman gain alpha observation innovation variance Variables with physical significance gamma becomes covariance of innovation Precondition: UD r is PSD (not checked) Postcondition: UD (see return value) Return: reciprocal condition number of UD, -1 if alpha singular (negative or zero)

References a, b, Bayesian_filter_matrix::noalias(), UD, and Bayesian_filter_matrix::UdUrcond().

Referenced by observe().

UD_scheme & Bayesian_filter::UD_scheme::operator= ( const UD_scheme a)

References UD.

UD_scheme::Float Bayesian_filter::UD_scheme::predict ( Linrz_predict_model f)
virtual
UD_scheme::Float Bayesian_filter::UD_scheme::predictGq ( const FM::Matrix Fx,
const FM::Matrix G,
const FM::Vec q 
)
protected
void Bayesian_filter::UD_scheme::update ( )
virtual

Member Data Documentation

FM::Vec Bayesian_filter::UD_scheme::a
protected

Referenced by observeUD().

FM::Vec Bayesian_filter::UD_scheme::b
protected

Referenced by observeUD().

FM::Vec Bayesian_filter::UD_scheme::d
protected

Referenced by predictGq().

FM::Vec Bayesian_filter::UD_scheme::dv
protected

Referenced by predictGq().

FM::Matrix Bayesian_filter::UD_scheme::GIHx
protected

Referenced by observe().

FM::Matrix Bayesian_filter::UD_scheme::Gz
protected

Referenced by observe().

FM::Vec Bayesian_filter::UD_scheme::h1
protected

Referenced by observe().

std::size_t Bayesian_filter::UD_scheme::last_z_size
protected

Referenced by observe_size(), and UD_scheme().

FM::Vec Bayesian_filter::UD_scheme::s

Referenced by observe(), and observe_size().

FM::Vec Bayesian_filter::UD_scheme::Sd

Referenced by observe(), and observe_size().

FM::Matrix Bayesian_filter::UD_scheme::UD
FM::Vec Bayesian_filter::UD_scheme::v
protected

Referenced by predictGq().

FM::Vec Bayesian_filter::UD_scheme::w
protected

Referenced by observe().

FM::Vec Bayesian_filter::UD_scheme::znorm
protected

Referenced by observe(), and observe_size().

FM::Vec Bayesian_filter::UD_scheme::zpdecol
protected

Referenced by observe().


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