Johannes Pfeifer
f7a232061a
Remove unused options_-output
...
Prevents accidentally changing something
2021-06-22 18:17:11 +02:00
Sébastien Villemot
766fff88f6
Use secure URL for link to GNU licenses
2021-06-09 17:35:05 +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
0402c56ee7
Compatibility fix for MATLAB R2014a when estimating with empty estim_params
...
The tests kalman_filter_smoother/fs2000_smoother_only.mod and
kalman_filter_smoother/fs2000_smoother_only_ns.mod would fail under MATLAB
R2014a.
They both run the estimation command without having declared an estim_params
block.
Their execution would fail in check_bounds_and_definiteness_estimation, at the
point where we check if initial values are below the lower bound.
The problem is that xparam1 would be of size 0×1, while bounds.lb would be
empty (0×0), and the comparison fails on older MATLABs.
The fix consists in ensuring that xparam1 remains of size 0×0 in that case.
2021-01-27 18:25:27 +01:00
Johannes Pfeifer
f19decf297
non_linear_dsge_likelihood.m: consistently use options_.particles.pruning
...
Closes https://git.dynare.org/Dynare/dynare/-/issues/1756
2021-01-22 21:19:07 +01:00
Johannes Pfeifer
0b87f66443
non_linear_dsge_likelihood.m: do not set use_k_order_solver with pruning
...
local_state_space_iteration_k does not support it, use local_state_space_iteration_2 at order=2 instead and error out with order=3
2021-01-22 21:19:07 +01:00
Johannes Pfeifer
ad17b8ec33
Particle filtering: provide more informative error messages in typical problematic cases
...
Also adds test cases
2021-01-15 22:11:20 +01:00
Johannes Pfeifer
fe93589148
non_linear_dsge_likelihood.m: return in case of exception without computing prior
2021-01-15 22:11:20 +01:00
Johannes Pfeifer
dab5d38068
Fix initialization of state variances
...
- incomplete computation of variances in case 1
- wrong ordering for case 2
2020-11-12 10:43:04 +01:00
Johannes Pfeifer
3b85fea02e
Move setting of parameters out of check_bounds_and_definiteness_estimation.m
...
Increases transparency
2020-07-17 15:02:12 +02:00
Johannes Pfeifer
cfe1069367
Factorize prior bound and definiteness checks
...
also removes useless isestimation check
2020-06-22 20:37:31 +02:00
Stéphane Adjemian (Charybdis)
031569fa96
Allow higher order approximations in nonlinear filters.
2019-12-20 11:31:56 +01:00
Stéphane Adjemian (Charybdis)
4e0deb7987
Removed persistent variables.
2019-12-20 11:31:56 +01:00
Stéphane Adjemian (Charybdis)
76e3c6ca68
Removed unnecessary parts of the code.
...
- Call resol instead of dynare_resolve.
- Removed definition of constant and trend which are not used in nonlinear filters.
- Cosmetic changes.
2019-12-20 11:31:56 +01:00
Stéphane Adjemian (Charybdis)
6418e225bf
Rewrote doc header.
2019-12-20 11:31:56 +01:00
Johannes Pfeifer
ce4d8c3544
Cosmetic fix to error message
2017-11-28 10:27:43 +01:00
Stéphane Adjemian (Charybdis)
5417b27ac7
Fixed indentation of matlab files.
2017-05-16 15:10:20 +02:00
Stéphane Adjemian (Charybdis)
f9a462bf07
Added option nonlinear_filter_initialization.
...
Default value is 1 (initialization with the ergodic variance of the reduced
form solution of the model approximated at order one).
If the model has unit roots, the user must use `nonlinear_filter_initialization=3`,
which select an identity matrix for the initial covariance matrix of the state variables.
A side effect of this option is to temporarily change the value of options_.qz_criterium to
a value above one (ie 1+1e-6) so that the unit roots are not rejected. If the
model has unit roots and if the and if the option
nonlinear_filter_initialization has a value less than 3, the evaluation of the
likelihood will fail, because by default the unit root is counted as an
unstable root.
2017-04-03 11:25:05 +02:00
Stéphane Adjemian (Charybdis)
dbffe2a841
Do not check boundaries if the model is not estimated.
2017-03-16 15:50:44 +01:00
Stéphane Adjemian (Charybdis)
5b73d7d59c
Added new optimization routine (particleswarm).
...
Only available under Matlab if the Global Optimization Toolbox is installed.
2017-02-08 13:07:25 +00:00
Johannes Pfeifer
2c5b1fed2d
Use master function lyapunov_solver.m to call individual solvers
2017-01-04 11:25:44 +01:00
Johannes Pfeifer
39e7c39243
Filter out infinite likelihoods
2016-08-22 19:24:35 +02:00
Johannes Pfeifer
72b8c650e5
Add missing logical operator from likelihood functions introduces when removing global penalty
2016-07-18 11:11:43 +02:00
Johannes Pfeifer
0c00e28799
Remove objective_function_penalty_base
2016-06-15 00:30:28 +02:00
Johannes Pfeifer
329b91d717
Harmonize output of objective functions
...
Closes #1149
Mirrors 1ad8df4635
2016-06-15 00:30:28 +02:00
Houtan Bastani
25121bca4f
fix copyright dates
2016-05-04 16:05:31 +02:00
Johannes Pfeifer
efee7b1a47
Remove duplication of restrict_var_list in bayestopt_
2016-04-12 10:43:28 +02:00
Johannes Pfeifer
1c816aef24
Various interrelated bugfixes dealing with detrending
2016-03-23 10:19:40 +01:00
Johannes Pfeifer
f28a7a62bb
Only test non-zero measurement error covariance entries for positive definiteness
...
Otherwise, not having measurement error on one variable is not allowed during estimation
2015-12-15 22:37:08 +01:00
Johannes Pfeifer
d513d38f73
Filter out failure of k_order_pert in likelihood computation
2015-10-11 17:55:27 +02:00
Michel Juillard
f464760c45
Revert "remove global objective_function_penalty_base"
...
This reverts commit cf858c7fcb
.
2015-10-09 14:23:31 +02:00
Michel Juillard
bc37c838c7
Revert "more fixes for penalty objective function"
...
This reverts commit 3dac7f8809
.
2015-10-09 14:23:31 +02:00
Michel Juillard
3dac7f8809
more fixes for penalty objective function
2015-10-08 20:57:00 +02:00
Michel Juillard
cf858c7fcb
remove global objective_function_penalty_base
2015-10-08 20:57:00 +02:00
Stéphane Adjemian (Charybdis)
e5e9bdb892
Adding missing exception...
...
For cases where a generalized eigenvalue is too close to 0/0.
2015-09-04 11:02:39 +02:00
Johannes Pfeifer
0fd76e0c6f
Assigning unique function for each input argument of lyapunov_symm.m
...
The old way of redefining input arguments to satisfy different options was too error-prone. See 69daaa0460b0ddee97292c39d40355201e316622 of tholden
2015-07-22 15:11:39 +02:00
Stéphane Adjemian (Hermes)
ccd4e40b49
Merge branch 'master' into rewrite-nonlinear-filters
...
Conflicts:
.gitmodules
tests/particle/dsge_base2.mod
2015-05-27 12:18:33 +02:00
Johannes Pfeifer
481c470ac9
Make sure non_linear_dsge_likelihood.m and dsge_var_likelihood.m return correct error codes if prior or likelihood are Inf or NaN
...
Closes #284
2015-05-09 08:03:55 +02:00
Stéphane Adjemian (Charybdis)
84cef49584
Fixed bug (oo_ must be replaced by DynareResults).
2015-01-14 11:38:36 +01:00
Stéphane Adjemian (Charybdis)
647d7b9761
Do not detrend the data (nonlinear filters).
2015-01-07 16:27:41 +01:00
Stéphane Adjemian (Charybdis)
1927f6181f
Updated particles module.
...
This commit breaks the codes except for sequential importance particle filter.
2014-12-12 17:57:58 +01:00
Stéphane Adjemian (Karaba)
f48566aeae
Fixed prior bounds (according to the doc in master branch).
...
* Second and third positional arguments after the name of the
estimated parameter in the estimated_params block are only
considered in the optimization stage (not in the MCMC)
* Do not store bounds in bayestopt_, because bounds do not always
reflect restrictions implied by prior shapes.
* prior_bounds routine returns a structure (with fields lb and ub)
instead of a matrix.
2014-10-20 16:18:54 +02:00
Stéphane Adjemian (Karaba)
97b63105a0
Add a parameter to the lyapunov_symm routine (debug mode).
2014-10-13 17:42:53 +02:00
Stéphane Adjemian (Charybdis)
6d42ec66d5
Account for error code 10 (Inf in Jacobian of the dynamic model) in likelihood functions.
2014-09-10 17:49:33 +02:00
Stéphane Adjemian (Scylla)
77a29e95c1
Fixed bugs:
...
(1) The non_linear_dsge_likelihood routine was not adapted to the last changes related to the way data are handled.
(2) The removal of the trend was missing.
2014-09-08 22:36:40 +02:00
Johannes Pfeifer
ca6803b531
Add forgotten case to likelihood functions
...
Code 25 was not filtered out, leading to cryptic crashes
2014-06-02 14:10:43 +02:00
Stéphane Adjemian (Scylla)
00cfec8fb6
Issue an error message if loglinear option is equal to 1 in non linear likelihood routine.
2014-01-30 14:39:06 +01:00
Johannes Pfeifer
fddee8e1db
Bugfixes for correlated shocks
...
Uses preprocessing capabilities introduced in 07137e804b
Fixes #392 and #494 . Also fixes a bug in the checking for positive definiteness of covariance matrices in likelihood functions
Allows for calibrated covariances by reading them out and setting them after covariance matrix has been reconstructed from correlation and variances.
Adds unit test
2013-11-05 15:55:29 +01:00
Stéphane Adjemian (Charybdis)
bb8fdce127
Fixed bug reported by Johannes (presample option was non active in nonlinear filters).
2013-06-25 09:45:34 +02:00
Stéphane Adjemian (Charybdis)
24b0b22e4d
Factorized code using ispd routine and fixed bugs in models with measurement errors.
2013-06-20 13:00:01 +02:00