Commit Graph

6541 Commits (4ab79c55f05772861e482639255be77080434507)

Author SHA1 Message Date
Sébastien Villemot a71e0ebee4 Add a compile-time check for MATLAB version, as we already do for Octave 2018-06-06 14:31:25 +02:00
Sébastien Villemot 88e89dfb21 Refactor test for Octave version
Distinguish between a minimal version required (from a source code perspective,
applicable on all platforms) and an exact version requirement (from a binary
package perspective, in practice used only for our Windows package).
2018-06-06 14:27:53 +02:00
Sébastien Villemot 57f6183d2f Move some functions out of missing/stats/, since they are only needed for MATLAB 2018-06-06 13:02:42 +02:00
Sébastien Villemot 9211d902a0 Update dseries 2018-06-05 19:56:42 +02:00
Sébastien Villemot 933ed45ead Octave 4.4 no longer includes statistics functions
Those have been moved to the statistics package. If that package is not there,
use a fallback.
2018-06-05 19:53:06 +02:00
Sébastien Villemot 7cbac0c989 Fix user_has_octave_forge_package
Packages are no longer autoloaded, so testing whether they are "Loaded" does
not work in all cases.

The function now ensures that the package is loaded.
2018-06-05 19:53:02 +02:00
Sébastien Villemot 0b2828af8a Fix typo 2018-06-05 17:27:22 +02:00
Sébastien Villemot e8ade6a187 Fix display of Dynare command arguments 2018-06-05 17:27:03 +02:00
Sébastien Villemot 8cadb2ac59 Silence Octave:classdef-to-struct warning 2018-06-05 17:24:52 +02:00
Sébastien Villemot c7a57e5906 corrcoef is included in Octave 4.4 2018-06-05 17:14:41 +02:00
Sébastien Villemot 7b546ba696 Compatibility fix for MATLAB < R2010b (7.11) 2018-05-30 17:44:46 +02:00
Stéphane Adjemian(Charybdis) 474556e0ca Added routines related to auxiliary variables. 2018-05-29 15:44:41 +02:00
Houtan Bastani d5862f93bf add comment explaining changes in 4e79d12e53 2018-05-28 14:32:11 +02:00
Houtan Bastani 4e79d12e53 move declaration of default values from global_initialization to a separate function 2018-05-28 14:07:32 +02:00
Houtan Bastani 97af53b82d fix mkdir call in global_initialization 2018-05-28 14:07:32 +02:00
Sébastien Villemot 02084ce310 Remove qzcomplex Oct-file
It's actually not needed. The QZ complex decomposition can be obtained in
Octave on real matrices by casting them to the complex type.
2018-05-17 12:11:15 +02:00
Stéphane Adjemian(Charybdis) ac5fcbe231 Use new approach for setting aux variables in model inversion routine.
(cherry picked from commit f1ed81aae2)
2018-05-16 17:27:51 +02:00
Sébastien Villemot 14fbfa028b Move qzdiv.m and qzswitch.m to partial_information/ subdir
They are no longer used in the main codebase.
2018-05-16 17:12:48 +02:00
Sébastien Villemot 59ad26a3c9 Improve fallback code when mjdgges DLL is absent
The new code relies on qz(..., 'real'), ordqz and ordeig, and returns a real
decomposition. The previous version was using Sims' qzdiv and returned a
complex decomposition.

As a consequence, we can drop options_.qzdiv, which was used to detect when
imaginary parts had to be dropped.

This code does not work on Octave for the time being, but this is acceptable
since it is only a fallback.
2018-05-16 17:12:48 +02:00
Sébastien Villemot c180777818 Move check about Octave version to the same place as check for MATLAB 2018-05-16 17:12:48 +02:00
Sébastien Villemot 42b82087d5 Remove codepaths for unsupported Octave versions 2018-05-16 17:12:48 +02:00
Stéphane Adjemian(Charybdis) afbac2e8eb Added strsplit routine in missing. 2018-05-16 16:41:43 +02:00
Stéphane Adjemian(Charybdis) f53be721c1 Added new option mh_tune_jscale.
Works only with the Random Walk Metropolis Hastings algorithm.

Closes #1598
2018-05-16 16:37:22 +02:00
Sébastien Villemot e2c2f2d966 Remove fallbacks for ilu, linsolve and ordschur under Octave
These functions are all included in Octave 4.2.
2018-05-16 10:48:44 +02:00
Sébastien Villemot 473b2f59ef Provisions for MATLAB 9.4 (R2018a)
Take into account the API break in the MEX interface (new interleaved complex API).
But do not split MEX directories on MacOS X for the time being.
2018-05-14 15:16:03 +02:00
Stéphane Adjemian(Charybdis) 3fe758c2b2 Cosmetic change in doc headers. 2018-05-05 21:58:52 +02:00
Stéphane Adjemian(Charybdis) 8f53be2a6f Impose the consistency of the count of unstable eigenvalues...
... Between stoch_simul and check. Added sdim (the number of stable
eigenvalues) and edim (the complementary number of explosive eigenvalues) in dr
structure. The test is always done with sdim (or edim) returned by mjdgges.
2018-05-05 19:53:13 +02:00
Stéphane Adjemian(Charybdis) fa15c3dbc7 Updated dates submodule. Closes #1601. 2018-05-05 14:56:56 +02:00
Stéphane Adjemian(Charybdis) fa67aeb7a6 Fixes issue #1607. 2018-05-05 10:29:37 +02:00
Stéphane Adjemian(Charybdis) 891e3ba7be Cosmetic change in doc headers. 2018-05-05 10:24:01 +02:00
Stéphane Adjemian(Charybdis) cee6dda44d Fixed check for octave version.
We should not issue a warning if version() is greater than supported_octave_version().
2018-03-24 22:48:45 +01:00
Stéphane Adjemian(Charybdis) aa4cabcbeb Fixed bug (simulation of backward models).
Was crashing with three inputs (last one is for innovations) when the first input was an empty array.
2018-03-12 09:45:15 +01:00
Stéphane Adjemian(Charybdis) 8263bbba8a Use new mechanism for setting auxiliary time series. 2018-03-12 09:34:56 +01:00
Stéphane Adjemian(Charybdis) 86be2cb998 Fixed typo. 2018-03-02 10:26:48 +01:00
Stéphane Adjemian(Charybdis) 857a3842e3 Cosmetic change.
Changed M_.max_*_orig into M_.orig_maximum_* for consistency with other fields.
2018-03-01 10:13:44 +01:00
Stéphane Adjemian(Charybdis) b84e3054e3 Various fixes for backward models routines. 2018-03-01 09:29:48 +01:00
Houtan Bastani 667bfb6948 dseries: submodule update 2018-02-20 11:03:12 +01:00
Stéphane Adjemian (Charybdis) fa598b751b Fixed prior command with optimize.
Penalty was not passed correctly.
2018-02-17 21:00:23 +01:00
Houtan Bastani d54cdbf0ac fix output when no arguments are passed to dynare 2018-02-16 17:31:53 +01:00
Houtan Bastani 5d439bcb18 submodule update: preprocessor and add dynare version to dynare.m 2018-02-16 17:31:47 +01:00
Stéphane Adjemian (Charybdis) 350b8fb529 Updated dseries submodule (prevent initialization crash if unable to install X13 binary). 2018-02-10 12:24:20 +01:00
Johannes Pfeifer 224ccb7bab sim1_linear.m: change hard-coded tolerance to option
The tolerance for the steady state check should depend on the accuracy of the steady state computation
2018-02-07 18:42:12 +01:00
Stéphane Adjemian (Charybdis) 4adebd4419 Fixed copyright header. 2018-02-01 22:51:23 +01:00
Marco Ratto cf5f556f4a Do not re-set auxiliary variables if they are already available in the input info [i.e. smoothed variables].
This makes the function robust when one provides info using UpdatedVariables, instead, for faster realtime exercises.
2018-02-01 19:17:59 +01:00
Marco Ratto a7bc6414f5 fixed bug to logical if condition 2018-02-01 19:14:13 +01:00
Johannes Pfeifer 127a543b65 prior bounds: make sure that lower and upper bounds only affect mode-finding
99dbc8c74d introduced a bug by disabling the resetting of the prior bounds used for the MCMC. The manual clearly states the bounds are only operational during mode-finding, but not during MCMC (and therefore prior sampling)
2018-02-01 10:16:47 +01:00
Stéphane Adjemian (Charybdis) fe7da22853 Fixed copyright header. 2018-02-01 10:05:03 +01:00
Johannes Pfeifer da48dea37c identification_analysis.m: remove transformation to char when cell is expected 2018-02-01 09:58:31 +01:00
Stéphane Adjemian (Charybdis) 410f8bd07c Cosmetic change and fixed copyright header. 2018-02-01 09:53:23 +01:00
Johannes Pfeifer 3679afe849 Discretion: Added catch for infinities
Comment: A user provided a file in which the Sylvester equation solved using doubling can evaluate to inf. When Doubling fails, one can try the Hessenberg-Schur algorithm.
2018-02-01 09:53:23 +01:00
Marco Ratto 13a30a0a4e add a new case for ratios between endogenous variables, like trade balance to GDP. 2018-01-27 10:37:31 +01:00
Marco Ratto b3bcd2c8b0 bug fixes: wrong name of field fig_name and properly using user defined fig_name 2018-01-27 10:37:31 +01:00
Marco Ratto 5e7256daeb Bug fixes after changes in the options structures for shock decompositions. 2018-01-27 10:37:31 +01:00
Johannes Pfeifer cbc0cdfef8 Fix bug in multivariate Kalman smoother when observations are missing
The singularity branch did not correctly account for the switching number of observables
2018-01-26 23:13:45 +01:00
Johannes Pfeifer 8e73289fe5 read_variables.m: consistently account for variables being stored as cell array 2018-01-26 12:29:03 +01:00
Stéphane Adjemian (Charybdis) 74fc7cc078 Copyright header fix. 2018-01-26 12:01:07 +01:00
Stéphane Adjemian (Charybdis) c4f1958690 Cosmetic changes + Copyright headers fixes. 2018-01-26 12:00:27 +01:00
Johannes Pfeifer b933a440bf Add debugging info to Kalman filter routines 2018-01-26 11:47:39 +01:00
Marco Ratto b9741548b0 As we do for the smoother, check the rank of Pinf only for the observables (i.e. using Z*Pinf*Z') 2018-01-26 11:47:39 +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 60efdd49bb disp_steady_state.m: Use character array to make sure alignment in display of steady state is right 2018-01-26 11:45:54 +01:00
Johannes Pfeifer a418a04249 model_diagnostics.m: bugfix after transition to cell arrays
disp does not work with cell
2018-01-26 11:45:54 +01:00
Johannes Pfeifer 9fadf19bc2 Add -accepteula flag to psexec call
Prevents freezing if dialog has not been opened before
2018-01-25 11:45:41 +01:00
Johannes Pfeifer ec3fb76aa7 posterior_sampler: Fix naming error that crashes parallel estimation 2018-01-25 11:45:41 +01:00
Stéphane Adjemian (Charybdis) 2647f258d4 Cosmetic changes (code factorization). 2018-01-25 11:34:54 +01:00
Johannes Pfeifer 4c7960fbdc AnalyseComputationalEnvironment.m: print out command that caused error as well as system response 2018-01-25 10:49:58 +01:00
Johannes Pfeifer ef797eec0f mode_check.m: account for case where bounds are infinite and not plots are shown 2018-01-24 23:21:10 +01:00
Stéphane Adjemian (Charybdis) c7a860e6b6 Fixed bug in interactive choice of the endogenous variables.
Bug introduced when we replaced the character arrays by cell of row character
arrays. Closes #1577.
2018-01-24 18:22:45 +01:00
Johannes Pfeifer 28b499af3b Filter out cases where stochastic_solvers.m is called at higher order without k_order_solver 2018-01-24 17:50:42 +01:00
Stéphane Adjemian (Charybdis) ad0bff3771 Added comments. 2018-01-24 17:24:21 +01:00
Johannes Pfeifer 99e4cb6e7e evaluate_steady_state_file.m: Condition call to str2func on function being present
Workaround for Octave bug https://savannah.gnu.org/bugs/?52568
2018-01-24 17:21:16 +01:00
Stéphane Adjemian (Charybdis) 76d05aea57 Merge branch 'pr#1583' 2018-01-24 16:38:37 +01:00
Stéphane Adjemian (Charybdis) e6cc7d6a7f Rewrote header. 2018-01-24 15:59:47 +01:00
Stéphane Adjemian (Charybdis) 145f1e7b1c Streamlined code by removing unnecessary conditions. 2018-01-24 15:59:04 +01:00
Johannes Pfeifer 92549e48b1 Make demean.m use nanmean
Otherwise estimation with missing observations and prefilter option will crash
2018-01-20 08:26:00 +01:00
Stéphane Adjemian(Charybdis) 055ffb0b9e Added second input argument to missing/nanmean routine.
This additional argument is optional and can be used to specify along which
dimension the mean has to be computed.

Fixes the bug introduced in b4204f8b9e for those
who do not have the statistics toolbox.
2018-01-13 00:10:50 +01:00
Marco Ratto ec35210e06 - bug fix for when NO parameter is detected below pvalue threshold
- fix to the case when no plot is done when there are too few behavioral/non-behavioral runs [as it already happens when one of the two sets is empty]
- added more explicit messages on screen
2018-01-12 10:04:57 +01:00
Johannes Pfeifer b4204f8b9e Make sure that mean and covariance of data are correctly computed with only one observation
Need to always compute mean along first dimension

(cherry picked from commit 2d371b1997f5fa07fcbbf47e5923d7817d07c6b9)
2018-01-12 09:48:14 +01:00
Stéphane Adjemian (Charybdis) f4867d30b1 Cosmetic changes and fixed cell/chararray issues. 2018-01-10 17:14:59 +01:00
Marco Ratto f4b25efc5a bug fix with initial_date for conditional shock decomposition 2018-01-10 15:12:39 +01:00
Marco Ratto a63bc5b7f0 fixed bugs with dating of AOA decompositions 2018-01-10 15:12:39 +01:00
Marco Ratto 3e589d2440 Bug fixes in
1) definition of annualized_realtime_conditional_shock_decomposition
2) making plots when vintage is not Q4. The latter required some restructuring and factorization of the code
2018-01-10 15:12:39 +01:00
Marco Ratto 6c5fc8d0fe new options fast_realtime, that runs the smoother only twice: for the last in-sample and for the last out-of-sample data points. 2018-01-10 15:10:55 +01:00
Marco Ratto fd8a69d97b bug fix in setting realtime_conditional_shock_decomposition field 2018-01-10 15:06:13 +01:00
Marco Ratto a04b2876f2 bug fixes:
- set xind_tick for very short time intervals in plots
- provisions for change in behavior of matlab bar function since R2017b
2018-01-10 15:06:13 +01:00
Marco Ratto 5d6b688f38 Bug fixes:
- wrong output list of evaluate_smoother (M missing_)
- realtime option must be  forced to be zero
- wrong name of option fig_names
2018-01-10 15:06:13 +01:00
Marco Ratto 45166aba81 Bug fix for undefined yr variable 2018-01-10 13:14:27 +01:00
Stéphane Adjemian (Charybdis) dfcb9df58d Changed the type of the variable returned by list_of_parameters_calibrated_as_{Inf,NaN}. 2018-01-10 10:35:17 +01:00
Johannes Pfeifer 270246acb0 dynare_estimation_init.m: Add debugging info on NaN and Inf parameters 2018-01-10 10:21:23 +01:00
Stéphane Adjemian (Scylla) 7be8f10e0e Use cells of strings instead of char arrays. 2018-01-09 22:30:01 +01:00
Houtan Bastani e3bc725027
Merge pull request #1574 from JohannesPfeifer/octave_prior
Make Octave error message more constructive and informative
2017-12-05 00:14:45 +01:00
Johannes Pfeifer 2e69ae22ff Make Octave error message more constructive and informative
See the discussion at http://savannah.gnu.org/bugs/?52569
2017-12-02 21:28:25 +01:00
Houtan Bastani 93a0351afb
Merge pull request #1569 from JohannesPfeifer/cosmetic
Cosmetic fix to error message
2017-12-01 15:04:43 +01:00
Johannes Pfeifer ce4d8c3544 Cosmetic fix to error message 2017-11-28 10:27:43 +01:00
Johannes Pfeifer b3d399e901 Add diffuse_filter as option to dynare_sensitivity 2017-11-22 16:25:29 +01:00
Houtan Bastani 9be04a449f submodule update: dates 2017-11-17 10:29:29 +01:00
Stéphane Adjemian(Charybdis) 6e527b467d Make backward model IRF routine also return the impulses.
- In the second output argument (a dseries object) where we store the baseline
   scenario for the endogenous variables we add the baseline for the exogenous
   variables).

 - In the third output argument (a structure of dseries objects, one field per
   shock scenario), we also store the impulses considered for generating the
   IRFs.
2017-11-16 17:54:00 +01:00
Stéphane Adjemian(Charybdis) dc670e0199 Fixed test on M_.Sigma_e (backward model irf routine). 2017-11-15 15:01:34 +01:00
Stéphane Adjemian(Charybdis) a0f089af2d Updated dseries submodule (fixed horzcat behaviour). 2017-11-14 14:35:41 +01:00
Houtan Bastani f1db5cd264 dynare command line: fix bug introduced in c258bad2ab 2017-11-14 14:09:15 +01:00