Show
Ignore:
Timestamp:
11/25/09 12:14:38 (14 years ago)
Author:
mido
Message:

ASTYLER RUN OVER THE WHOLE LIBRARY, JUPEE

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/bdm/estim/kalman.cpp

    r686 r737  
    1313        const vec &u = cond; // in this case cond=ut 
    1414        const vec &y = yt; 
    15          
     15 
    1616        vec& mu = est._mu(); 
    1717        mat &P = est._R(); 
     
    2020        //Time update 
    2121        mu = A * mu + B * u; 
    22         P  = A * P * A.transpose() + (mat)Q; 
     22        P  = A * P * A.transpose() + ( mat ) Q; 
    2323 
    2424        //Data update 
    25         _Ry = C * P * C.transpose() + (mat)R; 
     25        _Ry = C * P * C.transpose() + ( mat ) R; 
    2626        _K = P * C.transpose() * inv ( _Ry ); 
    2727        P -= _K * C * P; // P = P -KCP; 
     
    3030 
    3131        if ( evalll ) { 
    32                 ll=fy.evallog(y); 
     32                ll = fy.evallog ( y ); 
    3333        } 
    3434}; 
     
    4343        phxu = phxu0; 
    4444 
    45         set_dim( pfxu0->_dimx()); 
     45        set_dim ( pfxu0->_dimx() ); 
    4646        dimy = phxu0->dimension(); 
    4747        dimc = pfxu0->_dimu(); 
    48         est.set_parameters( zeros(dimension()), eye(dimension()) ); 
     48        est.set_parameters ( zeros ( dimension() ), eye ( dimension() ) ); 
    4949 
    5050        A.set_size ( dimension(), dimension() ); 
     
    6060} 
    6161 
    62 void EKFfull::bayes ( const vec &yt, const vec &cond) { 
     62void EKFfull::bayes ( const vec &yt, const vec &cond ) { 
    6363        bdm_assert_debug ( yt.length() == ( dimy ), "EKFull::bayes wrong size of dt" ); 
    6464        bdm_assert_debug ( cond.length() == ( dimc ), "EKFull::bayes wrong size of dt" ); 
    65          
     65 
    6666        const vec &u = cond; 
    6767        const vec &y = yt; //lazy to change it 
     
    7070        mat& _Ry = fy._R(); 
    7171        vec& yp = fy._mu(); 
    72          
     72 
    7373        pfxu->dfdx_cond ( mu, zeros ( dimc ), A, true ); 
    7474        phxu->dfdx_cond ( mu, zeros ( dimc ), C, true ); 
     
    7676        //Time update 
    7777        mu = pfxu->eval ( mu, u );// A*mu + B*u; 
    78         P  = A * P * A.transpose() + (mat)Q; 
     78        P  = A * P * A.transpose() + ( mat ) Q; 
    7979 
    8080        //Data update 
    81         _Ry = C * P * C.transpose() + (mat)R; 
     81        _Ry = C * P * C.transpose() + ( mat ) R; 
    8282        _K = P * C.transpose() * inv ( _Ry ); 
    8383        P -= _K * C * P; // P = P -KCP; 
     
    8686 
    8787        if ( BM::evalll ) { 
    88                 ll=fy.evallog(y); 
     88                ll = fy.evallog ( y ); 
    8989        } 
    9090}; 
     
    9595 
    9696        ( ( StateSpace<chmat>* ) this )->set_parameters ( A0, B0, C0, D0, Q0, R0 ); 
    97          
    98         _K=zeros(dimension(),dimy); 
    99 } 
    100  
    101 void KalmanCh::initialize(){ 
     97 
     98        _K = zeros ( dimension(), dimy ); 
     99} 
     100 
     101void KalmanCh::initialize() { 
    102102        preA = zeros ( dimy + dimension() + dimension(), dimy + dimension() ); 
    103103//      preA.clear(); 
     
    107107 
    108108void KalmanCh::bayes ( const vec &yt, const vec &cond ) { 
    109         bdm_assert_debug(yt.length()==dimy, "yt mismatch"); 
    110         bdm_assert_debug(cond.length()==dimc, "yt mismatch"); 
    111          
     109        bdm_assert_debug ( yt.length() == dimy, "yt mismatch" ); 
     110        bdm_assert_debug ( cond.length() == dimc, "yt mismatch" ); 
     111 
    112112        const vec &u = cond; 
    113113        const vec &y = yt; 
    114114        vec pom ( dimy ); 
    115115 
    116         chmat &_P=est._R(); 
     116        chmat &_P = est._R(); 
    117117        vec &_mu = est._mu(); 
    118         mat _K(dimension(),dimy); 
    119         chmat &_Ry=fy._R(); 
     118        mat _K ( dimension(), dimy ); 
     119        chmat &_Ry = fy._R(); 
    120120        vec &_yp = fy._mu(); 
    121121        //TODO get rid of Q in qr()! 
     
    156156        phxu = phxu0; 
    157157 
    158         set_dim( pfxu0->_dimx()); 
     158        set_dim ( pfxu0->_dimx() ); 
    159159        dimy = phxu0->dimension(); 
    160160        dimc = pfxu0->_dimu(); 
    161          
     161 
    162162        vec &_mu = est._mu(); 
    163163        // if mu is not set, set it to zeros, just for constant terms of A and C 
    164         if ( _mu.length() != dimension() ) _mu = zeros ( dimension() );  
     164        if ( _mu.length() != dimension() ) _mu = zeros ( dimension() ); 
    165165        A = zeros ( dimension(), dimension() ); 
    166166        C = zeros ( dimy, dimension() ); 
     
    194194        chmat &_Ry = fy._R(); 
    195195        vec &_yp = fy._mu(); 
    196          
     196 
    197197        pfxu->dfdx_cond ( _mu, u, A, false ); //update A by a derivative of fx 
    198198        phxu->dfdx_cond ( _mu, u, C, false ); //update A by a derivative of fx 
     
    244244 
    245245void EKFCh::from_setting ( const Setting &set ) { 
    246         BM::from_setting(set); 
     246        BM::from_setting ( set ); 
    247247        shared_ptr<diffbifn> IM = UI::build<diffbifn> ( set, "IM", UI::compulsory ); 
    248248        shared_ptr<diffbifn> OM = UI::build<diffbifn> ( set, "OM", UI::compulsory );