Public Types | Public Member Functions | Public Attributes | Protected Attributes
labust::navigation::SSModel< precission > Class Template Reference

#include <SSModel.hpp>

Inheritance diagram for labust::navigation::SSModel< precission >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef Eigen::Matrix
< precission, Eigen::Dynamic,
Eigen::Dynamic > 
matrix
typedef precission numericprecission
typedef Eigen::Matrix
< precission, Eigen::Dynamic, 1 > 
vector

Public Member Functions

void setState (vector x)
 SSModel ()

Public Attributes

matrix A
matrix B
matrix H
matrix H0
matrix Q
matrix R
matrix R0
precission Ts
matrix V
matrix V0
matrix W

Protected Attributes

vector x
vector xk_1

Detailed Description

template<class precission = double>
class labust::navigation::SSModel< precission >

This class implements a generic stochastic state space model. When implementing models try to inherit from this class. The following naming scheme is used:

x(k+1) = A*x(k) + B*u(k) + w(k) y(k) = H*x(k) + v(k)

w - model noise p(w) = N(0,Q(k)) v - measurement noise p(v) = N(0,R(k))

In the nonlinear case:

x(k+1) = f(x(k),u(k),w(k)) y(k) = h(x(k),v(k))

update the following jacobian matrices as: A = {{f}}{{x}}(x(k-1),u(k),0) W = {{f}}{{w}}(x(k-1),u(k),0) H = {{h}}{{x}}(x(k),0) V = {{h}}{{v}}(x(k),0)

We leave the matrix size generic for now. Usually these could be supplied directly in the template.

Todo:
Deprecate R0/R as there can be only one of them and by selecting V/V0 appropriately we can achieve the same result with one matrix less.

Definition at line 71 of file SSModel.hpp.


Member Typedef Documentation

template<class precission = double>
typedef Eigen::Matrix<precission, Eigen::Dynamic, Eigen::Dynamic> labust::navigation::SSModel< precission >::matrix

Definition at line 76 of file SSModel.hpp.

template<class precission = double>
typedef precission labust::navigation::SSModel< precission >::numericprecission

Definition at line 74 of file SSModel.hpp.

template<class precission = double>
typedef Eigen::Matrix<precission, Eigen::Dynamic, 1> labust::navigation::SSModel< precission >::vector

Definition at line 77 of file SSModel.hpp.


Constructor & Destructor Documentation

template<class precission = double>
labust::navigation::SSModel< precission >::SSModel ( ) [inline]

Main constructor.

Definition at line 86 of file SSModel.hpp.


Member Function Documentation

template<class precission = double>
void labust::navigation::SSModel< precission >::setState ( vector  x) [inline]

Sets the internal state of the model.

Definition at line 90 of file SSModel.hpp.


Member Data Documentation

template<class precission = double>
matrix labust::navigation::SSModel< precission >::A

State transition, Input, Model noise covariance, Model noise transformation Measurement noise covariance, Measurement noise transformation

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::B

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::H

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::H0

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::Q

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::R

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::R0

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
precission labust::navigation::SSModel< precission >::Ts

Model sampling time

Definition at line 104 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::V

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::V0

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
matrix labust::navigation::SSModel< precission >::W

Definition at line 100 of file SSModel.hpp.

template<class precission = double>
vector labust::navigation::SSModel< precission >::x [protected]

Definition at line 110 of file SSModel.hpp.

template<class precission = double>
vector labust::navigation::SSModel< precission >::xk_1 [protected]

State and output vector.

Definition at line 110 of file SSModel.hpp.


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


labust_navigation
Author(s): Gyula Nagy
autogenerated on Fri Aug 28 2015 11:23:33