Public Member Functions | Protected Attributes | List of all members
BFL::MeasurementModel< MeasVar, StateVar > Class Template Reference

#include <measurementmodel.h>

Public Member Functions

 MeasurementModel (ConditionalPdf< MeasVar, StateVar > *Measurementpdf=NULL)
 Constructor. More...
 
ConditionalPdf< MeasVar, StateVar > * MeasurementPdfGet ()
 Get the MeasurementPDF. More...
 
void MeasurementPdfSet (ConditionalPdf< MeasVar, StateVar > *pdf)
 Set the MeasurementPDF. More...
 
int MeasurementSizeGet () const
 Get Measurement Size. More...
 
Probability ProbabilityGet (const MeasVar &z, const StateVar &x, const StateVar &s)
 Get the probability of a certain measurement. More...
 
Probability ProbabilityGet (const MeasVar &z, const StateVar &x)
 Get the probability of a certain measurement. More...
 
MeasVar Simulate (const StateVar &x, const StateVar &s, int sampling_method=DEFAULT, void *sampling_args=NULL)
 Simulate the Measurement, given a certain state, and an input. More...
 
MeasVar Simulate (const StateVar &x, int sampling_method=DEFAULT, void *sampling_args=NULL)
 Simulate the system (no input system) More...
 
bool SystemWithoutSensorParams () const
 Number of Conditional Arguments. More...
 
virtual ~MeasurementModel ()
 Destructor. More...
 

Protected Attributes

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

Detailed Description

template<typename MeasVar, typename StateVar>
class BFL::MeasurementModel< MeasVar, StateVar >

Template class representing all possible (continu and discrete) Measurement Models

Todo:
Check if there should be a "model" base class...
Note
Contrary to the system model, this template class has 2 template arguments: this is because of the different nature of the 2 conditional densities $ P ( Z | X ) $ and $ P ( X_k | X_{k-1} ) $ If $ X_{k-1} $ is discrete, then $ X_{k} $ will also be discrete, but a discrete state doesn't automatically imply a discrete measurement (as is proven in ASR!)

Definition at line 53 of file measurementmodel.h.

Constructor & Destructor Documentation

◆ MeasurementModel()

template<typename MeasVar, typename StateVar>
BFL::MeasurementModel< MeasVar, StateVar >::MeasurementModel ( ConditionalPdf< MeasVar, StateVar > *  Measurementpdf = NULL)

Constructor.

Parameters
MeasurementpdfConditionalPdf<MeasVar,StateVar> representing $ P(Z_k | X_{k} (, U_{k})) $
See also
MEASUREMENT_SIZE, STATE_SIZE, INPUT_SIZE, _MeasurementPdf

Definition at line 26 of file measurementmodel.cpp.

◆ ~MeasurementModel()

template<typename MeasVar , typename StateVar >
BFL::MeasurementModel< MeasVar, StateVar >::~MeasurementModel ( )
virtual

Destructor.

Definition at line 57 of file measurementmodel.cpp.

Member Function Documentation

◆ MeasurementPdfGet()

template<typename MeasVar , typename StateVar >
ConditionalPdf< MeasVar, StateVar > * BFL::MeasurementModel< MeasVar, StateVar >::MeasurementPdfGet ( )

Get the MeasurementPDF.

Definition at line 88 of file measurementmodel.cpp.

◆ MeasurementPdfSet()

template<typename MeasVar, typename StateVar>
void BFL::MeasurementModel< MeasVar, StateVar >::MeasurementPdfSet ( ConditionalPdf< MeasVar, StateVar > *  pdf)

Set the MeasurementPDF.

Parameters
pdfa pointer to the measurement pdf

Definition at line 95 of file measurementmodel.cpp.

◆ MeasurementSizeGet()

template<typename MeasVar , typename StateVar >
int BFL::MeasurementModel< MeasVar, StateVar >::MeasurementSizeGet ( ) const

Get Measurement Size.

Definition at line 75 of file measurementmodel.cpp.

◆ ProbabilityGet() [1/2]

template<typename MeasVar, typename StateVar>
Probability BFL::MeasurementModel< MeasVar, StateVar >::ProbabilityGet ( const MeasVar z,
const StateVar x,
const StateVar s 
)

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

Definition at line 150 of file measurementmodel.cpp.

◆ ProbabilityGet() [2/2]

template<typename MeasVar, typename StateVar>
Probability BFL::MeasurementModel< MeasVar, StateVar >::ProbabilityGet ( const MeasVar z,
const StateVar x 
)

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

Definition at line 161 of file measurementmodel.cpp.

◆ Simulate() [1/2]

template<typename MeasVar , typename StateVar>
MeasVar BFL::MeasurementModel< MeasVar, StateVar >::Simulate ( const StateVar x,
const StateVar s,
int  sampling_method = DEFAULT,
void *  sampling_args = NULL 
)

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

Definition at line 122 of file measurementmodel.h.

◆ Simulate() [2/2]

template<typename MeasVar , typename StateVar>
MeasVar BFL::MeasurementModel< MeasVar, StateVar >::Simulate ( const StateVar x,
int  sampling_method = DEFAULT,
void *  sampling_args = NULL 
)

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)

Definition at line 138 of file measurementmodel.h.

◆ SystemWithoutSensorParams()

template<typename MeasVar , typename StateVar >
bool BFL::MeasurementModel< MeasVar, StateVar >::SystemWithoutSensorParams ( ) const

Number of Conditional Arguments.

Definition at line 81 of file measurementmodel.cpp.

Member Data Documentation

◆ _MeasurementPdf

template<typename MeasVar, typename StateVar>
ConditionalPdf<MeasVar,StateVar>* BFL::MeasurementModel< MeasVar, StateVar >::_MeasurementPdf
protected

ConditionalPdf representing $ P(Z_k | X_{k}, U_{k}) $.

Definition at line 62 of file measurementmodel.h.

◆ _systemWithoutSensorParams

template<typename MeasVar, typename StateVar>
bool BFL::MeasurementModel< MeasVar, StateVar >::_systemWithoutSensorParams
protected

System with no sensor params??

Definition at line 65 of file measurementmodel.h.


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


bfl
Author(s): Klaas Gadeyne, Wim Meeussen, Tinne Delaet and many others. See web page for a full contributor list. ROS package maintained by Wim Meeussen.
autogenerated on Mon Feb 28 2022 21:56:34