Changeset 197 for bdm/stat/libEF.h

Show
Ignore:
Timestamp:
11/04/08 14:54:33 (16 years ago)
Author:
smidl
Message:

opravy v bdm

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • bdm/stat/libEF.h

    r193 r197  
    9393        virtual void flatten ( const BMEF * B ) {it_error ( "Not implemented" );} 
    9494        //!Flatten the posterior as if to keep nu0 data 
    95         virtual void flatten ( double nu0 ) {it_error ( "Not implemented" );} 
     95//      virtual void flatten ( double nu0 ) {it_error ( "Not implemented" );} 
     96         
     97        BMEF* _copy_ ( bool changerv=false ) {it_error ( "function _copy_ not implemented for this BM" ); return NULL;}; 
    9698}; 
    9799 
     
    190192        //! returns a pointer to the internal statistics. Use with Care! 
    191193        double& _nu() {return nu;} 
    192         void pow ( double p ); 
     194        void pow ( double p ){V*=p;nu*=p;}; 
    193195}; 
    194196 
     
    266268        } 
    267269        void flatten ( const BMEF* B ) { 
    268                 const eDirich* E=dynamic_cast<const eDirich*> ( B ); 
     270                const multiBM* E=dynamic_cast<const multiBM*> ( B ); 
    269271                // sum(beta) should be equal to sum(B.beta) 
    270                 const vec &Eb=const_cast<eDirich*> ( E )->_beta(); 
    271                 est.pow ( sum ( beta ) /sum ( Eb ) ); 
     272                const vec &Eb=E->beta;//const_cast<multiBM*> ( E )->_beta(); 
     273                beta*= ( sum ( Eb) /sum ( beta ) ); 
    272274                if ( evalll ) {last_lognc=est.lognc();} 
    273275        }