Commit Graph

4797 Commits (da691bb21c6a6855f787c6e2cccd488b5efe25d3)

Author SHA1 Message Date
Michel Juillard 9fa92b0d02 fixing error message 2014-11-14 07:15:24 +01:00
Stéphane Adjemian (Telemachus) a8e7c30e6a Added @dseries/exist method. 2014-11-13 16:53:06 +01:00
Johannes Pfeifer cc96d46911 Transfer hard-coded verbosity of simplex algorithm into an option 2014-11-10 19:54:44 +01:00
Johannes Pfeifer 7c59edead2 Make simplex_optimization_routine.m usable outside of estimation
Removes hard-coded parameter names extracted from bayestopt_ by handing them over explicitly
2014-11-10 19:53:55 +01:00
Johannes Pfeifer c3467ddca2 Simplex: return only scalar best value instead of full vector 2014-11-10 19:41:50 +01:00
Stéphane Adjemian (Sedna) bbf6ea50b0 Added workaround for bug in some Matlab versions (wrong type). 2014-11-10 11:21:05 +01:00
Stéphane Adjemian (Telemachus) 0691b08303 Adapated internals routine (name of dynTest routine has changed). 2014-11-09 22:20:43 +01:00
Stéphane Adjemian (Telemachus) 6557849b30 Updated m-unit-tests module. 2014-11-09 22:20:18 +01:00
Stéphane Adjemian (Telemachus) a12e9d684a Force type consistency when comparing actual results and expected
results in unit tests (use logical type).
2014-11-09 22:17:46 +01:00
Stéphane Adjemian (Telemachus) 8fedac4d5e Replaced calls to dyn_assert by calls to dassert.
This routine is used to compare objects i -n unit tests.
2014-11-08 09:28:53 +01:00
Stéphane Adjemian (Telemachus) 479189ef47 Updated path in dynare_config.
For m-unit-tests module.
2014-11-07 22:41:25 +01:00
Stéphane Adjemian (Telemachus) f2aabb1f0d Added m-unit-tests as a submodule. 2014-11-07 22:40:31 +01:00
Stéphane Adjemian 1c62420909 Removed matlab/utilities/tests subfolder. 2014-11-07 22:31:23 +01:00
Houtan Bastani e6789a3707 Merge pull request #761 from JohannesPfeifer/message_test_calibration
Clarify message in test_for_deep_parameters_calibration.m
2014-11-07 17:27:15 +01:00
Houtan Bastani 1f25e7d479 Merge pull request #757 from JohannesPfeifer/fix_display
Add missing run index to looped variable in resol.m
2014-11-07 17:25:50 +01:00
Houtan Bastani a1a0cc098b skipline: simplify code 2014-11-07 16:44:05 +01:00
Houtan Bastani f98a41007e skipline: fix function header 2014-11-07 16:44:05 +01:00
Houtan Bastani ae52f7615c bug fix: skipline 2014-11-07 16:44:05 +01:00
Stéphane Adjemian 6edef09aba Added fake input argument in @dates/isequal. 2014-11-07 16:12:47 +01:00
Stéphane Adjemian d77dec9726 Added optional tolerance parameter in @dseries/isequal method. 2014-11-06 15:43:23 +01:00
Houtan Bastani 884cbc3fbe dseries: bug fix: add delimiter for importdata for .csv files 2014-11-06 14:46:27 +01:00
Houtan Bastani 3f4f348a0a dseries: variable in error messages isn't set 2014-11-06 14:34:05 +01:00
Houtan Bastani 9a966151fa fix typo 2014-11-06 13:48:53 +01:00
Johannes Pfeifer 2a67e2a306 Take care of imaginary numbers in perfect foresight simulations
Finishing with imaginary parts now does not count as a solution and triggers a new homotopy step.
2014-11-06 09:08:50 +01:00
Johannes Pfeifer cb5d3df6a0 Computation of the loss function in the presence of unit root variables was incorrect
Some elements were simply left out. This commit now mimics the computations as in th_autocovariances.m and makes sure the loss function coincides with the one that is obtained by reading out the covariance from oo_.var
2014-11-03 18:05:15 +01:00
Johannes Pfeifer 669016167e Fix bug in osr where moments were not based on optimal parameter draw
M_.params is global and was set by csminwel1 to the last value tested; this does not necessarily coincide with the optimal parameter vector, which may have occurred earlier. This commit explicitly sets the optimal parameter vector.
2014-11-03 18:01:04 +01:00
Johannes Pfeifer 7b1663281b Transform objective function in osr to full matrix
If the objective function only has one element, the scalar product of a sparse matrix and a full matrix is sparse (in contrast to two or more elements). This crashes the osr code subsequently.
2014-11-03 15:29:21 +01:00
Johannes Pfeifer 6bc9b88401 Add reordering of second order derivatives to stochastic_solvers.m
It was erroneously completely moved to dyn_second_order_solver.m in the 4.3 branch when cleaning up dr1.m. Without this reordering, decision rules for exogenous deterministic variables at second order are wrong
2014-11-02 19:34:55 +01:00
MichelJuillard 283912be53 Merge pull request #770 from JohannesPfeifer/Ramsey_aux_vars
Ramsey aux vars
2014-11-02 15:16:44 +01:00
Johannes Pfeifer ecbe428bd7 Fix computation of objective function in OSR if covariances are specified
Due to the preprocessor adding entries for all variable combination into i_var, variables contained in covariances obtained a wrong weighting. By only selecting the unique entries, this cannot happen anymore. Moreover, the computation intensity of the objective does not increase quadratically in the objective anymore.
2014-11-02 12:49:11 +01:00
Michel Juillard 491301c67b th_autocovariances.m creates Gamma_y{nar+2} (variance decomposition)
even if there is a single shock. In that case variance decomposition
is one. It is better if Gamma_y has always the expected
size. disp_th_moments.m only displays variance decomposition if there
is more than one shock.
2014-11-02 11:17:27 +01:00
Michel Juillard fbbe98815b fixing bug introduced in commit 6eb3a3d when displaying theoretical
moments for a model with a single exogenous variable
2014-11-01 09:15:48 +01:00
Johannes Pfeifer c2da796153 Fix distinction between initial values provided to dyn_ramsey_static.m and stale unchanged initial values in oo_.steady_state
In case of no steady state file, they are identical, but with a steady state file, they are not. Moreover, this fixes a problem with the dimension of the input to the steady state file. ys was not initialized and had wrong dimensions
Also adds comments to file.
2014-10-30 13:31:57 +01:00
Johannes Pfeifer 3a9c273535 Allow for check of Hessian at order>2 in model_diagnostics.m 2014-10-29 19:37:03 +01:00
Johannes Pfeifer c1999443ce Condition singularity warning on unit root check
When singularity is detected, try to compute eigenvalues to see if unit root is present and issue warning according to this check
2014-10-29 19:33:33 +01:00
Johannes Pfeifer a159442935 Fix message in dynare_estimation_init.m
If some parameters are NaN after computing the steady state, the message erroneously said that parameters had been changed. In a check for equality, NaN is not equal to NaN. Thus, NaNs are now taken care of separately.
2014-10-29 09:02:29 +01:00
Stéphane Adjemian (Charybdis) 9300a061aa Fixed bug (appearing only with Matlab and legacy data interface) if the m data file is in the current directory.
If the m data file is in the current directory, the first output of
fileparts(options_.datafile) is an empty string. In Matlab the command
cd('') fails, but Octave does not fail in this case (and does nothing).

Added a test on the first output of fileparts, if this output is empty
we do not try to change the current directory.
2014-10-23 11:08:26 +02:00
Stéphane Adjemian (Karaba) 5ab08ed8d3 Added missing semi colon. 2014-10-21 16:37:57 +02:00
Stéphane Adjemian (Karaba) ca28a2b778 Fixed load_m_file_data_legacy.m.
An m file data was not loading if outside the current directory.
2014-10-21 16:05:34 +02:00
Stéphane Adjemian (Karaba) 63d3157267 Do not force the user to provide a clean m data file when using the legacy data interface.
Note that  all the variables  listed in varobs  need to have  the same
number of observations.
2014-10-20 17:28:35 +02: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) fb14d24036 Do not truncate the plotted prior densities with the truncation
parameters  used   for  optimization  (second   and  third  positional
arguments  after   the  name  of   the  estimated  parameter   in  the
estimated_params block).
2014-10-16 15:27:40 +02:00
Stéphane Adjemian (Karaba) 2d61c39276 Cosmetic changes. 2014-10-16 15:25:51 +02:00
Johannes Pfeifer db2ba6d887 Clarify message in test_for_deep_parameters_calibration.m 2014-10-15 13:42:47 +02:00
Johannes Pfeifer 2c01113e8c Fix bug when calling non-Bayesian smoother after Bayesian estimation
Because xparam1 is used by the smoother, but xparam was set to the posterior mean, the non-Bayesian smoother results were based on the parameters at the mode, which are stored in xparam1.
2014-10-15 09:49:07 +02:00
Stéphane Adjemian (Karaba) d423ae63a8 Set default value for last input argument of lyapunov_symm routine (debug flag). 2014-10-15 09:02:42 +02:00
Johannes Pfeifer 590c0985f8 Add missing run index to looped variable in resol.m 2014-10-13 20:10:57 +02:00
Stéphane Adjemian (Karaba) 935f74883d Added unit tests for lyapunov_symm routine. 2014-10-13 17:42:53 +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 (Karaba) 55808060cf Removed useless input (complete commit 438a671c3873e5c4e1bb02a54080e930fbc11886). 2014-10-13 17:42:52 +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 573d276f1a Merge pull request #739 from JohannesPfeifer/Cosmetic_changes
Cosmetic changes, documentation, and small bugfix
2014-10-13 13:39:19 +02:00
Johannes Pfeifer 96df3b0043 Cosmetic changes to error messages
(cherry picked from commit ffa424d9d88dcd534272b154a3d9848df861914b)
2014-10-13 13:05:46 +02:00
Stéphane Adjemian 78621c03ee Merge pull request #742 from JohannesPfeifer/second_order_hessian_problems
Deal with NaN and Inf in Hessian of dynamic model
2014-10-13 12:49:38 +02:00
Johannes Pfeifer de5875a75b Fix bug still present in CutSample.m
#733 was faulty because it did not account for changes in the first line when more than 1 MH file was present. Now, FirstDraw really denotes the first draw (as opposed to the last draw as before). The subsequent computation of FirstMhFile is then also correct.
2014-10-12 11:33:55 +02:00
Stéphane Adjemian 6c112a2701 Merge pull request #743 from JohannesPfeifer/debug_info_estimation
Add check for NaN parameters to initial_estimation_checks.m
2014-10-10 22:30:12 +02:00
Stéphane Adjemian 06fbf2b2c5 Merge pull request #746 from JohannesPfeifer/rplot
Filter out empty oo_.endo_simul in rplot.m
2014-10-10 22:25:07 +02:00
Stéphane Adjemian (Charybdis) df1e734106 Merge branch 'steady_debug' 2014-10-10 21:47:24 +02:00
Stéphane Adjemian (Charybdis) f4922a8a27 Cosmetic changes. 2014-10-10 21:46:50 +02:00
Stéphane Adjemian 9e3edd6673 Merge pull request #748 from JohannesPfeifer/maxit
Change maxit default value and correct manual
2014-10-10 19:03:56 +02:00
Stéphane Adjemian 37d4cf7e35 Merge pull request #753 from JohannesPfeifer/MCMC_diag
Improve tractability of McMCDiagnostics_core.m by adding header and comm...
2014-10-10 18:46:30 +02:00
Houtan Bastani f4f7a02fd7 Provisions for MATLAB 8.4 (R2014b) 2014-10-10 10:41:04 +02:00
Johannes Pfeifer 1d68ed8da6 Improve tractability of McMCDiagnostics_core.m by adding header and comments. Also uses more intuitive variable names 2014-10-09 10:57:28 +02:00
Johannes Pfeifer 3187c70b97 Add debugging info on initial values for steady state computation 2014-09-30 15:05:12 +02:00
Johannes Pfeifer a9bb341b0a Increase default maxit for steady and deterministic simulations
Judging from forum reports, the default fails too often. Closes #747
2014-09-30 11:47:58 +02:00
Michel Juillard 6bbfa2fa6d removed 1e6 in expression forcing a non-singular Jacobian 2014-09-30 08:13:31 +02:00
Johannes Pfeifer 6a8c968411 Filter out empty oo_.endo_simul in rplot.m 2014-09-29 15:00:45 +02:00
Michel Juillard fa3e77d163 fixing bug in handling options for lmmcp 2014-09-28 10:07:08 +02:00
Johannes Pfeifer 127b7b0221 Add check for NaN parameters to initial_estimation_checks.m
Provides important info to debug cryptic crashes in later routines. Mostly applies to cases where people run estimation without stoch_simul
2014-09-25 09:02:36 +02:00
Johannes Pfeifer b43d52278d Deal with NaN and Inf in Hessian of dynamic model
Checks for these cases in stochastic_solvers.m to prevent cryptic crashes in dll-files later on
2014-09-25 08:49:19 +02:00
Johannes Pfeifer 2d39fc62e2 Make sure the output arguments of dsge_likelihood.m are actually set
Before, trend_coeff and ys were sometimes returned as empty
2014-09-21 11:54:43 +02:00
Johannes Pfeifer 3e427020d6 Cosmetic changes in headers 2014-09-21 11:51:46 +02:00
Stéphane Adjemian (Charybdis) e2fd82d403 Merge branch 'cut_sample' 2014-09-20 11:18:16 +02:00
Stéphane Adjemian (Charybdis) cc80c8662c Fixes ambiguity in the output of CutSample routine (second part of PR #733). 2014-09-20 11:17:57 +02:00
Stéphane Adjemian (Charybdis) bfc9719f05 Fix bug in in CutSample.m that led to wrong number of draws for moment computation (first part of PR #733)
FirstLine actually defined the last line. One needs to 1. Otherwise,
Draws in GetAllPosteriorDraws.m will be (NumberOfDraws+1)*nblck.
2014-09-20 11:16:50 +02:00
Stéphane Adjemian (Charybdis) 2e08025cac Fixed typo (wrong condition for defining the integration weights and nodes). 2014-09-19 22:05:42 +02:00
Johannes Pfeifer 79c5e18bfe Cosmetic changes
- Suppresses spurious output from dynare_estimation_1.m
- Removes unset output argument from dynare_estimation_init.m (which seems to be totally unused as it was not set at all and nobody reported any crashes)
- Corrects header of dynare_estimation_init.m
2014-09-19 16:20:43 +02:00
Johannes Pfeifer 08b598609e Clarify ambiguous printout in internals function
"Overall acceptance rate" could be read as over all chains.
Also capitalizes the name Matlab
2014-09-16 20:44:18 +02:00
Jukka Heikkonen 79d0e269a7 cosmetic change 2014-09-12 15:40:47 +02:00
Marco Ratto 4729459970 Properly handle case when post_metropolis=0: here steady_state must be added to smoothed variables. 2014-09-12 15:35:00 +02:00
Jukka Heikkonen 55b6d0eb93 1) check for restricted or extened var list
2) allow proper working will all GSA type of sample: prior, MC, posterior
2014-09-12 14:49:25 +02:00
Johannes Pfeifer 8655df67a9 Clean up use of verbosity option
- in dr_block.m and ep_residuals.m the option was hardcoded and disabled
- for csminwel1.m, no verbosity option exists anymore, thus definitions preceeding calls to it were redundant as was the options_.osr.verbose
2014-09-12 10:33:37 +02:00
ferhat beee1d2f82 Correct the test on the number of eigenvalues outside the unit circle: do the test on each block instead of at the global level 2014-09-11 18:19:31 +02:00
Stéphane Adjemian (Scylla) 576ed55dda Merge branch optimizer_number_5. 2014-09-11 17:38:03 +02:00
Stéphane Adjemian (Scylla) 89fa0ae9b6 Fixed typo. 2014-09-11 17:33:42 +02:00
Stéphane Adjemian (Charybdis) 7e3114847d Fix crash in Ramsey with more than 1 instrument and steady state file.
Vector ys is undefined.
2014-09-11 15:33:55 +02:00
Stéphane Adjemian (Charybdis) ce97a27c9d Cosmetic changes. 2014-09-10 17:49:33 +02:00
Johannes Pfeifer 308ce25031 Make sure that solve_algo=0 inherits options from options_.steady
Otherwise, MaxIter is hard-coded

(cherry picked from commit 2499f641ac2fab7ddf938263d0ee34f73765c4c8)
2014-09-10 17:49:33 +02:00
Johannes Pfeifer caa6d5d93e Fix display of MH-history if parameter names do not have same length
In this case, cell2mat fails, because the dimensions are not consistent. Using char() instead padds with spaces

(cherry picked from commit 47b1a2df74cf1f643ca913ab4ff6c2057e8b58cf)
2014-09-10 17:49:33 +02:00
Johannes Pfeifer 41d1533086 Add check that prevents datafile from having same name as mod-file
Otherwise, the generated m-file might be called as the datafile, leading to infinite loops. The check cannot be moved to makedataset because M_.fname is not available there.
2014-09-10 17:49:33 +02:00
Stéphane Adjemian (Charybdis) 27d54758be Fixed typo. 2014-09-10 17:49:33 +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) 5500846280 Added option distribution_proposal (estimation, non linear filters). 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) 4c9be8a56a Removed useless option. 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) df19396acf Added option proposal_approximation (estimation, non linear filters). 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) 9bfdeb30e2 Bug fixes. 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) 5e4b7d8d42 Added filter_algorithm (estimation command, sets the particle filter algorithm). 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) bcad4f31f2 Added option resampling_method (estimation command, non linear filters). 2014-09-08 22:36:41 +02:00
Stéphane Adjemian (Scylla) 08c74b8f41 Added option resampling_threshold (estimation command, non linear filters). 2014-09-08 22:36:40 +02:00
Stéphane Adjemian (Scylla) a6009908e4 Added option resampling (estimation command, non linear filters). 2014-09-08 22:36:40 +02:00