linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h
Go to the documentation of this file.
00001 // $Id$
00002 // Copyright (C) 2002 Klaas Gadeyne <first dot last at gmail dot com>
00003 //
00004 // This program is free software; you can redistribute it and/or modify
00005 // it under the terms of the GNU Lesser General Public License as published by
00006 // the Free Software Foundation; either version 2.1 of the License, or
00007 // (at your option) any later version.
00008 //
00009 // This program is distributed in the hope that it will be useful,
00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 // GNU Lesser General Public License for more details.
00013 //
00014 // You should have received a copy of the GNU Lesser General Public License
00015 // along with this program; if not, write to the Free Software
00016 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00017 //
00018 #ifndef __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY_IMPLICIT__
00019 #define __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY_IMPLICIT__
00020 
00021 
00022 #include "../pdf/gaussian.h"
00023 #include "../pdf/linearanalyticconditionalgaussian.h"
00024 #include "linearanalyticmeasurementmodel_gaussianuncertainty.h"
00025 
00026 namespace BFL
00027 {
00028 
00030   // derived from an implicit measurement equation $h(x,z)=0$
00031   //
00037   class LinearAnalyticMeasurementModelGaussianUncertainty_Implicit : public LinearAnalyticMeasurementModelGaussianUncertainty
00038     {
00039     public:
00041 
00043       LinearAnalyticMeasurementModelGaussianUncertainty_Implicit( LinearAnalyticConditionalGaussian* pdf);
00045       LinearAnalyticMeasurementModelGaussianUncertainty_Implicit();
00046 
00047       // Default Copy constructor will do
00048       // LinearAnalyticMeasurementModelGaussianUncertainty_Implicit(const LinearAnalyticMeasurementModelGaussianUncertainty_Implicit& l);
00049 
00051       virtual ~LinearAnalyticMeasurementModelGaussianUncertainty_Implicit();
00052 
00053       // redefinition of virtual functions
00054       //
00055       virtual const     MatrixWrapper::ColumnVector&    fGet     () const =0;
00056       virtual const     int        TypeGet     ()  const=0;
00057       virtual           MatrixWrapper::Matrix&          dfGet     (int number)  =0 ;
00059 
00063       virtual MatrixWrapper::Matrix          df_dxGet     (const MatrixWrapper::ColumnVector& z, const MatrixWrapper::ColumnVector& x) =0;
00065 
00069       virtual MatrixWrapper::Matrix&          df_dzGet     (const MatrixWrapper::ColumnVector& z, const MatrixWrapper::ColumnVector& x)=0;
00071       virtual MatrixWrapper::ColumnVector    PredictionGet(const MatrixWrapper::ColumnVector& z, const MatrixWrapper::ColumnVector& x)=0;
00073       virtual MatrixWrapper::ColumnVector    ExpectedValueGet()=0;
00075 
00083       virtual MatrixWrapper::SymmetricMatrix& CovarianceGet()=0;
00085 
00093       virtual MatrixWrapper::SymmetricMatrix CovarianceGet(const MatrixWrapper::ColumnVector& z, const MatrixWrapper::ColumnVector& x)=0;
00094       virtual void            Calculate(const MatrixWrapper::ColumnVector& x ,const  MatrixWrapper::ColumnVector& z,const MatrixWrapper::Matrix& R)=0;
00095 
00097       virtual const          MatrixWrapper::Matrix&          SRCovariance() const=0;
00099       virtual const          int&                            Is_Identity()  const=0;
00100     };
00101 } // End namespace BFL
00102 
00103 #endif // __LINEAR_MEASUREMENT_MODEL_GAUSSIAN_UNCERTAINTY__


bfl
Author(s): Klaas Gadeyne, Wim Meeussen, Tinne Delaet and many others. See web page for a full contributor list. ROS package maintained by Wim Meeussen.
autogenerated on Mon Feb 11 2019 03:45:12