Changeset 378 for bdm/stat/emix.h
- Timestamp:
- 06/17/09 23:53:08 (15 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
bdm/stat/emix.h
r361 r378 234 234 /*!\brief Constructor from list of mFacs, 235 235 */ 236 mprod ( Array<mpdf*> mFacs ) : compositepdf ( mFacs ), mpdf (), epdfs ( n ), dls ( n ) { 236 mprod (){}; 237 mprod (Array<mpdf*> mFacs ){set_elements( mFacs );}; 238 void set_elements(Array<mpdf*> mFacs ) { 239 240 set_elements(mFacs); 241 237 242 ep=&dummy; 238 243 RV rv=getrv ( true ); … … 240 245 setrvc ( ep->_rv(),rvc ); 241 246 // rv and rvc established = > we can link them with mpdfs 242 for ( int i = 0;i < n;i++ ) {247 for ( int i = 0;i < mpdfs.length(); i++ ) { 243 248 dls ( i ) = new datalink_m2m; 244 249 dls(i)->set_connection( mpdfs ( i )->_rv(), mpdfs ( i )->_rvc(), _rv(), _rvc() ); 245 250 } 246 251 247 for ( int i=0; i<n;i++ ) {252 for ( int i=0; i<mpdfs.length(); i++ ) { 248 253 epdfs ( i ) =& ( mpdfs ( i )->_epdf() ); 249 254 } … … 253 258 int i; 254 259 double res = 0.0; 255 for ( i = n- 1;i >= 0;i-- ) {260 for ( i = mpdfs.length() - 1;i >= 0;i-- ) { 256 261 /* if ( mpdfs(i)->_rvc().count() >0) { 257 262 mpdfs ( i )->condition ( dls ( i )->get_cond ( val,cond ) ); … … 272 277 vec smpi; 273 278 // Hard assumption here!!! We are going backwards, to assure that samples that are needed from smp are already generated! 274 for ( int i = ( n- 1 );i >= 0;i-- ) {279 for ( int i = ( mpdfs.length() - 1 );i >= 0;i-- ) { 275 280 if ( mpdfs ( i )->dimensionc() ) { 276 281 mpdfs ( i )->condition ( dls ( i )->get_cond ( smp ,cond ) ); // smp is val here!!