Commit Graph

1752 Commits (982ec2e66d094301654f607c2bf49014b5e54b5c)

Author SHA1 Message Date
Stéphane Adjemian (Ryûk) 982ec2e66d
Fix copy/paste error. 2022-08-23 09:16:46 +02:00
Johannes Pfeifer 905e7c4344 load_results_after_load_mh: fix location of file 2022-08-10 12:55:00 +02:00
Johannes Pfeifer dc40862eff testsuite: add smoother_redux option 2022-07-26 22:15:39 +02:00
Johannes Pfeifer 622f831625 Inversion filter: disable unavailable smoother outputs
Related to https://git.dynare.org/Dynare/dynare/-/issues/1861
2022-07-26 14:43:31 +02:00
Willi Mutschler 30a6d35f5a
🐛 identification do plots and display results only for nonempty objects
fixes #1860
2022-07-26 10:26:13 +02:00
Sébastien Villemot 13709f6853
Add “fsolve_options” option to “steady” command
Closes: #1856
2022-07-22 14:35:19 +02:00
Sébastien Villemot 572fed3994
Merge branch 'dyn_forecast' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2051
2022-07-05 17:09:51 +02:00
Sébastien Villemot b3cff2d34d
Bytecode: remove incomplete/buggy support for exogenous deterministic 2022-07-05 13:02:17 +02:00
Johannes Pfeifer 35a25b8fb5 dyn_forecast.m: gracefully exit if decision rules and remove unused output argument 2022-07-04 17:33:20 +02:00
Johannes Pfeifer 76885870ef testsuite: provide analytical steady state to unit root models instead of relying on initial values 2022-06-27 15:19:30 +02:00
Sébastien Villemot 32cf926ef8
Macro-variables defined without a value are now set to “true”
They were previously set to 1.

Ref. preprocessor#43
2022-06-16 16:52:50 +02:00
Sébastien Villemot 06f665e231
Perfect foresight: LBJ now available under stack_solve_algo=1 (with/without block/bytecode)
Previously, LBJ was available:

– under stack_solve_algo=6 when neither block nor bytecode were present
– under stack_solve_algo=1 with either block or bytecode (but the documentation
  was not making it clear that it was LBJ)

This commit merges the two values for the option, and makes them
interchangeable. LBJ should now be invoked with stack_solve_algo=1 (but
stack_solve_algo=6 is kept for compatibility, and is a synonymous).
2022-06-15 15:06:33 +02:00
Stéphane Adjemian (Ryûk) ac2b3f2bdc
Add integration tests for model inversion. 2022-05-20 08:31:03 +02:00
Stéphane Adjemian (Ryûk) cd76bdff9e
Fix and update unit tests for local_state_space_iteration_2.
Add mat file with git lfs.
2022-05-13 12:13:46 +02:00
Sébastien Villemot 63a116fb28
New += and *= syntaxes in “endval(learnt_in=…)” blocks 2022-05-03 17:46:59 +02:00
Sébastien Villemot 252a592f1a
Allow “learnt_in=1” for “shocks” and “endval” 2022-04-29 15:55:57 +02:00
Stéphane Adjemian (Charybdis) 8b197bf71c
Remove duplicate assignments for parameters. 2022-04-28 12:58:22 +02:00
Stéphane Adjemian (Charybdis) 4386116c91
Fixed unit tests. 2022-04-28 12:58:22 +02:00
Sébastien Villemot a600336c92
New “add” and “multiply” keywords in “shocks(learnt_in=…)” block 2022-04-26 15:22:15 +02:00
Sébastien Villemot 8488674ce4
New shocks(learnt_in=…) and endval(learnt_in=…) blocks
For use with perfect_foresight_with_expectation_errors_setup.
2022-04-21 17:10:52 +02:00
Sébastien Villemot 96346b77e5
Octave 7 compatibility fix: in testsuite, replace --no-window-system option by xvfb-run
This is a workaround for Octave bug 62101, which affects
tests/shock_decomposition/ls2003_plot.mod, but is unlikely to be fixed.
2022-04-15 14:33:02 +02:00
Sébastien Villemot 418c290ead
Octave 7 compatibility fix: rmdir() now errors out if the directory is nonexistent 2022-04-15 14:33:02 +02:00
Sébastien Villemot 5d3b4801a3
Octave 7 compatibility fix: increase test tolerance 2022-04-15 14:33:02 +02:00
Sébastien Villemot 19246d68da
Octave 7 now has rng 2022-04-15 14:33:02 +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 9c8033d99e
Merge branch 'obs_test' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2019
2022-04-12 15:54:10 +02:00
Sébastien Villemot b70b864829
perfect_foresight_with_expectation_errors_setup: move terminal condition to last line of CSV file 2022-04-12 15:51:04 +02:00
Sébastien Villemot a8a9051b31
New option “constant_simulation_length” to “perfect_foresight_with_simulation_errors_solver” command 2022-04-12 15:45:50 +02:00
Johannes Pfeifer e6944521dd testsuite: use file-specific names to prevent overwriting while reading 2022-04-11 18:47:04 +02:00
Stéphane Adjemian (Charybdis) f1aff2b370
Remove calls to dbstack in dynare_solve.
Adding three input parameters for maxit, tolf and tolx.

Closes #1841.
2022-04-10 20:29:57 +02:00
Johannes Pfeifer b103cc9259 fs2000_uncorr_ME_missing.mod: use calibration instead of estimation
mode on some machines triggered numerical instabilities in the initialization of Pstar due to near singularity
2022-04-02 19:41:00 +02:00
Sébastien Villemot 3b4ef0df49
Add new “log” option to “var” statement
Ref. #349
2022-03-30 18:01:22 +02:00
Sébastien Villemot d7b5973cce
Testsuite: increase tolerance in block_bytecode/lola_stochastic_block.mod
Apparently needed with MATLAB R2022a on AVX-512 processors.
2022-03-29 14:10:41 +02:00
Stéphane Adjemian (Ryûk) cdd85f32a7
Update unit tests for trust region routines. 2022-03-25 19:42:40 +01:00
Stéphane Adjemian (Ryûk) f2bf98ee76
Return the value of info as a third argument (block_trust_region). 2022-03-25 19:42:40 +01:00
Stéphane Adjemian (Ryûk) 24d5ba0290
Change nonlinear solvers in some integration tests.
Trust region with block decomposition (as provided by dmperm) fails to provide
correct simulations (most likely due to the interpretation of tolf which
depends on the number and size of blocks).
2022-03-25 19:42:40 +01:00
Stéphane Adjemian (Ryûk) aa8439d4cc
New implementation of the trust region algorithm.
Main difference is the presence of traps for NaN/Inf/Complex numbers in
residuals or the Jacobian matrix. Also added new unit tests.
2022-03-25 19:42:40 +01:00
Stéphane Adjemian (Ryûk) 1b2b3db380
Fix definition of the Rosenbrock function. 2022-03-25 19:42:40 +01:00
Sébastien Villemot 7f58ec5963
Testsuite: increase tolerance in block_bytecode/lola_solve_one_boundary_mfs2.mod
This is made necessary by commit dd1ec10ec8.
2022-03-24 14:18:18 +01:00
Sébastien Villemot 35bdac6be6
Testsuite: in block_bytecode/ireland.mod, remove unneeded option setting
The default of options_.slowc is already 1.
2022-03-22 12:53:04 +01:00
Sébastien Villemot d8c3467a08
Testsuite: improve tests for block/bytecode options
Improve the model that is used to test all combinations of algorithms with
block and bytecode options, by ensuring that it includes the 8 possible types of blocks:
– Solve {forward, backward, two boundaries} {simple, complete}
– Evaluate {forward, backward}

All the “Solve” blocks are also included in both linear and nonlinear forms
(since the codepaths are typically different depending on the linearity of
the block).

Note that there is no such thing as a nonlinear “Evaluate” block, since the
endogenous variables of the block always enter linearly (on the LHS).

Also:
- use perfect_foresight_{setup,solver} instead of simul (and disable automatic homotopy)
- add a shock on e_R (though this is not strictly needed since the
  corresponding block already inherits the shock from another ancestor block)
- remove the block for observables, there is already another block of type
  “Evaluate forward”
2022-03-16 15:00:09 +01:00
Sébastien Villemot 3d7299c1e4
New option “non_zero” to the “resid” command
When this option is given, the “resid” command only displays non-zero residuals
2022-03-01 14:26:16 +01:00
Sébastien Villemot e49cada341
Testsuite: run_block_byte_tests_{matlab,octave}.m were not actually checking the results 2022-03-01 11:29:52 +01:00
Sébastien Villemot 63bcd2558e
Testsuite: when running Octave, use --no-window-system option rather than forcing gnuplot toolkit
In practice --no-window-system currently implies the gnuplot toolkit with dumb
terminal, but it is cleaner this way.
2022-02-23 12:13:27 +01:00
Stéphane Adjemian (Charybdis) e7d11dd7b1
Remove aux variables from target definition (PAC). 2022-02-18 09:13:17 +01:00
Sébastien Villemot a376d8c9fe
Fix steady state computation with bytecode+block and solve_algo ⩽ 4 or ⩾ 9
– Temporary terms were not correctly passed between blocks
– solve_algo ⩾ 9 was incorrectly passed through bytecode own’s solver instead
  of through dynare_solve
2022-02-17 17:28:37 +01:00
Sébastien Villemot fa7b331cf4
Fix crash in simulation of “Solve forward/backward complete” blocks with stack_solve_algo=4 (without bytecode) 2022-02-11 18:11:42 +01:00
Sébastien Villemot 39f47dc957
local_state_space_iteration_k MEX now uses the Fortran code (instead of the C++ code)
Closes: #1802
2022-02-04 11:49:46 +01:00
NormannR 5f828e241f Parallelizes local_state_space_iteration_fortran 2022-01-31 18:44:48 +01:00
Stéphane Adjemian (Ryûk) f5f47cd834
Add new option last_simulation_period to initval_file command.
Also adjust the periods in Simulated_time_series (output of the perfect
foresight solver in the workspace). Note that this dseries object contains the
observations for the initial condition (M_.orig_maximum_lag observations) and
for the terminal condition (M_.orig_maximum_lead observations).

See #1838.

Fix testsuite (wrong file name)
2022-01-21 17:39:47 +01:00