Legend:
- Unmodified
- Added
- Removed
-
bdm/stat/libBM.cpp
r278 r280 16 16 //Refer 17 17 int id; 18 RVmap::const_iterator iter = RV_MAP.find ( name ); 18 RVmap::const_iterator iter = RV_MAP.begin(); 19 iter=RV_MAP.find ( name ); 19 20 if ( iter == RV_MAP.end() ) { 20 21 id=RV_MAP.size() +1; 22 //debug 23 /* { 24 cout << endl; 25 RVmap::const_iterator iter = RV_MAP.begin(); 26 for(RVmap::const_iterator iter=RV_MAP.begin(); iter!=RV_MAP.end(); iter++){ 27 cout << "key: " << iter->first << " val: " << iter->second <<endl; 28 } 29 }*/ 30 21 31 RV_MAP.insert ( make_pair ( name,id ) ); //add new rv 22 32 if ( id>=RV_NAMES.length() ) { … … 128 138 int pos = 0; 129 139 for ( i = 0;i < len;i++ ) { 130 idlist.set_subvector ( pos, pos + size ( i ds ( i )) - 1, ids ( i ) );131 tmlist.set_subvector ( pos, pos + size ( i ds ( i )) - 1, times ( i ) );132 pos += size ( i ds ( i ));140 idlist.set_subvector ( pos, pos + size ( i ) - 1, ids ( i ) ); 141 tmlist.set_subvector ( pos, pos + size ( i ) - 1, times ( i ) ); 142 pos += size ( i ); 133 143 } 134 144 return str ( idlist, tmlist ); -
bdm/stat/libDS_ui.h
r278 r280 85 85 IM = { type = "mpdf"; //<-- valid offspring! e.g. "mlnorm" 86 86 rv = { //description of x_t 87 names= ("name1",...);87 names=["name1",...]; 88 88 sizes=[2,1]; // optional default=[1,1...]; 89 89 times=[0,0]; // optional default=[0,0...]; -
bdm/stat/libEF.h
r271 r280 116 116 //!@{ 117 117 118 enorm ( ) :eEF ( ), mu ( ),R ( ) {};118 enorm ( ) :eEF ( ), mu ( ),R ( ) {}; 119 119 enorm ( const vec &mu,const sq_T &R ) {set_parameters ( mu,R );} 120 120 void set_parameters ( const vec &mu,const sq_T &R ); … … 366 366 //!@{ 367 367 eigamma ( ) :eEF ( ), eg(),alpha ( eg._alpha() ), beta ( eg._beta() ) {}; 368 eigamma ( const vec &a, const vec &b ) :eEF ( ), eg(),alpha ( eg._alpha() ), beta ( eg._beta() ) {eg.set_parameters ( a,b );};368 eigamma ( const vec &a, const vec &b ) :eEF ( ), eg(),alpha ( eg._alpha() ), beta ( eg._beta() ) {eg.set_parameters ( a,b );}; 369 369 void set_parameters ( const vec &a, const vec &b ) {eg.set_parameters ( a,b );}; 370 370 //!@} … … 476 476 template<class sq_M> 477 477 friend std::ostream &operator<< ( std::ostream &os, mlnorm<sq_M> &ml ); 478 }; 479 480 //! Mpdf with general function for mean value 481 template<class sq_T> 482 class mgnorm : public mEF { 483 protected: 484 //! Internal epdf that arise by conditioning on \c rvc 485 enorm<sq_T> epdf; 486 vec μ 487 fnc* g; 488 public: 489 //!default constructor 490 mgnorm() :mu ( epdf._mu() ) {ep=&epdf;} 491 //!set mean function 492 void set_parameters ( fnc* g0, const sq_T &R0 ) {g=g0; epdf.set_parameters ( zeros ( g->_dimy() ), R0 );} 493 void condition ( const vec &cond ) {mu=g->eval ( cond );}; 478 494 }; 479 495 … … 663 679 Array<vec> samples; 664 680 public: 665 //! \name Constructors 666 //!@{ 667 eEmp ( ) :epdf ( ),w ( 668 eEmp ( const eEmp &e ): epdf(e), w(e.w), samples(e.samples) {};669 //!@} 670 681 //! \name Constructors 682 //!@{ 683 eEmp ( ) :epdf ( ),w ( ),samples ( ) {}; 684 eEmp ( const eEmp &e ) : epdf ( e ), w ( e.w ), samples ( e.samples ) {}; 685 //!@} 686 671 687 //! Set samples and weights 672 688 void set_parameters ( const vec &w0, const epdf* pdf0 ); … … 817 833 template<class sq_T> 818 834 epdf* enorm<sq_T>::marginal ( const RV &rvn ) const { 819 it_assert_debug (isnamed(), "rv description is not assigned");835 it_assert_debug ( isnamed(), "rv description is not assigned" ); 820 836 ivec irvn = rvn.dataind ( rv ); 821 837 822 838 sq_T Rn ( R,irvn ); //select rows and columns of R 823 839 824 840 enorm<sq_T>* tmp = new enorm<sq_T>; 825 841 tmp->set_rv ( rvn ); … … 856 872 857 873 mlnorm<sq_T>* tmp=new mlnorm<sq_T> ( ); 858 tmp->set_rv (rvn); tmp->set_rvc(rvc);874 tmp->set_rv ( rvn ); tmp->set_rvc ( rvc ); 859 875 tmp->set_parameters ( A,mu1-A*mu2,R_n ); 860 876 return tmp; -
bdm/stat/loggers.h
r271 r280 48 48 void logit ( int id, const vec &v ) { 49 49 it_assert_debug(id<vectors.length(),"Logger was not initialized, run init()."); 50 if(id> 0){ vectors ( id ).set_row ( ind,v );}50 if(id>=0){ vectors ( id ).set_row ( ind,v );} 51 51 } 52 52 //! Save values into an itfile named after \c fname.