filterproposaldensity.h
Go to the documentation of this file.
1 // $Id$
2 // Copyright (C) 2003 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 //
18 
19 #ifndef __FILTER_PROP_DENSITY__
20 #define __FILTER_PROP_DENSITY__
21 
23 #include "gaussian.h"
24 #include "../filter/filter.h"
25 #include "../model/analyticmeasurementmodel_gaussianuncertainty.h"
26 #include "../model/analyticsystemmodel_gaussianuncertainty.h"
27 
28 namespace BFL
29 {
31 
41  {
42  public:
44 
49 
51 
55 
57  virtual ~FilterProposalDensity();
58 
59  // redefine pure virtual functions
60  virtual MatrixWrapper::ColumnVector ExpectedValueGet() const;
61  virtual MatrixWrapper::SymmetricMatrix CovarianceGet() const;
62  virtual MatrixWrapper::Matrix dfGet(unsigned int i) const;
63 
65 
68 
70 
73 
75 
78  void SampleCovSet(MatrixWrapper::SymmetricMatrix & cov);
79 
80  protected:
81  mutable Gaussian * _TmpPrior;
83 
86 
87  MatrixWrapper::SymmetricMatrix _sample_cov;
88 
90  virtual void FilterStep() const;
91 
92  };
93 
94 } // End namespace BFL
95 
96 #endif // __FILTER_PROP_DENSITY__
#define MeasModel
Filter< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector > * _filter
virtual MatrixWrapper::ColumnVector ExpectedValueGet() const
Get the expected value E[x] of the pdf.
Class representing Gaussian (or normal density)
Definition: gaussian.h:27
virtual void FilterStep() const
internal method
FilterProposalDensity(AnalyticSystemModelGaussianUncertainty *SysModel, AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Constructor.
AnalyticSystemModelGaussianUncertainty * _sysmodel
AnalyticMeasurementModelGaussianUncertainty * _measmodel
void SystemModelSet(AnalyticSystemModelGaussianUncertainty *SysModel)
Set SystemModel.
Class for analytic system models with additive Gauss. uncertainty.
void SampleCovSet(MatrixWrapper::SymmetricMatrix &cov)
Set SampleCov.
Proposal Density for non-linear systems with additive Gaussian Noise (using a (analytic) Filter) ...
virtual MatrixWrapper::SymmetricMatrix CovarianceGet() const
Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf.
MatrixWrapper::SymmetricMatrix _sample_cov
virtual ~FilterProposalDensity()
Destructor.
void MeasurementModelSet(AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Set Measurementmodel.
virtual MatrixWrapper::Matrix dfGet(unsigned int i) const
returns derivative from function to n-th conditional variable
Abstract Class representing all FULL Analytical Conditional gaussians.


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 28 2022 21:56:33