close Warning: Can't synchronize with repository "(default)" (/var/svn/mms does not appear to be a Subversion repository.). Look in the Trac log for more information.

Ticket #165: ejemplo.tol

File ejemplo.tol, 2.4 KB (added by Pedro Gea, 15 years ago)
Line 
1
2//////////////////////////////////////////////////////////////////////////////
3// Definición
4
5Real PutRandomSeed(2143);
6
7Date begin = y2010;
8Date end = y2010m12d31;
9
10Serie noise = SubSer(Gaussian(0,0.1), begin, end);
11Serie input1 = SubSer(Gaussian(0,1), Succ(begin,C,-2), end);
12Serie input2 = SubSer(Gaussian(0,1), begin, end);
13Serie output = noise + (0.2-0.1*B^2):input1 + 0.15*input2;
14
15//////////////////////////////////////////////////////////////////////////////
16// Estimación 0
17
18Set mod00 = @ModelDef(output, 1,0,1,0, 1, SetOfPolyn(1-0.1*B), SetOfPolyn(1),
19  [[ @InputDef(0.1+0.1*B^2, input1),
20     @InputDef(0.1, input2) ]], Copy(Empty) );
21
22Real Show(0, "ALL");
23Set est00 = Estimate(mod00);
24Real Show(1, "ALL");
25
26//////////////////////////////////////////////////////////////////////////////
27// Estimación 1 (anteponiendo ceros a input2 para que no falle)
28
29Set mod01 = @ModelDef(output, 1,0,1,0, 1, SetOfPolyn(1-0.1*B), SetOfPolyn(1),
30  [[ @InputDef(0.1+0.1*B^2, input1),
31     @InputDef(0.1, CalInd(W,C)<<input2) ]], Copy(Empty) );
32
33Real Show(0, "ALL");
34Set est01 = Estimate(mod01);
35Real Show(1, "ALL");
36
37//////////////////////////////////////////////////////////////////////////////
38// Estimación 2 (anteponiendo numeros muy altos a input 2 para que no falle)
39
40Set mod02 = @ModelDef(output, 1,0,1,0, 1, SetOfPolyn(1-0.1*B), SetOfPolyn(1),
41  [[ @InputDef(0.1+0.1*B^2, input1),
42     @InputDef(0.1, (10^10*CalInd(C,C))<<input2) ]], Copy(Empty) );
43
44Real Show(0, "ALL");
45Set est02 = Estimate(mod02);
46Real Show(1, "ALL");
47
48//////////////////////////////////////////////////////////////////////////////
49// Estimación 3 (separando el input1 en dos para que no falle)
50
51Set mod03 = @ModelDef(output, 1,0,1,0, 1, SetOfPolyn(1-0.1*B), SetOfPolyn(1),
52  [[ @InputDef(0.1, input1),
53     @InputDef(0.1, (B^2):input1),
54     @InputDef(0.1, input2) ]], Copy(Empty) );
55
56Real Show(0, "ALL");
57Set est03 = Estimate(mod03);
58Real Show(1, "ALL");
59
60//////////////////////////////////////////////////////////////////////////////
61// Comparación
62
63Set parametros = est00::ParameterInfo << est01::ParameterInfo
64  << est02::ParameterInfo << est03::ParameterInfo;
65
66Set residuos = [[ est00::Series::Residuals, est01::Series::Residuals,
67  est02::Series::Residuals, est03::Series::Residuals ]];
68
69//////////////////////////////////////////////////////////////////////////////