From abfdf5ca7ec0883a34f2e50b14c0ee30f80aa70f Mon Sep 17 00:00:00 2001 From: Johannes Pfeifer <jpfeifer@gmx.de> Date: Fri, 16 Feb 2024 15:44:30 +0100 Subject: [PATCH] Add integration test for Ramsey with bytecode --- meson.build | 1 + .../neo_ramsey_det_bytecode.mod | 79 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 tests/optimal_policy/neo_ramsey_det_bytecode.mod diff --git a/meson.build b/meson.build index c0a2008167..ed0139b945 100644 --- a/meson.build +++ b/meson.build @@ -1017,6 +1017,7 @@ mod_and_m_tests = [ { 'test' : [ 'optimal_policy/nk_ramsey.mod' ] }, { 'test' : [ 'optimal_policy/nk_ramsey_model.mod' ] }, { 'test' : [ 'optimal_policy/nk_ramsey_det.mod' ] }, + { 'test' : [ 'optimal_policy/neo_ramsey_det_bytecode.mod' ] }, { 'test' : [ 'optimal_policy/nk_ramsey_expectation.mod', 'optimal_policy/nk_ramsey_expectation_a.mod' ] }, { 'test' : [ 'optimal_policy/mult_elimination_test.mod' ] }, diff --git a/tests/optimal_policy/neo_ramsey_det_bytecode.mod b/tests/optimal_policy/neo_ramsey_det_bytecode.mod new file mode 100644 index 0000000000..da90040377 --- /dev/null +++ b/tests/optimal_policy/neo_ramsey_det_bytecode.mod @@ -0,0 +1,79 @@ +//MODEL: +//test on Dynare to find the lagrangean multipliers. +//We consider a standard NK model. We use the FOCS of the competitive economy and we aim at calculating the Ramsey optimal problem. + +//------------------------------------------------------------------------------------------------------------------------ +//1. Variable declaration +//------------------------------------------------------------------------------------------------------------------------ + +var pai, c, n, r, a; + +//4 variables + 1 shock + +varexo u; + + +//------------------------------------------------------------------------------------------------------------------------ +// 2. Parameter declaration and calibration +//------------------------------------------------------------------------------------------------------------------------- + +parameters beta, rho, epsilon, omega, phi, gamma; + +beta=0.99; +gamma=3; //Frish elasticity +omega=17; //price stickyness +epsilon=8; //elasticity for each variety of consumption +phi=1; //coefficient associated to labor effort disutility + +rho=0.95; //coefficient associated to productivity shock + +//----------------------------------------------------------------------------------------------------------------------- +// 3. The model +//----------------------------------------------------------------------------------------------------------------------- + +model(bytecode); +a=rho*(a(-1))+u; +1/c=beta*(1/(c(+1)))*(r/(pai(+1))); //euler +omega*pai*(pai-1)=beta*omega*(c/(c(+1)))*(pai(+1))*(pai(+1)-1)+epsilon*exp(a)*n*(c/exp(a)*phi*n^gamma-(epsilon-1)/epsilon); //NK pc +//pai*(pai-1)/c = beta*pai(+1)*(pai(+1)-1)/c(+1)+epsilon*phi*n^(gamma+1)/omega-exp(a)*n*(epsilon-1)/(omega*c); //NK pc +(exp(a))*n=c+(omega/2)*((pai-1)^2); +end; + +//-------------------------------------------------------------------------------------------------------------------------- +// 4. Steady state +//--------------------------------------------------------------------------------------------------------------------------- + +initval; +pai=1; +r=1/beta; +c=0.9671684882; +n=0.9671684882; +a=0; +end; + + +//--------------------------------------------------------------------------------------------------------------------------- +// 5. shocks +//--------------------------------------------------------------------------------------------------------------------------- + +shocks; +var u; +periods 1; +values 0.008; +end; + +//-------------------------------------------------------------------------------------------------------------------------- +// 6. Ramsey problem +//-------------------------------------------------------------------------------------------------------------------------- + +planner_objective(ln(c)-phi*((n^(1+gamma))/(1+gamma))); + +write_latex_static_model; + +ramsey_model(planner_discount=0.99); +steady; + +perfect_foresight_setup(periods=200); +perfect_foresight_solver(maxit=20); + +rplot r; -- GitLab