1#ifndef _BAYES_FILTER_SIR
2#define _BAYES_FILTER_SIR
105template <
class Predict_model>
118 n(q_size), rootq(q_size)
133 xp = Predict_model::f(x);
137 for (FM::DenseVec::iterator ni = n.begin(); ni != n.end(); ++ni) {
138 *ni *= rootq[ni.index()];
150 for (FM::Vec::const_iterator qi = this->q.begin(); qi != this->q.end(); ++qi) {
153 rootq[qi.index()] = std::sqrt(*qi);
161 mutable bool first_init;
233 static const Float rougheningKinit;
Definition bayesFlt.hpp:33
static void error(const Numeric_exception &a)
Definition bayesFlt.cpp:35
Bayesian_filter_matrix::Float Float
Definition bayesFlt.hpp:39
Definition bayesFlt.hpp:123
std::vector< std::size_t > Resamples_t
Definition SIRFlt.hpp:68
virtual Float resample(Resamples_t &presamples, std::size_t &uresamples, FM::DenseVec &w, SIR_random &r) const =0
Definition bayesFlt.hpp:489
Definition bayesFlt.hpp:245
Definition bayesException.hpp:56
Definition SIRFlt.hpp:244
void roughen()
Definition SIRFlt.hpp:268
void roughen_correlated(FM::ColMatrix &P, Float K)
Definition SIRFlt.cpp:518
void init()
Definition SIRFlt.cpp:432
void update_statistics()
Definition SIRFlt.cpp:492
Float update_resample()
Definition SIRFlt.hpp:257
Sampled_LiAd_predict_model roughen_model
Definition SIRFlt.hpp:276
void update()
Definition SIRFlt.hpp:252
Definition SIRFlt.hpp:179
Float rougheningK
Definition SIRFlt.hpp:214
std::size_t stochastic_samples
Definition SIRFlt.hpp:182
bool wir_update
Definition SIRFlt.hpp:231
void predict(Functional_predict_model &f)
Definition SIRFlt.hpp:201
SIR_scheme & operator=(const SIR_scheme &)
Definition SIRFlt.cpp:213
Float update_resample()
Definition SIRFlt.hpp:191
friend class SIR_kalman_scheme
Definition SIRFlt.hpp:180
SIR_random & random
Definition SIRFlt.hpp:225
Importance_resampler::Resamples_t resamples
Definition SIRFlt.hpp:229
void roughen_minmax(FM::ColMatrix &P, Float K) const
Definition SIRFlt.cpp:365
static void copy_resamples(FM::ColMatrix &P, const Importance_resampler::Resamples_t &presamples)
Definition SIRFlt.cpp:324
void observe(Likelihood_observe_model &h, const FM::Vec &z)
Definition SIRFlt.cpp:291
FM::DenseVec wir
Definition SIRFlt.hpp:230
void observe_likelihood(const FM::Vec &lw)
Definition SIRFlt.cpp:308
virtual void roughen()
Definition SIRFlt.hpp:215
void init_S()
Definition SIRFlt.cpp:227
Definition bayesFlt.hpp:693
virtual void predict(Functional_predict_model &f)
Definition bayesFlt.cpp:257
FM::ColMatrix S
Definition bayesFlt.hpp:643
Definition SIRFlt.hpp:111
void init_GqG() const
Definition SIRFlt.hpp:144
Sampled_general_predict_model(std::size_t x_size, std::size_t q_size, SIR_random &random_helper)
Definition SIRFlt.hpp:113
virtual const FM::Vec & fw(const FM::Vec &x) const
Definition SIRFlt.hpp:123
Definition bayesFlt.hpp:110
Float resample(Resamples_t &presamples, std::size_t &uresamples, FM::DenseVec &w, SIR_random &r) const
Definition SIRFlt.cpp:40
Float resample(Resamples_t &presamples, std::size_t &uresamples, FM::DenseVec &w, SIR_random &r) const
Definition SIRFlt.cpp:119
FMMatrix< detail::BaseColMatrix > ColMatrix
Definition uBLASmatrix.hpp:326
FMVec< detail::BaseDenseVector > DenseVec
Definition uBLASmatrix.hpp:333
FMMatrix< detail::SymMatrixWrapper< detail::BaseRowMatrix > > SymMatrix
Definition uBLASmatrix.hpp:327
FMVec< detail::BaseVector > Vec
Definition uBLASmatrix.hpp:323
BOOST_UBLAS_INLINE detail::noalias_proxy< E > noalias(ublas::matrix_expression< E > &lvalue)
Definition uBLASmatrix.hpp:85
double Float
Definition matSupSub.hpp:55
Definition bayesException.hpp:21
Sampled_general_predict_model< Linear_invertible_predict_model > Sampled_LiInAd_predict_model
Definition SIRFlt.hpp:165
Sampled_general_predict_model< Linear_predict_model > Sampled_LiAd_predict_model
Definition SIRFlt.hpp:164
virtual void normal(FM::DenseVec &v)=0
virtual void uniform_01(FM::DenseVec &v)=0
virtual ~SIR_random()
Definition SIRFlt.hpp:56