21 #include "../wrappers/rng/rng.h" 30 const Gaussian& additiveNoise)
31 : AnalyticConditionalGaussianAdditiveNoise(additiveNoise,ratio.size())
33 , _mean_temp(DimensionGet())
34 , _arg(DimensionGet())
38 for (
unsigned int i=0; i < NumConditionalArgumentsGet() ; i++)
40 arg.resize(_ratio[i].columns());
42 ConditionalArgumentSet(i,arg);
48 const Gaussian& additiveNoise)
49 : AnalyticConditionalGaussianAdditiveNoise(additiveNoise,1)
50 , _mean_temp(DimensionGet())
51 , _arg(DimensionGet())
56 ColumnVector x(a.columns()); x = 0.0;
57 ConditionalArgumentSet(0,x);
72 for (
unsigned int i=0; i < NumConditionalArgumentsGet() ; i++)
74 _arg = ConditionalArgumentGet(i);
75 _mean_temp += (ColumnVector) (MatrixGet(i) * _arg);
77 _mean_temp += AdditiveNoiseMuGet();
84 assert(i < NumConditionalArgumentsGet());
92 _ratio.resize(numconditionalarguments);
98 assert(i < NumConditionalArgumentsGet());
105 assert(i < NumConditionalArgumentsGet());
virtual void NumConditionalArgumentsSet(unsigned int numconditionalarguments)
Set the Number of conditional arguments.
LinearAnalyticConditionalGaussian(const vector< MatrixWrapper::Matrix > &ratio, const Gaussian &additiveNoise)
Constructor.
const MatrixWrapper::Matrix & MatrixGet(unsigned int i) const
Get the i-th matrix of the system.
void MatrixSet(unsigned int i, const MatrixWrapper::Matrix &m)
Set the i-th Matrix for calculation of .
virtual LinearAnalyticConditionalGaussian * Clone() const
Clone function.
virtual MatrixWrapper::ColumnVector ExpectedValueGet() const
Get the expected value E[x] of the pdf.
virtual MatrixWrapper::Matrix dfGet(unsigned int i) const
returns derivative from function to n-th conditional variable
Linear Conditional Gaussian.
virtual ~LinearAnalyticConditionalGaussian()
Destructor.
virtual void NumConditionalArgumentsSet(unsigned int numconditionalarguments)
Be careful: you don't want to use this one: Redefined.