Changeset 124 for bdm/stat/emix.cpp

Show
Ignore:
Timestamp:
06/20/08 11:16:12 (16 years ago)
Author:
smidl
Message:

zmeny v mmix

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • bdm/stat/emix.cpp

    r107 r124  
    33using namespace itpp; 
    44 
    5 void emix::set_parameters ( const vec &w0, const Array<epdf*> &Coms0 ){ 
     5void emix::set_parameters ( const vec &w0, const Array<epdf*> &Coms0 ) { 
    66        w = w0; 
    77        int i; 
    8         for(i=0;i<w.length();i++){it_assert_debug(rv.equal(Coms0(i)->_rv()),"RVs do not match!"); } 
     8        for ( i=0;i<w.length();i++ ) { 
     9                epdf* Mp=Coms0 ( i ); 
     10                it_assert_debug ( rv.equal ( Coms0 ( i )->_rv() ),"RVs do not match!" ); 
     11        } 
    912        Coms = Coms0; 
    1013} 
    1114 
    12 vec emix::sample() const{ 
    13         //Sample which component  
     15vec emix::sample() const { 
     16        //Sample which component 
    1417        vec cumDist = cumsum ( w ); 
    1518        double u0 = UniRNG.sample(); 
    1619 
    1720        int i=0; 
    18         while ((w(i)<u0) && (i<(w.length()-1))){i++;} 
    19          
    20         return Coms(i)->sample(); 
     21        while ( ( w ( i ) <u0 ) && ( i< ( w.length()-1 ) ) ) {i++;} 
     22 
     23        return Coms ( i )->sample(); 
    2124}