Commit Graph

8166 Commits (4c0f8ec6be368ac12e1b6f71e6372944288cb8e8)

Author SHA1 Message Date
Normann Rion 3d27672c58
kth-order approximation of conditional welfare
Partially addresses issue #1680:
- unconditional welfare resorts to dynare++ simulation tools, which shall be updated very soon
TO DO:
- implement a function computing kth-order approximation of simulated moments of y
2021-06-15 15:04:31 +02:00
Stéphane Adjemian (Ryuk) edeb7911f3
Fix bug (initial period in extended path).
extended_path was crashing in preceeded by a call to the set_time command.
2021-06-15 14:24:38 +02:00
Sébastien Villemot be38866487
Fix handling of heteroskedastic_shocks block with several declared periods
Closes: #1791
2021-06-15 12:54:54 +02:00
Johannes Pfeifer e5b51f3257 DsgeSmoother.m: header cosmetics
[skip CI]
2021-06-15 11:16:41 +02:00
Sébastien Villemot 6258699060
Merge branch 'disclyap' of git.dynare.org:JohannesPfeifer/dynare
See merge request !1872
2021-06-14 15:29:01 +02:00
Sébastien Villemot 68bca0cd2a Merge branch 'pruned_state_space' into 'master'
pruned_state_space: handle shocks with 0 variances

See merge request Dynare/dynare!1871
2021-06-14 10:37:45 +00:00
Johannes Pfeifer e8c3758fc7 disclyap_fast.m: fix check for convergence with NaN
[skip CI]
2021-06-11 14:22:10 +02:00
Johannes Pfeifer 0116870399 pruned_state_space: handle shocks with 0 variances 2021-06-11 14:15:31 +02:00
Sébastien Villemot 45933779a4 Merge branch 'simult_' into 'master'
simult_.m: fix error message at order>3

See merge request Dynare/dynare!1870
2021-06-10 15:24:45 +00:00
Johannes Pfeifer 907066ae95 simult_.m: fix error message at order>3 2021-06-10 14:40:19 +02:00
Sébastien Villemot 766fff88f6
Use secure URL for link to GNU licenses 2021-06-09 17:35:05 +02:00
Sébastien Villemot 4733d97ceb
dseries: fix concatenation with empty dates objects 2021-06-09 17:33:25 +02:00
Sébastien Villemot 04c3fb3a31
Merge branch 'slice_record' of git.dynare.org:JohannesPfeifer/dynare
See merge request !1869
2021-06-09 14:41:03 +02:00
Johannes Pfeifer f38a1edaee posterior_sampler.m: trap case where record.ProposalCovariance is not filled (slice sampler) 2021-06-08 21:03:08 +02:00
Johannes Pfeifer e546d686eb dynare_solve.m: allow calling function directly 2021-06-04 21:24:53 +02:00
Johannes Pfeifer 4e0f2bf695 dynare_solve.m: have csolve honor selected options 2021-06-02 16:21:16 +02:00
Johannes Pfeifer f4c0781f45 calibrate_mh_scale_parameter.m: Expand header 2021-06-01 11:34:39 +02:00
Johannes Pfeifer f51a57374a mh_tune_jscale: fix display of stepsize and provide warning if no updating can occur. 2021-06-01 11:23:07 +02:00
Johannes Pfeifer fad86785da evaluate_planner_objective.m: do not evaluate non-existing terms for linear models
Closes https://git.dynare.org/Dynare/dynare/-/issues/1781
2021-05-28 17:00:44 +02:00
Stéphane Adjemian (Charybdis) 27ee801a67
Add specialized version of sim1 for static models.
Also add an integration test and fix homotopy error message.
2021-05-28 14:11:34 +02:00
MichelJuillard 5ab724d38f
Following a change in the calling sequence. Fixes #1789 2021-05-28 13:49:58 +02:00
Stéphane Adjemian 77612e6bb7 Merge branch 'particle' into 'master'
non_linear_dsge_likelihood.m: filter out explosive initial simulation

See merge request Dynare/dynare!1861
2021-05-28 11:42:24 +00:00
Johannes Pfeifer f97c138685 sim1_purely_backward.m: for purely static model, do not use past value for first iteration
Index 0 does not exist.
2021-05-27 22:37:45 +02:00
Johannes Pfeifer cac6f82e34 non_linear_dsge_likelihood.m: filter out explosive initial simulation 2021-05-27 21:04:35 +02:00
Sébastien Villemot abe8a05b43 Merge branch 'smoother_redux' into 'master'
Implement new option smoother_redux, to allow fast smoother for very large...

See merge request Dynare/dynare!1859
2021-05-27 16:33:21 +00:00
Sébastien Villemot c4e0cd0565 Merge branch 'posterior_smoother' into 'master'
prior_posterior_statistics_core.m: filter out cases where model does not solve

See merge request Dynare/dynare!1860
2021-05-27 16:09:19 +00:00
Marco Ratto 5fa6265944 Implement new option smoother_redux, to allow fast smoother for very large models. It runs smoother only for state variables and computes the remaining ones ex-post
Contains improvements, in order to recover as much as possible static unobserved (filtered, smoothed, updated, k-step ahead), Variance, State_uncertainty, k-step ahead variances trying to map lagged states onto current ones using pinv(T). This has exceptions (namely lagged shocks which are ONLY used to recover static NON observed variables). this exception is also trapped.
For such extensions we can only recover smoothed variables starting from d+1. Variances CANNOT be recovered for such variables (the smoother gives ZERO.)
2021-05-27 16:59:15 +02:00
Johannes Pfeifer 7541b1b116 prior_draw.m: cosmetic fix 2021-05-27 16:46:40 +02:00
Johannes Pfeifer 5d1d5b8a85 prior_posterior_statistics_core.m: filter out cases where model does not solve
Relax qz_criterium by factor of 10, when taking posterior subdraws. Also makes sure `prior` option works as intended.
2021-05-27 16:46:28 +02:00
Sébastien Villemot ae574fff78 Merge branch 'diagnostics' into 'master'
model_diagnostics.m: only provide message if imaginary component reaches tolerance level

See merge request Dynare/dynare!1855
2021-05-27 14:23:55 +00:00
Stéphane Adjemian (Charybdis) 3e7cd877d3
Fix error message consistently with 2743ca8fd.
[skip ci]
2021-05-26 19:11:01 +02:00
Stéphane Adjemian (Charybdis) 2743ca8fdb
Fix workspace if dynare is called from a function. 2021-05-26 19:07:44 +02:00
Marcoo Ratto 1645f38269
Implement heteroskedastic filter and smoother 2021-05-26 18:45:16 +02:00
Sébastien Villemot ba3522a9ba Merge branch 'compute_decision_rules' into 'master'
Use of the compute_decision_rules function to factorize code

See merge request Dynare/dynare!1856
2021-05-25 16:18:43 +00:00
Selma Malmberg 9c6cc04b0d Use of the compute_decision_rules function to factorize code (Ref.#1173) 2021-05-20 11:36:29 +02:00
Johannes Pfeifer 7e72b52677 model_diagnostics.m: only provide message if imaginary component reaches tolerance level 2021-05-20 11:23:48 +02:00
Johannes Pfeifer 456dc86ad1 identification: support optimal policy
Related to https://git.dynare.org/Dynare/dynare/-/merge_requests/1837
2021-05-14 13:38:42 +02:00
Johannes Pfeifer 7d4b01883d get_identification_jacobians.m: remove unnecessary reordering of equations 2021-05-14 13:35:01 +02:00
Johannes Pfeifer c8bc12ab6c forcst.m: fix case with measurement error 2021-05-12 17:44:35 +02:00
Sébastien Villemot 0d6bc47158
Merge branch 'rattoma/dynare-mh_initialize_from_previous_mcmc'
Ref. !1841
2021-05-11 18:51:57 +02:00
Marco Ratto a0f2b2399b
New option mh_initialize_from_previous_mcmc that allows to pick initial values for a new MCMC from a previous one
If an additional parameter is estimated, it is initialized using prior_draw.
2021-05-11 18:48:43 +02:00
Johannes Pfeifer cc045caa6f
loglinear: Take care of non-logged lagged/leaded exogenous variables
Closes: #1783
2021-05-11 17:47:25 +02:00
Johannes Pfeifer 5a2fbe2f89 dynare.m: remove non-working line feed 2021-05-11 14:24:02 +02:00
Sébastien Villemot bdb743eaa7
Merge branch 'rattoma/dynare-fast_realtime_shock_decomp'
Closes !1842
2021-05-10 15:55:28 +02:00
Marco Ratto 2d39991a0a
allow for a more accurate (and more expensive) fast realtime modality, triggered by fast_realtime=INTEGER_VECTOR and where vector fast_realtime controls periods for which the smoother is run. If max(fast_realtime)<nobs, the smoother is also run for the full sample. Manual updated accordingly. 2021-05-10 15:55:03 +02:00
Sébastien Villemot 3c7865a950
Merge branch 'rattoma/dynare-initial_estimation_checks_errors'
Ref. !1839
2021-05-07 17:52:45 +02:00
Marco Ratto 74121c2aee
New no_init_estimation_check_first_obs option that allows to skip check of singularity in first observation
(like deficient # of shocks in the presence of stockflow observed)
2021-05-07 17:51:03 +02:00
Sébastien Villemot 088fd64114
Merge branch 'rattoma/dynare-smoother_fixes'
Ref. !1847
2021-05-07 16:35:36 +02:00
Marco Ratto 551917581f
Bug fixes in fitered variances of smoother
- kalman_algo=1: kstep-ahead variances were WRONG, since Pf was initialized using P in PREVIOUS period
- kalman_algo=2: output argument for filtered varainces should be P1, not P (P are UPDATED variances, there).

For kalman_algo=2, also make a small factorization fix (compute P(:,:,t+1) before defining Pf, so to compute 1-step ahead variance only once)
2021-05-07 16:34:53 +02:00
Marco Ratto d43a057af3
store_smoother_results: fix header explanation of output arguments
Variances are now in declaration order.
2021-05-07 16:34:35 +02:00
Sébastien Villemot ca43df16e0 Merge branch 'dot_error' into 'master'
Filter out "Dot indexing is not supported for variables of this type." error...

See merge request Dynare/dynare!1846
2021-05-06 14:49:39 +00:00
Sébastien Villemot 58db4a4c21
Merge branch 'rattoma/dynare-parallel_without_psexec'
Ref. !1843
2021-05-06 16:31:15 +02:00
Marco Ratto 9ed9aa5963
For local clusters only, allow using start instead of psexec with windows, to properly allocate affinity when there are more than 32 cores. Manual updated accordingly. 2021-05-06 16:31:06 +02:00
Johannes Pfeifer f43ee91ed8 Filter out "Dot indexing is not supported for variables of this type." error if variable conflicts with namespace 2021-05-06 10:59:19 +02:00
Sébastien Villemot f9fb3bb386
Octave compatibility fix: xlswrite() from the io package does not return a 2nd output 2021-05-05 15:47:14 +02:00
Sébastien Villemot 96ad0fbec5
SUR / pooled OLS: workaround for Octave bug in dbstack(N)
See https://savannah.gnu.org/bugs/?60531

By the way, also add a safety check in pooled OLS for the case where the
function is directly called from the top-level.
2021-05-05 15:27:15 +02:00
Sébastien Villemot 04ba15e5cc
Preprocessor: forbid check and stoch_simul in block-decomposed mode with mfs > 0
Closes: #1726
2021-05-04 17:18:20 +02:00
Sébastien Villemot 0a7d60e7a6
Stochastic solution under block decomposition: minor simplification 2021-05-04 16:33:15 +02:00
Sébastien Villemot f617631b68 Merge branch 'mode_compute6' into 'master'
gmhmaxlik.m: show mode value in addition to change in mode

See merge request Dynare/dynare!1845
2021-05-04 09:12:27 +00:00
Johannes Pfeifer 9a4bbfef09 gmhmaxlik.m: show mode value in addition to change in mode 2021-05-03 20:33:21 +02:00
Sébastien Villemot 1e4d2f5aef
dseries: fix double() method for dates at yearly frequenc
Ref. dseries#47
2021-05-03 15:03:42 +02:00
Sébastien Villemot ec28179043
Perfect foresight: add warning when lmmcp and linear option are used together 2021-04-20 16:53:54 +02:00
Sébastien Villemot 0cef790498
Preprocessor: fix treatment of “series” option of “initval_file”
As a consequence, adapt histval_initvalf.m to the new format.
2021-04-20 10:44:18 +02:00
Stéphane Adjemian (Charybdis) 6fe97182da
Deactivate unit tests for gamrnd if statistical toolbox is available. 2021-04-09 12:44:59 +02:00
Stéphane Adjemian (Charybdis) 237aa465d2
Fix precision in perfect_foresight_solver for backward models. 2021-04-08 20:31:40 +02:00
Stéphane Adjemian (Charybdis) a03b65bab7
Honour option solve_algo with backward models in perfect_foresight_solver. 2021-04-08 20:31:40 +02:00
Stéphane Adjemian (Charybdis) 8683790927
Throw error if solve_algo={12,14} is used without JSON output. 2021-04-08 20:31:40 +02:00
Sébastien Villemot d5c8e8115e
Preprocessor update
— Properly escape some characters in JSON. As a consequence, remove the
  workaround that was in matlab/loadjson_.m
— Fix JSON output for load_params_and_steady_state
— Add maximum lead/lag and varobs to JSON output
2021-04-08 14:51:49 +02:00
Stéphane Adjemian (Charybdis) 3a823c488f
Fix PAC equations with lags on exogenous variables. 2021-04-02 15:52:30 +02:00
Johannes Pfeifer 3c11ee9581 posterior_sampler.m: make sure proposal density fields are set in parallel 2021-03-25 17:11:48 +01:00
Sébastien Villemot a42a9fff75 Merge branch 'foresight_debug' into 'master'
perfect foresight: provide debugging information for singular Jacobian

Closes #1732

See merge request Dynare/dynare!1834
2021-03-22 09:41:24 +00:00
Sébastien Villemot baa6c8dbbd
Provisions for MATLAB R2021a 2021-03-17 17:47:27 +01:00
Johannes Pfeifer b5a4c0695f perfect foresight: provide debugging information for singular Jacobian
Closes https://git.dynare.org/Dynare/dynare/-/issues/1732
2021-03-17 15:02:30 +01:00
Sébastien Villemot 47477e152a
Bump minimal Octave version to 6.2.0 2021-03-12 16:21:57 +01:00
Stéphane Adjemian (Charybdis) 3859ea0de0
Fix read_key_value_string if commas are followed by spaces. 2021-02-26 17:50:47 +01:00
Stéphane Adjemian (Charybdis) 6752426809
Bug fixes in particles submodule. 2021-02-26 10:40:37 +01:00
Stéphane Adjemian (Charybdis) 9e37e07075
Updated dseries submodule (time aggregation routines). 2021-02-26 09:44:24 +01:00
Normann Rion 9db1265892 Asssesing welfare in perfect-foresight frameworks
Ref. #1680
2021-02-25 15:12:28 +01:00
Sébastien Villemot 9066d31dd7 Merge branch 'ramsey_problem' into 'master'
Ref. #1680 : 2nd-order welfare

See merge request Dynare/dynare!1828
2021-02-23 16:08:53 +00:00
Sébastien Villemot 75882bcc11
Improve command suggestion for installing statistics package from Octave Forge
The “io” package is a dependency, hence must be explicitly installed first.

[skip ci]
2021-02-19 14:24:32 +01:00
Sébastien Villemot 3939544498
Remove remnants from estimation DLL 2021-02-18 14:26:10 +01:00
Normann Rion f532de0f29 Adds the discretionary case to the evaluate_planner_objective function 2021-02-18 12:00:44 +01:00
Normann Rion e880d1bcc3 Ref. #1680: 2nd-order welfare 2021-02-17 13:53:55 +01:00
Sébastien Villemot a51bdf8948
Merge branch 'smoother2histval' of git.dynare.org:JohannesPfeifer/dynare
Ref. !1831
2021-02-16 16:58:59 +01:00
Sébastien Villemot 6d95abdb95
Merge remote-tracking branch 'origin/JohannesPfeifer-master-patch-11225'
Ref. !1830
2021-02-16 16:58:04 +01:00
Sébastien Villemot 9ddad32e4e
Merge branch 'shock_decomp_fixes' of git.dynare.org:rattoma/dynare
Ref. !1829
2021-02-16 16:56:52 +01:00
Sébastien Villemot 9d06016dc3
Merge branch 'fixes_4.7' of git.dynare.org:rattoma/dynare
See !1827
2021-02-16 16:55:31 +01:00
Nikola Bokan 592cd69e25
Bug-fix: staticmodel type. 2021-02-16 15:06:43 +01:00
Johannes Pfeifer 99c7d88c53 dyn_forecast.m: set first_obs and allow for Bayesian smoother input 2021-02-16 11:26:35 +01:00
Johannes Pfeifer 6b2555f0ad smoother2histval: fix computation of data length 2021-02-16 09:00:11 +00:00
Marco Ratto 50e80fe496 write xls output in Output subdir 2021-02-16 09:56:22 +01:00
Johannes Pfeifer a0d0270679 smoother2histval.m: suppress output
[skip CI]
2021-02-16 08:11:13 +00:00
Marco Ratto f592cca59d fixed wrong naming of shock decompositions 2021-02-13 19:07:28 +01:00
Marco Ratto b1ae98845d fixed bug in var list for expand menu 2021-02-13 19:07:02 +01:00
Marco Ratto dbcdaf75a6 fixed bug when SteadyState is not used for shock decompositions
fixed names of files, removing spaces and dots
use writetable with mac OS
2021-02-13 19:05:54 +01:00
Marco Ratto c8cd0a06ce allow to export expand groups to excel (instead than plotting them) 2021-02-13 19:04:39 +01:00
Marco Ratto f8b8ec6c18 fixes around init2shocks in plotting utilities 2021-02-13 19:04:01 +01:00
Marco Ratto faa203e029 condition computation of posterior statistics also to (options_.load_mh_file && ~options_.load_results_after_load_mh) and apply it to all cases 2021-02-13 18:53:17 +01:00
Marco Ratto 5c3b0ebc95 better handle newrat options, avoiding to treat newratflag in two places 2021-02-13 16:44:50 +01:00
Marco Ratto 915502ce13 copyright year and indentation 2021-02-13 11:29:40 +01:00