Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BFL::FilterProposalDensity Class Reference

Proposal Density for non-linear systems with additive Gaussian Noise (using a (analytic) Filter) More...

#include <filterproposaldensity.h>

Inheritance diagram for BFL::FilterProposalDensity:
Inheritance graph
[legend]

Public Member Functions

virtual MatrixWrapper::SymmetricMatrix CovarianceGet () const
 Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf. More...
 
virtual MatrixWrapper::Matrix dfGet (unsigned int i) const
 returns derivative from function to n-th conditional variable More...
 
virtual MatrixWrapper::ColumnVector ExpectedValueGet () const
 Get the expected value E[x] of the pdf. More...
 
 FilterProposalDensity (AnalyticSystemModelGaussianUncertainty *SysModel, AnalyticMeasurementModelGaussianUncertainty *MeasModel)
 Constructor. More...
 
 FilterProposalDensity (const FilterProposalDensity &fpd)
 Copy constructor. More...
 
void MeasurementModelSet (AnalyticMeasurementModelGaussianUncertainty *MeasModel)
 Set Measurementmodel. More...
 
void SampleCovSet (MatrixWrapper::SymmetricMatrix &cov)
 Set SampleCov. More...
 
void SystemModelSet (AnalyticSystemModelGaussianUncertainty *SysModel)
 Set SystemModel. More...
 
virtual ~FilterProposalDensity ()
 Destructor. More...
 
- Public Member Functions inherited from BFL::AnalyticConditionalGaussian
 AnalyticConditionalGaussian (int dim=0, int num_conditional_arguments=0)
 Constructor. More...
 
virtual ~AnalyticConditionalGaussian ()
 Destructor. More...
 
- Public Member Functions inherited from BFL::ConditionalGaussian
virtual ConditionalGaussianClone () const
 Clone function. More...
 
 ConditionalGaussian (int dim=0, int num_conditional_arguments=0)
 Constructor. More...
 
virtual Probability ProbabilityGet (const MatrixWrapper::ColumnVector &input) const
 Get the probability of a certain argument. More...
 
virtual bool SampleFrom (Sample< MatrixWrapper::ColumnVector > &sample, int method=DEFAULT, void *args=NULL) const
 
virtual bool SampleFrom (std::vector< Sample< MatrixWrapper::ColumnVector > > &samples, const int num_samples, int method=DEFAULT, void *args=NULL) const
 
virtual ~ConditionalGaussian ()
 Destructor. More...
 
- Public Member Functions inherited from BFL::ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector >
const MatrixWrapper::ColumnVector & ConditionalArgumentGet (unsigned int n_argument) const
 Get the n-th argument of the list. More...
 
virtual void ConditionalArgumentSet (unsigned int n_argument, const MatrixWrapper::ColumnVector &argument)
 Set the n-th argument of the list. More...
 
const std::vector< MatrixWrapper::ColumnVector > & ConditionalArgumentsGet () const
 Get the whole list of conditional arguments. More...
 
virtual void ConditionalArgumentsSet (std::vector< MatrixWrapper::ColumnVector > ConditionalArguments)
 Set the whole list of conditional arguments. More...
 
 ConditionalPdf (int dimension=0, unsigned int num_conditional_arguments=0)
 Constructor. More...
 
unsigned int NumConditionalArgumentsGet () const
 Get the Number of conditional arguments. More...
 
virtual void NumConditionalArgumentsSet (unsigned int numconditionalarguments)
 Set the Number of conditional arguments. More...
 
virtual ~ConditionalPdf ()
 Destructor. More...
 
- Public Member Functions inherited from BFL::BFL::Pdf< MatrixWrapper::ColumnVector >
unsigned int DimensionGet () const
 Get the dimension of the argument. More...
 
virtual void DimensionSet (unsigned int dim)
 Set the dimension of the argument. More...
 
 Pdf (unsigned int dimension=0)
 Constructor. More...
 
virtual bool SampleFrom (vector< Sample< MatrixWrapper::ColumnVector > > &list_samples, const unsigned int num_samples, int method=DEFAULT, void *args=NULL) const
 Draw multiple samples from the Pdf (overloaded) More...
 
virtual bool SampleFrom (Sample< MatrixWrapper::ColumnVector > &one_sample, int method=DEFAULT, void *args=NULL) const
 Draw 1 sample from the Pdf: More...
 
virtual ~Pdf ()
 Destructor. More...
 

Protected Member Functions

virtual void FilterStep () const
 internal method More...
 

Protected Attributes

Filter< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * _filter
 
AnalyticMeasurementModelGaussianUncertainty_measmodel
 
MatrixWrapper::SymmetricMatrix _sample_cov
 
AnalyticSystemModelGaussianUncertainty_sysmodel
 
Gaussian_TmpPrior
 
- Protected Attributes inherited from BFL::ConditionalGaussian
ColumnVector _diff
 
Matrix _Low_triangle
 
ColumnVector _Mu
 
ColumnVector _samples
 
ColumnVector _SampleValue
 

Detailed Description

Proposal Density for non-linear systems with additive Gaussian Noise (using a (analytic) Filter)

Calculates an importance density for all systems of the form

\[ x_k = f(x_{k-1}[,u_k]) + v_k, \quad v_k \sim N(0, \Sigma_v) \]

\[ z_k = h(x_k[,s_k]) + w_k, \quad w_k \sim N(0, \Sigma_w) \]

This means all systems with a system equation and measurement equation that use a AnalyticConditionalGaussian Class. It uses a Filter to generate a proposal

Definition at line 40 of file filterproposaldensity.h.

Constructor & Destructor Documentation

◆ FilterProposalDensity() [1/2]

BFL::FilterProposalDensity::FilterProposalDensity ( AnalyticSystemModelGaussianUncertainty SysModel,
AnalyticMeasurementModelGaussianUncertainty MeasModel 
)

Constructor.

Parameters
SysModel
MeasModel

◆ FilterProposalDensity() [2/2]

BFL::FilterProposalDensity::FilterProposalDensity ( const FilterProposalDensity fpd)

Copy constructor.

Parameters
fpd
Bug:
Not implemented yet

◆ ~FilterProposalDensity()

virtual BFL::FilterProposalDensity::~FilterProposalDensity ( )
virtual

Destructor.

Member Function Documentation

◆ CovarianceGet()

virtual MatrixWrapper::SymmetricMatrix BFL::FilterProposalDensity::CovarianceGet ( ) const
virtual

Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf.

Get first order statistic (Covariance) of this AnalyticPdf

Returns
The Covariance of the Pdf (a SymmetricMatrix of dim DIMENSION)
Todo:
extend this more general to n-th order statistic
Bug:
Discrete pdfs should not be able to use this!

Reimplemented from BFL::BFL::Pdf< MatrixWrapper::ColumnVector >.

◆ dfGet()

virtual MatrixWrapper::Matrix BFL::FilterProposalDensity::dfGet ( unsigned int  i) const
virtual

returns derivative from function to n-th conditional variable

Parameters
iNumber of the conditional variable to use for partial derivation
Returns
Partial derivative with respect to conditional variable i

Reimplemented from BFL::AnalyticConditionalGaussian.

◆ ExpectedValueGet()

virtual MatrixWrapper::ColumnVector BFL::FilterProposalDensity::ExpectedValueGet ( ) const
virtual

Get the expected value E[x] of the pdf.

Get low order statistic (Expected Value) of this AnalyticPdf

Returns
The Expected Value of the Pdf (a ColumnVector with DIMENSION rows)
Note
No set functions here! This can be useful for analytic functions, but not for sample based representations!
For certain discrete Pdfs, this function has no meaning, what is the average between yes and no?

Reimplemented from BFL::BFL::Pdf< MatrixWrapper::ColumnVector >.

◆ FilterStep()

virtual void BFL::FilterProposalDensity::FilterStep ( ) const
protectedvirtual

internal method

◆ MeasurementModelSet()

void BFL::FilterProposalDensity::MeasurementModelSet ( AnalyticMeasurementModelGaussianUncertainty MeasModel)

Set Measurementmodel.

Parameters
MeasModel

◆ SampleCovSet()

void BFL::FilterProposalDensity::SampleCovSet ( MatrixWrapper::SymmetricMatrix &  cov)

Set SampleCov.

Parameters
cov

◆ SystemModelSet()

void BFL::FilterProposalDensity::SystemModelSet ( AnalyticSystemModelGaussianUncertainty SysModel)

Set SystemModel.

Parameters
SysModel

Member Data Documentation

◆ _filter

Filter<MatrixWrapper::ColumnVector,MatrixWrapper::ColumnVector>* BFL::FilterProposalDensity::_filter
mutableprotected

Definition at line 82 of file filterproposaldensity.h.

◆ _measmodel

AnalyticMeasurementModelGaussianUncertainty* BFL::FilterProposalDensity::_measmodel
protected

Definition at line 85 of file filterproposaldensity.h.

◆ _sample_cov

MatrixWrapper::SymmetricMatrix BFL::FilterProposalDensity::_sample_cov
protected

Definition at line 87 of file filterproposaldensity.h.

◆ _sysmodel

AnalyticSystemModelGaussianUncertainty* BFL::FilterProposalDensity::_sysmodel
protected

Definition at line 84 of file filterproposaldensity.h.

◆ _TmpPrior

Gaussian* BFL::FilterProposalDensity::_TmpPrior
mutableprotected

Definition at line 81 of file filterproposaldensity.h.


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


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