root/tests/merger_test.cpp @ 180

Revision 180, 1.5 kB (checked in by smidl, 16 years ago)

Modifications of BDM to reflect changes in basics

RevLine 
[163]1#include <itpp/itbase.h>
2#include <stat/libEF.h>
[176]3#include <estim/merger.h>
[163]4
5using namespace itpp;
6
7//These lines are needed for use of cout and endl
8using std::cout;
9using std::endl;
10
11int main() {
12
[176]13        RV x ( "{x }","1" );
[163]14
[180]15        RV z(x);
16       
[176]17        enorm<fsqmat> f1 ( x );
18        enorm<fsqmat> f2 ( x );
[163]19
[176]20        f1.set_parameters ( "-5",mat ( "2" ) );
21        f2.set_parameters ( "5",mat ( "10" ) );
[163]22
[176]23        Array<mpdf* > A ( 2 );
[180]24        mepdf A1(f1);
25        mepdf A2(f2);
26        A ( 0 ) =&A1;
27        A ( 1 ) =&A2;
28       
[176]29        int Npoints=100;
30        mat x_grid ( 1,Npoints );
31        x_grid.set_row ( 0,linspace ( -10.0, 10.0 ) );
32
33        vec l_f1=f1.evalpdflog_m ( x_grid );
34
35        vec l_f2=f2.evalpdflog_m ( x_grid );
36        mat lW(2,Npoints);
37        lW.set_row(0, l_f1);
38        lW.set_row(1, l_f2 );
39
40        merger M ( A );
[180]41        enorm<fsqmat> g0(x);
42        g0.set_parameters(vec("0.0"),mat("100.0"));
43       
44        M.set_parameters(1.2,1000,3);
45        M.merge(&g0);
46       
[177]47        vec m2 = M.lognorm_merge(lW);
[180]48        vec mm2 = M.evalpdflog_m(x_grid);
49       
50/*      M.set_parameters(1.0,10,3);
[177]51        vec m1 = M.lognorm_merge(lW);
[180]52        M.merge(&g0);
53        vec mm1 = M.evalpdflog_m(x_grid);
54       
55        M.set_parameters(3.0,10,3);
[177]56        vec m3 = M.lognorm_merge(lW);
[180]57        M.merge(&g0);
58        vec mm3 = M.evalpdflog_m(x_grid);
[177]59       
[180]60        M.set_parameters(300.0,10,3);
61        vec m300 = M.lognorm_merge(lW);
62        M.merge(&g0);
63        vec mm300 = M.evalpdflog_m(x_grid);*/
64               
[177]65        it_file it("merger_test.it");
66        it << Name("lf1") << l_f1;
67        it << Name("lf2") << l_f2;
[180]68/*      it << Name("m1") << m1;
69        it << Name("mm1") << mm1;*/
[177]70        it << Name("m2") << m2;
[180]71        it << Name("mm2") << mm2;
72/*      it << Name("m3") << m3;
73        it << Name("mm3") << mm3;
74        it << Name("m300") << m300;
75        it << Name("mm300") << mm300;*/
[163]76}
Note: See TracBrowser for help on using the browser.