Johannes Pfeifer
4a9f9263df
Make newrat and gmhmaxlik independent of varargin inputs
...
Makes the optimizers useable in other contexts where varargin is different
2020-06-23 15:04:11 +02:00
Johannes Pfeifer
3e725e3292
mr_hessian.m
...
Do not save files by default; prevents horse-race write access crashes for fast mod-files under Windows
2020-06-23 15:00:08 +02:00
Johannes Pfeifer
cfe1069367
Factorize prior bound and definiteness checks
...
also removes useless isestimation check
2020-06-22 20:37:31 +02:00
Willi Mutschler
b0fddeeef3
➖ Remove duplicate output of identification ranks tol
...
We already print it in the Settings
2020-06-20 22:38:47 +02:00
Willi Mutschler
97134cc362
🐛 Fix issue with endogenous params in steady state
...
Identification should switch to analytic_derivation_mode=-2 if steady state block/file changes parameter values. Dynare/dynare!1732 already adresses this when there is a prior specified. This fix also addresses this when there are no priors.
kim2.mod is now not only an integration test but also a unit test for this.
2020-06-20 22:38:47 +02:00
Willi Mutschler
347be1f89a
🐛 Fix wrong computations when identification(useautocorr)
2020-06-20 22:38:47 +02:00
Willi Mutschler
926a54388e
🐛 wrong setting of small values to zeros in identification
2020-06-20 22:38:47 +02:00
Willi Mutschler
db01f54357
🐛 Add warning and turn off identification strength if not enough mom
2020-06-20 22:38:47 +02:00
Sébastien Villemot
41fe087106
Block decomposition: static and dynamic files are now pure wrappers around the per-block files
...
Systematically call top-level static/dynamic files, instead of per-block ones.
2020-06-19 18:46:56 +02:00
Sébastien Villemot
ebc0b7ecb2
Block decomposition: move logic for Jacobians in stochastic mode outside the dynamic file
2020-06-19 18:46:56 +02:00
Sébastien Villemot
39c5867cd4
Merge branch 'Tex_figures' into 'master'
...
Use LaTeX labels in figures
See merge request Dynare/dynare!1734
2020-06-18 14:23:50 +00:00
Johannes Pfeifer
312d053ae1
Use LaTeX labels in figures
2020-06-17 21:48:25 +02:00
Sébastien Villemot
0305b427a6
Block decomposition: use same orientation convention as oo_.endo_simul for matrix of simulated paths
...
Improves consistency, but also efficiency (less transpose needed).
2020-06-17 18:19:35 +02:00
Sébastien Villemot
20431ed312
Block decomposition: in the dynamic file, y and T are now vectors as in non-block mode
2020-06-17 18:19:21 +02:00
Sébastien Villemot
adbb9c9117
Block decomposition, stack_solve_algo=4: fix set of variables over which line search is done
2020-06-16 18:46:40 +02:00
Sébastien Villemot
6931614809
Block decomposition: for “solve two-boundaries” blocks, move the iteration loop outside the dynamic file
2020-06-16 18:46:40 +02:00
Sébastien Villemot
c25ff09307
Block decomposition: for “solve two boundaries” block, no longer compute “b” (-residuals+g1*y) in the dynamic function
2020-06-16 18:46:40 +02:00
Sébastien Villemot
e72bce1a67
Block decomposition: remove useless “y” output for static/dynamic files of solved blocks
2020-06-16 18:46:40 +02:00
Marco Ratto
616d2b0faf
Bug fix in initializing analytic_derivation option. This is then checked in dynare_estimation_init for parameter endogenized in steady state.
...
Ref. #1733
2020-06-16 16:07:48 +00:00
Sébastien Villemot
7bec234f7f
Block decomposition: for evaluate blocks, move the iteration loop outside the dynamic file
2020-06-15 18:29:42 +02:00
Sébastien Villemot
bfbff6a2fb
Block decomposition: remove duplicate “periods” arg. to dynamic file of complete two-boundaries blocks
2020-06-15 18:29:42 +02:00
Sébastien Villemot
87718ce8b7
Merge branch 'disp_moments' into 'master'
...
disp_moments.m: make error message informative
See merge request Dynare/dynare!1730
2020-06-15 09:47:22 +00:00
Johannes Pfeifer
c47682caae
disp_moments.m: make error message informative
...
[skip CI]
2020-06-15 11:45:45 +02:00
Johannes Pfeifer
d54b45cbac
PosteriorIRF_core1.m: Add missing else statement that triggered crashes in rare cases
2020-06-12 17:53:46 +02:00
Sébastien Villemot
1d172528d7
Block decomposition: fixed bug introduced in 2ec5e4075a
2020-06-04 19:43:57 +02:00
Sébastien Villemot
fae433fb18
Block decomposition: fix bug introduced in 0d11f8182a
2020-06-04 18:15:54 +02:00
Sébastien Villemot
07914b58a2
dseries submodule update
...
— add bi-annual frequency
— do not return NaNs if a variable is 0 in all periods
— fixed bug (dates member was wrong)
2020-06-04 14:39:16 +02:00
Sébastien Villemot
2ec5e4075a
Block decomposition: remove unused 2nd and 3rd derivatives in output of dynamic functions
2020-06-03 17:00:17 +02:00
Sébastien Villemot
0d11f8182a
Block decomposition: no longer compute deterministic simulation from dynamic.m file
...
By the way, fix bug where oo_ was not modified by solve_one_boundary.
Also convert oo_.deterministic_simulations.status to a boolean in the block
routines, for consistency with the non-block case.
2020-06-02 17:46:29 +02:00
Sébastien Villemot
50209dc56e
Block decomposition: no longer use global variables for temporary terms in the dynamic M-file
...
Rather use a single vector as in non-block mode.
By the way, change the order of output arguments in static functions, to be
closer to the dynamic ones.
2020-05-26 16:23:46 +02:00
Sébastien Villemot
ea4d3f4d83
Block decomposition: fix interaction with steady_state_model block
...
This cas was omitted in previous commit.
2020-05-25 21:10:42 +02:00
Sébastien Villemot
2c6807a66b
Block decomposition: no longer use global variables for temporary terms in the static M-file
...
Rather use a single vector as in non-block mode.
2020-05-25 18:36:55 +02:00
Sébastien Villemot
caea047c2d
solve_one_boundary: remove unused codepaths for solve_algo={0,1,2,3}
...
Those cases are handled by dynare_solve.
2020-05-25 17:59:54 +02:00
Sébastien Villemot
bd7eb2f88d
Fixes to solve_algo ≥ 9
...
— allow solve_algo=9 without block nor bytecode
— allow solve_algo≥9 with block without bytecode
— test solve_algo=9
2020-05-25 17:22:17 +02:00
Sébastien Villemot
2015b79279
solve_{one_boundary,two_boundaries}: convert some input arguments to logical type
2020-05-25 16:59:20 +02:00
Sébastien Villemot
154fced8b7
Remove old SMM code
...
Ref. #1724
2020-05-18 17:30:40 +02:00
Michel Juillard
b70d99d1b4
Refactoring of initval_file and histval_file
...
initval_file and hisvfal_file are now more flexible and have functionalities
similar to option datafile in estimation.
Closes : #1671
2020-05-14 16:45:54 +02:00
Sébastien Villemot
09617453ea
Ensure that “extended_path” obeys the “bytecode” option
...
Closes : #1717
2020-05-04 22:42:08 +02:00
Houtan Bastani
25a977f4be
jacob_element & hess_element: remove unnecessary loops
2020-05-04 12:15:15 -04:00
Sébastien Villemot
6e0f104d7e
Bump minimal MATLAB version to R2014a
...
Ref. #1713
2020-04-07 16:32:32 +02:00
Sébastien Villemot
e95b93f783
dseries submodule update
...
— Efficiency change. OCTAVE_VERSION is a builtin function in Octave
— Fix bug dseries#43
— Cosmetic changes
— Fixed subsasgn method (when calling merge)
2020-04-07 12:48:00 +02:00
Johannes Pfeifer
b8b05300c1
missing_DiffuseKalmanSmootherH1_Z.m: fix bug with variable dimension
2020-04-02 19:22:55 +02:00
Willi Mutschler
64a2a4388a
🐛 📖 Fixes TaRB with student t proposal distribution
2020-04-01 14:46:22 +02:00
Sébastien Villemot
8df9813a0e
Merge branch 'perfect_foresight' into 'master'
...
fix bug when no convergence and backward model
See merge request Dynare/dynare!1726
2020-03-31 15:18:05 +00:00
Michel Juillard
fd09b98150
fix bug when no convergence and backward model
2020-03-31 15:40:49 +02:00
Stéphane Adjemian (Charybdis)
166865149e
Updated build for matlab R2020a.
2020-03-26 11:20:24 +01:00
Stéphane Adjemian (Charybdis)
109bc5883c
Check the existence of the user configuration file.
2020-03-26 10:15:35 +01:00
Stéphane Adjemian (Charybdis)
e2b20f3e3e
Bug fix. Dynare configuration hook was not evaluated.
2020-03-26 10:15:35 +01:00
Johannes Pfeifer
071ab1e14f
imcforecast.m: fix faulty logic of warning
...
Steady state and time shift were missing
2020-03-21 12:06:24 +01:00
Johannes Pfeifer
ef8671bb99
Correctly pass prior_trunc option in identification
2020-03-17 13:28:40 +01:00
Sébastien Villemot
e93c7b6b25
Reorder files generated by “moments_varendo” option of “estimation”
...
If there were more than 10 files of Metropolis parameter draws, the ordering
the files containing the posterior moments could be different from that of the
parameter draws. This is because the “dir()” command was used to order the
files containing the parameter draws, and because the command uses alphabetic
ordering, file #10 would come before #2 .
This commit enforces the numerical ordering of files.
2020-03-12 15:56:55 +01:00
Sébastien Villemot
d01846e5be
Fix incorrect test for options_.posterior_sampler_options.posterior_sampling_method
...
Thanks to checkcode().
2020-03-10 14:13:49 +01:00
Johannes Pfeifer
99f4fcadcc
model_diagnostics.m
...
Update parameter vector from steady state file and provide correct nocheck flag
2020-03-10 11:06:35 +01:00
Johannes Pfeifer
16f65a2f33
prior.m: fix missing function input
...
Prevents crashes in "prior moments"
2020-03-08 09:00:33 +01:00
Johannes Pfeifer
b7ef2181f9
print_info.m: Fix bug in error handling
...
get_error_message.m needs to always provide the error string, only throwing out the error message needs to depend on noprint
Closes https://git.dynare.org/Dynare/dynare/issues/1714
2020-03-08 09:00:01 +01:00
Johannes Pfeifer
2004641a10
dyn_ramsey_static.m: abort of steady state file signals error code
2020-03-06 18:55:01 +01:00
Johannes Pfeifer
0a52dedfda
Ramsey with multiple instruments: return properly sized vector if residuals are complex
2020-03-06 18:50:40 +01:00
Houtan Bastani
eb6ab0696a
gui: added fields to `oo_` to indicate which commands have been run
2020-03-03 11:45:46 +01:00
Houtan Bastani
2d468b5c1d
replace unused variables with `~`
2020-03-03 11:43:38 +01:00
Johannes Pfeifer
9e5cb1422d
Save jscale to record structure before running MCMC
...
Useful in conjunction with mh_tune_jscale in cases where the posterior sampler crashes
2020-02-29 10:28:50 +01:00
Sébastien Villemot
3c30d9f658
Merge branch 'M_output' of git.dynare.org:JohannesPfeifer/dynare
2020-02-25 16:37:02 +01:00
Sébastien Villemot
3aaac2b811
Merge branch 'discretionary_bug' of git.dynare.org:JohannesPfeifer/dynare
2020-02-25 16:23:30 +01:00
Houtan Bastani
7a02b3bfd2
various fixes to dynareParallelDelete.m
...
- did not account for cases when username not set (namely when remote is localhost)
- did not account for cases when remote directory was not set (namely when remote is localhost)
- added unnecessary `filesep` to `pname` when `pname` was empty
- ignore unused output arguments (it is necessary to explicitly ignore them to prevent unwanted output from the `system` call)
- globbing did not work as it was expanded on the calling machine not the remote; pass call to `bash -c` to handle this
2020-02-25 16:18:55 +01:00
Houtan Bastani
3d9fe36ec5
ignore unused return value
...
[skip ci]
2020-02-25 14:50:56 +01:00
Houtan Bastani
54fe1c754c
fix typo in variable name
2020-02-25 14:50:55 +01:00
Johannes Pfeifer
b3849322d4
discretionary_policy_1.m: move setting of dr before return statement
...
Prevents aborting with a cryptic crash
2020-02-25 14:10:45 +01:00
Johannes Pfeifer
97f7b773e5
stoch_simul.m: Make sure graphs folder exists before creating eps-loader
2020-02-24 16:13:44 +01:00
Johannes Pfeifer
3cf622cdc1
Output M_ in stoch_simul.m and discretionary_policy.m
...
Fixes https://git.dynare.org/Dynare/dynare/issues/1711 together with https://git.dynare.org/Dynare/preprocessor/-/merge_requests/15
2020-02-24 14:14:41 +01:00
Willi Mutschler
6223016683
🐛 Fix displaying of wrong order in disp_identification
2020-02-16 22:55:16 +01:00
Willi Mutschler
f4dc2ee743
🐛 Fix wrong third-order computation in pruned state space system
...
Related to #1706
✅ Add unit test for pruned state space up to order 3
//
Changed tolerance in new test
2020-02-16 22:55:16 +01:00
Johannes Pfeifer
14ef010b9e
geweke_moments.m: correctly use parameter instead of hard-coded value
2020-02-16 12:14:04 +01:00
Stéphane Adjemian (Charybdis)
00eb074630
Updated particles submodule.
2020-02-15 17:02:56 +01:00
Stéphane Adjemian (Charybdis)
fb19cce284
Fixed online filter (wrong number of arguments).
...
[skip ci]
2020-02-15 13:58:48 +01:00
Sébastien Villemot
133b77c061
Conditional forecasting: compatibility fix with MATLAB < R2016b
...
Implicit expansion (a.k.a. automatic broadcasting) was introduced in MATLAB
R2016b (and it has been present in Octave for quite some time).
Hence use bsxfun() instead.
The problem had been introduced in 228b2a532
.
2020-02-13 18:21:29 +01:00
Sébastien Villemot
57d1966644
Merge branch 'discretionary_policy' into 'master'
...
Factorization of discretionary policy
Closes #1705
See merge request Dynare/dynare!1709
2020-02-12 13:45:53 +00:00
Johannes Pfeifer
9800041433
discretionary_policy_1: return if steady state file signals error
2020-02-12 13:37:36 +01:00
Johannes Pfeifer
8b4fa7c2d6
Factorize call to solver routines under optimal policy and without
...
Related to https://git.dynare.org/Dynare/dynare/issues/1173
2020-02-12 13:19:46 +01:00
Johannes Pfeifer
b07adee2d9
Add missing path to dynare_config.m
2020-02-12 13:13:31 +01:00
Johannes Pfeifer
dd0e9fe719
Initialize instr_id field of discretionary_policy
2020-02-12 12:59:34 +01:00
Johannes Pfeifer
d78ef0d6df
Move discretionary_policy routines to own folder
2020-02-12 12:55:12 +01:00
Johannes Pfeifer
a1ebc94e4f
Refactor discretionary_policy codes
...
Closes https://git.dynare.org/Dynare/dynare/issues/1705
2020-02-12 12:52:54 +01:00
Johannes Pfeifer
228b2a532f
conditional forecasts: add check whether simulation was successful
2020-02-12 11:04:46 +01:00
Sébastien Villemot
181725c778
Discretionary policy: remove useless call to steady state file
...
The steady state is always zero for discretionary policy. And, in the case of a
steady state file, this call would not be able to update parameters (since it
does not modify M_), nor would it need to do so (since this has already be done
earlier in the function).
Ref. #1705
2020-02-11 18:14:05 +01:00
Sébastien Villemot
ae59f4dcb2
Further improvements to parsing of arguments on the MATLAB command-line
...
Under GNU/Linux and macOS, double-quote arguments before passing them to the
shell. In particular, this allows passing single-quotes within those arguments.
We therefore have to escape the four characters that are interpreted within
double-quoted strings in POSIX shells: \, ", $ and `
On Windows, also systematically escape the backslashes.
Also move display of arguments before escaping, so that it remains readable.
Ref. #1696
2020-02-10 18:24:51 +01:00
Houtan Bastani
72dfbbdce2
fix bug in creation of latex tables
...
[skip ci]
2020-02-07 15:58:15 +01:00
Sébastien Villemot
4c256c2cc8
Merge branch 'discretion' into 'master'
...
Fixes related to estimation under discretion
See merge request Dynare/dynare!1707
2020-02-06 13:37:52 +00:00
Johannes Pfeifer
30bfa16211
Fixes related to estimation under discretion
2020-02-06 13:30:00 +01:00
Johannes Pfeifer
1d1c0ab829
imcforecast.m: make sure that draw index for CIs stays within feasible bounds
2020-02-05 21:18:25 +01:00
Sébastien Villemot
d8cd55109c
Testsuite: increase tolerance in unitary tests for prior_draw.m
2020-02-04 21:25:16 +01:00
Houtan Bastani
2ae1bc7770
gui: update call to stoch_simul
2020-02-04 15:57:56 +01:00
Sébastien Villemot
177c5c359f
Implement estimation under discretionary optimal policy
...
Also add a test case.
For the time being, estimating parameters that appear in the discount factor is
not supported.
Ref. #1173
2020-02-03 18:29:45 +01:00
Sébastien Villemot
59e11615a0
Discretionary policy: preparatory work for estimation
...
This removes global variables from discretionary_policy_1.m, and also adapts
the behaviour and interface of the function so that it is similar to
resol.m (in particular, it no longer returns an empty “dr” in case of failure,
and it sets “oo_.dr”).
Ref. #1173
2020-02-03 18:05:29 +01:00
Johannes Pfeifer
8aad715183
det_cond_forecast.m: always set options_.qz_criterium
...
Closes https://git.dynare.org/Dynare/dynare/issues/1701
2020-02-02 14:15:01 +01:00
Sébastien Villemot
6542ce4a16
datatomfile: fix the name of the .mod file at the top of the generated file
...
With the new layout of the files generated by the preprocessor, it would always
print “driver.m”, which is not very informative.
2020-01-29 21:04:45 +01:00
Houtan Bastani
d527096e61
simplify parsing of MATLAB command line arguments
...
closes #1696
includes preprocessor changes
- Removed prefixing of doubles between -1 and 1 with 0.
- Fixed bug introduced in 985d742.
- macro processor: simplify handling of `@#define`
2020-01-29 14:56:52 +01:00
Stéphane Adjemian (Charybdis)
7aeb506143
Updated particles submodule.
...
[skip ci]
2020-01-27 22:57:41 +01:00
Sébastien Villemot
d0dc40c29e
Merge branch 'sub_draws' into 'master'
...
trap error when sub_draws is set to zero
See merge request Dynare/dynare!1699
2020-01-27 17:45:50 +00:00
Sébastien Villemot
f9e7ede810
Merge branch 'rescale_prediction_error_covariance' into 'master'
...
rescale_prediction_error_covariance
See merge request Dynare/dynare!1698
2020-01-27 17:45:38 +00:00
Willi Mutschler
3ecc44b542
Fix minimal state space test files for old matlab
2020-01-26 16:00:02 +00:00
Marco Ratto
73291b0b19
before issuing F singularity, check with rescaled F matrix: this spares lots of computing time when singularity only happens in the first KF step.
2020-01-24 14:17:26 +01:00