Sébastien Villemot
6ed53ae0fc
clang-format configuration: never collapse short functions on a single line
...
[skip ci]
2023-11-29 19:17:59 +01:00
Sébastien Villemot
3e415c06b5
CI: enable FF_ENABLE_BASH_EXIT_CODE_CHECK to avoid unintuitive behaviour with && operator
2023-11-23 12:27:05 +01:00
Sébastien Villemot
73be95423d
Bump minimal required version of MATLAB to R2018b
...
Ref. dynare#1907
2023-11-22 12:06:34 +01:00
Sébastien Villemot
c4c14963a1
Add clang-format config file for formatting C++ code
2023-11-21 12:44:44 +01:00
Sébastien Villemot
46aa6610ab
model_replace, model_remove: allow selecting an equation with several (conjunct) tags
...
NB: does not (yet) works with Occbin regime-specific equations.
Ref. dynare#1890
2023-11-15 12:05:06 +01:00
Sébastien Villemot
661b16440e
Merge branch 'doc' into 'master'
...
preprocessor.tex: add slides on verbatim block and command line options
See merge request Dynare/preprocessor!94
2023-11-15 10:24:01 +00:00
Johannes Pfeifer
09a9a4e9b6
preprocessor.tex: add slides on verbatim block and command line options
2023-11-15 10:25:12 +01:00
Sébastien Villemot
1ad7dd9672
Refactor parsing of equation tags in a more functional way
...
Incidentally, makes tag names case-insensitive in “model_replace” and
“model_remove”, which is consistent with tag declarations.
2023-11-14 15:55:30 +01:00
Sébastien Villemot
ac35ef6101
Error out if an “initval” block appears after an “endval” block (without the “learnt_in=…” option)
...
Closes : #104
2023-11-14 14:28:30 +01:00
Sébastien Villemot
cffbb0f4fd
Merge branch 'doc' into 'master'
...
preprocessor.tex: further updates
See merge request Dynare/preprocessor!93
2023-11-14 13:02:15 +00:00
Johannes Pfeifer
74bb394f4c
preprocessor.tex: further updated
2023-11-14 13:06:45 +01:00
Sébastien Villemot
9caacb194b
Merge branch 'doc' into 'master'
...
preprocessor.tex: modernizations and typo corrections
See merge request Dynare/preprocessor!92
2023-11-13 17:01:50 +00:00
Johannes Pfeifer
4a2167e811
preprocessor.tex: modernizations and typo corrections
2023-11-13 17:56:53 +01:00
Sébastien Villemot
b58ab55e97
Drop obsolete and undocumented stoch_simul options: dr_algo, simul, simul_algo, simul_seed
2023-11-10 15:22:35 +01:00
Sébastien Villemot
63f04636ee
New structure M_.block_structure.block().bytecode_jacobs_cols_to_sparse
...
It maps column indices in the Jacobian returned by bytecode MEX in evaluate
mode (which only contains nonzero columns, but also incorporate recursive
variables), into column indices in the sparse representation (which has 3×n
columns for two-boundaries blocks and n columns for one-boundary blocks).
Columns unused in the sparse representation are indicated by a zero.
2023-11-07 15:32:12 +01:00
Sébastien Villemot
086d65d98c
Remove unused enum values
2023-11-07 15:32:12 +01:00
Sébastien Villemot
53987fc039
Block: more symmetry between bytecode and non-bytecode write helpers
2023-11-07 15:32:12 +01:00
Sébastien Villemot
66dcb59d2b
🐛 Bytecode: fix FSTPG3_::get_lag()
...
It would return an incorrect result. This had no impact except for debugging
information.
2023-11-07 15:32:12 +01:00
Sébastien Villemot
3c7b02e87e
🐛 Bytecode+block+mfs>0: fix Jacobian computation in “evaluate” mode
...
When parsing the FSTPG{2,3} opcodes, the bytecode MEX internally constructs a
Jacobian with as many lines as feedback variables. But the preprocessor would
also output instructions for filling derivatives of equations corresponding to
recursive variables in the “evaluate” mode, thus leading to memory corruption
in the bytecode MEX.
2023-11-07 15:31:51 +01:00
Sébastien Villemot
1e159319d0
Static block derivatives: minor simplification
2023-11-03 11:26:59 +01:00
Sébastien Villemot
17ba27330a
Minor simplification
2023-10-25 14:38:43 +02:00
Sébastien Villemot
9b50a8a159
Rename ys0_ into oo_.initial_steady_state and ex0_ into oo_.initial_exo_steady_state
2023-10-23 17:33:49 +02:00
Sébastien Villemot
6235e69075
No longer forbid bytecode with k_order_solver
...
The two are now compatible, even though the bytecode representation will not be
used.
2023-10-19 14:09:05 -04:00
Sébastien Villemot
e6f38e724c
Cosmetics: remove empty list of parameters for lambda functions
2023-10-19 09:55:59 -04:00
Sébastien Villemot
f78c428d99
New option “relative_to_initval” to “mshocks” block
2023-10-18 16:16:41 -04:00
Sébastien Villemot
f179ec4dac
Use __builtin_unreachable() to silent some GCC warnings
...
This is cleaner than using exit() or assert() for that purpose.
2023-10-18 14:28:59 -04:00
Sébastien Villemot
6af84b8cac
The “mshocks” block now accepts the “learnt_in=…” option
2023-10-17 15:59:10 -04:00
Sébastien Villemot
6ec7f580d5
New option “static_mfs” to “model” block (and “model_options” command)
...
Currently defaults to 0.
2023-10-16 11:50:26 -04:00
Sébastien Villemot
98c27fad59
StaticModel: add missing fields in copy constructor and assigment operators
...
This should have been in commit 0169240f76
.
2023-10-16 11:49:33 -04:00
Sébastien Villemot
9ecc288f72
Bison grammar: small simplification w.r.t. “model” block options
...
Those options do not internally behave as the usual command options (which have
a “o_*” rule), so it makes more sense to treat them differently.
2023-10-16 11:49:33 -04:00
Sébastien Villemot
43fc59a2bc
The “mfs” option of the “model” block no longer affects the static model
...
This is a restoration of the behaviour that was present in 5.x.
2023-10-16 11:49:30 -04:00
Sébastien Villemot
db3a6bc301
ModelTree::equationTypeDetermination(): remove “mfs” as an input argument
...
It is already available as a class member.
2023-10-13 17:02:36 -04:00
Sébastien Villemot
613a8578ee
InitvalFileStatement: call histval_initvalf.m directly instead of initvalf.m wrapper
2023-10-11 16:52:04 -04:00
Sébastien Villemot
06eb8e0767
Merge branch 'xcode15' into 'master'
...
CI: fix linker issue with XCode 15 and add job for Homebrew arm64
See merge request Dynare/preprocessor!90
2023-10-11 13:47:51 +00:00
Willi Mutschler
ed3a0eb6a9
CI: add job for Homebrew / arm64
2023-10-11 15:43:54 +02:00
Willi Mutschler
586c8dbfae
macOS: use ld_classic as workaround for linker issue with XCode 15
...
XCode 15 (on Ventura and Sonoma) has a linker issue, see https://github.com/mesonbuild/meson/issues/12282 , workaround is to use ld_classic
2023-10-11 15:43:54 +02:00
Johannes Pfeifer
3c20b9862b
Add interface for nomodelsummary option
2023-10-11 09:31:22 -04:00
Johannes Pfeifer
16b063f666
Remove options_ as third input to set_state_space
2023-10-11 09:22:35 -04:00
Sébastien Villemot
084372a314
Add new option “from_initval_to_endval” to “homotopy_setup” block
2023-10-10 10:20:21 -04:00
Sébastien Villemot
a4bc539364
Rename HomotopyStatement class to HomotopySetupStatement
...
For consistency with other such classes, since it represents the homotopy_setup
block.
2023-10-06 16:51:39 -04:00
Sébastien Villemot
f70a9554a8
CI: rename Meson Homebrew/x86-64 cross file, for clarity
...
Also enforce the path to x86-64 GCC.
2023-10-02 17:02:56 +02:00
Sébastien Villemot
c9a28b82ff
CI: rename Meson Linux/arm64 cross file, for clarity
2023-10-02 17:02:56 +02:00
Sébastien Villemot
3d225c8df6
Merge branch 'irf_matching_preprocessor' into 'master'
...
Options for Bayesian IRF Matching in method_of_moments command
See merge request Dynare/preprocessor!85
2023-09-29 08:56:01 +00:00
Sébastien Villemot
86b24dc9bf
Gracefully handle division by zero when attempting equation normalization
...
Instead of crashing the preprocessor (because DataTree::DivisionByZeroException
is not caught), just abort the normalization and mark it as failed.
Ref. #92
2023-09-28 15:32:38 +02:00
Willi Mutschler
960c1563a0
Reorder IRF matching options alphabetically
2023-09-28 12:40:46 +02:00
Willi Mutschler
37ac40352a
Add options and checks for Bayesian IRF matching
2023-09-28 12:40:03 +02:00
Willi Mutschler
a2a6342865
Save options_mom_ to results.mat
2023-09-28 12:38:08 +02:00
Willi Mutschler
d714b2cb15
Remove unused option zero_moments_tolerance
2023-09-28 12:38:08 +02:00
Sébastien Villemot
dec60b25e6
Do not write bytecode for discretionary optimal policy models
...
Those models do not have as many variables as equations, and this case is not
supported by bytecode.
The present commit is an improvement over commit
a8ea57dd63
, which had already removed bytecode
for the planner objective model.
2023-09-27 14:49:06 +02:00
Sébastien Villemot
ef57a28b5f
Use same default variable cleaning rule under Octave as under MATLAB ⩾ 8.6
...
“clearvars” has been implemented in Octave since version 5.
2023-09-27 12:24:45 +02:00