Bayesian Filtering Library  Generated from SVN r
linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h
1 // $Id$
2 // Copyright (C) 2002 Klaas Gadeyne <first dot last at gmail dot com>
3 //
4 // This program is free software; you can redistribute it and/or modify
5 // it under the terms of the GNU Lesser General Public License as published by
6 // the Free Software Foundation; either version 2.1 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Lesser General Public License for more details.
13 //
14 // You should have received a copy of the GNU Lesser General Public License
15 // along with this program; if not, write to the Free Software
16 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 //
18 #ifndef __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY_IMPLICIT__
19 #define __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY_IMPLICIT__
20 
21 
22 #include "../pdf/gaussian.h"
23 #include "../pdf/linearanalyticconditionalgaussian.h"
24 #include "linearanalyticmeasurementmodel_gaussianuncertainty.h"
25 
26 namespace BFL
27 {
28 
30  // derived from an implicit measurement equation $h(x,z)=0$
31  //
38  {
39  public:
41 
46 
47  // Default Copy constructor will do
48  // LinearAnalyticMeasurementModelGaussianUncertainty_Implicit(const LinearAnalyticMeasurementModelGaussianUncertainty_Implicit& l);
49 
52 
53  // redefinition of virtual functions
54  //
55  virtual const MatrixWrapper::ColumnVector& fGet () const =0;
56  virtual const int TypeGet () const=0;
57  virtual MatrixWrapper::Matrix& dfGet (int number) =0 ;
59 
65 
75 
85 
94  virtual void Calculate(const MatrixWrapper::ColumnVector& x ,const MatrixWrapper::ColumnVector& z,const MatrixWrapper::Matrix& R)=0;
95 
97  virtual const MatrixWrapper::Matrix& SRCovariance() const=0;
99  virtual const int& Is_Identity() const=0;
100  };
101 } // End namespace BFL
102 
103 #endif // __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY__
MatrixWrapper::SymmetricMatrix
Definition: matrix_BOOST.h:109
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::CovarianceGet
virtual MatrixWrapper::SymmetricMatrix & CovarianceGet()=0
Returns covariance of the noise on the linearised measurement model evaluated using measurements z an...
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::ExpectedValueGet
virtual MatrixWrapper::ColumnVector ExpectedValueGet()=0
Return a prediction for the mean of the noise on the linear measurement equation, using the current x...
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::df_dxGet
virtual MatrixWrapper::Matrix df_dxGet(const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
Returns H-matrix calculated with measurement z and state x.
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::~LinearAnalyticMeasurementModelGaussianUncertainty_Implicit
virtual ~LinearAnalyticMeasurementModelGaussianUncertainty_Implicit()
Destructor.
MatrixWrapper::Matrix
Implementation of Matrixwrapper using Boost.
Definition: matrix_BOOST.h:46
BFL::LinearAnalyticMeasurementModelGaussianUncertainty
Class for linear analytic measurementmodels with additive gaussian noise.
Definition: linearanalyticmeasurementmodel_gaussianuncertainty.h:32
BFL::LinearAnalyticConditionalGaussian
Linear Conditional Gaussian.
Definition: linearanalyticconditionalgaussian.h:35
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::df_dzGet
virtual MatrixWrapper::Matrix & df_dzGet(const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
Returns D-matrix calculated with measurement z and state x.
MatrixWrapper::ColumnVector
Wrapper class for ColumnVectors (Boost implementation)
Definition: vector_BOOST.h:41
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit
LinearAnalyticMeasurementModelGaussianUncertainty_Implicit()
Constructor.
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit
Class for linear analytic measurementmodels with additive gaussian noise.
Definition: linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h:37
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::PredictionGet
virtual MatrixWrapper::ColumnVector PredictionGet(const MatrixWrapper::ColumnVector &z, const MatrixWrapper::ColumnVector &x)=0
Return a prediction for the mean of the noise on the linear measurement equation, calculated with mea...
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::SRCovariance
virtual const MatrixWrapper::Matrix & SRCovariance() const =0
Returns square root of the covariance of the measurements z.
BFL::LinearAnalyticMeasurementModelGaussianUncertainty_Implicit::Is_Identity
virtual const int & Is_Identity() const =0
Returns 1 if D-matrix equals the identity matrix else 0.