Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cPlaneEKF_sp Class Reference

#include <simple_plane.h>

Inheritance diagram for cPlaneEKF_sp:
Inheritance graph
[legend]

Public Member Functions

 cPlaneEKF_sp ()
 
- Public Member Functions inherited from Kalman::EKFilter< double, 1 >
void init (Vector &x_, Matrix &P_)
 Sets initial conditions for the Kalman Filter. More...
 
 EKFilter ()
 Default constructor. More...
 
 EKFilter (K_UINT_32 n_, K_UINT_32 nu_, K_UINT_32 nw_, K_UINT_32 m_, K_UINT_32 nv_)
 Constructors specifying all necessary matrix and vector dimensions. More...
 
virtual ~EKFilter ()
 Virtual destructor. More...
 
K_UINT_32 getSizeX () const
 Returns the size of the state vector. More...
 
K_UINT_32 getSizeU () const
 Returns the size of the input vector. More...
 
K_UINT_32 getSizeW () const
 Returns the size of the process noise vector. More...
 
K_UINT_32 getSizeZ () const
 Returns the size of the measurement vector. More...
 
K_UINT_32 getSizeV () const
 Returns the size of the measurement noise vector. More...
 
void setDim (K_UINT_32 n_, K_UINT_32 nu_, K_UINT_32 nw_, K_UINT_32 m_, K_UINT_32 nv_)
 Sets all dimensions at once. More...
 
void setSizeX (K_UINT_32 n_)
 Sets the size of the state vector. More...
 
void setSizeU (K_UINT_32 nu_)
 Sets the size of the input vector. More...
 
void setSizeW (K_UINT_32 nw_)
 Sets the size of the process noise vector. More...
 
void setSizeZ (K_UINT_32 m_)
 Sets the size of the measurement vector. More...
 
void setSizeV (K_UINT_32 nv_)
 Sets the size of the measurement noise vector. More...
 
void step (Vector &u_, const Vector &z_)
 Makes one prediction-correction step. More...
 
void timeUpdateStep (Vector &u_)
 Makes one prediction step. More...
 
void measureUpdateStep (const Vector &z_)
 Makes one correction step. More...
 
const Vectorpredict (Vector &u_)
 Returns the predicted state vector (a priori state estimate). More...
 
const Vectorsimulate ()
 Returns the predicted measurement vector. More...
 
const VectorgetX () const
 Returns the corrected state (a posteriori state estimate). More...
 
const MatrixcalculateP () const
 Returns the a posteriori error covariance estimate matrix. More...
 

Protected Member Functions

void makeA ()
 Virtual creator of A. More...
 
void makeH ()
 Virtual creator of H. More...
 
void makeMeasure ()
 Actual measurement function $ h(x, 0) $. Fills in z. More...
 
void makeProcess ()
 Actual process $ f(x, u, 0) $. Fills in new x by using old x. More...
 
void makeQ ()
 Virtual creator of Q. More...
 
void makeR ()
 Virtual creator of R. More...
 
void makeV ()
 Virtual creator of V. More...
 
void makeW ()
 Virtual creator of W. More...
 
- Protected Member Functions inherited from Kalman::EKFilter< double, 1 >
void NoModification ()
 Allows optimizations on some calculations. More...
 
virtual void sizeUpdate ()
 Resizes all vector and matrices. Never call or overload this ! More...
 
virtual void makeBaseA ()
 Virtual pre-creator of A. More...
 
virtual void makeBaseW ()
 Virtual pre-creator of W. More...
 
virtual void makeBaseQ ()
 Virtual pre-creator of Q. More...
 
virtual void makeBaseH ()
 Virtual pre-creator of H. More...
 
virtual void makeBaseV ()
 Virtual pre-creator of V. More...
 
virtual void makeBaseR ()
 Virtual pre-creator of R. More...
 
virtual void makeCommonProcess ()
 Optional function used to precalculate common values for process. More...
 
virtual void makeCommonMeasure ()
 Optional function used to precalculate common values for measurement. More...
 
virtual void makeDZ ()
 Hook-up function to modify innovation vector. More...
 

Protected Attributes

double Bfriction
 
double Gravity
 
double Mass
 
double Period
 
double Portance
 
- Protected Attributes inherited from Kalman::EKFilter< double, 1 >
Vector x
 Corrected state vector. More...
 
Vector u
 Input vector. More...
 
Vector z
 Predicted measurement vector. More...
 
Vector dz
 Innovation vector. More...
 
Matrix A
 A jacobian matrix. More...
 
Matrix W
 A jacobian matrix. More...
 
Matrix Q
 Process noise covariance matrix. More...
 
Matrix H
 A jacobian matrix. More...
 
Matrix V
 A jacobian matrix. More...
 
Matrix R
 Measurement noise covariance matrix. More...
 
K_UINT_32 n
 Size of the state vector. More...
 
K_UINT_32 nu
 Size of the input vector. More...
 
K_UINT_32 nw
 Size of the process noise vector. More...
 
K_UINT_32 m
 Size of the measurement vector. More...
 
K_UINT_32 nv
 Size of the measurement noise vector. More...
 

Additional Inherited Members

- Public Types inherited from Kalman::EKFilter< double, 1 >
enum  
 
typedef KMatrix< double, BEG,
true > 
Matrix
 Matrix type. More...
 
typedef double type
 Type of objects contained in matrices and vectors. More...
 
typedef KVector< double, BEG,
true > 
Vector
 Vector type. More...
 

Detailed Description

Definition at line 7 of file simple_plane.h.

Constructor & Destructor Documentation

cPlaneEKF_sp::cPlaneEKF_sp ( )

Definition at line 78 of file simple_plane.cpp.

Member Function Documentation

void cPlaneEKF_sp::makeA ( )
protectedvirtual

Virtual creator of A.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 88 of file simple_plane.cpp.

void cPlaneEKF_sp::makeH ( )
protectedvirtual

Virtual creator of H.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 131 of file simple_plane.cpp.

void cPlaneEKF_sp::makeMeasure ( )
protectedvirtual

Actual measurement function $ h(x, 0) $. Fills in z.

This function must be overridden, since it is the core of the measurement system. At the time this will be called, x contains the predicted state (a priori state estimate), which is the one that must be used with the measurement function.

Warning
This function should have no side effects to class members (even members of derived classes) other than z. This is because this function is used by simulate(), which does a calculation and then undoes it before returning the result.

Implements Kalman::EKFilter< double, 1 >.

Definition at line 170 of file simple_plane.cpp.

void cPlaneEKF_sp::makeProcess ( )
protectedvirtual

Actual process $ f(x, u, 0) $. Fills in new x by using old x.

This function must be overridden, since it is the core of the system process.

Warning
This function should have no side effects to class members (even members of derived classes) other than x. This is because this function is used by predict(), which does a calculation and then undoes it before returning the result.

Implements Kalman::EKFilter< double, 1 >.

Definition at line 160 of file simple_plane.cpp.

void cPlaneEKF_sp::makeQ ( )
protectedvirtual

Virtual creator of Q.

Note
If OQ is true, that is, if Q is always diagonal, then it is not necessary to initialize non-diagonal elements with anything meaningful.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 123 of file simple_plane.cpp.

void cPlaneEKF_sp::makeR ( )
protectedvirtual

Virtual creator of R.

Note
If OVR is true, that is, if both V and R are always diagonal, then it is not necessary to initialize non-diagonal elements with anything meaningful.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 152 of file simple_plane.cpp.

void cPlaneEKF_sp::makeV ( )
protectedvirtual

Virtual creator of V.

Note
If OVR is true, that is, if both V and R are always diagonal, then it is not necessary to initialize non-diagonal elements with anything meaningful.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 144 of file simple_plane.cpp.

void cPlaneEKF_sp::makeW ( )
protectedvirtual

Virtual creator of W.

Reimplemented from Kalman::EKFilter< double, 1 >.

Definition at line 111 of file simple_plane.cpp.

Member Data Documentation

double cPlaneEKF_sp::Bfriction
protected

Definition at line 23 of file simple_plane.h.

double cPlaneEKF_sp::Gravity
protected

Definition at line 23 of file simple_plane.h.

double cPlaneEKF_sp::Mass
protected

Definition at line 23 of file simple_plane.h.

double cPlaneEKF_sp::Period
protected

Definition at line 23 of file simple_plane.h.

double cPlaneEKF_sp::Portance
protected

Definition at line 23 of file simple_plane.h.


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


kfilter
Author(s): Jorge Almeida, Vincent Zalzal, Sylvain Marleau, Richard Gourdeau
autogenerated on Mon Mar 2 2015 01:31:45