|
Bayes++ Bayesian Filtering Classes Release 2014.5 - Copyright (c) 2003,2004,2005,2006,2011,2012,2014 Michael Stevens
|
#include <UDFlt.hpp>
Public Member Functions | |
| UD_scheme (std::size_t x_size, std::size_t q_maxsize, std::size_t z_initialsize=0) | |
| UD_scheme & | operator= (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) |
| 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().
|
virtual |
| Bayes_base::Float Bayesian_filter::UD_scheme::observe | ( | Linear_correlated_observe_model & | h, |
| const FM::Vec & | z | ||
| ) |
References Bayesian_filter::Numerical_rcond::check_PSD(), GIHx, Gz, Bayesian_filter::Linear_correlated_observe_model::h(), h1, Bayesian_filter::Jacobian_observe_model::Hx, Bayesian_filter_matrix::noalias(), Bayesian_filter::Parametised_observe_model::normalise(), observe_size(), observeUD(), Bayesian_filter::Kalman_state_filter::rclimit, s, Sd, Bayesian_filter_matrix::UdUfactor(), w, Bayesian_filter::State_filter::x, Bayesian_filter::Correlated_additive_observe_model::Z, znorm, and zpdecol.
|
virtual |
Implements Bayesian_filter::Linrz_filter.
References Bayesian_filter::Bayes_base::error().
|
virtual |
Implements Bayesian_filter::Linrz_filter.
References Bayesian_filter::Numerical_rcond::check_PSD(), Bayesian_filter::Bayes_base::error(), Bayesian_filter::Parametised_observe_model::h(), h1, Bayesian_filter::Jacobian_observe_model::Hx, Bayesian_filter_matrix::noalias(), Bayesian_filter::Parametised_observe_model::normalise(), observe_size(), observeUD(), Bayesian_filter::Kalman_state_filter::rclimit, s, Sd, w, Bayesian_filter::State_filter::x, znorm, and Bayesian_filter::Uncorrelated_additive_observe_model::Zv.
| Bayes_base::Float Bayesian_filter::UD_scheme::observe | ( | UD_sequential_observe_model & | h, |
| const FM::Vec & | z | ||
| ) |
References Bayesian_filter::Numerical_rcond::check_PSD(), Bayesian_filter::Bayes_base::error(), Bayesian_filter::UD_sequential_observe_model::ho(), Bayesian_filter::UD_sequential_observe_model::Hx_o, Bayesian_filter_matrix::noalias(), Bayesian_filter::Parametised_observe_model::normalise(), observe_size(), observeUD(), Bayesian_filter::Kalman_state_filter::rclimit, s, Sd, w, Bayesian_filter::State_filter::x, znorm, and Bayesian_filter::Uncorrelated_additive_observe_model::Zv.
|
protected |
References last_z_size, s, Sd, and znorm.
Referenced by observe(), observe(), observe(), and UD_scheme().
|
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 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().
|
virtual |
Implements Bayesian_filter::Linrz_filter.
References Bayesian_filter::Numerical_rcond::check_PSD(), Bayesian_filter::Additive_predict_model::f(), Bayesian_filter::Linrz_predict_model::Fx, Bayesian_filter::Additive_predict_model::G, predictGq(), Bayesian_filter::Additive_predict_model::q, Bayesian_filter::Kalman_state_filter::rclimit, and Bayesian_filter::State_filter::x.
|
protected |
References d, dv, Bayesian_filter::Bayes_base::error(), UD, Bayesian_filter_matrix::UdUrcond(), v, and Bayesian_filter::State_filter::x.
Referenced by predict().
|
virtual |
Implements Bayesian_filter::Kalman_state_filter.
References UD, Bayesian_filter_matrix::UdUrecompose(), and Bayesian_filter::Kalman_state_filter::X.
|
protected |
Referenced by observeUD(), and operator=().
|
protected |
Referenced by observeUD().
|
protected |
Referenced by predictGq().
|
protected |
Referenced by predictGq().
|
protected |
Referenced by observe().
|
protected |
Referenced by observe().
|
protected |
Referenced by observe_size(), and UD_scheme().
| FM::Vec Bayesian_filter::UD_scheme::s |
Referenced by observe(), observe(), observe(), and observe_size().
| FM::Vec Bayesian_filter::UD_scheme::Sd |
Referenced by observe(), observe(), observe(), and observe_size().
| FM::Matrix Bayesian_filter::UD_scheme::UD |
Referenced by init(), observeUD(), operator=(), predictGq(), and update().
|
protected |
Referenced by predictGq().
|
protected |
Referenced by observe(), observe(), observe(), and observe_size().