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 |
virtual Probability | ProbabilityGet (const T &input) const |
Get the probability of a certain argument. | |
virtual bool | SampleFrom (Sample< MatrixWrapper::ColumnVector > &sample, const SampleMthd method=SampleMthd::DEFAULT, void *args=NULL) const |
virtual bool | SampleFrom (std::vector< Sample< MatrixWrapper::ColumnVector > > &samples, const unsigned int num_samples, const SampleMthd method=SampleMthd::DEFAULT, void *args=NULL) const |
virtual bool | SampleFrom (vector< Sample< T > > &list_samples, const unsigned int num_samples, const SampleMthd method=SampleMthd::DEFAULT, void *args=NULL) const |
Draw multiple samples from the Pdf (overloaded) | |
virtual bool | SampleFrom (Sample< T > &one_sample, const SampleMthd method=SampleMthd::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. | |
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 |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
virtualinherited |
Clone function.
Reimplemented from ConditionalPdf< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector >.
Reimplemented in LinearAnalyticConditionalGaussian.
|
inherited |
Get the n-th argument of the list.
Definition at line 97 of file conditionalpdf.h.
|
virtualinherited |
Set the n-th argument of the list.
n_argument | which one of the conditional arguments |
argument | value of the n-th argument |
Definition at line 104 of file conditionalpdf.h.
|
inherited |
Get the whole list of conditional arguments.
Definition at line 85 of file conditionalpdf.h.
|
virtualinherited |
Set the whole list of conditional arguments.
ConditionalArguments | an STL-vector of type Tcontaining the condtional arguments |
Definition at line 91 of file conditionalpdf.h.
|
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 |
Reimplemented from AnalyticConditionalGaussian.
|
inlineinherited |
|
virtualinherited |
|
virtual |
Get the expected value E[x] of the pdf.
Get low order statistic (Expected Value) of this AnalyticPdf
Reimplemented from Pdf< T >.
|
inlineinherited |
Get the Number of conditional arguments.
Definition at line 71 of file conditionalpdf.h.
|
inlinevirtualinherited |
Set the Number of conditional arguments.
numconditionalarguments | the number of conditionalarguments |
Reimplemented in LinearAnalyticConditionalGaussian.
Definition at line 79 of file conditionalpdf.h.
|
virtualinherited |
Get the probability of a certain argument.
input | T argument of the Pdf |
Reimplemented in DiscretePdf, Gaussian, Uniform, and Mixture< T >.
|
virtualinherited |
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 an enum, eg. SampleMthd::BOXMULLER |
args | Pointer to a struct representing extra sample arguments |
Reimplemented in DiscretePdf, Gaussian, Uniform, MCPdf< T >, and Mixture< T >.
|
virtualinherited |
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 an enum eg. SampleMthd::BOXMULLER |
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... |
Reimplemented in DiscretePdf, Gaussian, Uniform, MCPdf< T >, and Mixture< T >.
Definition at line 179 of file pdf.h.
Referenced by MCPdf< T >::SampleFrom(), and Mixture< T >::SampleFrom().
|
protectedinherited |
additive noise expected value
Definition at line 92 of file analyticconditionalgaussian_additivenoise.h.
|
protectedinherited |
additive noise covariance
Definition at line 95 of file analyticconditionalgaussian_additivenoise.h.
|
mutableprotectedinherited |
Definition at line 67 of file conditionalgaussian.h.
|
mutableprotectedinherited |
Definition at line 69 of file conditionalgaussian.h.
|
mutableprotectedinherited |
Definition at line 68 of file conditionalgaussian.h.
|
mutableprotectedinherited |
Definition at line 70 of file conditionalgaussian.h.
|
mutableprotectedinherited |
Definition at line 71 of file conditionalgaussian.h.