Commit Graph

22 Commits (6adf1c26392d737dc31844aa3add0441e040f4a8)

Author SHA1 Message Date
Johannes Pfeifer 0561200f1c Implement even more naming consistency
Mostly removes M for M_
2023-10-25 17:29:55 +02:00
Sébastien Villemot 7722e8e36b
Perfect foresight: inner functions no longer return a modified oo_
They now only return what’s really their output (simulated paths, maximum
residual error…). This is a move towards a more functional programming style.
2023-06-06 18:13:10 +02:00
Stéphane Adjemian (Ryûk) ca31a087f8
Fix typo (remove trailing underscore to option variable). 2022-08-31 15:26:09 +02:00
Stéphane Adjemian (Ryûk) 9301024d71
Do not check steady state if nocheck option used in steady command...
In perfect foresight solvers with linear approximation.
2022-08-31 13:12:25 +02:00
Sébastien Villemot 10af04c6d8
Use Unicode copyright symbol (in UTF-8 encoding) in all source files
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]
2022-04-13 14:54:25 +02:00
Sébastien Villemot 766fff88f6
Use secure URL for link to GNU licenses 2021-06-09 17:35:05 +02:00
Johannes Pfeifer b5a4c0695f perfect foresight: provide debugging information for singular Jacobian
Closes https://git.dynare.org/Dynare/dynare/-/issues/1732
2021-03-17 15:02:30 +01:00
Sébastien Villemot fcb52478e4
Preprocessor: replace exogenous with lead/lags by auxiliary variables in deterministic models
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.
2020-11-09 16:34:12 +01:00
MichelJuillard 0391dbbeb1 fix bug with lag on exogenous variables on more than one period
(cherry picked from commit 492124ce9886e6aef4f4cefef302241d7edfe024)
2020-09-04 14:02:04 +00:00
Stéphane Adjemian (Charybdis) 24cc67e585 Ensure that all perfect foresight solvers work with periods=1.
See #1205 and #1176.
2019-04-26 15:55:48 +02:00
Sébastien Villemot a1b8bd39b2 Move the location of various generated files on the filesystem
- M and MEX files are now under +${MODELNAME}/
- bytecode, C source and JSON now under ${MODELNAME}/model/
2018-06-27 17:03:39 +02:00
Johannes Pfeifer 224ccb7bab sim1_linear.m: change hard-coded tolerance to option
The tolerance for the steady state check should depend on the accuracy of the steady state computation
2018-02-07 18:42:12 +01:00
Stéphane Adjemian (Scylla) 5429821719 Fixed incomplete commit 1a4257ac4b. 2017-08-16 23:29:15 +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) dfbad0404d Fixed crash in sim1_linear when periods=1.
Closes #1176.
2016-05-26 22:19:36 +02:00
Stéphane Adjemian (Hermes) 8a163842d0 Removed oo_ from sim1_linear routine. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Charybdis) ee44dd5fea Updated header. 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