Commit Graph

16 Commits (51ffe77fb7e8b41f4543de8730a28796124ae224)

Author SHA1 Message Date
Stéphane Adjemian (Ryûk) 51ffe77fb7
Add error flag (new output) to simul_backward_model routine. 2023-04-05 11:09:59 +02:00
Sébastien Villemot d574705b4a
Design and performance improvement to solve_algo={12,14}
Use the new time-recursive block decomposition computed by the preprocessor
for:
- the simulation of backward models with “simul_backward”
- the perfect foresight simulation of purely backward/forward/static models

Also note that in this case, the preprocessor now defaults to “mfs=3” (i.e. it
minimizes the set of feedback variables and tries to renormalize equations).

This replaces the previous algorithm based on Dulmage-Mendelsohn (dmperm), plus
an ad hoc identification of some equations that can be evaluated (those with a
LHS equal to a variable, the log of a variable, or the diff-log of a variable).

By the way, the block_trust_region MEX has been modified so that it accepts a
boolean argument to decide whether it performs a Dulmage-Mendelsohn
decomposition (if not, then it performs a simple trust region on the whole
nonlinear system).

This provides a significant performance improvement (of almost an order of
magnitude for solve_algo=14 on a 700 equations model).
2022-11-30 14:47:57 +01:00
Johannes Pfeifer 73ca68e052 model_inversion: Header cosmetics 2022-09-15 10:16:05 +02:00
Stéphane Adjemian (Charybdis) 9d1e07a2e4
Fix headers. 2022-03-03 09:35:30 +01:00
Sébastien Villemot 766fff88f6
Use secure URL for link to GNU licenses 2021-06-09 17:35:05 +02:00
Stéphane Adjemian (Charybdis) 8683790927
Throw error if solve_algo={12,14} is used without JSON output. 2021-04-08 20:31:40 +02:00
Stéphane Adjemian (Charybdis) dc251f53f4 Use dprintf routine (in matlab/backward subfolder). 2019-06-21 11:21:34 +02:00
Stéphane Adjemian (Charybdis) b3af8c4a48 Added routine for simulating static models. 2019-06-21 11:21:34 +02:00
Stéphane Adjemian (Charybdis) fec807ea17 Test if leaded variables exists when calling simul_backward_model routine. 2019-06-21 11:21:34 +02:00
Stéphane Adjemian(Charybdis) aa4cabcbeb Fixed bug (simulation of backward models).
Was crashing with three inputs (last one is for innovations) when the first input was an empty array.
2018-03-12 09:45:15 +01:00
Stéphane Adjemian (Scylla) 7be8f10e0e Use cells of strings instead of char arrays. 2018-01-09 22:30:01 +01:00
Stéphane Adjemian (Scylla) 6dde1b1ee7 Allow calibrated innovations with simul_backward_model routine. 2017-09-29 10:29:40 +02:00
Stéphane Adjemian (Scylla) 510eccd965 Fixed routines for backward model simulation (with IRFs and forecasts). 2017-09-28 10:12:53 +02:00
Stéphane Adjemian (Scylla) 1cd20acd7d Code factorization.
(cherry picked from commit 77b1d14083)
2017-07-29 14:12:50 +02:00
Stéphane Adjemian (Charybdis) a1f86b97e2 Allow lags on exogenous variables for backward models forecasts and IRFs.
TODO: Check if this is working with linear models.
(cherry picked from commit 44b9531bb7)
2017-06-14 00:08:14 +02:00
Stéphane Adjemian (Charybdis) 5570bf1588 Moved backward models related routines in specific subfolder.
(cherry picked from commit 214b534b25)
2017-06-14 00:01:48 +02:00