Commit Graph

1817 Commits (remove-particles-submodule)

Author SHA1 Message Date
Stéphane Adjemian (Argos) bd0493d135
Add routine for dynamic contributions in semi-structural models. 2023-07-06 22:26:09 +02:00
Johannes Pfeifer 9b2c0fb94d Add brooks_gelman_plotrows to manual and testsuite 2023-07-06 09:32:19 -04:00
Normann Rion 23dbb2b4b9 Fixes local_state_space_iteration_3 and adds a test comparing the various pruning routines used in dynare up to order 3.
The considered pruning routines can be found in
   - `simult_.m`
   - `local_state_space_iteration_2` MEX
   - `local_state_space_iteration_3` MEX
   - `pruned_state_space_system.m`
2023-07-04 19:15:43 +02:00
Sébastien Villemot d5a3a8e16a
Various improvements to perfect foresight homotopy
– new option “endval_steady” to pf_setup command to recompute terminal
  steady state in the homotopy loop

– new options “homotopy_linearization_fallback” and
  “homotopy_marginal_linearization_fallback” to pf_solver and pfwee_solver
  commands, to get an approximate solution when homotopy fails to go to 100%

– new options “homotopy_initial_step_size”, “homotopy_min_step_size”,
  “homotopy_step_size_increase_success_count” and “homotopy_max_completion_share”
  to pf_solver and pfwee_solver commands to fine tune the homotopy behaviour

– removed option “homotopy_alt_starting_point” to pf_solver command, not really
  useful

– new options “steady_solve_algo”, “steady_tolf”, “steady_tolx”,
  “steady_maxit”, “steady_markowitz” to pf_solver and pfwee_solver commands, to
  control the computation of the terminal steady state (and remove the
  equivalent options which previously had different names in pfwee_solver command)
2023-06-21 15:58:23 +02:00
Sébastien Villemot c1b78e26ac
perfect_foresight_with_expectation_errors_{setup,solver}: streamline handling of guess values
– Remove the terminal_steady_state_as_guess_value option to pfwee_solver
– pfwee_setup now sets the same guess values as pf_setup (i.e. terminal steady
  state at all periods)
– With constant_simulation_length option, pfwee_solver uses terminal steady
  state as guess values for periods that are added to the simulation
2023-06-15 15:37:48 +02:00
Sébastien Villemot 3ef833ac5f
Testsuite: remove unused test 2023-06-12 14:14:53 +02:00
Sébastien Villemot c0294bb343
Testsuite: remove the simul/ folder, and move its files under {deterministic,stochastic}_simulations/
With the exception of ramst2.mod which was not run by the testsuite and has
thus been deleted.
2023-06-12 14:14:53 +02:00
Sébastien Villemot 4459f9a488
Testsuite: move homotopy/ folder under the steady_state/ folder
To clarify that those tests are about homotopy for steady state computation,
and not for perfect foresight simulation.
2023-06-12 14:14:53 +02:00
Sébastien Villemot 9c88bab247
Testsuite: remove obsolete Julia tests 2023-06-12 14:14:53 +02:00
Sébastien Villemot 37870e4a40
evaluate_steady_state: accept exogenous steady state as argument instead of whole oo_ structure
This is a move towards a more functional programming style.
2023-06-07 17:58:19 +02:00
Sébastien Villemot d41501bc6d
Misc updates to gitignore files
[skip ci]
2023-05-30 20:59:59 +02:00
Stéphane Adjemian (Ryûk) 51ffe77fb7
Add error flag (new output) to simul_backward_model routine. 2023-04-05 11:09:59 +02:00
Stéphane Adjemian (Ryûk) b8c70eba3b
Initialize parameter delta.
To prevent name mangling with potentially available function (matlab toolbox).
2023-04-05 11:09:59 +02:00
Sébastien Villemot d5ee4dcb75
Testsuite: add a test for deprecated simul command 2023-03-29 17:01:09 +02:00
Sébastien Villemot ec908386b6
Testsuite: no longer use deprecated ramsey_policy, except a in a dedicated test 2023-03-29 16:57:01 +02:00
Johannes Pfeifer 89fc53716e testsuite: add integration test for model_diagnostics with block 2023-03-17 12:20:30 -04:00
Johannes Pfeifer 64c69b4cd2 testsuite: do not delete non-existent jnl-files 2023-03-17 11:56:06 -04:00
Johannes Pfeifer 4837a4d444 testsuite: clean up main folder 2023-03-17 10:35:00 -04:00
Stéphane Adjemian (Ryûk) cc0d22cf4c
Fix integration tests.
print_equations() has been replaced by search().
2023-03-06 17:17:31 +01:00
Sébastien Villemot 65053667cf
New “homotopy_alt_starting_point” option to “perfect_foresight_solver” command 2023-02-07 14:49:00 -05:00
Sébastien Villemot d6370a6d28 Merge branch 'occbin_init_smo' into 'master'
occbin enhancements and bug fixes

See merge request Dynare/dynare!2123
2023-02-07 14:23:14 +00:00
Sébastien Villemot c3524d33d0
Testsuite: replace “simul” by “perfect_foresight_setup” + “perfect_foresight_solver” 2023-02-06 15:42:34 -05:00
Marco Ratto 22e6fb1814 make sure also ALL updated variables in period 1 are reconstructed with smoother_redux. test model changed accordingly. 2023-02-03 14:20:28 +01:00
Marco Ratto a4dc58db8e adjust smoother redux test, to consider that now ALL smoothed variables must be properly reconstructed also in period 1 2023-02-03 14:19:39 +01:00
Marco Ratto 21443e0988 add consistency check of results using smoother_redux with occbin 2023-02-03 14:18:43 +01:00
Sébastien Villemot cef1ce33ed
Preprocessor: remove some incorrect normalization rules for the case mfs=3
As a consequence, increase the tolerance for a test with mfs=3 (it now uses the
same tolerance as the corresponding test for mfs=2).
2023-01-25 18:39:47 +01:00
Sébastien Villemot 5aca770931
perfect_foresight_with_expectation_errors_{setup,solver}: fix bugs with several exogenous
Closes: #1883
2023-01-24 15:02:07 +01:00
Sébastien Villemot e30314e75d
Drop the “Sigma_e” statement 2023-01-16 16:52:42 +01:00
Sébastien Villemot 1b47c8a5e5
Drop the “periods” statement 2023-01-16 16:52:40 +01:00
Sébastien Villemot 8f1a4cb363
Drop block-decomposed first-order perturbation solution and kalman filter 2023-01-13 16:57:49 +01:00
Stéphane Adjemian (Ryûk) b7693c3273
Add routine for conditional likelihood (first order). 2023-01-06 14:57:45 +01:00
Sébastien Villemot f93a7f7192
Merge branch 'disp_aux_4' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2118
2023-01-04 10:59:21 +01:00
Johannes Pfeifer 45450651a2 model_info.m: fix display of block decomposition 2023-01-03 16:17:43 +01:00
Sébastien Villemot c1922c3ad0
Stop building and shipping the Dynare++ executable
Incidentally, no longer run Dynare++ unit tests, since they are intricated in
the Dynare++ build system. If we finally decide not to drop the Dynare++
codebase for our MEX files, then we should probably find a way to build and run
them again.

Ref. #1825
2023-01-03 14:51:07 +01:00
Stéphane Adjemian (Guts) 5b72a3041c
Use new unit tests interface. 2023-01-02 22:58:20 +01: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
Sébastien Villemot 4e08aadafa
Test suite: remove unused field in .trs files 2022-11-30 10:26:28 +01:00
Sébastien Villemot 595f3d1dce
Makefile indentation fixes 2022-11-29 17:40:20 +01:00
Sébastien Villemot 9976649c78
Test suite: fix logic of unit tests for nonlinear solvers 2022-11-29 17:34:16 +01:00
Johannes Pfeifer e530f7cbaa OccBin: add calib_smoother testfile 2022-11-23 16:48:08 +01:00
Johannes Pfeifer c90368d48c NKM.mod: clean up file 2022-11-23 15:17:51 +01:00
NormannR 93a2a097c6 Fix: scale the matrices in tests/riccatiupdate.m to control the size of errors 2022-11-22 15:07:56 +01:00
Sébastien Villemot dbdda7bf93
Merge branch 'Pinf' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2105
2022-11-22 11:25:14 +01:00
Sébastien Villemot d554b79772
Merge branch 'occ_test' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2103
2022-11-22 11:24:57 +01:00
Sébastien Villemot a35ac95a9d
Testsuite: fix logic of unit tests for cycle/logarithmic reduction + Riccati update 2022-11-21 16:22:07 +01:00
Johannes Pfeifer 801baacc8c fs2000_smoother_only_ns.mod: check for correctness of smoothed observables
Related to 178e892e
2022-11-18 22:04:58 +01:00
Johannes Pfeifer 67ba8127f4 dynrbc_common.inc: decrease number of simulation periods to prevent testsuite crashes
(cherry picked from commit 7c4c0fe4114775aae67b9362918a124ff0d09ce9)
2022-11-17 22:43:39 +01:00
NormannR a245fbb390 Implements a Fortran update of the states variance-covariance matrix for the Kalman filter 2022-11-14 16:24:46 +00:00
Marco Ratto 6737d9f81e truncate stochastic shocks to 90 periods, to avoid no convergence in period 91 2022-10-20 19:19:34 +02:00
Johannes Pfeifer cbbbdf4b3d make_y_.m: fix interaction with steady_state_model
closes https://git.dynare.org/Dynare/dynare/-/issues/1866
2022-10-13 16:33:58 +02:00