Bayesian Filtering Library  Generated from SVN r
filterproposaldensity.h
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 //
18 
19 #ifndef __FILTER_PROP_DENSITY__
20 #define __FILTER_PROP_DENSITY__
21 
22 #include "analyticconditionalgaussian.h"
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 
79 
80  protected:
81  mutable Gaussian * _TmpPrior;
83 
86 
88 
90  virtual void FilterStep() const;
91 
92  };
93 
94 } // End namespace BFL
95 
96 #endif // __FILTER_PROP_DENSITY__
MatrixWrapper::SymmetricMatrix
Definition: matrix_BOOST.h:109
BFL::Gaussian
Class representing Gaussian (or normal density)
Definition: gaussian.h:27
BFL::Filter< MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector >
MatrixWrapper::Matrix
Implementation of Matrixwrapper using Boost.
Definition: matrix_BOOST.h:46
BFL::AnalyticConditionalGaussian
Abstract Class representing all FULL Analytical Conditional gaussians.
Definition: analyticconditionalgaussian.h:36
BFL::FilterProposalDensity::~FilterProposalDensity
virtual ~FilterProposalDensity()
Destructor.
MatrixWrapper::ColumnVector
Wrapper class for ColumnVectors (Boost implementation)
Definition: vector_BOOST.h:41
BFL::FilterProposalDensity::FilterStep
virtual void FilterStep() const
internal method
BFL::FilterProposalDensity::SampleCovSet
void SampleCovSet(MatrixWrapper::SymmetricMatrix &cov)
Set SampleCov.
BFL::FilterProposalDensity::MeasurementModelSet
void MeasurementModelSet(AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Set Measurementmodel.
BFL::AnalyticMeasurementModelGaussianUncertainty
Definition: analyticmeasurementmodel_gaussianuncertainty.h:30
BFL::FilterProposalDensity::SystemModelSet
void SystemModelSet(AnalyticSystemModelGaussianUncertainty *SysModel)
Set SystemModel.
BFL::AnalyticSystemModelGaussianUncertainty
Class for analytic system models with additive Gauss. uncertainty.
Definition: analyticsystemmodel_gaussianuncertainty.h:31
BFL::FilterProposalDensity::dfGet
virtual MatrixWrapper::Matrix dfGet(unsigned int i) const
returns derivative from function to n-th conditional variable
BFL::FilterProposalDensity::FilterProposalDensity
FilterProposalDensity(AnalyticSystemModelGaussianUncertainty *SysModel, AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Constructor.
BFL::FilterProposalDensity
Proposal Density for non-linear systems with additive Gaussian Noise (using a (analytic) Filter)
Definition: filterproposaldensity.h:40