They now only return what’s really their output (simulated paths, maximum
residual error…). This is a move towards a more functional programming style.
It is now supported by the MATLAB editor (as of R2022a).
The old ASCII notation is left in some files that we copy as-is from other
sources (e.g. in the contrib/ and m4/ subdirectories).
The particles submodule is not updated at this point, because it is in an
inconsistent state.
[skip ci]
Several tests need to be adapted, because they were implicitly making the
assumption that there is no auxiliary variable.
Incidentally, this closes#1731. This commit therefore also removes the
workaround introduced in 0391dbbeb1.
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).