Show
Ignore:
Timestamp:
05/23/10 11:39:58 (14 years ago)
Author:
smidl
Message:

Student + arx corrections

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/bdm/stat/exp_family.cpp

    r957 r970  
    298298 
    299299void egiw::log_register ( bdm::logger& L, const string& prefix ) { 
    300         if ( log_level[logmean] || log_level[logvariance] ) {  
    301                 root::log_register ( L, prefix ); 
    302                 int th_dim = dimension() - dimx * ( dimx + 1 ) / 2; 
    303  
    304                 if ( log_level[logmean] ) 
    305                         L.add_vector( log_level, logmean, RV ( th_dim ), prefix );  
    306                 if ( log_level[logvariance] ) 
    307                         L.add_vector( log_level, logvariance, RV ( th_dim * th_dim ), prefix ); 
    308         } else { 
    309                 epdf::log_register ( L, prefix ); 
     300        epdf::log_register ( L, prefix ); 
     301        if ( log_level[logvartheta] ) {  
     302                int th_dim = dim - dimx*dimx; // dimension - dimension of cov 
     303                L.add_vector( log_level, logvartheta, RV ( th_dim ), prefix );  
    310304        } 
    311305} 
    312306 
    313307void egiw::log_write() const { 
    314         if ( log_level[logmean] || log_level[logvariance] ) {  
     308        epdf::log_write(); 
     309        if ( log_level[logvartheta] ) {  
    315310                mat M; 
    316311                ldmat Lam; 
    317312                ldmat Vz; 
    318313                factorize ( M, Vz, Lam ); 
    319                 if( log_level[logmean] ) 
    320                         log_level.store( logmean, est_theta() ); 
    321                 if( log_level[logvariance] ) 
    322                         log_level.store( logvariance, cvectorize ( est_theta_cov().to_mat() ) ); 
    323         } else { 
    324                 epdf::log_write(); 
     314                if( log_level[logvartheta] ) 
     315                        log_level.store( logvartheta, cvectorize ( est_theta_cov().to_mat() ) ); 
    325316        } 
    326317}