Commit Graph

14857 Commits (2279529851112c921264540ba1d2fe753c9c5045)

Author SHA1 Message Date
Johannes Pfeifer b5dc90b311 mom: add missing trust_region_initial_step_bound_factor option 2022-02-18 00:50:08 +01:00
Johannes Pfeifer 05519aaaa1 mom: add missing verbosity option 2022-02-18 00:48:39 +01:00
Sébastien Villemot e2694381dd
Preprocessor: transform predetermined variables before simplifying equations 2022-02-17 18:27:41 +01:00
Sébastien Villemot 972461c326
Bytecode: add debugging information about input arguments 2022-02-17 17:41:10 +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 aca85408ff
Preprocessor: fix JSON output when there are multiple “var_expectation_model” statements
Closes: Madysson/estimation-codes#19
2022-02-15 21:00:23 +01:00
Sébastien Villemot 092203669b
Manual: fix copyright years displayed in Sphinx output 2022-02-15 16:54:41 +01:00
Sébastien Villemot ceb3ec2487
Bytecode: remove unused constructors 2022-02-15 16:54:41 +01:00
Sébastien Villemot 863fa2de1c
Bytecode: perfect foresight simulation of *linear* “Solve forward simple/complete” blocks was giving was results 2022-02-15 16:54:41 +01:00
Sébastien Villemot 34b6f54c4a
Ferhat and Houtan have left the team 2022-02-14 15:10:04 +01:00
Sébastien Villemot 803e3721ec
Bytecode: correctly handle M_.{endo_names,exo_names,param_names}, which are now cell arrays 2022-02-14 15:06:07 +01:00
Sébastien Villemot 92e82cfa0a
Bytecode: remove unused function prototype 2022-02-14 14:40:34 +01:00
Sébastien Villemot 3734762af7
For stack_solve_algo={2,3} and solve_algo={7,8}, rather use a “crout” ILU decomposition for the preconditioner
In 3025a14ed9, the call to the deprecated “luinc”
has been replaced by a call to “ilu”.

However, the type of “ilu” decomposition had not been specified. The default,
“nofill”, does not make use of the “droptol” option which was used with
“luinc”. Also, under Octave, it does not work when there is a zero on the
diagonal of the input matrix.

Rather use the “crout” type, which addresses these two issues.
2022-02-14 12:34:50 +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 188df7711d
Bytecode: fix simulation of blocks “Solve forward/backward complete” with stack_solve_algo={0,1,4}
The problem would also manifest at steady state computation with solve_algo=6.

It could crash or give incorrect results.
2022-02-11 12:00:25 +01:00
Sébastien Villemot 9a27735f47
Manual: cosmetics 2022-02-10 17:35:21 +01:00
Sébastien Villemot d74cb031d2
Bytecode: fix error message about convergence failure that can happen in Solve Backward Complete as well 2022-02-10 17:27:07 +01:00
Sébastien Villemot cdb4f872b2
Bytecode: fix crash with stack_solve_algo=1 on “Solve forward/backward” blocks 2022-02-10 17:15:24 +01:00
Sébastien Villemot ef6e4c7745
Bytecode: remove unused code 2022-02-10 16:58:39 +01:00
Sébastien Villemot 0caefa1593
Bytecode: exit gracefully when M_ does not exist 2022-02-09 14:32:25 +01:00
Sébastien Villemot bb793d87cc
Block decomposition: fix deterministic simulations for block of type “Solve backward”
The results were incorrect for those two kinds of block, when not using bytecode.
2022-02-09 14:07:33 +01:00
Sébastien Villemot dd34554c4e
Block decomposition: fix computation of eigenvalues for blocks of “Solve backward complete” type 2022-02-09 14:07:33 +01:00
Sébastien Villemot 685598c6e2
Add interface to “static” and “incidence” options of “model_info”
These options were implemented and described in the reference manual, but their
interface was missing.

By the way, make various minor improvements to the description of “model_info”
in the reference manual. In particular, remove the single quotes around the two
aforementioned options (which are a remnant from an older interface).
2022-02-09 14:07:30 +01:00
Sébastien Villemot cc37d15ed3
Add libfl-dev to list of build dependencies under Debian
It is needed for /usr/include/FlexLexer.h. It used to be a dependency of flex,
but has been demoted to a recommends, so it’s better to list separately.

[skip ci]
2022-02-07 23:06:14 +01:00
Sébastien Villemot 8d3e0587dc
k_order_mean MEX: check number of output arguments
Incidentally, this fixes a gfortran warning
2022-02-04 14:38:30 +01:00
Sébastien Villemot 964763ef4d
pthread Fortran interface: fix internal type for representing pthread_t structure 2022-02-04 12:33:19 +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
Sébastien Villemot 10a4ec53e9 Merge branch 'smm_field_name' into 'master'
mom.objective_function.m: fix field naming

See merge request Dynare/dynare!2000
2022-02-03 17:09:15 +00:00
Johannes Pfeifer 4ccc7c7262 mom.objective_function.m: fix field naming 2022-02-03 15:12:46 +01:00
Sébastien Villemot 2cb6988de6
Merge branch 'jscale' of git.dynare.org:JohannesPfeifer/dynare
Ref. !1999
2022-02-03 09:25:16 +01:00
Sébastien Villemot adb4007bda
Merge branch 'smm_lsqnonlin' of git.dynare.org:JohannesPfeifer/dynare
Ref. !1998
2022-02-03 09:24:37 +01:00
Johannes Pfeifer 217de5084c check_posterior_sampler_options: make global variable an input
Does not properly work for scale_file-option as caller has variable not global
2022-02-02 16:20:12 +01:00
Johannes Pfeifer 57eda3886d SMM: fix logic for check of vector output 2022-02-02 13:27:46 +01:00
Sébastien Villemot f8bf26571a Merge branch 'parallel_simul' into 'master'
Parallelizes local_state_space_iteration_fortran

See merge request Dynare/dynare!1987
2022-02-01 09:43:25 +00:00
NormannR 5f828e241f Parallelizes local_state_space_iteration_fortran 2022-01-31 18:44:48 +01:00
Sébastien Villemot 3f00b51950
Preprocessor update
– Fix matching of diff leads/lags in TCM and PAC models
– Fix a bug in variable mapping (M_.mapping) where some endogenous, appearing
  in a log() in a VAR or TCM, would not be mentioned
– Various refactorings related to auxiliary variables and TCM
2022-01-28 17:48:07 +01:00
Stéphane Adjemian (Charybdis) 1d916b1fe2
Bug fix.
[skip ci]
2022-01-27 11:07:09 +01:00
Stéphane Adjemian (Ryûk) fca5b99a03
Fix bug (missing condition).
The cherrypick was failing if the selected equations were not about a PAC equation (e.g. a VAR expectation
model), because the code was assuming the existence of the pac field in M_.
2022-01-27 10:49:19 +01:00
Sébastien Villemot df185cf19b Merge branch 'mom_field' into 'master'
mom: fix error message if matched_moments-block is missing

See merge request Dynare/dynare!1997
2022-01-26 14:39:24 +00:00
Sébastien Villemot 1c81c46e05
Preprocessor update
– Macroprocessor: under Windows, trim trailing slashes and backslashes in the
  value of “@#includepath” (Closes: Madysson/estimation-codes#11)
– Remove unused field M_.pac.(model_name).lhs
2022-01-25 16:58:31 +01:00
Johannes Pfeifer 4ef4b929d5 mom: fix error message if matched_moments-block is missing 2022-01-25 16:26:12 +01:00
Sébastien Villemot 9c79b0d73f
Octave: better workaround for bug 46282 2022-01-25 11:32:08 +01:00
Sébastien Villemot 79132ebe55
Build system: no longer use deprecated LFLAGS from mkoctfile
By the way, drop the -static-* flags from LDFLAGS in Windows mkoctfile stub. It
is no more needed and creates duplicates in the link command line (since those
flags are already in DL_LDFLAGS).
2022-01-24 12:52:24 +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
Stéphane Adjemian (Charybdis) 38e1cd5d4e
Do not include auxiliaries in Simulated_time_series...
And add paths for the exogenous variables.
2022-01-21 16:50:42 +01:00
Sébastien Villemot 4ffa6abd4f
Preprocessor update
– Fix orig_lead_lag field for unary op auxiliary variables (Closes: #1837)
– In case of nested unary ops (e.g. log(log())), ensure that the definition of
  the external aux var references the internal aux var
– Fix orig_lead_lag field for diff lag aux vars
– Refactor the code that substitutes unary ops in model equations
– Refactor handling of var_expectation_model statements
– Add missing “time_shift” option to JSON output of var_expectation_model
– Add check to ensure that column indices in derivative matrices do not overflow
2022-01-21 14:56:55 +01:00
Sébastien Villemot 5a55e29561
Dynare++: minor fix to check for oversized problem
The maximum value of a signed integer is 2³¹−1, so the inequality test must not
be strict.
2022-01-21 14:55:37 +01:00
Sébastien Villemot 4fdb15b437
Testsuite: fix test under Octave
Enforce the positivity of standard errors in the maximum likelihood
estimations. Otherwise some stderr are estimated negative, and the Bayesian
estimation fail because the initial value is out of the bounds of the prior
shape.
2022-01-21 14:50:44 +01:00
Stéphane Adjemian (Ryûk) a08de9e661
Partial fix for #1837. 2022-01-19 09:20:22 +01:00
Sébastien Villemot 1edb8ba7ba Merge branch 'planner_check' into 'master'
evaluate_planner_objective.m: fix check for NaN moments

See merge request Dynare/dynare!1996
2022-01-18 16:45:06 +00:00