Changeset 270 for mpdm

Show
Ignore:
Timestamp:
02/16/09 10:02:08 (15 years ago)
Author:
smidl
Message:

Changes in the very root classes!
* rv and rvc are no longer compulsory,
* samplecond does not return ll
* BM has drv

Location:
mpdm
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • mpdm/merg_2a.cpp

    r254 r270  
    3939        mat V0 = 0.001*eye ( 3 ); V0 ( 0,0 ) = 1; // 
    4040 
    41         ARX P1 ( concat ( ab,r ), V0, -1 ); 
    42         ARX P2 ( concat ( ac,r ), V0, -1 ); 
     41        ARX P1; 
     42        P1.set_statistics(2, V0, -1 ); 
     43        ARX P2; 
     44         P2.set_statistics(2, V0, -1 ); 
    4345 
    4446        //Test estimation 
     
    6264 
    6365        //Proposal 
    64         enorm<ldmat> g0 ( ab ); g0.set_parameters ( "1 1 ",mat ( "1 0; 0 1" ) ); 
    65         egamma g1 ( r ); g1.set_parameters ( "2  ", "2" ); 
    66         enorm<ldmat> g2 ( c ); g2.set_parameters ( "1 ",mat ( "1" ) ); 
     66        enorm<ldmat> g0;  
     67        g0.set_parameters ( "1 1 ",mat ( "1 0; 0 1" ) ); 
     68        egamma g1;  
     69        g1.set_parameters ( "2  ", "2" ); 
     70        enorm<ldmat> g2;  
     71        g2.set_parameters ( "1 ",mat ( "1" ) ); 
    6772 
    6873        Array<const epdf*> A ( 3 ); A ( 0 ) = &g0; A ( 1 ) =&g1; A(2) = &g2;  
  • mpdm/merg_giw.cpp

    r254 r270  
    3737        mat V0g = 0.001*eye ( 3 ); V0g ( 0,0 ) = 1; // 
    3838 
    39         ARX P1 ( concat ( a1,r ), V0, -1 ); 
    40         ARX P2 ( concat ( a2,r ), V0, -1 ); 
    41         ARX PG ( all, V0g, -1 ); //or -1? 
     39        ARX P1; P1.set_statistics(2, V0, -1 ); 
     40        ARX P2; P2.set_statistics(2, V0, -1 ); 
     41        ARX PG; PG.set_statistics(3, V0g, -1 ); //or -1? 
    4242//      ARX PGk ( all, V0g, -1 ); 
    4343 
     
    6363 
    6464        //Proposal 
    65         enorm<ldmat> g0 ( a1 ); g0.set_parameters ( "1  ",mat ( "1" ) ); 
    66         egamma g1 ( r ); g1.set_parameters ( "2  ", "2" ); 
    67         enorm<ldmat> g2 ( a2 ); g2.set_parameters ( "1  ",mat ( "1" ) ); 
     65        enorm<ldmat> g0; g0.set_rv( a1 ); g0.set_parameters ( "1  ",mat ( "1" ) ); 
     66        egamma g1; g1.set_rv ( r ); g1.set_parameters ( "2  ", "2" ); 
     67        enorm<ldmat> g2; g2.set_rv ( a2 ); g2.set_parameters ( "1  ",mat ( "1" ) ); 
    6868 
    6969        Array<const epdf*> A ( 3 ); A ( 0 ) = &g0; A ( 1 ) =&g1; A ( 2 ) = &g2; 
  • mpdm/merg_pred.cpp

    r254 r270  
    3131 
    3232        //ARX constructor 
    33         mat V0 = 0.001*eye ( thri.count() ); V0 ( 0,0 ) *= 10; // 
    34         mat V0g = 0.001*eye ( thrg.count() ); V0g ( 0,0 ) *= 10; // 
     33        mat V0 = 0.001*eye ( thri._dsize() ); V0 ( 0,0 ) *= 10; // 
     34        mat V0g = 0.001*eye ( thrg._dsize() ); V0g ( 0,0 ) *= 10; // 
    3535        double nu0 = ord+6.0; 
    3636        double frg = 0.95; 
    3737 
    38         ARX P1 ( thri, V0, nu0, frg ); 
    39         ARX P2 ( thri, V0, nu0, frg ); 
    40         ARX PG ( thrg, V0g, nu0, frg ); 
     38        ARX P1; P1.set_statistics( 2, V0, nu0); P1.set_parameters(frg ); 
     39        ARX P2;P1.set_statistics(2, V0, nu0); P2.set_parameters( frg ); 
     40        ARX PG;PG.set_statistics(3, V0g, nu0);; PG.set_parameters( frg ); 
    4141        //Test estimation 
    4242        int ndat = 200; 
     
    5959 
    6060        Yt.set_subvector ( 0,randn ( ord ) ); //initial values 
    61         vec rgrg ( thrg.count() -1 ); // constant terms are in! 
    62         vec rgr1 ( thri.count() -1 ); 
    63         vec rgr2 ( thri.count() -1 ); 
     61        vec rgrg ( thrg._dsize() -1 ); // constant terms are in! 
     62        vec rgr1 ( thri._dsize() -1 ); 
     63        vec rgr2 ( thri._dsize() -1 ); 
    6464 
    6565        vec PredLLs ( 5 ); 
     
    8383                        // Test predictors 
    8484                        if ( t>2 ) { 
    85                                         mlnorm<ldmat>* P1p = P1.predictor ( y,concat ( ym,u1 ) ); 
    86                                         mlnorm<ldmat>* P2p = P2.predictor ( y,concat ( ym,u2 ) ); 
    87                                         mlnorm<ldmat>* Pgp = PG.predictor ( y,concat ( ym,uu ) ); 
     85                                        mlnorm<ldmat>* P1p = P1.predictor();// ( y,concat ( ym,u1 ) ); 
     86                                        mlnorm<ldmat>* P2p = P2.predictor();// ( y,concat ( ym,u2 ) ); 
     87                                        mlnorm<ldmat>* Pgp = PG.predictor();// ( y,concat ( ym,uu ) ); 
    8888 
    8989                                        Array<mpdf*> A ( 2 ); A ( 0 ) =P1p;A ( 1 ) =P2p; 
    9090                                        merger M ( A ); 
    91                                         enorm<ldmat> g0 ( concat ( yy,uu ) ); g0.set_parameters ( "0 0 0 0 ",3*eye ( 4 ) ); 
     91                                        enorm<ldmat> g0;g0.set_rv ( concat ( yy,uu ) ); g0.set_parameters ( "0 0 0 0 ",3*eye ( 4 ) ); 
    9292                                        M.set_parameters ( 1e8, 101,1 ); 
    9393                                        M.merge ( &g0 ); 
     
    107107                                { 
    108108                                        ARX* Apred = ( ARX* ) M._Mix()._Coms ( 0 ); 
    109                                         enorm<ldmat>* MP= Apred->predictor ( concat ( yy,uu ) ); 
     109                                        enorm<ldmat>* MP= Apred->epredictor ();//( concat ( yy,uu ) ); 
    110110                                        enorm<ldmat>* mP1p = ( enorm<ldmat>* ) MP->marginal ( concat ( yy,u1 ) ); 
    111111                                        enorm<ldmat>* mP2p = ( enorm<ldmat>* ) MP->marginal ( concat ( yy,u2 ) ); 
  • mpdm/merger_iter_cond.cpp

    r262 r270  
    2121        all.add ( u2 ); 
    2222 
    23         mlnorm<fsqmat> f1 ( y , u1 ); 
    24         mlnorm<fsqmat> f2 ( y , u2 ); 
     23        mlnorm<fsqmat> f1; f1.set_rv( y ); f1.set_rvc( u1 ); 
     24        mlnorm<fsqmat> f2; f2.set_rv( y ); f2.set_rvc( u2 ); 
    2525 
    2626        //Differneces in constant term are essential 
     
    3333 
    3434        merger M ( A ); 
    35         enorm<fsqmat> g0 ( all ); 
     35        enorm<fsqmat> g0; g0.set_rv ( all ); 
    3636        g0.set_parameters ( vec ( "1 -1 1" ),3*eye ( 3 ));// +1*ones ( 3,3 ) ); 
    3737 
     
    5050 
    5151                MixEF &MM = M._Mix(); 
    52                 epdf* MP = MM._Coms ( 0 )->predictor ( all ); 
     52                epdf* MP = MM._Coms ( 0 )->epredictor ( ); 
    5353 
    5454                RV yu1 = y; yu1.add ( u1 );