dynare/tests/solve_algo_12_14
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
..
backward_model.inc Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_backward_12.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_backward_14.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_backward_common.inc Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_backward_reference.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_forward_12.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_forward_14.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_forward_common.inc Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_forward_reference.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_static_12.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_static_14.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_static_common.inc Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
purely_static_reference.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
simul_backward_12.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
simul_backward_14.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
simul_backward_common.inc Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00
simul_backward_reference.mod Design and performance improvement to solve_algo={12,14} 2022-11-30 14:47:57 +01:00