From ec05f302b7a8879b1ac25b428149c08a7dafe064 Mon Sep 17 00:00:00 2001 From: Michel Juillard <michel.juillard@mjui.fr> Date: Fri, 1 Jun 2012 15:00:56 +0200 Subject: [PATCH] Removing debugging code for extended path. Updating test cases. --- ...solve_stochastic_perfect_foresight_model.m | 4 +-- tests/Makefile.am | 1 + tests/ep/mean_preserving_spread.m | 5 ++-- tests/ep/rbc.mod | 4 +-- tests/ep/rbcii.mod | 27 ++++++++++++++++--- 5 files changed, 31 insertions(+), 10 deletions(-) diff --git a/matlab/solve_stochastic_perfect_foresight_model.m b/matlab/solve_stochastic_perfect_foresight_model.m index d2ce4e59a0..5f357901f9 100644 --- a/matlab/solve_stochastic_perfect_foresight_model.m +++ b/matlab/solve_stochastic_perfect_foresight_model.m @@ -193,8 +193,8 @@ function [flag,endo_simul,err] = solve_stochastic_perfect_foresight_model(endo_s end flag = 0;% Convergency obtained. endo_simul = reshape(Y(:,1),ny,periods+2);%Y(ny+(1:ny),1); - figure;plot(Y(16:ny:(periods+2)*ny,:)) - pause + % figure;plot(Y(16:ny:(periods+2)*ny,:)) + % pause break end dy = -A\res; diff --git a/tests/Makefile.am b/tests/Makefile.am index bd5e7f5055..203326fcc4 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -126,6 +126,7 @@ MODFILES = \ second_order/ds1.mod \ second_order/ds2.mod \ ep/rbc.mod \ + ep/rbcii.mod \ ep/linear.mod \ deterministic_simulations/deterministic_model_purely_forward.mod \ deterministic_simulations/rbc_det1.mod \ diff --git a/tests/ep/mean_preserving_spread.m b/tests/ep/mean_preserving_spread.m index 9d988fe128..d296ec3452 100644 --- a/tests/ep/mean_preserving_spread.m +++ b/tests/ep/mean_preserving_spread.m @@ -1,4 +1,4 @@ -function m = mean_preserving_spread(autoregressive_parameter) +function m = mean_preserving_spread(autoregressive_parameter,sigma) % Computes the mean preserving spread for first order autoregressive process. % % The mean preserving spread m is a constant such that the mean of the process @@ -13,6 +13,5 @@ function m = mean_preserving_spread(autoregressive_parameter) % AUTHOR(S) % stephane DOT adjemian AT univ DASH lemans DOT fr % frederic DOT karame AT univ DASH evry DOT fr -global M_ -m = M_.Sigma_e/(1-autoregressive_parameter*autoregressive_parameter); \ No newline at end of file +m = sigma/(1-autoregressive_parameter*autoregressive_parameter); \ No newline at end of file diff --git a/tests/ep/rbc.mod b/tests/ep/rbc.mod index 35edc823ed..b5534f6570 100644 --- a/tests/ep/rbc.mod +++ b/tests/ep/rbc.mod @@ -57,10 +57,10 @@ options_.ep.stochastic.nodes = 2; options_.console_mode = 0; options_.ep.stochastic.order = 0; -ts0 = extended_path([],100); +//ts0 = extended_path([],100); options_.ep.stochastic.order = 1; -ts1 = extended_path([],100); +//ts1 = extended_path([],100); options_.ep.stochastic.order = 2; ts2 = extended_path([],100); diff --git a/tests/ep/rbcii.mod b/tests/ep/rbcii.mod index 2d4046c6ad..e4c8c30051 100644 --- a/tests/ep/rbcii.mod +++ b/tests/ep/rbcii.mod @@ -26,15 +26,15 @@ sigma2 = 0.001; rho = 0.800; @#endif -external_function(name=mean_preserving_spread); +external_function(name=mean_preserving_spread,nargs=2); -model(use_dll); +model; // Eq. n°1: efficiency = rho*efficiency(-1) + EfficiencyInnovation; // Eq. n°2: - Efficiency = effstar*exp(efficiency-mean_preserving_spread(rho)); + Efficiency = effstar*exp(efficiency-mean_preserving_spread(rho,sigma2)); // Eq. n°3: Output = Efficiency*(alpha*(Capital(-1)^psi)+(1-alpha)*(Labour^psi))^(1/psi); @@ -56,6 +56,27 @@ model(use_dll); end; +steady_state_model; +efficiency = 0; +Efficiency = effstar*exp(efficiency-mean_preserving_spread(rho,sigma2)); +// Compute steady state ratios. +Output_per_unit_of_Capital=((1/beta-1+delta)/alpha)^(1/(1-psi)); +Consumption_per_unit_of_Capital=Output_per_unit_of_Capital-delta; +Labour_per_unit_of_Capital=(((Output_per_unit_of_Capital/Efficiency)^psi-alpha)/(1-alpha))^(1/psi); +Output_per_unit_of_Labour=Output_per_unit_of_Capital/Labour_per_unit_of_Capital; +Consumption_per_unit_of_Labour=Consumption_per_unit_of_Capital/Labour_per_unit_of_Capital; + +// Compute steady state share of capital. +ShareOfCapital=alpha/(alpha+(1-alpha)*Labour_per_unit_of_Capital^psi); + +/// Compute steady state of the endogenous variables. +Labour=1/(1+Consumption_per_unit_of_Labour/((1-alpha)*theta/(1-theta)*Output_per_unit_of_Labour^(1-psi))); +Consumption = Consumption_per_unit_of_Labour*Labour; +Capital = Labour/Labour_per_unit_of_Capital; +Output = Output_per_unit_of_Capital*Capital; +Investment = delta*Capital; +ExpectedTerm = beta*((((Consumption^theta)*((1-Labour)^(1-theta)))^(1-tau))/Consumption)*(alpha*((Output/Capital)^(1-psi))+1-delta); +end; @#if extended_path_version -- GitLab