Sébastien Villemot
7e1c25d775
backward_model_inversion: use the sparse representation of the dynamic file
2023-04-13 15:51:09 +02:00
Sébastien Villemot
ed75e4c176
dynamic_backward_model_for_inversion: turn into a local function of backward_model_inversion
2023-04-13 15:47:43 +02:00
Sébastien Villemot
66b648157f
Purely backward models simulation: use the sparse representation of the dynamic file
2023-04-13 15:47:43 +02:00
Sébastien Villemot
34e82f9697
sim1_purely_forward: use the sparse representation of the dynamic file
2023-04-13 15:47:43 +02:00
Sébastien Villemot
170a4dce0e
dynamic_forward_model_for_simulation: turn into a local function of sim1_purely_forward
2023-04-13 15:47:43 +02:00
Sébastien Villemot
5f42e84b0b
sim1_purely_static: use the sparse representation of the dynamic file
2023-04-13 15:47:43 +02:00
Sébastien Villemot
4a793f89ff
dynamic_static_model_for_simulation: turn into a local function of sim1_purely_static
2023-04-13 15:47:43 +02:00
Sébastien Villemot
942c6f9a20
🐛 static_model_inversion: fix handling of STEADY_STATE() operator
...
Of course, this operator does not make much sense in the context of a static
model, but it should still work.
2023-04-13 15:47:43 +02:00
Sébastien Villemot
9deb1e6049
static_model_inversion: use the sparse representation of the dynamic file
2023-04-13 15:47:41 +02:00
Sébastien Villemot
bc68915dfa
static_model_for_inversion: turn into a local function of static_model_inversion
2023-04-13 11:55:27 +02:00
Stéphane Adjemian (Ryûk)
4f3a0df884
Do not overwrite solve_algo option.
2023-04-12 09:53:46 +02:00
Sébastien Villemot
5c3e291483
Preprocessor: use_dll: turn getPowerDeriv() and sign() into inline functions
2023-04-11 17:31:18 +02:00
Sébastien Villemot
90a408e3c3
Build system: enable the dangling else warning (-Wdangling-else)
...
Adapt the code accordingly.
2023-04-11 17:31:18 +02:00
Sébastien Villemot
c56e7cef51
Build system: remove tests that have become useless since the removal of Dynare++ executable
2023-04-11 17:31:16 +02:00
Sébastien Villemot
6938080951
Preprocessor update
...
– 🐛 sign(0) was returning 1 instead of 0 with use_dll
– Performance improvements on very large models
2023-04-07 18:08:56 +02:00
Sébastien Villemot
9f29e2f292
Bytecode: add missing floating point exception handling for sqrt and several trigonometric functions
2023-04-07 17:32:36 +02:00
Sébastien Villemot
2740bdee58
Bytecode: remove default clause in switch/case clauses for opcodes
...
This ensures that we will get a compiler warning reminding us to support
opcodes that may be added in the future.
2023-04-07 16:46:35 +02:00
Sébastien Villemot
1622c74a53
Bytecode: add missing support for cbrt(), abs() and sign() operators
2023-04-07 16:46:35 +02:00
Sébastien Villemot
f27c3abd2f
Bytecode: refactor floating point exception handling
2023-04-07 16:46:32 +02:00
Sébastien Villemot
fbaa051489
Bytecode: minor simplification
2023-04-07 10:26:57 +02:00
Sébastien Villemot
421eb1482c
Octave compatibility: qz() will be MATLAB-compatible in version 9
...
[skip ci]
2023-04-07 10:26:54 +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
c4bc6316d0
Make matlab/missing/mex/mjdgges/mjdgges.m Octave-compatible
...
[skip ci]
2023-04-04 18:40:37 +02:00
Sébastien Villemot
8128fd4cc3
Bytecode: minor improvements of interfacing with UMFPACK
2023-04-03 18:34:55 +02:00
Sébastien Villemot
c4ad1d58e8
Bytecode: minor simplification to debug mode
2023-04-03 18:34:45 +02:00
Sébastien Villemot
19afc087cc
Manual: give more details for stack_solve_algo=0
...
Explain that the solver is a direct sparse LU, to differentiate it from
stack_solve_algo={2,3,4} which use the same Newton algorithm but with different
solvers.
2023-04-03 18:31:04 +02:00
Sébastien Villemot
d3afa980aa
MEX: better type definition for long SuiteSparse integers under Windows
2023-04-03 18:31:04 +02:00
Sébastien Villemot
d078810625
MEX: remove obsolete MSVC check
2023-04-03 14:59:36 +02:00
Sébastien Villemot
a45b00fa69
MEX: better type definition for BLAS/LAPACK integers in C and C++
...
int64_t on 64-bit machines better expresses the intent than ptrdiff_t. This is
also more consistent with what is done in Fortran.
2023-04-03 14:58:07 +02:00
Sébastien Villemot
f0888468e6
Bytecode: optimize memory consumption during iterations
...
mxArray objects were not properly destroyed within the iteration loop, leading
to higher memory usage. Note that there was no memory leak, because these
objects would be destroyed later by MATLAB when exiting the MEX.
2023-04-03 14:14:33 +02:00
Sébastien Villemot
5a1abb1b87
Bytecode: cleanup memory management for UMPACK memory buffers
...
There was probably no bug but it is safer this way.
2023-03-31 18:43:16 +02:00
Sébastien Villemot
8dae5393f5
Bytecode: remove unused function
2023-03-31 17:37:31 +02:00
Sébastien Villemot
403db2cc64
Bytecode MEX: under Octave, use system-wide umfpack.h instead of our own version
2023-03-31 16:18:27 +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
Sébastien Villemot
cdb786017b
Preprocessor update
...
– ramsey_policy is now fully implemented at the preprocessor level
– 🐛 ramsey_policy: lift restriction that order must be ⩽ 2
– 🐛 Extend incompatibility with deterministic exogenous to ramsey_model command
2023-03-29 16:26:02 +02:00
Sébastien Villemot
534515dc66
dyn_ramsey_static.m: simplifications + improve comments
2023-03-29 14:33:01 +02:00
Sébastien Villemot
ffe6eb4d40
Preprocessor: overhaul of M_ fields counting Ramsey/discretionary orig endos/eqs
...
– new fields: M_.ramsey_orig_{eq,endo}_nbr
– drop M_.ramsey_eq_nbr and M_.orig_eq_nbr
– new field: M_.discretionary_orig_eq_nbr
2023-03-29 14:33:01 +02:00
Sébastien Villemot
674ebce84b
🐛 Ramsey steady state computation could fail if expectation or diff operator is present
...
If auxiliary variables were created *before* the Lagrange multipliers (e.g. aux
vars related to the expectation or diff operators), then the vector of
residuals of the reduced Ramsey steady state problem (with respect to original
variables, as computed by the dyn_ramsey_static_1 subfunction) was incorrect.
2023-03-29 14:31:01 +02:00
Sébastien Villemot
4291b4f07e
The preprocessor now sets options_.{ramsey,discretionary}_policy in all cases
2023-03-28 18:30:08 +02:00
Sébastien Villemot
69d0aa670b
Preprocessor update
...
– 🐛 Incorrect stochastic transformation with endo lead ⩾ 2 or exo lead ⩾ 1 in
external functions
– New solution for solving the Ramsey steady state with Lagrange multipliers
with lead or lag ⩾ 2. Now generates a dedicated file for derivatives of static
model w.r.t. multipliers using chain rule derivation (#633 , #1119 , #1133 )
– 🐛 Incorrect cost table used when computing temporary terms in static model
with “use_dll”
– 🐛 Crash when writing the (static) set_auxiliary_variables file in the
presence of external functions
2023-03-28 14:49:28 +02:00
Sébastien Villemot
9fa64ee0d4
ramsey_policy and estimation: remove incorrect check about number of instruments
...
These should only be warnings, and they are already implemented in
model_diagnostics (see 39ae080997
).
2023-03-24 12:31:41 +01:00
Sébastien Villemot
abd24ed609
NEWS.md: release notes for 5.4
...
[skip ci]
2023-03-22 13:52:26 +01:00
Sébastien Villemot
369782b603
Preprocessor update
...
– use_dll: under Windows, bugfix related to excessive size of PATH variable
– minor macroprocessor refactoring
2023-03-20 18:28:48 +01:00
Sébastien Villemot
66b1724678
Windows package: bump HDF5 dependency
...
HDF5 itself now drags a lot of new dependencies (curl and its own deps,
openssl).
2023-03-20 16:16:45 +01:00
Sébastien Villemot
02510e37d3
Merge branch 'testsuite' into 'master'
...
Improve structure of testsuite
Closes #1715
See merge request Dynare/dynare!2128
2023-03-20 11:45:32 +00:00
Sébastien Villemot
43190b001f
Fix typo in commit 647ff5cd20
2023-03-17 18:19:03 +01: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