#include <optimal_importance_density.h>
Public Member Functions | |
OptimalImportanceDensity (AnalyticConditionalGaussian *SystemPdf, LinearAnalyticConditionalGaussian *MeasPdf) | |
Constructor. | |
virtual | ~OptimalImportanceDensity () |
Destructor. | |
virtual ColumnVector | ExpectedValueGet () const |
Get the expected value E[x] of the pdf. | |
virtual SymmetricMatrix | CovarianceGet () const |
Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf. | |
virtual Matrix | dfGet (int i) const |
virtual MatrixWrapper::Matrix | dfGet (unsigned int i) const |
returns derivative from function to n-th conditional variable | |
virtual ConditionalGaussian * | Clone () const |
Clone function. | |
virtual Probability | ProbabilityGet (const MatrixWrapper::ColumnVector &input) const |
Get the probability of a certain argument. | |
virtual bool | SampleFrom (Sample< MatrixWrapper::ColumnVector > &sample, int method=DEFAULT, void *args=NULL) const |
Draw 1 sample from the Pdf:. | |
virtual bool | SampleFrom (std::vector< Sample< MatrixWrapper::ColumnVector > > &samples, const int num_samples, int method=DEFAULT, void *args=NULL) const |
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). | |
unsigned int | NumConditionalArgumentsGet () const |
Get the Number of conditional arguments. | |
virtual void | NumConditionalArgumentsSet (unsigned int numconditionalarguments) |
Set the Number of conditional arguments. | |
const std::vector < MatrixWrapper::ColumnVector > & | ConditionalArgumentsGet () const |
Get the whole list of conditional arguments. | |
void | ConditionalArgumentsSet (std::vector< MatrixWrapper::ColumnVector > ConditionalArguments) |
Set the whole list of conditional arguments. | |
const MatrixWrapper::ColumnVector & | ConditionalArgumentGet (unsigned int n_argument) const |
Get the n-th argument of the list. | |
void | ConditionalArgumentSet (unsigned int n_argument, const MatrixWrapper::ColumnVector &argument) |
Set the n-th argument of the list. | |
unsigned int | DimensionGet () const |
Get the dimension of the argument. | |
virtual void | DimensionSet (unsigned int dim) |
Set the dimension of the argument. | |
Protected Attributes | |
ColumnVector | _diff |
ColumnVector | _Mu |
Matrix | _Low_triangle |
ColumnVector | _samples |
ColumnVector | _SampleValue |
Describes the optimal importance density for all systems of the form
This means all systems with a system equation that uses a AnalyticConditionalGaussian Class and a measurement equation that uses a LinearAnalyticConditionalGaussian class
Definition at line 37 of file optimal_importance_density.h.
OptimalImportanceDensity | ( | AnalyticConditionalGaussian * | SystemPdf, | |
LinearAnalyticConditionalGaussian * | MeasPdf | |||
) |
Constructor.
SystemPdf | ||
MeasPdf |
virtual ColumnVector ExpectedValueGet | ( | ) | const [virtual] |
Get the expected value E[x] of the pdf.
Get low order statistic (Expected Value) of this AnalyticPdf
For certain discrete Pdfs, this function has no meaning, what is the average between yes and no?
Reimplemented from Pdf< MatrixWrapper::ColumnVector >.
virtual 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
Reimplemented from Pdf< MatrixWrapper::ColumnVector >.
virtual MatrixWrapper::Matrix dfGet | ( | unsigned int | i | ) | const [virtual, inherited] |
returns derivative from function to n-th conditional variable
i | Number of the conditional variable to use for partial derivation |
Reimplemented in FilterProposalDensity, LinearAnalyticConditionalGaussian, and NonLinearAnalyticConditionalGaussian_Ginac.
virtual Probability ProbabilityGet | ( | const MatrixWrapper::ColumnVector & | input | ) | const [virtual, inherited] |
Get the probability of a certain argument.
input | T argument of the Pdf |
Reimplemented from Pdf< MatrixWrapper::ColumnVector >.
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!
one_sample | sample that will contain result of sampling | |
method | Sampling method to be used. Each sampling method is currently represented by a define statement, eg. define BOXMULLER 1 | |
args | Pointer to a struct representing extra sample arguments |
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).
list_samples | list of samples that will contain result of sampling | |
num_samples | Number of Samples to be drawn (iid) | |
method | Sampling method to be used. Each sampling method is currently represented by a define statement, eg. define BOXMULLER 1 | |
args | Pointer 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... |
unsigned int NumConditionalArgumentsGet | ( | ) | const [inherited] |
Get the Number of conditional arguments.
virtual void NumConditionalArgumentsSet | ( | unsigned int | numconditionalarguments | ) | [virtual, inherited] |
Set the Number of conditional arguments.
numconditionalarguments | the number of conditionalarguments |
Reimplemented in LinearAnalyticConditionalGaussian.
const std::vector<MatrixWrapper::ColumnVector >& ConditionalArgumentsGet | ( | ) | const [inherited] |
Get the whole list of conditional arguments.
void ConditionalArgumentsSet | ( | std::vector< MatrixWrapper::ColumnVector > | ConditionalArguments | ) | [inherited] |
Set the whole list of conditional arguments.
ConditionalArguments | an STL-vector of type Tcontaining the condtional arguments |
const MatrixWrapper::ColumnVector & ConditionalArgumentGet | ( | unsigned int | n_argument | ) | const [inherited] |
Get the n-th argument of the list.
void ConditionalArgumentSet | ( | unsigned int | n_argument, | |
const MatrixWrapper::ColumnVector & | argument | |||
) | [inherited] |
Set the n-th argument of the list.
n_argument | which one of the conditional arguments | |
argument | value of the n-th argument |
unsigned int DimensionGet | ( | ) | const [inherited] |
Get the dimension of the argument.
virtual void DimensionSet | ( | unsigned int | dim | ) | [virtual, inherited] |
Set the dimension of the argument.
dim | the dimension |