Version 5 brings many improvements but also a few potentially breaking changes. We most strongly encourage you modify your own code to comply with the new version. Relying on an older version of Dynare to run your own code may seem as a gain of time in the short term but will lead to more problems later. Note also that possible bugs found later in version 4.6.4 won't be fixed in that version. We expect users to run version 5 from now on.
## Changes related to `evaluate_planner_objective`
The `evaluate_planner_objective`-command has been thoroughly reworked. It now
1. applies a consistent approximation order to both the planner objective and the model solution. As a consequence, the numerical values will differ from what previous versions would return.
2. allows to compute both conditional and unconditional welfare.
3. supports `perfect_foresight`-simulations.
With these changes comes a difference in the way the output is stored. Before version 5, `oo_.planner_objective` was a 2 by 1 vector storing conditional welfare for steady state and zero Lagrange multipliers, respectively. Starting with version 5, `oo_.planner_objective` will be a structure with subfields:
1.`oo_.planner_objective_value.unconditional`: a scalar storing the value of unconditional welfare. In a perfect foresight context, it corresponds to welfare in the long-run, approximated as welfare in the terminal simulation period.
2.`oo_.planner_objective_value.conditional`: In a perfect foresight context, this field will be a scalar storing the value of welfare conditional on the specified initial condition and zero initial Lagrange
multipliers.
In a stochastic context, it will have two subfields:
1. `oo_.planner_objective_value.conditional.steady_initial_multiplier`: Stores the value of the
planner objective when the initial Lagrange multipliers associated with the planner’s problem are
set to their steady state values.
2. `oo_.planner_objective_value.conditional.zero_initial_multiplier`: Stores the value of the planner
objective when the initial Lagrange multipliers associated with the planner’s problem are set to 0,
i.e. it is assumed that the planner exploits its ability to surprise private agents in the first
period of implementing Ramsey policy.
## Changes related to the Dynare's storage of output
Starting with version 5, Dynare will generally save its output in the `MODFILENAME/Output`-folder (or the `DIRNAME/Output`-folder if the `dirname`-option was specified) instead of the main directory. Most importantly, this concerns the `_results.mat` and the `_mode.mat`-files. Users are therefore required to change the paths when trying to load these files. For example,