Commit Graph

1554 Commits (74ed99c6cac1df5456f197cea88ca054353c59f1)

Author SHA1 Message Date
Houtan Bastani 0b52b778ed preprocessor: for consistency, use equations.size() instead of equation_number() in classes that have equations as a field 2017-02-24 11:20:54 +01:00
Houtan Bastani 1007ea1301 preprocessor: JSON output for statements, #1387 2017-02-20 11:23:10 +01:00
Houtan Bastani 181ffd65c5 preprocessor: bug fix for writing of parameter values. Closes #1394 2017-02-13 14:03:44 +01:00
Winant Pablo 8ee9d081e8 FIX: JSON remove space before symbols + quote values 2017-02-12 16:45:05 +01:00
Houtan Bastani 39855c95d2 preprocessor: aesthetic fix 2017-02-10 12:47:43 +01:00
Houtan Bastani fabca90345 preprocessor: aesthetic fix 2017-02-09 16:23:42 +01:00
Houtan Bastani 7ced4b5580 preprocessor: change error to warning because we don’t end processing in this situation; fix error message 2017-02-09 16:21:18 +01:00
Houtan Bastani edd2e98086 preprocessor: replace exit(1) with exit(EXIT_FAILURE) 2017-02-09 12:46:37 +01:00
Stéphane Adjemian (Charybdis) 9fbef0c107 Removed penalty_hessian routine.
+ Code factorization.
 + Added an option for using the penalized objective when computing numerically
 the hessian at the mode.

Previous behaviour (introduced with penalty_hessian routine) was to compute the
hessian matrix at the mode with the penalized objective function (instead of
the original objective function). This behaviour hides problematic situations,
where the computed hessian (using the original objective) would not be full
rank. For instance, if the estimation ends up with a parameter on (or very
close to) the bounds of its possible values (which is often not a desirable
outcome), the estimated posterior variance would be zero for this
parameter (with the original objective) because the hessian is not finite in
this direction, while the posterior variance would be positive if the penalized
objective is used instead. But this estimate would not be reliable by
construction of the penalty which is quite ad-hoc (more fundamentally I do not
think that there exists any rational for approximating the covariance matrix
with the inverse of the hessian matrix if the mode is on the border of the set
of possible values).

This commit restore the behaviour previous to 2446ab02ba.

An option is available for computing the hessian with the penalized
objective function.
2017-02-08 13:07:25 +00:00
Houtan Bastani d05dd34d30 preprocessor: write JSON output. #1387 2017-02-06 17:41:18 +01:00
Houtan Bastani 5b6a888d7f preprocessor: fix typo 2017-01-31 17:11:03 +01:00
Houtan Bastani f1d607af99 preprocessor: remove extra exogenous variables. closes #841 2017-01-27 22:48:17 +01:00
Houtan Bastani 3a0b9a1143 preprocessor: don’t automatically declare external functions 2017-01-27 20:36:26 +01:00
Houtan Bastani 3d4619fd85 preprocessor: handle undeclared external functions and lagged variables 2017-01-27 20:36:26 +01:00
Houtan Bastani cfae273038 keep track of all times an undeclared variable is encountered 2017-01-27 20:36:26 +01:00
Houtan Bastani bfd239aa26 preprocessor: issue warnings for undeclared model variables when the end of the model block is encountered. #1286 2017-01-27 20:36:26 +01:00
Stéphane Adjemian (Charybdis) da31cca7d4 Fixed bug.
NO_POSTERIOR_KERNEL_DENSITY option was not modifying the expected field in
options_, consequently this option was no honored.
2017-01-20 17:35:43 +01:00
Houtan Bastani 7fb7dd7ccc fix nested parens for params derivatives. closes #1201 2017-01-05 18:19:37 +01:00
Houtan Bastani 157369b505 when >32 nested parens encountered in matlab, print error message once per file in which such a situation occurred. #1201 2017-01-05 15:19:13 +01:00
Stéphane Adjemian b464226eaa Merge pull request #1358 from JohannesPfeifer/nograph
Implement posterior_nograph option
2017-01-05 06:52:08 +01:00
Houtan Bastani 09e7dde0ea fix warnings introduced in 3b20d41a92 related to size_t/int comparison #1201 2017-01-02 11:38:13 +01:00
Houtan Bastani 6bd1ff8e1c 3b20d41a92 used to_string from C++11 standard which breaks the snapshot build. #1201 2017-01-02 11:21:28 +01:00
Houtan Bastani 952f545cd7 avoid unnecessary processing when a stream has 32 or fewer nested parenthesis. #1201 2016-12-30 18:32:20 +01:00
Houtan Bastani 3b20d41a92 first iteration of fix for nested parenthesis in matlab. #1201 2016-12-30 18:14:08 +01:00
Houtan Bastani 9582431bd5 bug fix: end preprocessing with error when more than 32 nested parenthesis are encountered. closes #1201 2016-12-28 14:02:50 +01:00
Houtan Bastani 013043b1dd ramsey_policy: accept all endogenous variables in var_list_, even auxiliary variables. closes #1355 2016-12-27 14:08:50 +01:00
Johannes Pfeifer 452d3cd986 Implement preprocessor interface for posterior_nograph option 2016-12-26 13:07:46 +01:00
Johannes Pfeifer 28d4ed1918 Finish implementation and documentation of nograph option of shock_decomposition.m 2016-12-26 12:52:28 +01:00
Johannes Pfeifer 352786c2b4 load_mh_file: recompute results by default and load on request
Prevents general overwriting of results in oo_ and having stale results
2016-12-19 19:37:34 +01:00
Johannes Pfeifer 5707b4d965 Make evaluate_smoother.m output former global variables for correct updating of these objects 2016-12-18 12:43:29 +01:00
Johannes Pfeifer 2f717b5adc Eliminate global variables from shock_decomposition.m 2016-12-18 09:57:51 +01:00
Johannes Pfeifer 5515da191a Add Raftery/Lewis (1992) convergence diagnostics 2016-12-17 17:22:05 +01:00
Johannes Pfeifer 0f04a0f921 Geweke diagnostics: fix bug in interface that prevents setting the respective options 2016-12-17 17:22:05 +01:00
Stéphane Adjemian 5334c7433d Merge pull request #1345 from JohannesPfeifer/robust_lin_solve
robust_lin_solve: Fix mistakes introduced in 4b83c1bf763fe5029c94b7e5…
2016-12-17 17:18:19 +01:00
Houtan Bastani 4a8e8db634 preprocessor: parallel: add NumberOfThreadsPerJob option. #1349 2016-12-13 11:35:37 +01:00
Houtan Bastani de7d239f7c preprocessor: parallel: change default for singleCompThread. #1349 2016-12-13 11:12:04 +01:00
Johannes Pfeifer d5e20752ac robust_lin_solve: Fix mistakes introduced in 4b83c1bf76
Interface was still missing and documentation of option was in wrong place in manual and wrong
2016-12-01 17:31:29 +01:00
Houtan Bastani 5f85d3a200 block: fix bug introduced in e410043c24. #1245 2016-11-29 16:45:50 +01:00
Houtan Bastani e410043c24 block: add default argument for _dynamic functions: `varargout{1} = NaN;` #1245 2016-11-29 15:18:59 +01:00
Houtan Bastani 7ec3dcc6e2 preprocessor: fix bug that caused all models declared linear to fail under ramsey. closes #419 2016-11-29 14:21:34 +01:00
Houtan Bastani 3e9894028a preprocessor: create field in M_ that is true when hessian is zero, false otherwise. closes #1335 2016-11-14 12:32:21 +01:00
MichelJuillard 31d2c7e332 Merge pull request #1324 from JohannesPfeifer/kalman
Three bugfixes for missing_DiffuseKalmanSmootherH1_Z.m that led to wrong results
2016-11-13 19:13:10 +01:00
Houtan Bastani 2e54240dab preprocessor: fix iterator types in ParsingDriver::svar() 2016-11-04 14:44:45 +01:00
Johannes Pfeifer 98cf1bfc1d Add smoothed state uncertainty to Kalman smoother routines 2016-11-04 09:23:55 +01:00
Stéphane Adjemian b069241d18 Merge pull request #1217 from JohannesPfeifer/qz_estimation
Make sure diffuse_filter triggers qz_criterium>1
2016-11-04 06:47:17 +01:00
Stéphane Adjemian 09d374a0be Merge pull request #1303 from JohannesPfeifer/shock_decomp
Shock decomposition and posterior moments
2016-11-04 00:41:04 +01:00
Houtan Bastani f087f84a25 preprocessor: define var for normcdf + msvc. #1259 2016-10-17 14:59:07 +02:00
Houtan Bastani 4b2ddb6f1d preprocessor: don’t need compiler argument to dynare when using octave. closes #1314 2016-10-14 17:35:10 +02:00
Houtan Bastani d564d832dd preprocessor: add normcdf for MSVC. closes #1259 2016-10-14 16:11:44 +02:00
Houtan Bastani 7cd072e064 preprocessor: clean up writePowerDeriv code. it only writes C code, so no need for use_dll argument 2016-10-14 14:30:14 +02:00
Houtan Bastani d7d2e4fde3 preprocessor: fix bug introduced in 4255be00b8. Normcdf is not supported by MSVC 2016-10-14 13:59:36 +02:00
Houtan Bastani 4255be00b8 preprocessor: allow acosh, asinh, atanh, normcdf for MSVC 11.0 or later 2016-10-14 13:44:21 +02:00
Houtan Bastani accd70a4c7 preprocessor: add support for MinGW. #1226 2016-10-14 11:25:23 +02:00
Houtan Bastani bfe182f464 build system: make cp thread safe 2016-10-14 10:57:49 +02:00
Houtan Bastani dbec97c447 preprocessor: fix warning in parsing 2016-10-07 14:41:33 +02:00
Johannes Pfeifer 209f1b4a7c Allow first_obs and nobs as options of shock_decomposition 2016-10-06 14:20:04 +02:00
Johannes Pfeifer f553f893c6 Make sure qz_criterium being reset by evaluate_smoother.m does not affect subsequent commands
- adds diffuse_filter as option of calib_smoother
- adds test case for calib_smoother with diffuse_filter
2016-10-02 10:51:47 +02:00
Houtan Bastani 4b3c98d953 preprocessor: add keep_kalman_algo_if_singularity_is_detected option to estimation. #1294 2016-09-30 14:31:13 +02:00
Houtan Bastani c6f4af8894 preprocessor: add nograph option to shock_decomposition. closes #1290 2016-09-23 17:44:36 +02:00
Houtan Bastani 804d31e8af preprocessor: allow shock group names to contain spaces. closes #1280 2016-09-14 14:10:00 +02:00
Houtan Bastani d74550e050 preprocessor: simplify code 2016-09-06 14:59:31 +02:00
Houtan Bastani 833f8c7845 preprocessor: fix bug in conditional_forecast_paths where the shocked endogenous variable id was provided as symb_id instead of type specific symb_id. #1276 2016-09-06 14:58:25 +02:00
Houtan Bastani e31f0a8d0f macroprocessor: stop with error when division by zero is encountered. closes #1278 2016-09-05 17:36:40 +02:00
Houtan Bastani f0909834c0 preprocessor: external_function: add comma to function output args 2016-08-25 15:35:32 +02:00
Johannes Pfeifer 077b725a52 Correct comment in _dynamic files that misstated columns of derivative matrices 2016-08-22 19:24:35 +02:00
MichelJuillard 6a6ccfa966 Merge pull request #1257 from JohannesPfeifer/conf_sig
Conf sig
2016-08-21 16:14:28 +02:00
Houtan Bastani 7680749130 preprocessor: issue error when exogenous included in planner_objective. closes #1264 2016-08-12 11:50:57 +02:00
Houtan Bastani 3695bf4695 preprocessor: Return equation numbers/tags in error message when linear model contains nonzero hessian entries. #419 2016-07-27 15:01:54 -04:00
Houtan Bastani 7695031e77 preprocessor: check linear model hessian = 0. closes #419 2016-07-25 13:43:34 -04:00
Houtan Bastani 816b5bb884 Revert "preprocessor: remove maxit, tolf from osr. #1249"
This reverts commit 86bc3bd435.
2016-07-21 11:04:04 -04:00
Houtan Bastani 86bc3bd435 preprocessor: remove maxit, tolf from osr. #1249 2016-07-21 09:46:08 -04:00
Houtan Bastani ed549d3ba7 preprocessor: add tolx to perfect_foresight_solver 2016-07-21 09:40:19 -04:00
Houtan Bastani 8446e6bc14 preprocessor: add tolf to perfect_foresight_solver and steady. #1249 2016-07-20 10:57:06 -04:00
Houtan Bastani e5b851d175 preprocessor: remove extraneous token 2016-07-20 10:43:13 -04:00
Michel Juillard dcff4b57a9 adding missing initializations 2016-07-15 17:43:58 +02:00
Houtan Bastani ad4d77853d preprocessor: rework conf_sig option 2016-07-04 17:34:44 +02:00
Stéphane Adjemian (Hermes) 581198741f Revert "Revert "preprocessor: allow for partitioning of variables along multiple dimensions""
This reverts commit b0e7f1cfd7.
2016-06-24 17:38:54 +02:00
Houtan Bastani b0e7f1cfd7 Revert "preprocessor: allow for partitioning of variables along multiple dimensions"
This reverts commit 7a29f50d99.
2016-06-23 15:59:35 +02:00
Houtan Bastani 7a29f50d99 preprocessor: allow for partitioning of variables along multiple dimensions 2016-06-23 15:36:42 +02:00
Michel Juillard 5d1162d229 fixed bug in writeCCOutput 2016-06-18 11:21:42 +02:00
Johannes Pfeifer 1c420e6056 Allow for parameter_set=mle_mode in shock_decomposition
Required after writing results into oo_.mle_mode for ML estimation
2016-06-17 00:21:08 +02:00
Stéphane Adjemian (Hermes) d86e78ab01 Fixed dynamic model (julia output)
The number of columns in the Jacobian matrix is the number of endogenous
variables appearing at time t-1, t and t+1 plus the number of exogenous
variables.
2016-06-14 11:21:23 +02:00
Stéphane Adjemian (Hermes) 9ca893ca1d Added routines for steady state computation (julia). 2016-06-14 11:21:23 +02:00
Houtan Bastani ea4ec224e1 preprocessor: add all_values_required option to histval. closes #261 2016-06-02 12:57:11 +02:00
Stéphane Adjemian (Charybdis) 15f83d0e18 Added new option for setting weights in CPF algorithm. 2016-06-01 16:29:53 +02:00
Houtan Bastani 90a493ac98 preprocessor: fix bug in writing of temporary terms. closes #1201 2016-06-01 15:29:10 +02:00
Stéphane Adjemian (Hermes) 13ca15a278 Allow (S)EP with arbitrary sequence of innovations.
The third input argument of extended_path Matlab/Octave's routine is the
sequence of shocks (T*n array, where n is the number of exogenous
variables and T is the size of the sample). If the third argument is
empty, the (stochastic) extended path is run with gaussian
innovations (this corresponds to the previous behaviour).

TODO:
 - Fix the compatibility with ep.replic_nbr
 - Check the 'calibrated' mode.
2016-05-24 17:28:24 +02:00
Stéphane Adjemian (Hermes) b60bd7b36b Removed globals from extended_path routine. 2016-05-24 17:28:24 +02:00
Stéphane Adjemian (Hermes) 53747cb082 Fixed lmmcp option.
This option may be used in extended_path and perfect_foresight_solver commands.
2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Hermes) 8b084595e2 Added solve_algo as an option for perfect_foresight_solver. 2016-05-24 17:26:06 +02:00
Stéphane Adjemian (Hermes) 4658d81740 Add pointer to user written steady state routine. 2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) 9c1739520b Bug fix in assert (Julia output)
Same as 4b830d29ed2d230908a1a5ec1c7badd29c7dc86a but for static model.
2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) 0398832e4f Assign parameter values in main julia module.
See PR #1102 by spencerlyon2.

Added support for filling in the model.params Vector.
2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) cf9883ef61 Bug fix in assert (Julia output).
See PR #1102 by spencerlyon2.

size always returns a tuple, and we were comparing to an int. Dispatch restricts these arguments to all be vectors so length works here.
2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) e65c4f970b Fixed indexing of params in steady state file. 2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) e44d90adc1 Fixed type issues.
params, exo_steady_state and steady_state are vectors not matrices!
2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) 2e8f528bef Cosmetic changes.
+ Renamed model as model_
+ Renamed options as options_
+ Renamed output as oo_
+ Also export oo_ and options_
+ Fixed typos in comments.
2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) bcd39ef2f7 Made room for user written steady state file. 2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) 96d538469c Added boolean variable for tracking if a steadystate block is present in the mod file. 2016-05-23 13:48:19 +02:00
Stéphane Adjemian (Hermes) 73787c0c16 Removed try-catch block. 2016-05-23 13:48:19 +02:00