Bayesian Filtering Library  Generated from SVN r
Public Member Functions | Protected Attributes | List of all members
AnalyticSystemModelGaussianUncertainty Class Reference

Class for analytic system models with additive Gauss. uncertainty. More...

#include <analyticsystemmodel_gaussianuncertainty.h>

Inheritance diagram for AnalyticSystemModelGaussianUncertainty:
SystemModel< MatrixWrapper::ColumnVector > LinearAnalyticSystemModelGaussianUncertainty NonLinearAnalyticSystemModelGaussianUncertainty_Ginac

Public Member Functions

 AnalyticSystemModelGaussianUncertainty (AnalyticConditionalGaussian *Systempdf)
 Constructor. More...
 
virtual ~AnalyticSystemModelGaussianUncertainty ()
 Default copy Constructor, interface class. More...
 
virtual MatrixWrapper::Matrix df_dxGet (const MatrixWrapper::ColumnVector &u, const MatrixWrapper::ColumnVector &x)
 Returns F-matrix. More...
 
virtual MatrixWrapper::ColumnVector PredictionGet (const MatrixWrapper::ColumnVector &u, const MatrixWrapper::ColumnVector &x)
 Returns prediction of state.
 
virtual MatrixWrapper::SymmetricMatrix CovarianceGet (const MatrixWrapper::ColumnVector &u, const MatrixWrapper::ColumnVector &x)
 Covariance of system noise.
 
int StateSizeGet () const
 Get State Size. More...
 
bool SystemWithoutInputs () const
 Has the system inputs or not.
 
ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * SystemPdfGet ()
 Get the SystemPDF. More...
 
void SystemPdfSet (ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > *pdf)
 Set the SystemPDF. More...
 
MatrixWrapper::ColumnVector Simulate (const MatrixWrapper::ColumnVector &x, const MatrixWrapper::ColumnVector &u, const SampleMthd sampling_method=SampleMthd::DEFAULT, void *sampling_args=NULL)
 Simulate the system. More...
 
MatrixWrapper::ColumnVector Simulate (const MatrixWrapper::ColumnVector &x, const SampleMthd sampling_method=SampleMthd::DEFAULT, void *sampling_args=NULL)
 Simulate the system (no input system) More...
 
Probability ProbabilityGet (const MatrixWrapper::ColumnVector &x_k, const MatrixWrapper::ColumnVector &x_kminusone, const MatrixWrapper::ColumnVector &u)
 Get the probability of arriving in a next state. More...
 
Probability ProbabilityGet (const MatrixWrapper::ColumnVector &x_k, const MatrixWrapper::ColumnVector &x_kminusone)
 Get the probability of arriving in a next state. More...
 

Protected Attributes

ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * _SystemPdf
 ConditionalPdf representing $ P(X_k | X_{k-1}, U_{k}) $.
 
bool _systemWithoutInputs
 System with no inputs?
 

Detailed Description

Class for analytic system models with additive Gauss. uncertainty.

Class representing all analytic system Models with Additive Gaussian noise

Definition at line 31 of file analyticsystemmodel_gaussianuncertainty.h.

Constructor & Destructor Documentation

◆ AnalyticSystemModelGaussianUncertainty()

Constructor.

Parameters
SystempdfAnalyticConditionalGaussian representing $ P(X_k | X_{k-1}, U_{k}) $

◆ ~AnalyticSystemModelGaussianUncertainty()

Default copy Constructor, interface class.

Destructor

Member Function Documentation

◆ df_dxGet()

virtual MatrixWrapper::Matrix df_dxGet ( const MatrixWrapper::ColumnVector u,
const MatrixWrapper::ColumnVector x 
)
virtual

Returns F-matrix.

\[ F = \frac{df}{dx} \mid_{u,x} \]

used by kalman filter variants

Parameters
uThe value of the input in which the derivate is evaluated
xThe value in the state in which the derivate is evaluated
Bug:
Should actually be defined for any continuous system model! There should be a class between this one and system model tout court, not assuming gaussian uncertainty!

◆ ProbabilityGet() [1/2]

Probability ProbabilityGet ( const MatrixWrapper::ColumnVector x_k,
const MatrixWrapper::ColumnVector x_kminusone,
const MatrixWrapper::ColumnVector u 
)
inherited

Get the probability of arriving in a next state.

Parameters
x_kthe next state (at time k)
x_kminusonethe current state (at time k-1)
uthe input
Returns
the probability value

Definition at line 151 of file systemmodel.h.

◆ ProbabilityGet() [2/2]

Probability ProbabilityGet ( const MatrixWrapper::ColumnVector x_k,
const MatrixWrapper::ColumnVector x_kminusone 
)
inherited

Get the probability of arriving in a next state.

(no-input-system)

Parameters
x_kthe next state (at time k)
x_kminusonethe current state (at time k-1)
Returns
the probability value

Definition at line 161 of file systemmodel.h.

◆ Simulate() [1/2]

MatrixWrapper::ColumnVector Simulate ( const MatrixWrapper::ColumnVector x,
const MatrixWrapper::ColumnVector u,
const SampleMthd  sampling_method = SampleMthd::DEFAULT,
void *  sampling_args = NULL 
)
inherited

Simulate the system.

Parameters
xcurrent state of the system
uinput to the system
Returns
State where we arrive by simulating the system model for 1 step
Parameters
sampling_methodthe sampling method to be used while sampling from the Conditional Pdf describing the system (if not specified = DEFAULT)
sampling_argsSometimes a sampling method can have some extra parameters (eg mcmc sampling)
Note
Maybe the return value would better be a Sample<T> instead of a T

Definition at line 126 of file systemmodel.h.

◆ Simulate() [2/2]

MatrixWrapper::ColumnVector Simulate ( const MatrixWrapper::ColumnVector x,
const SampleMthd  sampling_method = SampleMthd::DEFAULT,
void *  sampling_args = NULL 
)
inherited

Simulate the system (no input system)

Parameters
xcurrent state of the system
Returns
State where we arrive by simulating the system model for 1 step
Note
Maybe the return value would better be a Sample<T> instead of a T
Parameters
sampling_methodthe sampling method to be used while sampling from the Conditional Pdf describing the system (if not specified = DEFAULT)
sampling_argsSometimes a sampling method can have some extra parameters (eg mcmc sampling)

Definition at line 139 of file systemmodel.h.

◆ StateSizeGet()

int StateSizeGet ( ) const
inherited

Get State Size.

Copy constructor SystemModel(const SystemModel<T>& model);

Returns
the statesize of the system

Definition at line 79 of file systemmodel.h.

◆ SystemPdfGet()

Get the SystemPDF.

Returns
a reference to the ConditionalPdf describing the system

Definition at line 92 of file systemmodel.h.

◆ SystemPdfSet()

void SystemPdfSet ( ConditionalPdf< MatrixWrapper::ColumnVector , MatrixWrapper::ColumnVector > *  pdf)
inherited

Set the SystemPDF.

Parameters
pdfa reference to the ConditionalPdf describing the system

Definition at line 99 of file systemmodel.h.


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