Commit Graph

208 Commits (7dd2dd5e24a343fbeaf3522ea5e535c27d8b9f95)

Author SHA1 Message Date
Stéphane Adjemian (Scylla) 131a68ea6f Provide more informations if expected shocks are declared after the terminal period. 2017-08-16 16:43:43 +02:00
Stéphane Adjemian (Scylla) 10047feee5 Test if shocks are declared.
Fixes bug introduced in 97b894a1cd, if no shocks
are declared (for instance if the user is interested in the transition to the
steady state).
2017-08-16 16:04:15 +02:00
Johannes Pfeifer 97b894a1cd Provide meaningful error message if oo_.exo_simul is larger than options_.periods 2017-08-16 16:00:55 +02:00
Stéphane Adjemian (Scylla) 1a4257ac4b Efficiency change.
Reduced the size of the unnecessary large array for the exogenous variables
introduced in 57fd56c90a.
2017-08-16 15:44:00 +02:00
Johannes Pfeifer 57fd56c90a sim1_linear.m: Fix evaluation of dynamic model at deterministic steady state
Did not correctly account for exogenous variables being potentially present with leads and lags
2017-08-01 11:04:46 +02:00
Stéphane Adjemian (Charybdis) 1bf81c9f5a Fixed copyright notices. 2017-05-18 18:36:38 +02:00
Stéphane Adjemian (Charybdis) 5417b27ac7 Fixed indentation of matlab files. 2017-05-16 15:10:20 +02:00
Stéphane Adjemian (Charybdis) a53636e24e Fixed copyright notices. 2017-05-16 14:11:15 +02:00
Stéphane Adjemian (Charybdis) 88e1701289 Removed useless commas and semicolons. 2017-05-16 13:24:46 +02:00
Stéphane Adjemian (Charybdis) 5ef2d650b2 Fixed function name in header. 2017-05-16 13:24:46 +02:00
Ferhat Mihoubi 981e31c8c3 Fix issues in bytecode with option extended_path related to the size of endo_simul and exo_simul
(cherry picked from commit ab7acc49e30fbcb292d63d58281581a308716b4c)
2017-05-08 18:40:18 +02:00
Ferhat Mihoubi e248d8bf59 Fix memory and periods issues in bytecode
(cherry picked from commit fa5dd681abcb3243a5ee9be1f71fdfc51bced1cd)
2017-05-08 18:39:44 +02:00
Houtan Bastani b3fa669717 bug fix introduced in 234aaacf92 2017-03-24 17:13:03 +01:00
Marco Ratto 234aaacf92 factorized display of critical values. 2017-03-23 00:08:05 +01:00
Stéphane Adjemian (Charybdis) ee2c30fd97 Partialm cherry-pick of 28e95d817a181f758dab595d6a14de0ff348bed5
Give more informations in case of NaN, Inf or non real variables.

Closes PR #1385.
2017-03-22 14:04:35 +01:00
Johannes Pfeifer 1c070f536a Add headers to various functions 2016-08-23 17:28:41 +02:00
Johannes Pfeifer 8f689ce8d2 Correct header of perfect-foresight-models/perfect_foresight_mcp_problem.m 2016-08-23 17:28:41 +02:00
Michel Juillard 22f49971bc fixing bug in mcp model setup
makes perfect_foresight_problem more efficient
added test case for stack_solve_algo == 7
2016-07-03 10:56:44 +02:00
Michel Juillard 0ce2834281 extended path: fixed boundaries for linear problem 2016-05-31 12:10:12 +02:00
Michel Juillard c14125d585 PATH: fixing bugs 2016-05-31 12:10:12 +02:00
Michel Juillard d106b20b69 perfect foresight: set boundaries with PATH 2016-05-31 12:10:12 +02:00
Michel Juillard c159dff19c adding hook for PATH solver 2016-05-31 12:10:12 +02:00
Stéphane Adjemian (Charybdis) dfbad0404d Fixed crash in sim1_linear when periods=1.
Closes #1176.
2016-05-26 22:19:36 +02:00
Stéphane Adjemian (Charybdis) fb4dfc6da6 Fixed typo. 2016-05-24 22:32:02 +02:00
Michel Juillard 28c0c92ae8 fixing typos
(cherry picked from commit 86995a3bd478a3dc02919424aeb77e2a550a84c5)
2016-05-24 17:57:26 +02:00
Stéphane Adjemian (Hermes) be0f6230ad Cosmetic changes.
- Use a switch-case block.
 - Added a warning when the user tries to solve a linear(ized) model
with solve_algo different from 0 (for a linear model).
 - Added an error message if the user try to solve a linearized model
with stack_solve_algo=6 (not implemented).
2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Hermes) 1815eb8e56 Code factorization. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Hermes) 8a163842d0 Removed oo_ from sim1_linear routine. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Hermes) 53747cb082 Fixed lmmcp option.
This option may be used in extended_path and perfect_foresight_solver commands.
2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Charybdis) e0be60710c Removed oo_ from sim1_purely_{backward,forward} routines. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Charybdis) 290ce5db68 Removed oo_ from sim1_lbj routine. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Charybdis) 674c9ab286 Removed oo_ from sim1 routine. 2016-05-24 17:26:06 +02:00
Johannes Pfeifer 5f32b80a27 Fix error codes for bytecode in perfect_foresight_solver_core.m
If it fails, 1 must indicate error, not 0
2016-05-05 10:52:17 +02:00
MichelJuillard 62efd9930e Merge pull request #1148 from JohannesPfeifer/foresight_imaginary
Add check whether real part of complex solution solves the model
2016-04-12 13:06:26 +02:00
MichelJuillard aa1a0b5e25 Merge pull request #1052 from JohannesPfeifer/lin_solve_robust
Integrate robust linear solver for stack_solve_algo=0
2016-04-12 12:06:22 +02:00
Johannes Pfeifer a93d68fb35 Make evaluate_steady_state.m honor nocheck flag
Closes #1054
2016-03-25 22:12:52 +01:00
Johannes Pfeifer 0669ac4c1c Adjust verbosity of solvers 2016-03-25 20:14:25 +01:00
Johannes Pfeifer 4b83c1bf76 Integrates Tom Holden's robust linear solver
Supersedes #984
2016-03-25 09:59:20 +01:00
Stéphane Adjemian(Charybdis) e714dc1a9f Fixed bug in homotopy.
Convex combination for initial/terminal endogenous variables paths was wrong.
2016-03-24 22:42:44 +01:00
Johannes Pfeifer 6bca322809 Add check whether real part of complex solution solves the model
Fixes #896
2016-03-23 21:25:58 +01:00
Stéphane Adjemian a3c7cad354 Merge pull request #1131 from JohannesPfeifer/make_
Replace globals by inputs in make_ex_.m and make_y_.m
2016-03-18 15:10:06 +01:00
Johannes Pfeifer bb08853784 Replace globals by inputs in make_ex_.m and make_y_.m 2016-03-11 16:28:17 +01:00
Houtan Bastani f60945facc fix copyright dates 2016-03-11 16:22:42 +01:00
Michel Juillard 34e35555d6 fixed bugs when there is a single equation in the model 2016-03-07 21:51:45 +01:00
ferhat e555c8181d Corrections in the way to handle the exogenous 2015-11-19 17:04:56 +01:00
ferhat 6d7218f9dc Fix bugs in det_cond_forecast.m 2015-11-11 18:35:41 +01:00
ferhat 7c5272d852 Allows to compute the extended path and the conditional forecasts with bytecode 2015-09-22 15:39:49 +02:00
Michel Juillard 7d11ed7642 histval: use now the same treatment for exogenous and exogenous det
variables as for endogenous ones. Closes issue #617.
2015-07-29 16:12:53 +02:00
Michel Juillard fe861fee76 fixed bug introduced in commit 1bd2a1b1c2 2015-07-29 11:54:10 +02:00
Michel Juillard e8f318ff50 fixed problems in extended path 2015-07-23 14:27:55 +02:00
Michel Juillard b8194f7845 histval: replaced initialization with NaN by zeros 2015-07-23 14:25:18 +02:00
Michel Juillard 0d7e349187 removed useless statement 2015-07-23 11:41:47 +02:00
Michel Juillard 995c0d7c66 fixing typo 2015-07-21 15:32:33 +02:00
Michel Juillard 9b8077fc28 Merge branch 'master' into new_ep 2015-07-21 09:30:58 +02:00
Stéphane Adjemian (Charybdis) d78ed888e5 Added a function to evaluate the accuracy of the linear approximation
when solving perfect foresight models.
2015-07-07 17:55:41 +02:00
Stéphane Adjemian (Charybdis) ee44dd5fea Updated header. 2015-07-07 17:55:41 +02:00
Stéphane Adjemian (Charybdis) 316f394e06 Removed unused variables from sim1.m. 2015-07-07 17:55:41 +02:00
Stéphane Adjemian (Charybdis) 17f3583151 Allow linear_approximation option with stack_solve_algo=7. 2015-07-07 17:55:41 +02:00
Stéphane Adjemian (Charybdis) 8007f508a2 New option linear_approximation for perfect foresight models.
This approach only requires one evaluation of the dynamic model (and its
jacobian) instead of T (the number of perdiods). Also (because the model
is linear) the equilibrium paths are obtained by inverting the jacobian
of the stacked equations (no need for a Newton algorithm).

Only available with stack_solve_algo==0 (which is the default algorithm
for solving perfect foresight models).

If possible, the option is triggered automatically if the model is
declared linear.

TODO:
 * Write a linear version of perfect_foresight_problem routine.
 * Evaluate the approxilation error (just need to evaluate the system of
 stacked non linear equations).
2015-07-07 17:55:41 +02:00
Michel Juillard 3640b2b511 minor change to perfect_foresight_solver_core.m 2015-07-07 16:42:30 +02:00
Stéphane Adjemian (Hermes) ccad2848db Homotopy not implemented for purely backward or forward perfect foresight
models.
2015-06-04 12:28:58 +02:00
Michel Juillard c22d31330c Adding 'ramsey_constraints' block to declare contraints for Ramsey
problems. Note that LMMCP (solve_algo=10) still doesn't work in all cases.
2015-05-31 12:18:20 +02:00
Michel Juillard 127730d731 solve bugs when there are lags of exogenous variables on more than one
period in deterministic models.
2015-05-27 12:22:32 +02:00
Michel Juillard eefa7bb70a fixing problem with endogenous_terminal_period 2015-05-27 10:23:14 +02:00
Michel Juillard 1b822a9105 fix calls to dynare_solve() when Jacobian of function must be computed
numerically. Fix call to dynare_solve() in simulation_core()
2015-05-26 15:51:09 +02:00
Michel Juillard a36fd53eff fixing extended-path 2015-05-25 09:43:21 +02:00
Michel Juillard b3047c9742 Merge branch 'master' into new_ep 2015-05-23 18:26:07 +02:00
Johannes Pfeifer 8aec696b95 Fix various copy and paste errors in check_input_arguments.m
During moving to a separate function, not all variables had been renamed
2015-05-09 08:22:31 +02:00
Stéphane Adjemian 3bcb89bd72 Merge pull request #893 from JohannesPfeifer/Fix_message
Fix crash in error message display of perfect_foresight_setup.m when mor...
2015-05-07 17:23:25 +02:00
Michel Juillard f2617fcf74 deterministic simulations: more efficient manner to build the Jacobian matrix
of the stacked system. Gains is not as much as expected.
2015-05-06 11:16:53 +02:00
Sébastien Villemot db272f114b Compatibility fixes for MATLAB <= 7.7.
The tilde syntax was introduced in MATLAB 7.8.
2015-04-22 16:45:15 +02:00
Sébastien Villemot f86b91d3d6 Perfect foresight solver: inform the user when we switch to a homotopy method. 2015-04-22 14:44:39 +02:00
Sébastien Villemot 8ab1239d79 Fix handling of warnings in perfect foresight solver with homotopy. 2015-04-22 12:23:20 +02:00
Johannes Pfeifer 31cd80e9a9 Fix crash in error message display of perfect_foresight_setup.m when more than one variable is not present in current period
Concatenation otherwise crashes due to non-conformable matrices
2015-04-19 10:52:22 +02:00
Stéphane Adjemian (Scylla) 6d7b72cb0d Merged with master 2015-03-13 15:53:18 +01:00
Stéphane Adjemian (Charybdis) de5c541ce6 Manually merged PR #807.
Fixed conflict related to the move of the perfect foresight related routines
in a subfolder.
2015-03-05 14:31:36 +01:00
Michel Juillard a5c652f81a removing nefarious _ 2015-03-04 09:41:29 +01:00
Michel Juillard 2ca7be4e5e Merging changes in master 2015-02-23 18:02:20 +01:00
Stéphane Adjemian (Charybdis) 7df3856cbf Fixed homotopy with bytecode for perfect foresight models. 2015-02-21 13:59:53 +01:00
Stéphane Adjemian (Charybdis) 43f2ec1d9d Fixed display of the homotopy steps when the residuals are complex. 2015-02-21 13:58:52 +01:00
Stéphane Adjemian (Charybdis) ff7c1f5cda Cosmetic change. 2015-02-21 13:57:48 +01:00
Stéphane Adjemian (Charybdis) 9bdf75a52c Fixed bug in the initialization of the homotopy for perfect foresight models. 2015-02-21 13:56:11 +01:00
Stéphane Adjemian (Charybdis) d19592f761 Fixed homotopy for perfect foresight models with block option, cosmetic changes. 2015-02-20 14:48:25 +01:00
Michel Juillard 55ea2100c6 Merge branch 'master' into new_ep 2015-02-19 10:27:15 +01:00
Stéphane Adjemian (Charybdis) 5768acf17e Fixed the verbosity of perfect foresight models solvers.
With stack_solve_algo={0, 6} the verbosity is controlled with
options_.verbosity instead of options_.no_homotopy.

Also harmonized the printed informations across these two algorithms.
2015-02-18 23:58:37 +01:00
Stéphane Adjemian (Charybdis) fd0a172637 Remove small imaginary parts in the solution path for perfect foresight
models obtained with stack_solve_algo=7.

Also return oo_.deterministic_simulation.status equal to false if the
solution path is not real.
2015-02-18 23:53:55 +01:00
Stéphane Adjemian (Charybdis) 1c8e1ab913 Merge branch 'remove-globals-from-blocks' 2015-02-17 13:01:17 +01:00
Stéphane Adjemian (Charybdis) cc94ed63b0 Revert "Temporary fix for perfect foresight model simulation with block option."
This reverts commit 8875dbdaa5.
2015-02-17 13:01:01 +01:00
Stéphane Adjemian (Charybdis) a894357655 Removed options_ and oo_ globals from *all* generated dynamic model
routines (with block option) and adapted some routines to reflect this change.
2015-02-17 12:57:30 +01:00
Michel Juillard 83c68c0477 Allowing for models without exogenous variable 2015-02-16 21:30:34 +01:00
Stéphane Adjemian (Charybdis) 8875dbdaa5 Temporary fix for perfect foresight model simulation with block option. 2015-02-16 17:05:37 +01:00
Houtan Bastani 333f87ced2 fix headers 2015-02-16 09:08:26 +01:00
Houtan Bastani ca83397d95 update copyright dates for files changed in 2015 2015-02-16 09:08:02 +01:00
Michel Juillard f8af7724bb small fixes to perfect foresight 2015-02-15 16:49:33 +01:00
Michel Juillard 3c7b1cf2d7 changed calling sequence for sim1; use local variable names without _;
sim1 honors options_.nodisplay
2015-02-14 12:02:18 +01:00
Michel Juillard 21f009a531 Merge branch 'master' into new_ep 2015-02-14 11:54:57 +01:00
Stéphane Adjemian (Charybdis) b3ed7901cf Fixed bug in homotopy for perfect foresight models.
Homotopy was not working if nans or complex numbers were present in oo_.endo_simul.
2015-02-13 16:04:25 +01:00
Stéphane Adjemian (Charybdis) 3b41aa0e60 Fixed bug related to the type of initial_period. 2015-02-13 15:59:49 +01:00
Stéphane Adjemian (Charybdis) ec896d8ca7 Cosmetic changes.
oo_.determinist_simulation.status is a boolean.
2015-02-13 15:58:12 +01:00
Stéphane Adjemian (Charybdis) 59d1c18960 Added routines missing in previous commit. 2015-02-13 10:10:41 +01:00
Stéphane Adjemian (Charybdis) 67be25d1a8 Rewrote homotopy for perfect foresight models. 2015-02-12 15:30:27 +01:00
Stéphane Adjemian (Charybdis) f40fcb9724 Do not print anything if homotopy (perfect forsight models solver). 2015-02-12 15:30:27 +01:00
Stéphane Adjemian (Charybdis) 93966f2087 Set verbosity to 0 if homotopy is used to solve the perfect foresight model. 2015-02-12 15:30:27 +01:00
Stéphane Adjemian (Charybdis) 751e518811 Removed global variables in perfect foresight routines. 2015-02-12 15:30:27 +01:00
Stéphane Adjemian (Charybdis) 892e6818ed Put argument checks in another routine. 2015-02-12 15:30:27 +01:00
Stéphane Adjemian (Charybdis) 6f7fed2046 Moved sim1* routines in subfolder. 2015-02-12 15:30:26 +01:00
Stéphane Adjemian (Charybdis) 1b55975231 Moved det_cond_forecast routine in subfolder. 2015-02-12 15:30:26 +01:00
Stéphane Adjemian (Charybdis) df4ee4b983 Moved files related to perfect foresight models in a subfolder. 2015-02-12 15:30:26 +01:00