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

Class for linear analytic measurementmodels with additive gaussian noise. More...

#include <linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h>

Inheritance diagram for LinearAnalyticMeasurementModelGaussianUncertainty_Implicit:
LinearAnalyticMeasurementModelGaussianUncertainty AnalyticMeasurementModelGaussianUncertainty MeasurementModel< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector >

Public Member Functions

 LinearAnalyticMeasurementModelGaussianUncertainty_Implicit (LinearAnalyticConditionalGaussian *pdf)
 Constructor. More...
 
 LinearAnalyticMeasurementModelGaussianUncertainty_Implicit ()
 Constructor.
 
virtual ~LinearAnalyticMeasurementModelGaussianUncertainty_Implicit ()
 Destructor.
 
virtual const MatrixWrapper::ColumnVector & fGet () const =0
 
virtual const int TypeGet () const =0
 
virtual MatrixWrapper::Matrix & dfGet (int number)=0
 
virtual MatrixWrapper::Matrix df_dxGet (const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
 Returns H-matrix calculated with measurement z and state x. More...
 
virtual MatrixWrapper::Matrix & df_dzGet (const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
 Returns D-matrix calculated with measurement z and state x. More...
 
virtual MatrixWrapper::ColumnVector PredictionGet (const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
 Return a prediction for the mean of the noise on the linear measurement equation, calculated with measurements z and state x.
 
virtual MatrixWrapper::ColumnVector ExpectedValueGet ()=0
 Return a prediction for the mean of the noise on the linear measurement equation, using the current x and z.
 
virtual MatrixWrapper::SymmetricMatrix & CovarianceGet ()=0
 Returns covariance of the noise on the linearised measurement model evaluated using measurements z and states x. More...
 
virtual MatrixWrapper::SymmetricMatrix CovarianceGet (const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
 Returns covariance of the noise on the linearised measurement model evaluated using current z and states x. More...
 
virtual void Calculate (const MatrixWrapper::ColumnVector &x, const MatrixWrapper::ColumnVector &z, const MatrixWrapper::Matrix &R)=0
 
virtual const MatrixWrapper::Matrix & SRCovariance () const =0
 Returns square root of the covariance of the measurements z.
 
virtual const int & Is_Identity () const =0
 Returns 1 if D-matrix equals the identity matrix else 0.
 
void HSet (const MatrixWrapper::Matrix &h)
 Set Matrix H. More...
 
void JSet (const MatrixWrapper::Matrix &j)
 Set Matrix J. More...
 
const MatrixWrapper::Matrix & HGet () const
 Get Matrix H.
 
const MatrixWrapper::Matrix & JGet () const
 Get Matrix J.
 
int MeasurementSizeGet () const
 Get Measurement Size.
 
bool SystemWithoutSensorParams () const
 Number of Conditional Arguments.
 
ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * MeasurementPdfGet ()
 Get the MeasurementPDF.
 
void MeasurementPdfSet (ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > *pdf)
 Set the MeasurementPDF. More...
 
MatrixWrapper::ColumnVector Simulate (const MatrixWrapper::ColumnVector &x, const MatrixWrapper::ColumnVector &s, const SampleMthd sampling_method=SampleMthd::DEFAULT, void *sampling_args=NULL)
 Simulate the Measurement, given a certain state, and an input. 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 &z, const MatrixWrapper::ColumnVector &x, const MatrixWrapper::ColumnVector &s)
 Get the probability of a certain measurement. More...
 
Probability ProbabilityGet (const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)
 Get the probability of a certain measurement. More...
 

Protected Attributes

ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * _MeasurementPdf
 ConditionalPdf representing $ P(Z_k | X_{k}, U_{k}) $.
 
bool _systemWithoutSensorParams
 System with no sensor params??
 

Detailed Description

Class for linear analytic measurementmodels with additive gaussian noise.

This class represents all measurement models of the form

\[ 0 = f (x,z) \]

as a linear measurement model with virtual measurement z_k^{virtual}

\[ z_k^{virtual} = H(x_k,z_k) \times x_k + N(\mu(x_{k},z_k) ,\Sigma(x_k,z_k)) \]

Definition at line 37 of file linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h.

Constructor & Destructor Documentation

◆ LinearAnalyticMeasurementModelGaussianUncertainty_Implicit()

Constructor.

Parameters
pdfConditional pdf, with Gaussian uncertainty

Member Function Documentation

◆ CovarianceGet() [1/2]

virtual MatrixWrapper::SymmetricMatrix& CovarianceGet ( )
pure virtual

Returns covariance of the noise on the linearised measurement model evaluated using measurements z and states x.

The linearised measurement equation look like:

\[ z_k^{virtual} = H(x_{k},z_k) \times x_k + N(\mu(x_{k},z_k) ,\Sigma(x_k,z_k)) \]

with noise

\[ =N(\mu(x_{k},z_k), \Sigma(x_k,z_k))\]

and covariance

\[ \Sigma(x_k,z_k)= D(x_k,z_k)*R*D(x_k,z_k)' \]

and R the noise on the measurements z .

◆ CovarianceGet() [2/2]

virtual MatrixWrapper::SymmetricMatrix CovarianceGet ( const MatrixWrapper::ColumnVector &  z,
const MatrixWrapper::ColumnVector &  x 
)
pure virtual

Returns covariance of the noise on the linearised measurement model evaluated using current z and states x.

The linearised measurement equation look like:

\[ z_k^{virtual} = H(x_{k},z_k) \times x_k + N(\mu(x_{k},z_k) ,\Sigma(x_k,z_k)) \]

with noise

\[ =N(\mu(x_{k},z_k), \Sigma(x_k,z_k))\]

and covariance

\[ \Sigma(x_k,z_k)= D(x_k,z_k)*R*D(x_k,z_k)' \]

and R the noise on the measurements z .

Reimplemented from LinearAnalyticMeasurementModelGaussianUncertainty.

◆ df_dxGet()

virtual MatrixWrapper::Matrix df_dxGet ( const MatrixWrapper::ColumnVector &  z,
const MatrixWrapper::ColumnVector &  x 
)
pure virtual

Returns H-matrix calculated with measurement z and state x.

\[ H = \frac{df}{dx} \mid_{ z, x} \]

used to determine the covariance of noise on the linear measurement equation

Parameters
zThe value of the input in which the derivate is evaluated
xThe value in the state in which the derivate is evaluated

Reimplemented from LinearAnalyticMeasurementModelGaussianUncertainty.

◆ df_dzGet()

virtual MatrixWrapper::Matrix& df_dzGet ( const MatrixWrapper::ColumnVector &  z,
const MatrixWrapper::ColumnVector &  x 
)
pure virtual

Returns D-matrix calculated with measurement z and state x.

\[ D = \frac{df}{dz} \mid_{ z, x} \]

used to determine the covariance of noise on the linear measurement equation

Parameters
zThe value of the input in which the derivate is evaluated
xThe value in the state in which the derivate is evaluated

◆ HSet()

void HSet ( const MatrixWrapper::Matrix &  h)
inherited

Set Matrix H.

This can be particularly useful for time-varying systems

Parameters
hMatrix H

◆ JSet()

void JSet ( const MatrixWrapper::Matrix &  j)
inherited

Set Matrix J.

This can be particularly useful for time-varying systems

Parameters
jMatrix J

◆ MeasurementPdfSet()

void MeasurementPdfSet ( ConditionalPdf< MeasVar, StateVar > *  pdf)
inherited

Set the MeasurementPDF.

Parameters
pdfa pointer to the measurement pdf

◆ ProbabilityGet() [1/2]

Probability ProbabilityGet ( const MeasVar &  z,
const StateVar &  x 
)
inherited

Get the probability of a certain measurement.

(measurement independent of input) gived a certain state and input

Parameters
zthe measurement value
xx current state of the system
Returns
the "probability" of the measurement

◆ ProbabilityGet() [2/2]

Probability ProbabilityGet ( const MeasVar &  z,
const StateVar &  x,
const StateVar &  s 
)
inherited

Get the probability of a certain measurement.

given a certain state and input

Parameters
zthe measurement value
xcurrent state of the system
sthe sensor param value
Returns
the "probability" of the measurement

◆ Simulate() [1/2]

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

Simulate the Measurement, given a certain state, and an input.

Parameters
xcurrent state of the system
ssensor parameter
Returns
Measurement generated by simulating the measurement model
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<StateVar> instead of a StateVar

◆ Simulate() [2/2]

MatrixWrapper::ColumnVector Simulate ( const StateVar &  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 measurement model
Note
Maybe the return value would better be a Sample<StateVar> instead of a StateVar
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)

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