From f570680c6f68a33124a299f43490d2fef545adea Mon Sep 17 00:00:00 2001 From: michel Date: Sat, 19 Feb 2005 19:13:45 +0000 Subject: [PATCH] copying tests from version 3 to version 4 git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@10 ac1d8469-bf42-47a9-8791-bf33cf982152 --- tests/arima/mod1.mod | 23 +++ tests/arima/mod1a.mod | 23 +++ tests/arima/mod1b.mod | 25 ++++ tests/arima/mod1c.mod | 27 ++++ tests/arima/mod2.mod | 26 ++++ tests/arima/mod2a.mod | 33 +++++ tests/arima/mod2b.mod | 33 +++++ tests/arima/mod2c.mod | 31 ++++ tests/example1.mod | 44 ++++++ tests/example2.mod | 44 ++++++ tests/fs2000/fs2000.mod | 89 ++++++++++++ tests/fs2000/fs2000a.mod | 101 +++++++++++++ tests/fs2000/fs2000a_steadystate.m | 53 +++++++ tests/fs2000/fsdat.m | 210 +++++++++++++++++++++++++++ tests/fs2000/test.m | 4 + tests/ls2003/data_ca1.m | 100 +++++++++++++ tests/ls2003/ls2003.mod | 65 +++++++++ tests/ls2003/ls2003a.mod | 65 +++++++++ tests/objectives/CVS/Entries | 7 + tests/objectives/CVS/Repository | 1 + tests/objectives/CVS/Root | 1 + tests/objectives/CVS/Tag | 1 + tests/objectives/sgu_ex1.log | 15 ++ tests/objectives/sgu_ex1.m | 98 +++++++++++++ tests/objectives/sgu_ex1.mat | Bin 0 -> 1368 bytes tests/objectives/sgu_ex1.mod | 33 +++++ tests/objectives/sgu_ex1_ff.m | 11 ++ tests/objectives/sgu_ex1_fff.m | 11 ++ tests/pi2004/idata.m | 5 + tests/pi2004/ireland.mod | 90 ++++++++++++ tests/pi2004/ireland1.mod | 90 ++++++++++++ tests/pi2004/ych.dat | 218 +++++++++++++++++++++++++++++ tests/ramst.mod | 36 +++++ tests/ramst_a.mod | 37 +++++ tests/run_test.m | 39 ++++++ tests/t_lag2.mod | 40 ++++++ tests/t_lag2_check.mod | 44 ++++++ tests/t_lag2_checka.mod | 44 ++++++ tests/t_lag2a.mod | 44 ++++++ tests/t_lag2b.mod | 42 ++++++ tests/t_periods.mod | 44 ++++++ tests/t_periods_a.mod | 36 +++++ tests/t_sgu_ex1.mod | 38 +++++ tests/test_matlab.mod | 40 ++++++ tests/variance_0.mod | 42 ++++++ 45 files changed, 2103 insertions(+) create mode 100644 tests/arima/mod1.mod create mode 100644 tests/arima/mod1a.mod create mode 100644 tests/arima/mod1b.mod create mode 100644 tests/arima/mod1c.mod create mode 100644 tests/arima/mod2.mod create mode 100644 tests/arima/mod2a.mod create mode 100644 tests/arima/mod2b.mod create mode 100644 tests/arima/mod2c.mod create mode 100644 tests/example1.mod create mode 100644 tests/example2.mod create mode 100644 tests/fs2000/fs2000.mod create mode 100644 tests/fs2000/fs2000a.mod create mode 100644 tests/fs2000/fs2000a_steadystate.m create mode 100644 tests/fs2000/fsdat.m create mode 100644 tests/fs2000/test.m create mode 100644 tests/ls2003/data_ca1.m create mode 100644 tests/ls2003/ls2003.mod create mode 100644 tests/ls2003/ls2003a.mod create mode 100644 tests/objectives/CVS/Entries create mode 100644 tests/objectives/CVS/Repository create mode 100644 tests/objectives/CVS/Root create mode 100644 tests/objectives/CVS/Tag create mode 100644 tests/objectives/sgu_ex1.log create mode 100644 tests/objectives/sgu_ex1.m create mode 100644 tests/objectives/sgu_ex1.mat create mode 100644 tests/objectives/sgu_ex1.mod create mode 100644 tests/objectives/sgu_ex1_ff.m create mode 100644 tests/objectives/sgu_ex1_fff.m create mode 100644 tests/pi2004/idata.m create mode 100644 tests/pi2004/ireland.mod create mode 100644 tests/pi2004/ireland1.mod create mode 100644 tests/pi2004/ych.dat create mode 100644 tests/ramst.mod create mode 100644 tests/ramst_a.mod create mode 100644 tests/run_test.m create mode 100644 tests/t_lag2.mod create mode 100644 tests/t_lag2_check.mod create mode 100644 tests/t_lag2_checka.mod create mode 100644 tests/t_lag2a.mod create mode 100644 tests/t_lag2b.mod create mode 100644 tests/t_periods.mod create mode 100644 tests/t_periods_a.mod create mode 100644 tests/t_sgu_ex1.mod create mode 100644 tests/test_matlab.mod create mode 100644 tests/variance_0.mod diff --git a/tests/arima/mod1.mod b/tests/arima/mod1.mod new file mode 100644 index 000000000..7a8dabf2b --- /dev/null +++ b/tests/arima/mod1.mod @@ -0,0 +1,23 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y; + +rho_x = 0.5; +rho_y = -0.3; + +model; +dx = rho_x*dx(-1)+e_x; +dy = rho_y*dy(-1)+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +shocks; +var e_x; stderr 0.01; +var e_y; stderr 0.01; +end; + +stoch_simul(order=1,periods=1000,irf=0,nomoments); + +save data1 dx dy x y; \ No newline at end of file diff --git a/tests/arima/mod1a.mod b/tests/arima/mod1a.mod new file mode 100644 index 000000000..9f63405d7 --- /dev/null +++ b/tests/arima/mod1a.mod @@ -0,0 +1,23 @@ +var dx dy; +varexo e_x e_y; + +parameters rho_x rho_y; + +rho_x = 0.5; +rho_y = -0.3; + +model; +dx = rho_x*dx(-1)+e_x; +dy = rho_y*dy(-1)+e_y; +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs dx dy; +check; +estimation(datafile=data1,nobs=1000,mh_replic=2000); \ No newline at end of file diff --git a/tests/arima/mod1b.mod b/tests/arima/mod1b.mod new file mode 100644 index 000000000..3842bd674 --- /dev/null +++ b/tests/arima/mod1b.mod @@ -0,0 +1,25 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y; + +rho_x = 0.5; +rho_y = -0.3; + +model; +dx = rho_x*dx(-1)+e_x; +dy = rho_y*dy(-1)+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs x y; +options_.unit_root_vars = {'x'; 'y'}; +estimation(datafile=data1,nobs=1000,mh_replic=0,load_mh_file,mode_compute=0,mode_file=mod1b_mode,lik_init=2); \ No newline at end of file diff --git a/tests/arima/mod1c.mod b/tests/arima/mod1c.mod new file mode 100644 index 000000000..a77478a85 --- /dev/null +++ b/tests/arima/mod1c.mod @@ -0,0 +1,27 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y; + +rho_x = 0.5; +rho_y = -0.3; + +model; +dx = rho_x*dx(-1)+e_x; +dy = rho_y*dy(-1)+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +stderr x,INV_GAMMA_PDF,0.01,inf; +stderr y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs x y; +options_.unit_root_vars = {'x'; 'y'}; +estimation(datafile=data1,nobs=1000,mh_replic=2000,lik_init=2); \ No newline at end of file diff --git a/tests/arima/mod2.mod b/tests/arima/mod2.mod new file mode 100644 index 000000000..c84df1892 --- /dev/null +++ b/tests/arima/mod2.mod @@ -0,0 +1,26 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y b a1 a2; + +rho_x = 0.5; +rho_y = -0.3; +b = 1; +a1 = -0.1; +a2 = 0.2; + +model; +dx = rho_x*dx(-1)+a1*(x(-1)-b*y(-1))+e_x; +dy = rho_y*dy(-1)+a2*(x(-1)-b*y(-1))+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +shocks; +var e_x; stderr 0.01; +var e_y; stderr 0.01; +end; + +stoch_simul(order=1,periods=1000,irf=0,nomoments); + +save data2 dx dy x y; \ No newline at end of file diff --git a/tests/arima/mod2a.mod b/tests/arima/mod2a.mod new file mode 100644 index 000000000..9414afa90 --- /dev/null +++ b/tests/arima/mod2a.mod @@ -0,0 +1,33 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y b a1 a2; + +rho_x = 0.5; +rho_y = -0.3; +b = 1; +a1 = -0.1; +a2 = 0.2; + +model; +dx = rho_x*dx(-1)+a1*(x(-1)-b*y(-1))+e_x; +dy = rho_y*dy(-1)+a2*(x(-1)-b*y(-1))+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +b,NORMAL_PDF,1,0.1; +a1,NORMAL_PDF,-0.1,0.1; +a2,NORMAL_PDF,0.2,0.1; + +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs dx dy; + +options_.unit_root_vars = {'x'; 'y'}; +estimation(datafile=data2,nobs=100,mh_replic=0,lik_init=2); diff --git a/tests/arima/mod2b.mod b/tests/arima/mod2b.mod new file mode 100644 index 000000000..d2465a22c --- /dev/null +++ b/tests/arima/mod2b.mod @@ -0,0 +1,33 @@ +var dx dy x y; +varexo e_x e_y; + +parameters rho_x rho_y b a1 a2; + +rho_x = 0.5; +rho_y = -0.3; +b = 1; +a1 = -0.1; +a2 = 0.2; + +model; +dx = rho_x*dx(-1)+a1*(x(-1)-b*y(-1))+e_x; +dy = rho_y*dy(-1)+a2*(x(-1)-b*y(-1))+e_y; +x = x(-1)+dx; +y = y(-1)+dy; +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +b,NORMAL_PDF,1,0.1; +a1,NORMAL_PDF,-0.1,0.1; +a2,NORMAL_PDF,0.2,0.1; + +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs x y; + +options_.unit_root_vars = {'x'; 'y'}; +estimation(datafile=data2,nobs=100,mh_replic=0,lik_init=2); diff --git a/tests/arima/mod2c.mod b/tests/arima/mod2c.mod new file mode 100644 index 000000000..8ce2cae8e --- /dev/null +++ b/tests/arima/mod2c.mod @@ -0,0 +1,31 @@ +var dx dy coint_err; +varexo e_x e_y; + +parameters rho_x rho_y b a1 a2; + +rho_x = 0.5; +rho_y = -0.3; +b = 1; +a1 = -0.1; +a2 = 0.2; + +model; +dx = rho_x*dx(-1)+a1*coint_err(-1)+e_x; +dy = rho_y*dy(-1)+a2*coint_err(-1)+e_y; +coint_err = dx-b*dy+coint_err(-1); +end; + +estimated_params; +rho_x,NORMAL_PDF,0.5,0.1; +rho_y,NORMAL_PDF,-0.3,0.1; +b,NORMAL_PDF,1,0.1; +a1,NORMAL_PDF,-0.1,0.1; +a2,NORMAL_PDF,0.2,0.1; + +stderr e_x,INV_GAMMA_PDF,0.01,inf; +stderr e_y,INV_GAMMA_PDF,0.01,inf; +end; + +varobs dx dy; + +estimation(datafile=data2,nobs=100,mh_replic=0); diff --git a/tests/example1.mod b/tests/example1.mod new file mode 100644 index 000000000..334ef7906 --- /dev/null +++ b/tests/example1.mod @@ -0,0 +1,44 @@ +// example 1 from Collard's guide to Dynare +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b(-1) + e; +b = tau*a(-1)+rho*b(-1) + u; +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +shocks; +var e; stderr 0.009; +var u; stderr 0.009; +var e, u = phi*0.009*0.009; +end; + +stoch_simul(periods=2100); diff --git a/tests/example2.mod b/tests/example2.mod new file mode 100644 index 000000000..e2c4eeb1b --- /dev/null +++ b/tests/example2.mod @@ -0,0 +1,44 @@ +// example 2 from Collard's guide to Dynare +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau ; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +model; +exp(c)*theta*exp(h)^(1+psi)=(1-alpha)*exp(y); +exp(k) = beta*(((exp(b)*exp(c))/(exp(b(+1))*exp(c(+1)))) + *(exp(b(+1))*alpha*exp(y(+1))+(1-delta)*exp(k))); +exp(y) = exp(a)*(exp(k(-1))^alpha)*(exp(h)^(1-alpha)); +exp(k) = exp(b)*(exp(y)-exp(c))+(1-delta)*exp(k(-1)); +a = rho*a(-1)+tau*b(-1) + e; +b = tau*a(-1)+rho*b(-1) + u; +end; + +initval; +y = 0.1; +c = -0.2; +h = -1.2; +k = 2.4; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +steady; + +shocks; +var e = 0.009^2; +var u = 0.009^2; +end; + +stoch_simul(dr_algo=1,drop=200); + diff --git a/tests/fs2000/fs2000.mod b/tests/fs2000/fs2000.mod new file mode 100644 index 000000000..b410abbe4 --- /dev/null +++ b/tests/fs2000/fs2000.mod @@ -0,0 +1,89 @@ +// This file replicates the estimation of the CIA model from +// Frank Schorfheide (2000) "Loss function-based evaluation of DSGE models" +// Journal of Applied Econometrics, 15, 645-670. +// the data are the ones provided on Schorfheide's web site with the programs. +// http://www.econ.upenn.edu/~schorf/programs/dsgesel.ZIP +// You need to have fsdat.m in the same directory as this file. +// This file replicates: +// -the posterior mode as computed by Frank's Gauss programs +// -the parameter mean posterior estimates reported in the paper +// -the model probability (harmonic mean) reported in the paper +// This file was tested with dyn_mat_test_0218.zip +// the smooth shocks are probably stil buggy +// +// The equations are taken from J. Nason and T. Cogley (1994) +// "Testing the implications of long-run neutrality for monetary business +// cycle models" Journal of Applied Econometrics, 9, S37-S70. +// Note that there is an initial minus sign missing in equation (A1), p. S63. +// +// Michel Juillard, February 2004 + +var m P c e W R k d n l gy_obs gp_obs y dA; +varexo e_a e_m; + +parameters alp bet gam mst rho psi del; + +alp = 0.33; +bet = 0.99; +gam = 0.003; +mst = 1.011; +rho = 0.7; +psi = 0.787; +del = 0.02; + +model; +dA = exp(gam+e_a); +log(m) = (1-rho)*log(mst) + rho*log(m(-1))+e_m; +-P/(c(+1)*P(+1)*m)+bet*P(+1)*(alp*exp(-alp*(gam+log(e(+1))))*k^(alp-1)*n(+1)^(1-alp)+(1-del)*exp(-(gam+log(e(+1)))))/(c(+2)*P(+2)*m(+1))=0; +W = l/n; +-(psi/(1-psi))*(c*P/(1-n))+l/n = 0; +R = P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(-alp)/W; +1/(c*P)-bet*P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)/(m*l*c(+1)*P(+1)) = 0; +c+k = exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)+(1-del)*exp(-(gam+e_a))*k(-1); +P*c = m; +m-1+d = l; +e = exp(e_a); +y = k(-1)^alp*n^(1-alp)*exp(-alp*(gam+e_a)); +gy_obs = dA*y/y(-1); +gp_obs = (p/p(-1))*m(-1)/dA; +end; + +initval; +k = 6; +m = mst; +P = 2.25; +c = 0.45; +e = 1; +W = 4; +R = 1.02; +d = 0.85; +n = 0.19; +l = 0.86; +y = 0.6; +gy_obs = exp(gam); +gp_obs = exp(-gam); +dA = exp(gam); +end; + +shocks; +var e_a; stderr 0.014; +var e_m; stderr 0.005; +end; + +steady; + +estimated_params; +alp, beta_pdf, 0.356, 0.02; +bet, beta_pdf, 0.993, 0.002; +gam, normal_pdf, 0.0085, 0.003; +mst, normal_pdf, 1.0002, 0.007; +rho, beta_pdf, 0.129, 0.223; +psi, beta_pdf, 0.65, 0.05; +del, beta_pdf, 0.01, 0.005; +stderr e_a, inv_gamma_pdf, 0.035449, inf; +stderr e_m, inv_gamma_pdf, 0.008862, inf; +end; + +varobs gp_obs gy_obs; + +estimation(datafile=fsdat,nobs=192,loglinear,mh_replic=2000,mh_nblocks=5,mh_jscale=0.8); \ No newline at end of file diff --git a/tests/fs2000/fs2000a.mod b/tests/fs2000/fs2000a.mod new file mode 100644 index 000000000..e6bd719ac --- /dev/null +++ b/tests/fs2000/fs2000a.mod @@ -0,0 +1,101 @@ +// This file replicates the estimation of the CIA model from +// Frank Schorfheide (2000) "Loss function-based evaluation of DSGE models" +// Journal of Applied Econometrics, 15, 645-670. +// the data are the ones provided on Schorfheide's web site with the programs. +// http://www.econ.upenn.edu/~schorf/programs/dsgesel.ZIP +// You need to have fsdat.m in the same directory as this file. +// This file replicates: +// -the posterior mode as computed by Frank's Gauss programs +// -the parameter mean posterior estimates reported in the paper +// -the model probability (harmonic mean) reported in the paper +// This file was tested with dyn_mat_test_0218.zip +// the smooth shocks are probably stil buggy +// +// The equations are taken from J. Nason and T. Cogley (1994) +// "Testing the implications of long-run neutrality for monetary business +// cycle models" Journal of Applied Econometrics, 9, S37-S70. +// Note that there is an initial minus sign missing in equation (A1), p. S63. +// +// Michel Juillard, February 2004 + +var m P c e W R k d n l gy_obs gp_obs Y_obs P_obs y dA; +varexo e_a e_m; + +parameters alp bet gam mst rho psi del; + +alp = 0.33; +bet = 0.99; +gam = 0.003; +mst = 1.011; +rho = 0.7; +psi = 0.787; +del = 0.02; + +model; +dA = exp(gam+e_a); +log(m) = (1-rho)*log(mst) + rho*log(m(-1))+e_m; +-P/(c(+1)*P(+1)*m)+bet*P(+1)*(alp*exp(-alp*(gam+log(e(+1))))*k^(alp-1)*n(+1)^(1-alp)+(1-del)*exp(-(gam+log(e(+1)))))/(c(+2)*P(+2)*m(+1))=0; +W = l/n; +-(psi/(1-psi))*(c*P/(1-n))+l/n = 0; +R = P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(-alp)/W; +1/(c*P)-bet*P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)/(m*l*c(+1)*P(+1)) = 0; +c+k = exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)+(1-del)*exp(-(gam+e_a))*k(-1); +P*c = m; +m-1+d = l; +e = exp(e_a); +y = k(-1)^alp*n^(1-alp)*exp(-alp*(gam+e_a)); +gy_obs = dA*y/y(-1); +gp_obs = (p/p(-1))*m(-1)/dA; +Y_obs/Y_obs(-1) = gy_obs; +P_obs/P_obs(-1) = gp_obs; +end; + +initval; +k = 6; +m = mst; +P = 2.25; +c = 0.45; +e = 1; +W = 4; +R = 1.02; +d = 0.85; +n = 0.19; +l = 0.86; +y = 0.6; +gy_obs = exp(gam); +gp_obs = exp(-gam); +dA = exp(gam); +end; + +shocks; +var e_a; stderr 0.014; +var e_m; stderr 0.005; +end; + +steady; + +check; + +estimated_params; +alp, beta_pdf, 0.356, 0.02; +bet, beta_pdf, 0.993, 0.002; +gam, normal_pdf, 0.0085, 0.003; +mst, normal_pdf, 1.0002, 0.007; +rho, beta_pdf, 0.129, 0.223; +psi, beta_pdf, 0.65, 0.05; +del, beta_pdf, 0.01, 0.005; +stderr e_a, inv_gamma_pdf, 0.035449, inf; +stderr e_m, inv_gamma_pdf, 0.008862, inf; +end; + +varobs P_obs Y_obs; + +observation_trends; +P_obs (log(exp(gam)/mst)); +Y_obs (gam); +end; + +options_.unit_root_vars = {'P_obs'; 'Y_obs'}; + +//stoch_simul(order=1,nomoments,irf=0); +estimation(datafile=fsdat,nobs=192,loglinear,mh_replic=5000,mh_nblocks=10,mh_drop=0.45,lik_init=2); \ No newline at end of file diff --git a/tests/fs2000/fs2000a_steadystate.m b/tests/fs2000/fs2000a_steadystate.m new file mode 100644 index 000000000..849c04b26 --- /dev/null +++ b/tests/fs2000/fs2000a_steadystate.m @@ -0,0 +1,53 @@ +% computes the steady state of fs2000 analyticaly +% largely inspired by the program of F. Schorfheide +function [ys,check] = fs2000a_steadystate(junk,ys) + global alp bet gam mst rho psi del; + + check = 0; + + dA = exp(gam); + gst = 1/dA; + m = mst; + + khst = ( (1-gst*bet*(1-del)) / (alp*gst^alp*bet) )^(1/(alp-1)); + xist = ( ((khst*gst)^alp - (1-gst*(1-del))*khst)/mst )^(-1); + nust = psi*mst^2/( (1-alp)*(1-psi)*bet*gst^alp*khst^alp ); + n = xist/(nust+xist); + p = xist + nust; + k = khst*n; + + l = psi*mst*n/( (1-psi)*(1-n) ); + c = mst/p; + d = l - mst + 1; + y = k^alp*n^(1-alp)*gst^alp; + r = mst/bet; + w = l/n; + ist = y-c; + q = 1 - d; + + e = 1; + + gp_obs = m/dA; + gy_obs = dA; + + P_obs = 1; + Y_obs = 1; + + ys =[ + c + d + dA + e + gp_obs + gy_obs + k + l + m + n + p + P_obs + r + w + y + Y_obs + ]; \ No newline at end of file diff --git a/tests/fs2000/fsdat.m b/tests/fs2000/fsdat.m new file mode 100644 index 000000000..5a0e3658d --- /dev/null +++ b/tests/fs2000/fsdat.m @@ -0,0 +1,210 @@ +data_q = [ +18.02 1474.5 150.2 +17.94 1538.2 150.9 +18.01 1584.5 151.4 +18.42 1644.1 152 +18.73 1678.6 152.7 +19.46 1693.1 153.3 +19.55 1724 153.9 +19.56 1758.2 154.7 +19.79 1760.6 155.4 +19.77 1779.2 156 +19.82 1778.8 156.6 +20.03 1790.9 157.3 +20.12 1846 158 +20.1 1882.6 158.6 +20.14 1897.3 159.2 +20.22 1887.4 160 +20.27 1858.2 160.7 +20.34 1849.9 161.4 +20.39 1848.5 162 +20.42 1868.9 162.8 +20.47 1905.6 163.6 +20.56 1959.6 164.3 +20.62 1994.4 164.9 +20.78 2020.1 165.7 +21 2030.5 166.5 +21.2 2023.6 167.2 +21.33 2037.7 167.9 +21.62 2033.4 168.7 +21.71 2066.2 169.5 +22.01 2077.5 170.2 +22.15 2071.9 170.9 +22.27 2094 171.7 +22.29 2070.8 172.5 +22.56 2012.6 173.1 +22.64 2024.7 173.8 +22.77 2072.3 174.5 +22.88 2120.6 175.3 +22.92 2165 176.045 +22.91 2223.3 176.727 +22.94 2221.4 177.481 +23.03 2230.95 178.268 +23.13 2279.22 179.694 +23.22 2265.48 180.335 +23.32 2268.29 181.094 +23.4 2238.57 181.915 +23.45 2251.68 182.634 +23.51 2292.02 183.337 +23.56 2332.61 184.103 +23.63 2381.01 184.894 +23.75 2422.59 185.553 +23.81 2448.01 186.203 +23.87 2471.86 186.926 +23.94 2476.67 187.68 +24 2508.7 188.299 +24.07 2538.05 188.906 +24.12 2586.26 189.631 +24.29 2604.62 190.362 +24.35 2666.69 190.954 +24.41 2697.54 191.56 +24.52 2729.63 192.256 +24.64 2739.75 192.938 +24.77 2808.88 193.467 +24.88 2846.34 193.994 +25.01 2898.79 194.647 +25.17 2970.48 195.279 +25.32 3042.35 195.763 +25.53 3055.53 196.277 +25.79 3076.51 196.877 +26.02 3102.36 197.481 +26.14 3127.15 197.967 +26.31 3129.53 198.455 +26.6 3154.19 199.012 +26.9 3177.98 199.572 +27.21 3236.18 199.995 +27.49 3292.07 200.452 +27.75 3316.11 200.997 +28.12 3331.22 201.538 +28.39 3381.86 201.955 +28.73 3390.23 202.419 +29.14 3409.65 202.986 +29.51 3392.6 203.584 +29.94 3386.49 204.086 +30.36 3391.61 204.721 +30.61 3422.95 205.419 +31.02 3389.36 206.13 +31.5 3481.4 206.763 +31.93 3500.95 207.362 +32.27 3523.8 208 +32.54 3533.79 208.642 +33.02 3604.73 209.142 +33.2 3687.9 209.637 +33.49 3726.18 210.181 +33.95 3790.44 210.737 +34.36 3892.22 211.192 +34.94 3919.01 211.663 +35.61 3907.08 212.191 +36.29 3947.11 212.708 +37.01 3908.15 213.144 +37.79 3922.57 213.602 +38.96 3879.98 214.147 +40.13 3854.13 214.7 +41.05 3800.93 215.135 +41.66 3835.21 215.652 +42.41 3907.02 216.289 +43.19 3952.48 216.848 +43.69 4044.59 217.314 +44.15 4072.19 217.776 +44.77 4088.49 218.338 +45.57 4126.39 218.917 +46.32 4176.28 219.427 +47.07 4260.08 219.956 +47.66 4329.46 220.573 +48.63 4328.33 221.201 +49.42 4345.51 221.719 +50.41 4510.73 222.281 +51.27 4552.14 222.933 +52.35 4603.65 223.583 +53.51 4605.65 224.152 +54.65 4615.64 224.737 +55.82 4644.93 225.418 +56.92 4656.23 226.117 +58.18 4678.96 226.754 +59.55 4566.62 227.389 +61.01 4562.25 228.07 +62.59 4651.86 228.689 +64.15 4739.16 229.155 +65.37 4696.82 229.674 +66.65 4753.02 230.301 +67.87 4693.76 230.903 +68.86 4615.89 231.395 +69.72 4634.88 231.906 +70.66 4612.08 232.498 +71.44 4618.26 233.074 +72.08 4662.97 233.546 +72.83 4763.57 234.028 +73.48 4849 234.603 +74.19 4939.23 235.153 +75.02 5053.56 235.605 +75.58 5132.87 236.082 +76.25 5170.34 236.657 +76.81 5203.68 237.232 +77.63 5257.26 237.673 +78.25 5283.73 238.176 +78.76 5359.6 238.789 +79.45 5393.57 239.387 +79.81 5460.83 239.861 +80.22 5466.95 240.368 +80.84 5496.29 240.962 +81.45 5526.77 241.539 +82.09 5561.8 242.009 +82.68 5618 242.52 +83.33 5667.39 243.12 +84.09 5750.57 243.721 +84.67 5785.29 244.208 +85.56 5844.05 244.716 +86.66 5878.7 245.354 +87.44 5952.83 245.966 +88.45 6010.96 246.46 +89.39 6055.61 247.017 +90.13 6087.96 247.698 +90.88 6093.51 248.374 +92 6152.59 248.928 +93.18 6171.57 249.564 +94.14 6142.1 250.299 +95.11 6078.96 251.031 +96.27 6047.49 251.65 +97 6074.66 252.295 +97.7 6090.14 253.033 +98.31 6105.25 253.743 +99.13 6175.69 254.338 +99.79 6214.22 255.032 +100.17 6260.74 255.815 +100.88 6327.12 256.543 +101.84 6327.93 257.151 +102.35 6359.9 257.785 +102.83 6393.5 258.516 +103.51 6476.86 259.191 +104.13 6524.5 259.738 +104.71 6600.31 260.351 +105.39 6629.47 261.04 +106.09 6688.61 261.692 +106.75 6717.46 262.236 +107.24 6724.2 262.847 +107.75 6779.53 263.527 +108.29 6825.8 264.169 +108.91 6882 264.681 +109.24 6983.91 265.258 +109.74 7020 265.887 +110.23 7093.12 266.491 +111 7166.68 266.987 +111.43 7236.5 267.545 +111.76 7311.24 268.171 +112.08 7364.63 268.815 +]; +%GDPD GDPQ GPOP + +series = zeros(193,2); +series(:,2) = data_q(:,1); +series(:,1) = 1000*data_q(:,2)./data_q(:,3); + +Y_obs = series(:,1); +P_obs = series(:,2); + +series = series(2:193,:)./series(1:192,:); + +gy_obs = series(:,1); +gp_obs = series(:,2); + +ti = [1950:0.25:1997.75]; \ No newline at end of file diff --git a/tests/fs2000/test.m b/tests/fs2000/test.m new file mode 100644 index 000000000..f05f5f1c4 --- /dev/null +++ b/tests/fs2000/test.m @@ -0,0 +1,4 @@ +function test(a,b,n) + if max(max(abs(a)-abs(b))) > 1e-5 + error(['Test error in test ' int2str(n)]) + end \ No newline at end of file diff --git a/tests/ls2003/data_ca1.m b/tests/ls2003/data_ca1.m new file mode 100644 index 000000000..b0b4f0546 --- /dev/null +++ b/tests/ls2003/data_ca1.m @@ -0,0 +1,100 @@ +data = [0.928467646476 11.8716889412 20 0.418037507392 0.227382377518 ... +-0.705994063083 11.7522582094 21.25 1.09254424511 -1.29488274994 ... +-0.511895351926 9.68144025625 17.25 -1.66150408407 0.331508393098 ... +-0.990955971267 10.0890781236 17 1.43016275252 -2.43589670141 ... +-0.981233061806 12.1094840679 18.25 2.91293288733 -0.790246576864 ... +-0.882182844512 8.54559460406 15 0.419579139481 0.358729719566 ... +-0.930893002836 6.19238374422 12.5 -1.48847457959 0.739779938797 ... +1.53158206947 2.76544271886 11.5 -0.336216769682 0.455559918769 ... +2.2659052834 5.47418162513 11 0.306436789767 -0.0707985731221 ... +1.05419803797 6.35698426189 11 0.140700250477 0.620401487202 ... +1.20161076793 3.4253301593 11 0.461296492351 0.14354323987 ... +1.73934077971 4.70926070322 11.5 1.35798282982 0.38564694435 ... +1.71735262584 3.54232079749 12.5 2.9097529155 -0.804308583301 ... +0.426343657844 3.32719108897 13 1.64214862652 -1.18214664701 ... +1.67751812324 2.93444727338 11.25 0.344434910651 -1.6529373719 ... +1.37013301099 4.72303361923 11.75 2.61511526582 0.327684243041 ... +0.281231073781 4.4893853071 10.5 1.17043449257 1.12855106649 ... +1.53638992834 3.7325309699 10.25 -0.683947046728 0.11943538737 ... +1.68081431462 3.34729969129 10 1.41159342106 -1.59065680853 ... +-0.343321601133 5.05563513564 12 1.75117366498 -2.40127764642 ... +0.873415608666 3.2779996255 10.25 -1.39895866711 0.0971444398216 ... +0.26399696544 4.78229419828 9.75 0.0914692438124 0.299310457612 ... +-0.562233624818 3.88598638237 9.75 -0.0505384765105 0.332826708151 ... +2.15161914936 3.84859710132 8.75 -3.44811080489 0.789138678784 ... +1.2345093726 5.62225030942 9.5 -0.366945407434 2.32974981198 ... +1.62554967459 4.24667132831 10 -0.800958371402 0.0293183770935 ... +1.33035402527 2.75248979249 9.75 -0.855723113225 0.852493939813 ... +1.52078814077 3.53415985826 9.75 -3.37963469203 -1.05133958119 ... +1.16704983697 4.92754079464 10.75 -3.0142303324 0.459907431978 ... +0.277213572101 4.55532133037 11.75 -0.851995599415 2.03242034852 ... +0.842215068977 3.11164509647 12.25 -1.08290421696 0.014323281961 ... +1.05325028606 4.92882647578 13.5 -1.1953883867 0.706764750654 ... +0.453051253568 6.82998950103 13.5 0.111803656462 0.088462593153 ... +0.199885995525 5.82643354662 13.5 -0.920501518421 -0.26504958666 ... +0.137907999624 2.66076369132 13.5 -1.17122929812 -0.995642430514 ... +0.721949686709 5.70497876823 14.25 1.19378169018 -1.10644839651 ... +-0.418465249225 3.75861110232 14.75 -1.03131674824 0.188507675831 ... +-0.644028342116 4.15104788154 13.75 -1.48911756546 0.204560913792 ... +-0.848213852668 5.65580324027 12.75 0.677011703877 -0.849628054542 ... +-1.51954076928 11.4866911266 11.25 -0.446024680774 -0.456342350765 ... +0.265275055215 2.85472749592 9.75 -0.598778202436 -0.907311640831 ... +0.356162529063 2.29614015658 9.5 -0.46820788432 -1.22130883441 ... +0.368308864363 -0.539083504685 8 -0.781333991956 0.374007246518 ... +-0.145751412732 1.61507621789 8.25 3.68291932628 1.32438399845 ... +0.285457283664 2.14334055993 7 1.42819405379 -0.00818660844123 ... +0.372390129412 1.60000213334 6.25 0.626106424052 -0.10136772765 ... +0.382720203063 1.72614243263 7.25 4.89631941021 -1.10060711916 ... +0.737957515573 2.90430582851 6 -0.0422721010314 0.4178952497 ... +0.649532581668 0.657135682543 6 0.692066153971 0.422299120276 ... +0.627159201987 1.70352689913 5.75 2.62066711305 -1.29237304034 ... +0.905441299817 1.95663197267 5.5 1.5949697565 -0.27115830703 ... +1.49322577898 -2.08741765309 6.25 1.23027694802 0.418336889527 ... +1.48750731567 -1.57274121871 8 3.01660550994 -0.893958254365 ... +1.39783858087 2.22623066426 7 -0.80842319214 1.47625453886 ... +0.89274836317 1.30378081742 8 -0.249485058661 0.159871204185 ... +0.920652246088 4.1437741965 9.75 2.8204453623 0.178149239655 ... +-0.00264276644799 3.07989972052 8.75 -2.56342461535 2.105998353 ... +0.0198190461681 0.766283759256 8 -1.15838865989 1.56888883418 ... +0.440050515311 0.127570085801 7.5 0.0400753569995 0.028914333532 ... +0.129536637901 1.78174141526 6.75 0.959943962785 0.307781224401 ... +0.398549827172 3.03606770667 6.5 -0.340209794742 0.100979469478 ... +1.17174775425 0.629625188037 5.75 0.403003686814 0.902394579377 ... +0.991163981251 2.50862910684 4.75 -1.44963996982 1.16150986945 ... +0.967603566096 2.12003739013 4.75 0.610846030775 -0.889994896068 ... +1.14689383604 1.24185011459 4.75 2.01098091308 -1.73846431001 ... +1.32593824054 0.990713820685 4.75 -0.0955142989332 -0.0369257308362 ... +0.861135002644 -0.24744943605 6 1.72793107135 -0.691506789639 ... +1.26870850151 2.09844764887 6.5 1.50720217572 -1.31399187077 ... +0.260364987715 1.10650139716 6.5 1.13659047496 0.0720441664643 ... +1.09731242214 0.490796381346 7.25 4.59123894147 -2.14073070763 ... +1.63792841781 0.612652594286 6.75 1.79604605035 -0.644363995357 ... +1.48465576034 0.978295808687 6.75 -2.00753620902 1.39437534964 ... +1.0987608663 4.25212569087 6.25 -2.58901196498 2.56054320803 ... +1.42592178132 2.76984518311 6.25 0.888195752358 1.03114549274 ... +1.52958239462 1.31795955491 6.5 -0.902907564082 -0.0952198893776 ... +1.0170168994 2.14733589918 7 -1.3054866978 2.68803738466 ... +0.723253652257 3.43552889347 7.5 1.8213700853 0.592593586195 ... +1.24720806008 3.87383806577 7.5 0.0522300654168 0.988871238698 ... +0.482531471239 2.67793287032 7.5 2.9693944293 -0.108591166081 ... +0.154056100439 0.927269031704 6.75 0.119222057561 3.30489209451 ... +0.0694865769274 6.65916526788 6.25 0.889014476084 -2.83976849035 ... +-0.121267434867 0.341442615696 5.25 0.323053239216 -3.49289229012 ... +0.726473690375 -3.5423730964 4 2.19149290449 -3.20855054004 ... +1.39271709108 2.63121085718 3.75 0.88406577736 0.75622580197 ... +1.07502077727 5.88578836799 4.25 -2.55088273352 2.89018116374 ... +0.759049251607 4.24703604223 4.5 0.575687665685 -0.388292506167 ... +]; + +data = reshape(data,5,86)'; +y_obs = data(:,1); +pie_obs = data(:,2); +R_obs = data(:,3); +de = data(:,4); +dq = data(:,5); + +%Country: Canada +%Sample Range: 1981:2 to 2002:3 +%Observations: 86 +%Variables: Real GDP Growth [%], Inflation [annualized %], Nom Rate [%], +% Exchange Rate Change [%], Terms of Trade Change [%] diff --git a/tests/ls2003/ls2003.mod b/tests/ls2003/ls2003.mod new file mode 100644 index 000000000..1d2ec9de4 --- /dev/null +++ b/tests/ls2003/ls2003.mod @@ -0,0 +1,65 @@ +var y y_s R pie dq pie_s de A y_obs pie_obs R_obs; +varexo e_R e_q e_ys e_pies e_A; + +parameters psi1 psi2 psi3 rho_R tau alpha rr k rho_q rho_A rho_ys rho_pies; + +psi1 = 1.54; +psi2 = 0.25; +psi3 = 0.25; +rho_R = 0.5; +alpha = 0.3; +rr = 2.51; +k = 0.5; +tau = 0.5; +rho_q = 0.4; +rho_A = 0.2; +rho_ys = 0.9; +rho_pies = 0.7; + + +model(linear); +y = y(+1) - (tau +alpha*(2-alpha)*(1-tau))*(R-pie(+1))-alpha*(tau +alpha*(2-alpha)*(1-tau))*dq(+1) + alpha*(2-alpha)*((1-tau)/tau)*(y_s-y_s(+1))-A(+1); +pie = exp(-rr/400)*pie(+1)+alpha*exp(-rr/400)*dq(+1)-alpha*dq+(k/(tau+alpha*(2-alpha)*(1-tau)))*y+alpha*(2-alpha)*(1-tau)/(tau*(tau+alpha*(2-alpha)*(1-tau)))*y_s; +pie = de+(1-alpha)*dq+pie_s; +R = rho_R*R(-1)+(1-rho_R)*(psi1*pie+psi2*(y+alpha*(2-alpha)*((1-tau)/tau)*y_s)+psi3*de)+e_R; +dq = rho_q*dq(-1)+e_q; +y_s = rho_ys*y_s(-1)+e_ys; +pie_s = rho_pies*pie_s(-1)+e_pies; +A = rho_A*A(-1)+e_A; +y_obs = y-y(-1)+A; +pie_obs = 4*pie; +R_obs = 4*R; +end; + +shocks; +var e_R = 1.25^2; +var e_q = 2.5^2; +var e_A = 1.89; +var e_ys = 1.89; +var e_pies = 1.89; +end; + +varobs y_obs R_obs pie_obs dq de; + +estimated_params; +psi1 , gamma_pdf,1.5,0.5; +psi2 , gamma_pdf,0.25,0.125; +psi3 , gamma_pdf,0.25,0.125; +rho_R ,beta_pdf,0.5,0.2; +alpha ,beta_pdf,0.3,0.1; +rr ,gamma_pdf,2.5,1; +k , gamma_pdf,0.5,0.25; +tau ,gamma_pdf,0.5,0.2; +rho_q ,beta_pdf,0.4,0.2; +rho_A ,beta_pdf,0.5,0.2; +rho_ys ,beta_pdf,0.8,0.1; +rho_pies,beta_pdf,0.7,0.15; +stderr e_R,inv_gamma_pdf,1.2533,0.6551; +stderr e_q,inv_gamma_pdf,2.5066,1.3103; +stderr e_A,inv_gamma_pdf,1.2533,0.6551; +stderr e_ys,inv_gamma_pdf,1.2533,0.6551; +stderr e_pies,inv_gamma_pdf,1.88,0.9827; +end; + +estimation(datafile=data_ca1,first_obs=8,nobs=79,mh_nblocks=10,prefilter=1,mh_jscale=0.5,mh_replic=0); + diff --git a/tests/ls2003/ls2003a.mod b/tests/ls2003/ls2003a.mod new file mode 100644 index 000000000..1d2ec9de4 --- /dev/null +++ b/tests/ls2003/ls2003a.mod @@ -0,0 +1,65 @@ +var y y_s R pie dq pie_s de A y_obs pie_obs R_obs; +varexo e_R e_q e_ys e_pies e_A; + +parameters psi1 psi2 psi3 rho_R tau alpha rr k rho_q rho_A rho_ys rho_pies; + +psi1 = 1.54; +psi2 = 0.25; +psi3 = 0.25; +rho_R = 0.5; +alpha = 0.3; +rr = 2.51; +k = 0.5; +tau = 0.5; +rho_q = 0.4; +rho_A = 0.2; +rho_ys = 0.9; +rho_pies = 0.7; + + +model(linear); +y = y(+1) - (tau +alpha*(2-alpha)*(1-tau))*(R-pie(+1))-alpha*(tau +alpha*(2-alpha)*(1-tau))*dq(+1) + alpha*(2-alpha)*((1-tau)/tau)*(y_s-y_s(+1))-A(+1); +pie = exp(-rr/400)*pie(+1)+alpha*exp(-rr/400)*dq(+1)-alpha*dq+(k/(tau+alpha*(2-alpha)*(1-tau)))*y+alpha*(2-alpha)*(1-tau)/(tau*(tau+alpha*(2-alpha)*(1-tau)))*y_s; +pie = de+(1-alpha)*dq+pie_s; +R = rho_R*R(-1)+(1-rho_R)*(psi1*pie+psi2*(y+alpha*(2-alpha)*((1-tau)/tau)*y_s)+psi3*de)+e_R; +dq = rho_q*dq(-1)+e_q; +y_s = rho_ys*y_s(-1)+e_ys; +pie_s = rho_pies*pie_s(-1)+e_pies; +A = rho_A*A(-1)+e_A; +y_obs = y-y(-1)+A; +pie_obs = 4*pie; +R_obs = 4*R; +end; + +shocks; +var e_R = 1.25^2; +var e_q = 2.5^2; +var e_A = 1.89; +var e_ys = 1.89; +var e_pies = 1.89; +end; + +varobs y_obs R_obs pie_obs dq de; + +estimated_params; +psi1 , gamma_pdf,1.5,0.5; +psi2 , gamma_pdf,0.25,0.125; +psi3 , gamma_pdf,0.25,0.125; +rho_R ,beta_pdf,0.5,0.2; +alpha ,beta_pdf,0.3,0.1; +rr ,gamma_pdf,2.5,1; +k , gamma_pdf,0.5,0.25; +tau ,gamma_pdf,0.5,0.2; +rho_q ,beta_pdf,0.4,0.2; +rho_A ,beta_pdf,0.5,0.2; +rho_ys ,beta_pdf,0.8,0.1; +rho_pies,beta_pdf,0.7,0.15; +stderr e_R,inv_gamma_pdf,1.2533,0.6551; +stderr e_q,inv_gamma_pdf,2.5066,1.3103; +stderr e_A,inv_gamma_pdf,1.2533,0.6551; +stderr e_ys,inv_gamma_pdf,1.2533,0.6551; +stderr e_pies,inv_gamma_pdf,1.88,0.9827; +end; + +estimation(datafile=data_ca1,first_obs=8,nobs=79,mh_nblocks=10,prefilter=1,mh_jscale=0.5,mh_replic=0); + diff --git a/tests/objectives/CVS/Entries b/tests/objectives/CVS/Entries new file mode 100644 index 000000000..6957afc35 --- /dev/null +++ b/tests/objectives/CVS/Entries @@ -0,0 +1,7 @@ +/sgu_ex1.log/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +/sgu_ex1.m/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +/sgu_ex1.mat/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +/sgu_ex1.mod/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +/sgu_ex1_ff.m/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +/sgu_ex1_fff.m/1.1.2.1/Sun Feb 6 15:45:32 2005//Tv3_03 +D diff --git a/tests/objectives/CVS/Repository b/tests/objectives/CVS/Repository new file mode 100644 index 000000000..f3767c29d --- /dev/null +++ b/tests/objectives/CVS/Repository @@ -0,0 +1 @@ +dynare_test/tests/objectives diff --git a/tests/objectives/CVS/Root b/tests/objectives/CVS/Root new file mode 100644 index 000000000..880aa9790 --- /dev/null +++ b/tests/objectives/CVS/Root @@ -0,0 +1 @@ +:ext:pythie.cepremap.cnrs.fr/var/lib/cvs diff --git a/tests/objectives/CVS/Tag b/tests/objectives/CVS/Tag new file mode 100644 index 000000000..9f3656bd3 --- /dev/null +++ b/tests/objectives/CVS/Tag @@ -0,0 +1 @@ +Tv3_03 diff --git a/tests/objectives/sgu_ex1.log b/tests/objectives/sgu_ex1.log new file mode 100644 index 000000000..5ec876302 --- /dev/null +++ b/tests/objectives/sgu_ex1.log @@ -0,0 +1,15 @@ + + +MATRIX OF COVARIANCE OF EXOGENOUS SHOCKS + +Variables e +e 1.000000 +POLICY AND TRANSITION FUNCTIONS + k a c +Constant -1.552215 0 -0.969516 +(correction) 0.241022 0 -0.096072 +k(-1) 0.419109 0 0.252523 +e 1.397031 1.000000 0.841743 +k(-1)k(-1) -0.003501 0 -0.002559 +e e -0.038899 0 -0.028434 +k(-1) e -0.023340 0 -0.017061 diff --git a/tests/objectives/sgu_ex1.m b/tests/objectives/sgu_ex1.m new file mode 100644 index 000000000..01307659c --- /dev/null +++ b/tests/objectives/sgu_ex1.m @@ -0,0 +1,98 @@ +clear all +global scalv_ ex_ recur_ recurs_ ys_ y_ exe_ lgy_ lgx_ lgr_ dsmpl_ endval_ + ... +global endo_nbr exo_nbr iy_ ykmin_ ykmax_ xkmin_ xkmax_ zkmin_ zkmax_ iter_ + ... +global dynatol_ slowc_ maxit_ valf_ ys0_ recurs0_ timing_ ct_ gstep_ Sigma_e_ fname_ lgx_orig_ord_ +dsmpl_=0; +dynatol_=0.00001; +maxit_=10; +slowc_=1; +timing_=0; +ct_=0; +gstep_=1e-2; +endval_=0;rplottype_=0; +fname_ = 'sgu_ex1'; +logname_ = 'sgu_ex1.log'; +diary off; +warning off; +delete sgu_ex1.log; +warning on; +warning backtrace; +diary sgu_ex1.log; + +iter_ = 20000; + + + + +global alpha beta delta gamma rho + + +beta = 0.95; +delta = 1; +alpha = 0.3; +rho = 0; +gamma = 2; + +lgy_ = 'a'; +lgy_ = str2mat(lgy_,'c'); +lgy_ = str2mat(lgy_,'k'); +lgx_ = 'e'; +lgx_orig_ord_ = [1]; +endo_nbr = 3; +exo_nbr = 1; +recur_nbr = 0; +iy_ = [ 1 0 2]; +temp = [ 3 4 5]; +iy_ = [ iy_ ; temp ]; +temp = [ 6 7 0]; +iy_ = [ iy_ ; temp ]; +ykmin_ = 1; +ykmax_ = 1; +xkmin_ = 0; +xkmax_ = 0; +zkmin_ = 0; +zkmax_ = 0; + + +% INITVAL +valf_ = 0; +endval_=0; +ys_ = zeros(3,1); +exe_ = zeros(1,1); +ys0_ = 0; +ex0_ = 0; +recurs0_ = 0; +ys_(3)=0; +ys_(2)=0; +ys_(1)=0; +exe_(1)=0; +if exo_nbr > 0; + ex_ =ones(iter_ + xkmin_ + xkmax_,1) * exe_'; +end; + + +Sigma_e_ = 1; + +var_list_ = []; +options.ar = 0; +options.dr_algo = 0; +options.simul_algo = 0; +options.nocorr = 1; +options.drop = 100; +options.linear = 0; +options.nofunctions = 0; +options.nomoments = 1; +options.irf = 0; +options.order = 2; +options.replic = 0; +stoch_simul(options,var_list_); + + +global dr_ +dr_obj_ = dr_; + +save sgu_ex1 dr_obj_; + +diary off diff --git a/tests/objectives/sgu_ex1.mat b/tests/objectives/sgu_ex1.mat new file mode 100644 index 0000000000000000000000000000000000000000..69413985099ccb48f898c4ba4808132bda33c23e GIT binary patch literal 1368 zcmeZu4DoSvQZUssQ1EpO(M`+DN!3vZ$Vn_o%P-2cQV4Jk_w>_Ia4t$sEJ;mK$j`G< z2q{ff@Jh^6FtSiEG`BJ`vNE<%FfuSORv;NLFnap(F)%P(U}0cj1JWEo%ml z0NKF60MeHL#Q5}q!W!fj5CFLYWKYYd`K9YG-LeOX0YO8XzyJAA%?mI-L=-3vW033L zAcg#gHc{W8=6uUA`nP4!R?-cAU+q?HZ{C_RG7M#z>F>l?%(AtYP@7crLmv-aw2F)2K G_5%PEyo#p) literal 0 HcmV?d00001 diff --git a/tests/objectives/sgu_ex1.mod b/tests/objectives/sgu_ex1.mod new file mode 100644 index 000000000..36e550030 --- /dev/null +++ b/tests/objectives/sgu_ex1.mod @@ -0,0 +1,33 @@ +periods 20000; +var c k a; +varexo e; +parameters alpha beta delta gamma rho; + +beta = 0.95; +delta = 1; +alpha = 0.3; +rho = 0; +gamma = 2; + +model; +exp(c) + exp(k) = (1-delta) * exp(k(-1)) + exp(a) * exp(k(-1))^alpha; +exp(c)^(-gamma) = beta * exp(c(+1))^(-gamma) * (exp(a(+1)) * alpha * exp(k)^(alpha-1) + 1 - delta); +a = rho * a(-1) + e; +end; + +initval; +k=0; +c=0; +a=0; +e=0; +end; + +Sigma_e_ = 1; + +stoch_simul(nomoments,irf=0,nocorr,ar=0); + +global dr_ +dr_obj_ = dr_; + +save sgu_ex1 dr_obj_; + diff --git a/tests/objectives/sgu_ex1_ff.m b/tests/objectives/sgu_ex1_ff.m new file mode 100644 index 000000000..0b7777363 --- /dev/null +++ b/tests/objectives/sgu_ex1_ff.m @@ -0,0 +1,11 @@ + +function z=sgu_ex1_ff(y) +z=zeros(3,1); +global ex_ it_ recur_ + +global alpha beta delta gamma rho +z(1) = exp(y(4))+exp(y(5)) -((1-delta)*exp(y(2))+exp(y(3))*exp(y(2))^alpha) ... +; +z(2) = exp(y(4))^(-gamma) -(beta*exp(y(7))^(-gamma)*(exp(y(6))*alpha*exp( ... +y(5))^(alpha-1)+1-delta)); +z(3) = y(3) -(rho*y(1)+ex_(it_-1,1)); diff --git a/tests/objectives/sgu_ex1_fff.m b/tests/objectives/sgu_ex1_fff.m new file mode 100644 index 000000000..bf6325be4 --- /dev/null +++ b/tests/objectives/sgu_ex1_fff.m @@ -0,0 +1,11 @@ + +function z=sgu_ex1_fff(y) +z=zeros(3,1); +global ex_ it_ recur_ + +global alpha beta delta gamma rho +z(1) = exp(y(2))+exp(y(3)) -((1-delta)*exp(y(3))+exp(y(1))*exp(y(3))^alpha) ... +; +z(2) = exp(y(2))^(-gamma) -(beta*exp(y(2))^(-gamma)*(exp(y(1))*alpha*exp( ... +y(3))^(alpha-1)+1-delta)); +z(3) = y(1) -(rho*y(1)+ex_(it_-1,1)); diff --git a/tests/pi2004/idata.m b/tests/pi2004/idata.m new file mode 100644 index 000000000..9ce34b9eb --- /dev/null +++ b/tests/pi2004/idata.m @@ -0,0 +1,5 @@ +load ych.dat; +data = log(ych); +oy = data(:,1); +oc = data(:,2); +oh = data(:,3); \ No newline at end of file diff --git a/tests/pi2004/ireland.mod b/tests/pi2004/ireland.mod new file mode 100644 index 000000000..51ef3508f --- /dev/null +++ b/tests/pi2004/ireland.mod @@ -0,0 +1,90 @@ +var y a k c i h eoy eoc eoh oy oc oh; +varexo e eeoy eeoc eeoh; + +parameters theta rho eta gam bet delta aa r11 r12 r13 r21 r22 r23 r31 r32 r33 scy shc shy; + +bet = 0.99; +delta = 0.025; +theta = 0.2; +rho = 0.9959; +eta = 1.0051; +gam = 0.0045; +aa = 1.8; +r11 = 0.99; +r12 = 0; +r13 = 0; +r21 = 0; +r22 = 0.99; +r23 = 0; +r31 = 0; +r32 = 0; +r33 = 0.99; +scy = 0.0040; +shy = 0.0015; +shc = 0.0010; + +model; +exp(y) = exp(a)*exp(k(-1))^theta*exp(h)^(1-theta); +a = (1-rho)*aa+rho*a(-1)+e; +exp(y) = exp(c) + exp(i); +eta*exp(k) = (1-delta)*exp(k(-1))+exp(i); +gam*exp(c)*exp(h) = (1-theta)*exp(y); +eta/exp(c) = bet*(1/exp(c(+1)))*(theta*(exp(y(+1))/exp(k))+1-delta); +eoy = r11*eoy(-1) + r12*eoc(-1) + r13*eoh(-1) + eeoy; +eoc = r21*eoy(-1) + r22*eoc(-1) + r23*eoh(-1) + scy*eeoy+eeoc; +eoh = r31*eoy(-1) + r32*eoc(-1) + r33*eoh(-1) + shy*eeoy+shc*eeoc+eeoh; +oy = y + eoy; +oc = c + eoc; +oh = h + eoh; +end; + +initval; +a = 1.7; +y = 8; +c = 8; +k = 10; +i = 5; +h = 4; +eoy = 0; +eoc = 0; +eoh = 0; +oy = y; +oc = c; +oh = h; +end; + +steady; +check; + +estimated_params; +theta , 0.22, 0.1, 0.5; +rho , 0.99, 0.7, 0.9999; +eta , 1.0051, 1, 1.03; +gam , 0.0045, 0.001, 0.01; +aa , 1.8, 0.1, 4; +r11 , 1.4187, -2, 2; +r12 , 0.2251, -2, 2; +r13 , -0.4441, -2, 2; +r21 , 0.0935, -2, 2; +r22 , 1.0236, -2, 2; +r23 , -0.0908, -2, 2; +r31 , 0.7775, -2, 2; +r32 , 0.3706, -2, 2; +r33 , 0.2398, -2, 2; +scy , 0.0040, -2, 2; +shy , 0.0015, -2, 2; +shc , 0.0010, -2, 2; +stderr e , 0.0056, 0, 0.2; +stderr eeoy , 0.0070, 0, 0.1; +stderr eeoc , 0.0069, 0, 0.1; +stderr eeoh , 0.0018, 0, 0.1; +end; + +varobs oy oc oh; + +observation_trends; +oy (log(eta)); +oc (log(eta)); +end; + +estimation(datafile=idata,mode_compute=1,nograph); \ No newline at end of file diff --git a/tests/pi2004/ireland1.mod b/tests/pi2004/ireland1.mod new file mode 100644 index 000000000..3d402a5b2 --- /dev/null +++ b/tests/pi2004/ireland1.mod @@ -0,0 +1,90 @@ +var y a k c i h eoy eoc eoh oy oc oh; +varexo e eeoy eeoc eeoh; + +parameters theta rho eta gam bet delta aa r11 r12 r13 r21 r22 r23 r31 r32 r33 scy shc shy; + +bet = 0.99; +delta = 0.025; +theta = 0.2; +rho = 0.9959; +eta = 1.0051; +gam = 0.0045; +aa = 1.8; +r11 = 0.99; +r12 = 0; +r13 = 0; +r21 = 0; +r22 = 0.99; +r23 = 0; +r31 = 0; +r32 = 0; +r33 = 0.99; +scy = 0.0040; +shy = 0.0015; +shc = 0.0010; + +model; +exp(y) = exp(a)*exp(k(-1))^theta*exp(h)^(1-theta); +a = (1-rho)*aa+rho*a(-1)+e; +exp(y) = exp(c) + exp(i); +eta*exp(k) = (1-delta)*exp(k(-1))+exp(i); +gam*exp(c)*exp(h) = (1-theta)*exp(y); +eta/exp(c) = bet*(1/exp(c(+1)))*(theta*(exp(y(+1))/exp(k))+1-delta); +eoy = r11*eoy(-1) + r12*eoc(-1) + r13*eoh(-1) + eeoy; +eoc = r21*eoy(-1) + r22*eoc(-1) + r23*eoh(-1) + scy*eeoy+eeoc; +eoh = r31*eoy(-1) + r32*eoc(-1) + r33*eoh(-1) + shy*eeoy+shc*eeoc+eeoh; +oy = y + eoy; +oc = c + eoc; +oh = h + eoh; +end; + +initval; +a = 6; +y = 8; +c = 7; +k = 10; +i = 5; +h = 4; +eoy = 0; +eoc = 0; +eoh = 0; +oy = y; +oc = c; +oh = h; +end; + +steady; +check; + +estimated_params; +theta , 0.22; +rho , 0.99; +eta , 1.0051; +gam , 0.0045; +aa , 1.8; +r11 , 1.4187; +r12 , 0.2251; +r13 , -0.4441; +r21 , 0.0935; +r22 , 1.0236; +r23 , -0.0908; +r31 , 0.7775; +r32 , 0.3706; +r33 , 0.2398; +scy , 0.0040; +shy , 0.0015; +shc , 0.0010; +stderr e , 0.0055; +stderr eeoy , 0.0072; +stderr eeoc , 0.0057; +stderr eeoh , 0; +end; + +varobs oy oc oh; + +observation_trends; +oy (log(eta)); +oc (log(eta)); +end; + +estimation(datafile=idata,nograph); \ No newline at end of file diff --git a/tests/pi2004/ych.dat b/tests/pi2004/ych.dat new file mode 100644 index 000000000..cda9d789d --- /dev/null +++ b/tests/pi2004/ych.dat @@ -0,0 +1,218 @@ + 2912.874 2402.117 198.8318 + 2959.229 2423.837 197.3532 + 2955.961 2420.605 198.6 + 2944.613 2436.721 196.7741 + 2865.54 2435.214 192.1405 + 2837.352 2466.823 187.9169 + 2866.923 2465.011 185.2876 + 2869.69 2492.395 182.3583 + 3000.477 2527.61 183.9728 + 3085.831 2561.171 189.8728 + 3255.871 2686.503 196.8083 + 3261.025 2613.773 200.6933 + 3261.223 2681.19 204.7635 + 3206.972 2610.838 206.4334 + 3190.085 2639.831 205.2288 + 3153.084 2650.442 204.8585 + 3168.886 2654.884 207.0878 + 3173.132 2702.447 205.2592 + 3199.558 2706.406 206.3172 + 3320.152 2792.021 211.0694 + 3333.583 2800.407 211.3402 + 3346.44 2812.085 211.4742 + 3319.499 2799.617 209.1935 + 3248.271 2771.542 205.3107 + 3243.519 2772.147 200.5438 + 3268.486 2799.347 198.4387 + 3321.089 2829.358 196.7325 + 3391.751 2878.587 198.3282 + 3498.798 2932.503 201.0089 + 3576.754 2976.939 204.5467 + 3609.954 3003.859 206.0148 + 3649.965 3032.826 207.8803 + 3625.207 3030.321 208.5925 + 3618.86 3032.152 207.818 + 3608.703 3030.239 205.7291 + 3633.863 3063.106 207.7698 + 3634.522 3075.089 207.3511 + 3628.888 3071.301 205.2741 + 3654.03 3085.679 203.4572 + 3594.76 3076.223 198.9135 + 3503.293 3024.868 193.4752 + 3506.06 3040.773 189.2161 + 3580.923 3079.37 190.8325 + 3649.701 3103.69 193.5263 + 3722.726 3149.563 197.1324 + 3809.309 3187.886 200.4534 + 3787.083 3210.28 198.4483 + 3798.375 3203.989 198.1458 + 3865.427 3211.443 199.3042 + 3828.074 3242.787 198.7233 + 3799.687 3219.673 196.7171 + 3719.52 3211.349 193.664 + 3716.143 3198.191 190.8133 + 3789.954 3235.106 190.6975 + 3841.155 3241.368 192.1397 + 3910.574 3301.88 194.0709 + 3974.538 3330.997 194.6404 + 3994.347 3359.016 196.8206 + 4014.564 3370.705 196.2717 + 4017.905 3399.337 194.901 + 4053.971 3405.746 194.5344 + 4080.082 3423.602 195.9045 + 4131.421 3455.826 195.9157 + 4150.544 3470.287 195.917 + 4229.112 3524.024 195.5849 + 4272.24 3572.78 197.0242 + 4336.042 3623.155 197.4885 + 4332.184 3617.237 198.811 + 4465.719 3681.029 200.7368 + 4488.039 3707.114 201.7553 + 4563.691 3758.136 202.7332 + 4657.963 3851.754 205.0265 + 4769.576 3898.869 207.5881 + 4751.946 3898.531 208.8921 + 4775.072 3931.495 209.8688 + 4783.388 3936.299 210.2431 + 4770.091 3946.92 209.1094 + 4766.574 3984.883 207.6639 + 4783.135 3985.69 208.0611 + 4801.834 3991.937 208.7085 + 4894.604 4068.425 208.3597 + 4975.616 4118.065 209.5735 + 5005.671 4179.017 210.9004 + 5009.407 4177.453 211.3179 + 5086.308 4204.501 212.5445 + 5084.863 4213.54 213.6703 + 5100.858 4214.495 214.3839 + 5063.156 4226.537 213.5259 + 5036.423 4230.978 211.4778 + 5032.681 4228.959 208.3091 + 5053.799 4241.721 205.5294 + 4965.09 4203.845 202.0428 + 5116.926 4261.198 201.5087 + 5152.069 4275.63 201.2279 + 5167.576 4284.769 200.0614 + 5180.986 4331.279 201.1027 + 5237.217 4339.349 201.0968 + 5342.982 4395.387 202.4846 + 5397.077 4438.577 202.6435 + 5484.454 4521.399 204.6093 + 5599.656 4580.229 206.5316 + 5605.247 4551.878 207.638 + 5560.139 4547.278 207.561 + 5550.477 4512.704 208.2113 + 5422.633 4450.734 207.0236 + 5407.967 4444.172 205.7419 + 5341.599 4438.929 204.6589 + 5248.491 4344.377 200.536 + 5098.451 4356.942 193.2349 + 5127.117 4412.68 190.6 + 5224.673 4451.618 191.7895 + 5266.744 4478.207 193.5049 + 5416.411 4553.764 195.7526 + 5473.807 4575.388 195.9103 + 5496.508 4600.334 195.6317 + 5542.322 4642.48 195.9109 + 5620.583 4677.803 197.1447 + 5681.448 4680.833 199.7234 + 5754.575 4702.857 200.9543 + 5776.808 4752.082 202.373 + 5794.987 4757.858 202.3499 + 5938.233 4839.798 206.8288 + 5965.396 4842.542 207.8288 + 6002.337 4857.874 209.0832 + 6006.791 4867.903 210.1847 + 5974.557 4840.912 209.8585 + 5971.562 4863.66 210.2244 + 5937.051 4856.383 209.8079 + 5897.765 4830.827 208.8941 + 5669.422 4702.666 204.6229 + 5622.784 4730.812 202.7781 + 5752.439 4771.074 204.9687 + 5847.447 4774.81 206.1936 + 5783.328 4762.645 205.2802 + 5845.223 4768.572 204.8371 + 5751.495 4715.179 203.0329 + 5654.764 4729.383 200.2751 + 5646.146 4728.229 197.5565 + 5648.711 4745.201 195.2339 + 5635.351 4810.282 192.9487 + 5692.631 4841.503 192.931 + 5864.656 4929.513 194.9285 + 5984.689 4993.857 197.5937 + 6150.889 5061.722 201.0485 + 6296.581 5094.102 203.5924 + 6389.626 5150.168 205.4862 + 6433.069 5172.136 206.615 + 6460.989 5223.355 207.6607 + 6486.085 5290.602 208.5043 + 6538.91 5326.746 209.0396 + 6606.849 5410.05 209.3752 + 6653.043 5412.688 210.214 + 6664.94 5432.911 210.1493 + 6680.737 5476.91 209.3983 + 6715.628 5557.117 209.6171 + 6733.646 5578.244 210.0342 + 6748.714 5562.734 211.4856 + 6800.924 5617.672 212.5146 + 6840.249 5664.805 214.0241 + 6928.494 5662.19 214.9892 + 6947.701 5745.585 215.7109 + 6995.117 5771.484 216.8663 + 7031.88 5804.469 217.7172 + 7095.824 5858.734 219.2336 + 7145.561 5863.484 220.1136 + 7138.196 5874.486 220.269 + 7157.869 5912.841 220.1049 + 7154.805 5921.098 220.317 + 7161.057 5922.459 220.214 + 7161.636 5926.962 219.8513 + 7140.38 5935.485 218.7281 + 6988.206 5869.524 216.6599 + 6901.448 5830.479 214.2069 + 6921.772 5861.221 212.7658 + 6951.212 5865.776 212.5561 + 6964.494 5837.183 211.8733 + 7013.679 5915.408 210.9388 + 7101.702 5930.574 211.8948 + 7139.773 5958.446 211.5333 + 7240.504 6024.693 212.2314 + 7263.686 6021.066 213.0739 + 7309.617 6067.04 214.1464 + 7357.691 6122.096 215.3232 + 7460.728 6162.81 216.6132 + 7552.707 6204.697 217.5596 + 7666.317 6243.449 220.1539 + 7671.023 6273.154 221.4916 + 7773.38 6317.792 222.8923 + 7800.103 6331.551 223.6901 + 7801.608 6378.859 223.503 + 7819.518 6412.249 224.1399 + 7881.173 6435.988 224.4756 + 7942.145 6475.127 224.7463 + 8067.358 6527.758 226.5057 + 8135.065 6540.091 227.7462 + 8160.041 6567.023 228.9124 + 8246.348 6609.208 229.6994 + 8351.972 6625.695 231.2019 + 8446.197 6714.596 232.3205 + 8514.464 6751.037 233.8458 + 8708.139 6820.495 235.1582 + 8756.497 6905.883 235.4095 + 8849.165 6951.56 236.1083 + 8972.445 7016.94 236.9981 + 9053.37 7071.144 236.9439 + 9103.359 7150.307 237.5947 + 9209.004 7210.145 238.3943 + 9335.028 7276.898 239.4022 + 9429.358 7361.761 240.6652 + 9547.745 7400.777 240.4972 + 9558.757 7450.665 240.0893 + 9550.45 7466.543 239.5769 + 9462.932 7494.242 239.0031 + 9373.848 7502.387 237.5366 + 9349.589 7507.978 235.3389 + 9346.637 7595.472 232.4265 + 9459.937 7637.787 231.5627 + 9511.663 7656.648 231.0083 \ No newline at end of file diff --git a/tests/ramst.mod b/tests/ramst.mod new file mode 100644 index 000000000..9fa14019d --- /dev/null +++ b/tests/ramst.mod @@ -0,0 +1,36 @@ +var c k; +varexo x; + +parameters alph gam delt bet aa; +alph=0.5; +gam=0.5; +delt=0.02; +bet=0.05; +aa=0.5; + + +model; +c + k - aa*x*k(-1)^alph - (1-delt)*k(-1); +c^(-gam) - (1+bet)^(-1)*(aa*alph*x(+1)*k^(alph-1) + 1 - delt)*c(+1)^(-gam); +end; + +initval; +x = 1; +k = ((delt+bet)/(1.0*aa*alph))^(1/(alph-1)); +c = aa*k^alph-delt*k; +end; + +steady; + +check; + +shocks; +var x; +periods 1; +values 1.2; +end; + +simul(periods=200); + +rplot c; +rplot k; diff --git a/tests/ramst_a.mod b/tests/ramst_a.mod new file mode 100644 index 000000000..74d3a5f5f --- /dev/null +++ b/tests/ramst_a.mod @@ -0,0 +1,37 @@ +// check shocks on several periods +var c k; +varexo x; + +parameters alph gam delt bet aa; +alph=0.5; +gam=0.5; +delt=0.02; +bet=0.05; +aa=0.5; + + +model; +c + k - aa*x*k(-1)^alph - (1-delt)*k(-1); +c^(-gam) - (1+bet)^(-1)*(aa*alph*x(+1)*k^(alph-1) + 1 - delt)*c(+1)^(-gam); +end; + +initval; +x = 1; +k = ((delt+bet)/(1.0*aa*alph))^(1/(alph-1)); +c = aa*k^alph-delt*k +1 ; +end; + +steady; + +check; + +shocks; +var x; +periods 1:4 ; +values ([1.1, 1.2, 1.3, 1.4]') ; +end; + +simul(periods=200); + +rplot c; +rplot k; diff --git a/tests/run_test.m b/tests/run_test.m new file mode 100644 index 000000000..6ab5468c7 --- /dev/null +++ b/tests/run_test.m @@ -0,0 +1,39 @@ +function run_test() +test_files = { +'.' 'ramst'; +'.' 'ramst_a'; +'.' 'example1'; +'.' 'example2'; +'.' 't_sgu_ex1'; +'arima' 'mod1'; +'arima' 'mod1a'; +'arima' 'mod1b'; +'arima' 'mod1c'; +'arima' 'mod2'; +'arima' 'mod2a'; +'arima' 'mod2b'; +'arima' 'mod2c'; +'fs2000' 'fs2000'; +'fs2000' 'fs2000a'; +} + +results = cell(length(test_files),1); + +for i=1:length(test_files) + results{i}= run_test1(test_files{i,1},test_files{i,2}); +end + +for i=1:length(test_files) + disp(test_files{i,2}) + disp(results{i}) +end +function msg=run_test1(path1,mod_file) + global options_ + clear options_ + old_path = pwd; + cd(path1); + msg = 'OK'; + expr = ['disp(''error in ' mod_file ''');msg=lasterr;disp(msg)']; + eval(['dynare ' mod_file ' noclearall'],'eval(expr)'); + cd(old_path) + diff --git a/tests/t_lag2.mod b/tests/t_lag2.mod new file mode 100644 index 000000000..02b68e59a --- /dev/null +++ b/tests/t_lag2.mod @@ -0,0 +1,40 @@ +// example 1 from Collard's guide to Dynare +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b(-2) + e; +b = tau*a(-1)+rho*b(-2) + u; +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +stoch_simul(order=2,irf=0,periods=50000,simul_seed=1); diff --git a/tests/t_lag2_check.mod b/tests/t_lag2_check.mod new file mode 100644 index 000000000..ffdd8be23 --- /dev/null +++ b/tests/t_lag2_check.mod @@ -0,0 +1,44 @@ +// example 1 from Collard's guide to Dynare +periods 400; + +var y, c, k, a, h, b, b1; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b1(-1) + e; +b = tau*a(-1)+rho*b1(-1) + u; +b1 = b(-1); +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +b1 = 0; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +stoch_simul(order=2,irf=0,simul,simul_seed=1); diff --git a/tests/t_lag2_checka.mod b/tests/t_lag2_checka.mod new file mode 100644 index 000000000..755d593d8 --- /dev/null +++ b/tests/t_lag2_checka.mod @@ -0,0 +1,44 @@ +// example 1 from Collard's guide to Dynare +periods 400; + +var y, c, k, a, h, b, b1; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b1(-1) + e; +b = tau*a(-1)+rho*b1(-1) + u; +b1 = b(-1); +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +b1 = 0; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +stoch_simul(order=1,irf=0,simul,simul_seed=1); diff --git a/tests/t_lag2a.mod b/tests/t_lag2a.mod new file mode 100644 index 000000000..3e781e07a --- /dev/null +++ b/tests/t_lag2a.mod @@ -0,0 +1,44 @@ +// example 1 from Collard's guide to Dynare +periods 400; + +var y, c, k, a, h, b, b1; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b1(-1) + e; +b = tau*a(-1)+rho*b1(-1) + u; +b1 = b(-1); +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +b1 = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +stoch_simul(irf=0,order=1); diff --git a/tests/t_lag2b.mod b/tests/t_lag2b.mod new file mode 100644 index 000000000..364ec4fd1 --- /dev/null +++ b/tests/t_lag2b.mod @@ -0,0 +1,42 @@ +// example 1 from Collard's guide to Dynare +periods 400; + +var y, c, k, a, h, b, b1; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b1(-1) + e; +b = tau*a(-1)+rho*b1(-1) + u; +b1 = b(-1); +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +b1 = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +stoch_simul(irf=0,periods=10000,order=2); diff --git a/tests/t_periods.mod b/tests/t_periods.mod new file mode 100644 index 000000000..6dfe36573 --- /dev/null +++ b/tests/t_periods.mod @@ -0,0 +1,44 @@ +// example 1 from Collard's guide to Dynare +// test options.periods + +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b(-2) + e; +b = tau*a(-1)+rho*b(-2) + u; +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0.000081]; + +check; + +stoch_simul(order=2,irf=0,periods=400,simul_seed=1); diff --git a/tests/t_periods_a.mod b/tests/t_periods_a.mod new file mode 100644 index 000000000..f20cf09ca --- /dev/null +++ b/tests/t_periods_a.mod @@ -0,0 +1,36 @@ +var c k; +varexo x; + +parameters alph gam delt bet aa; +alph=0.5; +gam=0.5; +delt=0.02; +bet=0.05; +aa=0.5; + + +model; +c + k - aa*x*k(-1)^alph - (1-delt)*k(-1); +c^(-gam) - (1+bet)^(-1)*(aa*alph*x(+1)*k^(alph-1) + 1 - delt)*c(+1)^(-gam); +end; + +initval; +x = 1; +k = ((delt+bet)/(1.0*aa*alph))^(1/(alph-1)); +c = aa*k^alph-delt*k +1 ; +end; + +steady; + +check; + +shocks; +var x; +periods 1; +values 1.2; +end; + +simul(periods=200); + +rplot c; +rplot k; diff --git a/tests/t_sgu_ex1.mod b/tests/t_sgu_ex1.mod new file mode 100644 index 000000000..a4fe6e8c9 --- /dev/null +++ b/tests/t_sgu_ex1.mod @@ -0,0 +1,38 @@ +periods 20000; +var c k a; +varexo e; +parameters alpha beta delta gamma rho; + +beta = 0.95; +delta = 1; +alpha = 0.3; +rho = 0; +gamma = 2; + +model; +exp(c) + exp(k) = (1-delta) * exp(k(-1)) + exp(a) * exp(k(-1))^alpha; +exp(c)^(-gamma) = beta * exp(c(+1))^(-gamma) * (exp(a(+1)) * alpha * exp(k)^(alpha-1) + 1 - delta); +a = rho * a(-1) + e; +end; + +initval; +k=0; +c=0; +a=0; +e=0; +end; + +Sigma_e_ = 1; + +stoch_simul(nomoments,nocorr,ar=0,irf=0); + +global dr_ +load objectives/sgu_ex1; + +test(dr_.ghx,dr_obj_.ghx,1); +test(dr_.ghu,dr_obj_.ghu,2); +test(dr_.ghxx,dr_obj_.ghxx,3); +test(dr_.ghxu,dr_obj_.ghxu,4); +test(dr_.ghuu,dr_obj_.ghuu,5); + +disp('TESTS OK'); \ No newline at end of file diff --git a/tests/test_matlab.mod b/tests/test_matlab.mod new file mode 100644 index 000000000..68d344448 --- /dev/null +++ b/tests/test_matlab.mod @@ -0,0 +1,40 @@ +periods 200; +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau, phi; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1)))*(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b(-1) + e; +b = tau*a(-1)+rho*b(-1) + u; +end; + +initval; +y = 1; +c = 0.7; +h = 0.1; +k = 11; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.01 0.005; 0.01]; + +stoch_simul(irf=0); + diff --git a/tests/variance_0.mod b/tests/variance_0.mod new file mode 100644 index 000000000..6fc272e7b --- /dev/null +++ b/tests/variance_0.mod @@ -0,0 +1,42 @@ +// test setting variance to 0 +periods 400; + +var y, c, k, a, h, b; +varexo e,u; + +parameters beta, rho, beta, alpha, delta, theta, psi, tau; + +alpha = 0.36; +rho = 0.95; +tau = 0.025; +beta = 0.99; +delta = 0.025; +psi = 0; +theta = 2.95; + +phi = 0.1; + +model; +c*theta*h^(1+psi)=(1-alpha)*y; +k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) + *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); +y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); +k = exp(b)*(y-c)+(1-delta)*k(-1); +a = rho*a(-1)+tau*b(-1) + e; +b = tau*a(-1)+rho*b(-1) + u; +end; + +initval; +y = 1.08068253095672; +c = 0.80359242014163; +h = 0.29175631001732; +k = 5; +a = 0; +b = 0; +e = 0; +u = 0; +end; + +Sigma_e = [ 0.000081; (phi*0.009*0.009) 0]; + +stoch_simul(order=1,irf=0,simul);