Commit Graph

15365 Commits (51ffe77fb7e8b41f4543de8730a28796124ae224)

Author SHA1 Message Date
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
Sébastien Villemot 4f52ba0dbc
CI: bump to MATLAB R2023a 2023-03-17 16:32:13 +01:00
Sébastien Villemot 13908ee068
Provisions for MATLAB R2023a 2023-03-17 16:32:09 +01:00
Sébastien Villemot 647ff5cd20
MATLAB compatibility: warning subscripting:noSubscriptsSpecified removed in R2023a 2023-03-17 16:03:37 +01:00
Johannes Pfeifer 4837a4d444 testsuite: clean up main folder 2023-03-17 10:35:00 -04:00
Sébastien Villemot f07d73e63e
CI: use system-wide Octave binary 2023-03-16 17:43:39 +01:00
Sébastien Villemot 9a71beffb3
Windows package: bump to Octave 8.1.0 2023-03-16 17:43:37 +01:00
Sébastien Villemot 22c1d4a520
Manual: claim compatibility with Octave 8.1.0 2023-03-16 17:24:18 +01:00
Sébastien Villemot 816e94e9f9
Octave fix: do not change the global recursive delete confirmation setting
Only change the setting locally, as is done in isolder.m and
parallel/dynareParallelRmDir.m.
2023-03-16 17:24:18 +01:00
Sébastien Villemot 060c694066
model_diagnostics: remove workaround for Octave
The rank() and null() functions accept a tolerance argument since at least
Octave 3.8.
2023-03-16 17:24:18 +01:00
Sébastien Villemot 441173ec5a
Remove workaround for eig() function under Octave
The eig() function has been been able to return the left eigenvectors since at
least Octave 4.4.
2023-03-16 17:24:18 +01:00
Sébastien Villemot b7477ac0b6
cmaes: remove broken local isoctave() function 2023-03-16 17:24:18 +01:00
Sébastien Villemot 56ffc87e1c
Remove workaround for gaminv() bug fixed in Octave 4.4
See #161 and http://savannah.gnu.org/bugs/?52569
2023-03-16 17:24:18 +01:00
Stéphane Adjemian (Ryûk) 6e0a09f5fa
Add interface to flip endogenous and exogenous variables.
Calls to change_type can be done in a file named model-inversion-setup.inc in
the current folder. The file is included, between the declaration of the
exogenous variables and the model block, in the aggregate mod file if and only
if the macrovariable InvertModel exists and is equal to True. To invert a model,
the user just has to run the aggregated mod file with -DInvertModel=True on the
command line.
2023-03-16 14:12:21 +01:00
Sébastien Villemot 996ab9613c Merge branch 'block_model_diagnostics' into 'master'
model_diagnostics.m: adapt logic of using block information

See merge request Dynare/dynare!2121
2023-03-16 09:24:17 +00:00
Johannes Pfeifer c8045e2c5e model_diagnostics.m: fix logic of using block information
Also fixes bug with rank not working with sparse matrices
2023-03-15 18:11:37 -04:00
Sébastien Villemot 6dbc7c2a17
Windows package: improve hack for statically linking libgomp into MEX files
Link only the needed parts, instead of embedding the whole library.
2023-03-15 17:35:25 +01:00
Sébastien Villemot 62f608eb80
Windows package: bump dependencies
For the time being, the HDF5 package is held back, because of this issue which
affects version 1.14.0:
https://github.com/msys2/MINGW-packages/issues/15449#issuecomment-1470098865
2023-03-15 17:05:53 +01:00
Sébastien Villemot 9c5604c30d
Windows package: ensure that the embedded MinGW compiler comes with all its dependencies 2023-03-15 17:04:32 +01:00
Sébastien Villemot 12008bc6eb
Windows package: statically link libssp inside MEX files
Since 3244340e7a, the MEX files are built with
-fstack-protector. But this added a dynamic link to libssp-0.dll on some MEX
files, making them unusable.
2023-03-15 17:02:49 +01:00
Sébastien Villemot dd93aa3cd8
Windows package: add comment on -fstack-protector-{strong,all} with Debian cross-compiler 2023-03-14 16:53:51 +01:00
Sébastien Villemot 9527624b8c
Merge branch 'slice_doc' of git.dynare.org:JohannesPfeifer/dynare
Ref. !2126
2023-03-14 15:36:28 +01:00