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
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__
virtual void FilterStep() const
internal method
void SystemModelSet(AnalyticSystemModelGaussianUncertainty *SysModel)
Set SystemModel.
void MeasurementModelSet(AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Set Measurementmodel.
Class representing Gaussian (or normal density)
Definition: gaussian.h:27
FilterProposalDensity(AnalyticSystemModelGaussianUncertainty *SysModel, AnalyticMeasurementModelGaussianUncertainty *MeasModel)
Constructor.
Wrapper class for ColumnVectors (Boost implementation)
Definition: asirfilter.h:41
virtual MatrixWrapper::ColumnVector ExpectedValueGet() const
Get the expected value E[x] of the pdf.
virtual MatrixWrapper::SymmetricMatrix CovarianceGet() const
Get the Covariance Matrix E[(x - E[x])^2] of the Analytic pdf.
Implementation of Matrixwrapper using Boost.
Definition: asirfilter.h:46
virtual ~FilterProposalDensity()
Destructor.
Class for analytic system models with additive Gauss. uncertainty.
Proposal Density for non-linear systems with additive Gaussian Noise (using a (analytic) Filter)
void SampleCovSet(MatrixWrapper::SymmetricMatrix &cov)
Set SampleCov.
Abstract Class representing all FULL Analytical Conditional gaussians.
virtual MatrixWrapper::Matrix dfGet(unsigned int i) const
returns derivative from function to n-th conditional variable