Bayesian Filtering Library Generated from SVN r
|
Conditional Gaussian for an analytic nonlinear system using Ginac: More...
#include <nonlinearanalyticconditionalgaussian_ginac.h>
Public Member Functions | |
NonLinearAnalyticConditionalGaussian_Ginac (const GiNaC::matrix &func, const vector< GiNaC::symbol > &u, const vector< GiNaC::symbol > &x, const Gaussian &additiveNoise, const vector< GiNaC::symbol > &cond) | |
constructor | |
NonLinearAnalyticConditionalGaussian_Ginac (const GiNaC::matrix &func, const vector< GiNaC::symbol > &u, const vector< GiNaC::symbol > &x, const Gaussian &additiveNoise) | |
constructor | |
NonLinearAnalyticConditionalGaussian_Ginac (const NonLinearAnalyticConditionalGaussian_Ginac &g) | |
copy constructor | |
virtual | ~NonLinearAnalyticConditionalGaussian_Ginac () |
Destructor. | |
GiNaC::matrix | FunctionGet () |
return function | |
vector< GiNaC::symbol > | InputGet () |
return substitution symbols | |
vector< GiNaC::symbol > | StateGet () |
return state symbols | |
vector< GiNaC::symbol > | ConditionalGet () |
Get conditional arguments. | |
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. | |
virtual MatrixWrapper::Matrix | dfGet (unsigned int i) const |
const MatrixWrapper::ColumnVector & | AdditiveNoiseMuGet () const |
Get the mean Value of the Additive Gaussian uncertainty. | |
const MatrixWrapper::SymmetricMatrix & | AdditiveNoiseSigmaGet () const |
Get the covariance matrix of the Additive Gaussian uncertainty. | |
void | AdditiveNoiseMuSet (const MatrixWrapper::ColumnVector &mu) |
Set the mean Value of the Additive Gaussian uncertainty. | |
void | AdditiveNoiseSigmaSet (const MatrixWrapper::SymmetricMatrix &sigma) |
Set the covariance of the Additive Gaussian uncertainty. | |
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 |
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) | |
virtual bool | SampleFrom (Sample< MatrixWrapper::ColumnVector > &one_sample, int method=DEFAULT, void *args=NULL) const |
Draw 1 sample from the Pdf: | |
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. | |
virtual 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. | |
virtual 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. | |
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. | |
Protected Attributes | |
MatrixWrapper::ColumnVector | _additiveNoise_Mu |
additive noise expected value | |
MatrixWrapper::SymmetricMatrix | _additiveNoise_Sigma |
additive noise covariance | |
ColumnVector | _diff |
ColumnVector | _Mu |
Matrix | _Low_triangle |
ColumnVector | _samples |
ColumnVector | _SampleValue |
Friends | |
std::ostream & | operator<< (std::ostream &os, NonLinearAnalyticConditionalGaussian_Ginac &p) |
output stream for measurement model |
Conditional Gaussian for an analytic nonlinear system using Ginac:
Describes classes of the type
with
or
Constructor for the first type:
Constructor for the second type:
When the second type is used, the additive noise on c will be converted to additive noise on f, by locally linearising the function.
Definition at line 48 of file nonlinearanalyticconditionalgaussian_ginac.h.
NonLinearAnalyticConditionalGaussian_Ginac | ( | const GiNaC::matrix & | func, |
const vector< GiNaC::symbol > & | u, | ||
const vector< GiNaC::symbol > & | x, | ||
const Gaussian & | additiveNoise, | ||
const vector< GiNaC::symbol > & | cond | ||
) |
constructor
func | function to be evaluated for expected value |
u | symbols to be substituted (by numeric values) for evaluation. These can be system inputs or sensor parameters |
x | symbols representing state |
additiveNoise | Gaussian representing additive noise |
cond | parameters where additive noise applies to |
NonLinearAnalyticConditionalGaussian_Ginac | ( | const GiNaC::matrix & | func, |
const vector< GiNaC::symbol > & | u, | ||
const vector< GiNaC::symbol > & | x, | ||
const Gaussian & | additiveNoise | ||
) |
constructor
func | function to be evaluated for expected value |
u | symbols to be substituted (by numeric values) for evaluation. These can be system inputs or sensor parameters |
x | symbols representing state |
additiveNoise | Gaussian representing additive noise on function output |
const MatrixWrapper::ColumnVector& AdditiveNoiseMuGet | ( | ) | const [inherited] |
void AdditiveNoiseMuSet | ( | const MatrixWrapper::ColumnVector & | mu | ) | [inherited] |
const MatrixWrapper::SymmetricMatrix& AdditiveNoiseSigmaGet | ( | ) | const [inherited] |
void AdditiveNoiseSigmaSet | ( | const MatrixWrapper::SymmetricMatrix & | sigma | ) | [inherited] |
const MatrixWrapper::ColumnVector & ConditionalArgumentGet | ( | unsigned int | n_argument | ) | const [inherited] |
Get the n-th argument of the list.
virtual void ConditionalArgumentSet | ( | unsigned int | n_argument, |
const MatrixWrapper::ColumnVector & | argument | ||
) | [virtual, inherited] |
Set the n-th argument of the list.
n_argument | which one of the conditional arguments |
argument | value of the n-th argument |
const std::vector<MatrixWrapper::ColumnVector >& ConditionalArgumentsGet | ( | ) | const [inherited] |
Get the whole list of conditional arguments.
virtual void ConditionalArgumentsSet | ( | std::vector< MatrixWrapper::ColumnVector > | ConditionalArguments | ) | [virtual, inherited] |
Set the whole list of conditional arguments.
ConditionalArguments | an STL-vector of type Tcontaining the condtional arguments |
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
Reimplemented from AnalyticConditionalGaussianAdditiveNoise.
virtual MatrixWrapper::Matrix dfGet | ( | unsigned int | i | ) | const [virtual] |
Reimplemented from AnalyticConditionalGaussian.
unsigned int DimensionGet | ( | ) | const [inherited] |
Get the dimension of the argument.
unsigned int DimensionGet | ( | ) | const [inherited] |
Get the dimension of the argument.
unsigned int DimensionGet | ( | ) | const [inherited] |
Get the dimension of the 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 |
virtual void DimensionSet | ( | unsigned int | dim | ) | [virtual, inherited] |
Set the dimension of the argument.
dim | the dimension |
virtual void DimensionSet | ( | unsigned int | dim | ) | [virtual, inherited] |
Set the dimension of the argument.
dim | the dimension |
virtual void DimensionSet | ( | unsigned int | dim | ) | [virtual, inherited] |
Set the dimension of the argument.
dim | the 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
Reimplemented from Pdf< MatrixWrapper::ColumnVector >.
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.
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 | ( | 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... |
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 |