Bayesian Filtering Library  Generated from SVN r
Public Member Functions | Friends
Gaussian Class Reference

Class representing Gaussian (or normal density) More...

#include <gaussian.h>

Inheritance diagram for Gaussian:
Pdf< MatrixWrapper::ColumnVector >

List of all members.

Public Member Functions

 Gaussian (const MatrixWrapper::ColumnVector &Mu, const MatrixWrapper::SymmetricMatrix &Sigma)
 Constructor.
 Gaussian (int dimension=0)
 constructor with only dimensions or nothing
virtual ~Gaussian ()
 Default Copy Constructor will do.
virtual GaussianClone () const
 Clone function.
virtual Probability ProbabilityGet (const MatrixWrapper::ColumnVector &input) const
 Get the probability of a certain argument.
bool SampleFrom (vector< Sample< MatrixWrapper::ColumnVector > > &list_samples, const int num_samples, int method=DEFAULT, void *args=NULL) const
virtual bool SampleFrom (Sample< MatrixWrapper::ColumnVector > &one_sample, int method=DEFAULT, void *args=NULL) const
virtual MatrixWrapper::ColumnVector ExpectedValueGet () const
 Get the expected value E[x] of the pdf.
virtual
MatrixWrapper::SymmetricMatrix 
CovarianceGet () const
 Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf.
void ExpectedValueSet (const MatrixWrapper::ColumnVector &mu)
 Set the Expected Value.
void CovarianceSet (const MatrixWrapper::SymmetricMatrix &cov)
 Set the Covariance Matrix.
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)
virtual bool SampleFrom (Sample< MatrixWrapper::ColumnVector > &one_sample, int method=DEFAULT, void *args=NULL) const
 Draw 1 sample from the Pdf:
unsigned int DimensionGet () const
 Get the dimension of the argument.
unsigned int DimensionGet () const
 Get the dimension of the argument.
unsigned int DimensionGet () const
 Get the dimension of the argument.
unsigned int DimensionGet () const
 Get the dimension of the argument.
virtual void DimensionSet (unsigned int dim)
 Set the dimension of the argument.
virtual void DimensionSet (unsigned int dim)
 Set the dimension of the argument.
virtual void DimensionSet (unsigned int dim)
 Set the dimension of the argument.
virtual void DimensionSet (unsigned int dim)
 Set the dimension of the argument.

Friends

std::ostream & operator<< (std::ostream &os, const Gaussian &g)
 output stream for Gaussian

Detailed Description

Class representing Gaussian (or normal density)

Definition at line 27 of file gaussian.h.


Constructor & Destructor Documentation

Constructor.

Parameters:
MuMean Vector of the Gaussian
SigmaCovariance Matrix of the Gaussian
virtual ~Gaussian ( ) [virtual]

Default Copy Constructor will do.

Destructor


Member Function Documentation

virtual MatrixWrapper::SymmetricMatrix 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 Pdf< MatrixWrapper::ColumnVector >.

Set the Covariance Matrix.

Set the Covariance Matrix

Parameters:
covThe new Covariance matrix
unsigned int DimensionGet ( ) const [inherited]

Get the dimension of the argument.

Returns:
the dimension of the argument
unsigned int DimensionGet ( ) const [inherited]

Get the dimension of the argument.

Returns:
the dimension of the argument
unsigned int DimensionGet ( ) const [inherited]

Get the dimension of the argument.

Returns:
the dimension of the argument
unsigned int DimensionGet ( ) const [inherited]

Get the dimension of the argument.

Returns:
the dimension of the argument
virtual void DimensionSet ( unsigned int  dim) [virtual, inherited]

Set the dimension of the argument.

Parameters:
dimthe dimension
virtual void DimensionSet ( unsigned int  dim) [virtual, inherited]

Set the dimension of the argument.

Parameters:
dimthe dimension
virtual void DimensionSet ( unsigned int  dim) [virtual, inherited]

Set the dimension of the argument.

Parameters:
dimthe dimension
virtual void DimensionSet ( unsigned int  dim) [virtual, inherited]

Set the dimension of the argument.

Parameters:
dimthe dimension
virtual MatrixWrapper::ColumnVector 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 Pdf< MatrixWrapper::ColumnVector >.

Set the Expected Value.

Set the Expected Value

Parameters:
muThe new Expected Value
virtual Probability ProbabilityGet ( const MatrixWrapper::ColumnVector input) const [virtual]

Get the probability of a certain argument.

Parameters:
inputT argument of the Pdf
Returns:
the probability value of the argument

Reimplemented from Pdf< MatrixWrapper::ColumnVector >.

virtual bool SampleFrom ( vector< Sample< MatrixWrapper::ColumnVector > > &  list_samples,
const unsigned int  num_samples,
int  method = DEFAULT,
void *  args = NULL 
) const [virtual, inherited]

Draw multiple samples from the Pdf (overloaded)

Parameters:
list_sampleslist of samples that will contain result of sampling
num_samplesNumber of Samples to be drawn (iid)
methodSampling method to be used. Each sampling method is currently represented by a #define statement, eg. #define BOXMULLER 1
argsPointer to a struct representing extra sample arguments. "Sample Arguments" can be anything (the number of steps a gibbs-iterator should take, the interval width in MCMC, ... (or nothing), so it is hard to give a meaning to what exactly Sample Arguments should represent...
Todo:
replace the C-call "void * args" by a more object-oriented structure: Perhaps something like virtual Sample * Sample (const int num_samples,class Sampler)
Bug:
Sometimes the compiler doesn't know which method to choose!
virtual bool SampleFrom ( Sample< MatrixWrapper::ColumnVector > &  one_sample,
int  method = DEFAULT,
void *  args = NULL 
) const [virtual, inherited]

Draw 1 sample from the Pdf:

There's no need to create a list for only 1 sample!

Parameters:
one_samplesample that will contain result of sampling
methodSampling method to be used. Each sampling method is currently represented by a #define statement, eg. #define BOXMULLER 1
argsPointer to a struct representing extra sample arguments
See also:
SampleFrom()
Bug:
Sometimes the compiler doesn't know which method to choose!

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