Changeset 950 for library/bdm/estim
- Timestamp:
- 05/18/10 21:19:38 (14 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
library/bdm/estim/particles.h
r907 r950 98 98 bm = UI::build<BM> ( set, "bm", UI::compulsory ); 99 99 } 100 101 void to_setting(const Setting &set){ 102 if (BM::log_level[logfull]){ 103 } 104 } 100 105 void validate(){ 101 106 est_emp.set_point(zeros(par->dimension())); … … 202 207 //! all weightes will be logged 203 208 204 //! \var log_level_enums samples205 //! all samples will be logged206 LOG_LEVEL(PF, weights,samples);209 //! \var log_level_enums menas 210 //! means of particles will be logged 211 LOG_LEVEL(PF,logweights,logmeans,logvars); 207 212 208 213 class pf_mix: public emix_base{ … … 300 305 void from_setting ( const Setting &set ) { 301 306 BM::from_setting ( set ); 307 UI::get ( log_level, set, "log_level", UI::optional ); 302 308 303 309 shared_ptr<BM> bm0 = UI::build<BM>(set, "particle",UI::compulsory); … … 320 326 BM::set_rv(bm0->_rv()); 321 327 yrv=bm0->_yrv(); 328 } 329 330 void log_register ( bdm::logger& L, const string& prefix ){ 331 BM::log_register(L,prefix); 332 if (log_level[logweights]){ 333 L.add_vector( log_level, logweights, RV ( particles.length()), prefix); 334 } 335 if (log_level[logmeans]){ 336 for (int i=0; i<particles.length(); i++){ 337 L.add_vector( log_level, logmeans, RV ( particles(i)->dimension() ), prefix , i); 338 } 339 } 340 }; 341 void log_write ( ) const { 342 BM::log_write(); 343 if (log_level[logweights]){ 344 log_level.store( logweights, w); 345 } 346 if (log_level[logmeans]){ 347 for (int i=0; i<particles.length(); i++){ 348 log_level.store( logmeans, particles(i)->posterior().mean(), i); 349 } 350 } 351 322 352 } 323 353