Commit Graph

95 Commits (7e770f69e791e705ab535126e0157130dc9d40c6)

Author SHA1 Message Date
Sébastien Villemot 7e770f69e7
Remove workaround for errors in MEX files
Because at some point throwing exceptions from MEX files (with mexErrMsgTxt())
was not working under Windows 64-bit, we had designed a workaround to avoid
using exceptions.

Most MEX files were returning an error code as their first (or sometimes last)
argument, and that code would have to be checked from the MATLAB code.

Since this workaround is no longer needed, this commit removes it. As a
consequence, the interface of many MEX files is modified.

For some background, see https://www.dynare.org/pipermail/dev/2010-September/000895.html
2020-01-10 18:33:11 +01:00
Stéphane Adjemian (Charybdis) c4f1958690 Cosmetic changes + Copyright headers fixes. 2018-01-26 12:00:27 +01:00
Marco Ratto cf8213f7a0 fix to the Kitigawa transformation that allows to reduce the computing time of the likelihood in large models, with a lot of static variables, by 30-50%.
This fixes the bug in e97e5c3407 that led to 2f9dc09285
It is tested and completely fixes the issue highlighted in #1312.
2018-01-26 11:47:39 +01:00
Johannes Pfeifer 8ccebd9e23 DsgeSmoother.m: provide informative error instead of crashing when model cannot be solved 2017-08-16 19:26:24 +02:00
Stéphane Adjemian (Charybdis) 5417b27ac7 Fixed indentation of matlab files. 2017-05-16 15:10:20 +02:00
Stéphane Adjemian (Charybdis) a53636e24e Fixed copyright notices. 2017-05-16 14:11:15 +02:00
Johannes Pfeifer 1755192e63 Make 792924 consistent with cases where Pinf is an empty matrix
Fixes the crash in `analytic_derivatives/fs2000_analytic_derivation.mod`
2017-03-31 17:41:38 +02:00
Johannes Pfeifer 2c5b1fed2d Use master function lyapunov_solver.m to call individual solvers 2017-01-04 11:25:44 +01:00
Johannes Pfeifer 2f717b5adc Eliminate global variables from shock_decomposition.m 2016-12-18 09:57:51 +01:00
Michel Juillard 42acb96b3d renamed compute schur_statespace_transformation.m
refactored code
2016-11-22 18:40:10 +01:00
Johannes Pfeifer 98cf1bfc1d Add smoothed state uncertainty to Kalman smoother routines 2016-11-04 09:23:55 +01:00
Johannes Pfeifer af72c1bd22 Add missing comment sign in DsgeSmoother.m 2016-08-22 19:24:35 +02:00
Johannes Pfeifer 63b8c4d2dd Fix smoother for univariate filter with (correlated) measurement error 2016-08-22 19:24:35 +02:00
Johannes Pfeifer a02f7cc8f3 Correct header of DsgeSmoother.m 2016-06-14 11:52:49 +02:00
Houtan Bastani 25121bca4f fix copyright dates 2016-05-04 16:05:31 +02:00
Johannes Pfeifer f5bd4c6b3a Fix bug where smoother selected wrong observables with selected_variables_only option
Closes #1161
2016-04-12 11:36:43 +02:00
Johannes Pfeifer be2221286c Add note on setting of bayestopt_.mf to DsgeSmoother.m 2016-04-12 10:52:40 +02:00
Johannes Pfeifer 98384eb6f2 Document variable ordering in various headers 2016-04-12 10:52:37 +02:00
Johannes Pfeifer ee6b81284a Correct header of DsgeSmoother.m and write_smoother_results.m
Definition of updated variables was incorrect
2016-03-23 10:47:26 +01:00
Johannes Pfeifer dcf0d75d55 Add output of trend to DsgeSmoother.m and use it to reconstruct smoothed and filtered values 2016-03-23 10:19:41 +01:00
Johannes Pfeifer 1c816aef24 Various interrelated bugfixes dealing with detrending 2016-03-23 10:19:40 +01:00
Marco Ratto 0aa7e15d58 - Once Schur stape space transformation is done, map immediately Pinf and Pstar onto the original variablesm to avoid propagation of errors related to multiple unit and zero eigenvalues.
- ensure that smoother and filter get the same Pstar and Pinf in diffuse steps
2015-10-13 17:26: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
Johannes Pfeifer 22b1aa7a0d Filter out case where estimated_params block is present but smoother on calibration is requested
In this case, xparam1 will be empty while estim_params_ does not have conformable dimensions.
2015-06-09 14:51:32 +02:00
Stéphane Adjemian (Charybdis) 6aa5ceabb2 Fixed bug introduced in 363c4a61222103fda22adff9bdb1115a6073428a. 2015-04-03 18:02:03 +02:00
Stéphane Adjemian (Charybdis) 090c4fedbd Added new option (diffuse_kalman_tol) and fixed tolerance paremeters in diffuse smoother routines. 2015-04-03 18:02:03 +02:00
Marco Ratto 7c838b133f Use local variables for restrict var list, to avoid overwriting the global and messing likelihood evaluations later on. 2015-04-03 18:02:03 +02:00
Johannes Pfeifer ed8b47bbf4 Add info to header about additional output argument 2014-12-11 20:59:31 +01:00
Stéphane Adjemian (Karaba) 97b63105a0 Add a parameter to the lyapunov_symm routine (debug mode). 2014-10-13 17:42:53 +02:00
Johannes Pfeifer b90f3deed2 Bugfixes and improvements related to method 3 of lyapunov_symm.m
- the function was called with the wrong input argument for this case (Q instead of R*Q*R'), crashing with incompatible matrix dimensions
- the persistent variable X was not updated when the size of it changed, leading to crashes when estimation is followed by calls to DsgeSmoother.m where the state-space is different
- Also eliminates the printed output in lyapunov_symm.m that could not be turned off and clutters estimation
2014-10-13 17:42:52 +02:00
Stéphane Adjemian (Scylla) 7b089ec2b3 Cosmetic change. Renamed nobs as vobs. 2014-07-17 22:05:07 +02:00
Stéphane Adjemian (Scylla) 66d08ac3bf Merge branch 'master' into use-dynSeries
Conflicts:
	matlab/dynare_estimation_init.m
	matlab/global_initialization.m
	matlab/prior_posterior_statistics.m
	matlab/read_variables.m
	matlab/set_prior.m
	matlab/utilities/dataset/initialize_dataset.m
	preprocessor/ComputingTasks.cc
2014-04-30 10:10:30 +02:00
Stéphane Adjemian (Scylla) 8359b90cdf Cosmetic changes. 2014-01-30 13:00:25 +01:00
ferhat 4e789452b2 Allows to use alternative algorithms to solve lyapunov equation 2014-01-14 17:32:01 +01:00
Stéphane Adjemian (Charybdis) 907e087ea9 Consider options_.varobs as a cell of strings. 2013-09-07 16:39:04 +02:00
Stéphane Adjemian (Charybdis) e60d438e86 Fixed bug. 2013-06-28 16:59:47 +02:00
Stéphane Adjemian (Charybdis) b281830983 Added new initialization mode ofr the Kalman filter and smoother. 2013-06-28 16:26:53 +02:00
Sébastien Villemot 1f9cea669a Update copyright notices 2012-06-08 18:22:34 +02:00
Stéphane Adjemian (Charybdis) 0da05ae29d Removed globals from set_all_parameters routine. 2012-06-07 15:13:39 +02:00
Michel Juillard 0b0c939849 fixing bug with smoother with univariate filters 2011-11-02 14:02:12 +01:00
Stéphane Adjemian (Scylla) 013c599ec9 Removed globals from dynare_resolve. Removed unused first input argument. Adapted routines calling dynare_resolve.
Added texinfo header to dynare_resolve.
2011-09-19 16:41:53 +02:00
Stéphane Adjemian (Charybdis) fa9f6ac90b Added option lik_init=4. Initialization of the Kalman filter/smoother with the fixed point of the Riccati equation. 2011-06-23 23:39:15 +02:00
Michel Juillard 78d882900a more bug corrections in smoother routines 2011-03-25 21:32:45 +01:00
Michel Juillard 5f8b5fa467 removing useless 'd' output argument from the Kalman smoother functions. Removed global initialization of options_.diffuse_d. Fixed minor bugs in Kalman smoother functions. 2011-03-24 18:38:01 +01:00
Michel Juillard b247c329d8 replaced expressions X == 0 by more efficient and robust isequal(X,0) when X is a matrix
porting earlier changes from DsgeLikelihood.m to DsgeLikelihood_hh.
cleaning code
2011-02-09 06:23:27 +01:00
Sébastien Villemot 02652f6eb8 Updated copyright notices 2011-02-04 17:27:33 +01:00
Sébastien Villemot 757a9067c0 Global reindentation of MATLAB files 2011-02-04 17:17:48 +01:00
Michel Juillard bff8de837b modifying dynare_resolve() calling sequence 2011-01-26 21:24:46 +01:00
Michel Juillard e2a1d77f6e - added schur_statespace_transformation.m to factor it out of DsgeLikelihood.m and DsgeSmoother.m
and corrected a bug in the code
- added missing functions missing_DiffuseKalmanSmootherH1_Z.m (multivariate version) and
                          missing_DiffuseKalmanSmootherH3_Z.m (univariate version)
- use only these two versions of the Kalman smoother in DsgeSmoother.m
2011-01-13 21:50:26 +01:00
Michel Juillard 32bf5e9a0e Diffuse smoother: bug correction when singularity occurs 2010-10-04 21:59:22 +02:00