dynare issueshttps://git.dynare.org/Dynare/dynare/-/issues2019-06-19T15:37:44Zhttps://git.dynare.org/Dynare/dynare/-/issues/1425create interface for initial_condition_decomposition2019-06-19T15:37:44ZHoutan Bastanicreate interface for initial_condition_decompositionSee #1421See #14214.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1415rewrite dyn_saveas, dyn_figure to take the options they need as arguments2019-06-19T15:37:44ZHoutan Bastanirewrite dyn_saveas, dyn_figure to take the options they need as argumentsThis is a first step in the long road to completing #1414This is a first step in the long road to completing #14144.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1406Add interface for #13722019-06-19T15:37:44ZStéphane Adjemianstepan@adjemian.euAdd interface for #1372@houtanb To identify the needed modifications look at #1372 and the new entries in the reference manual.@houtanb To identify the needed modifications look at #1372 and the new entries in the reference manual.4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1398replace equation cross references with those done for json2019-06-19T15:37:44ZHoutan Bastanireplace equation cross references with those done for jsonReplace original version done in 4976b2b3359688e9b1d000bdf05f95d5b6071ac3, f546368252 with those done in 0ccc82300c3046d159554c24027ded09a93b687e
The changes in 0ccc82300c3046d159554c24027ded09a93b687e contain information on lags whereas the original ones don'tReplace original version done in 4976b2b3359688e9b1d000bdf05f95d5b6071ac3, f546368252 with those done in 0ccc82300c3046d159554c24027ded09a93b687e
The changes in 0ccc82300c3046d159554c24027ded09a93b687e contain information on lags whereas the original ones don't4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1356introduce posterior_nograph option2019-06-19T15:37:45ZMarco Rattointroduce posterior_nograph optionI think it would be useful to have an option like:
`options_.posterior_nograph`
with default value at 0 like standard nograph.
This option would allow performing all possible posterior subdraws for irfs, smoothed variables etc, but avoiding to produce thousands of useless graphs that are currently done [for large models at least].
I think it would also be useful to make a distinction w.r.t. `options_.nograph` since the latter would not trigger prior/posterior plots of parameter estimates which would be required in any case.
And by the way, `pm3` and `posterior_irf` do not seem to honor the nograph option: plots are made in any case. So at least we should make sure `nograph` would work properly?
If you agree, I would make the appropriate changes to the matlab `pm3` and `posterior_irf` routines with `posterior_nograph` [the preprocessor could be updated with this extra option, then].
I think it would be useful to have an option like:
`options_.posterior_nograph`
with default value at 0 like standard nograph.
This option would allow performing all possible posterior subdraws for irfs, smoothed variables etc, but avoiding to produce thousands of useless graphs that are currently done [for large models at least].
I think it would also be useful to make a distinction w.r.t. `options_.nograph` since the latter would not trigger prior/posterior plots of parameter estimates which would be required in any case.
And by the way, `pm3` and `posterior_irf` do not seem to honor the nograph option: plots are made in any case. So at least we should make sure `nograph` would work properly?
If you agree, I would make the appropriate changes to the matlab `pm3` and `posterior_irf` routines with `posterior_nograph` [the preprocessor could be updated with this extra option, then].
4.5https://git.dynare.org/Dynare/dynare/-/issues/1349set number of threads per job in parallel execution2019-06-19T15:37:45ZMarco Rattoset number of threads per job in parallel executionGiven the large number of CPU's being made available on desktop pc's, the current node option `singleCompThread` looks rather limited.
I would propose the following changes to the parallel configuration:
- set the default for `singleCompThread` to 0;
- add a node option in dynare.ini `numberOfThreadsPerJob`, which allows to set the number of cpu's assigned to each job. So, for example, for a node with 8 CPU's and `numberOfThreadsPerJob=2`, the parallel engine will split the work into 4 parallel instances, each using 2 cpu's.
would this be possible?Given the large number of CPU's being made available on desktop pc's, the current node option `singleCompThread` looks rather limited.
I would propose the following changes to the parallel configuration:
- set the default for `singleCompThread` to 0;
- add a node option in dynare.ini `numberOfThreadsPerJob`, which allows to set the number of cpu's assigned to each job. So, for example, for a node with 8 CPU's and `numberOfThreadsPerJob=2`, the parallel engine will split the work into 4 parallel instances, each using 2 cpu's.
would this be possible?4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/1339bug in missing_DiffuseKalmanSmootherH3_Z.m?2019-06-19T15:37:45ZMichelJuillardbug in missing_DiffuseKalmanSmootherH3_Z.m?@JohannesPfeifer I don't see how line 302
```
Linf = eye(mm) - Kinf(:,i,t)'/Finf(i,t);
```
can be correct. The term before - is a square matrix and the term after, a row vector@JohannesPfeifer I don't see how line 302
```
Linf = eye(mm) - Kinf(:,i,t)'/Finf(i,t);
```
can be correct. The term before - is a square matrix and the term after, a row vector4.5Johannes Pfeifer Johannes Pfeifer https://git.dynare.org/Dynare/dynare/-/issues/1337A linear model with options_.risky_steadystate = 1; and k_order_solver causes...2019-06-19T15:37:45ZHoutan BastaniA linear model with options_.risky_steadystate = 1; and k_order_solver causes a crashShould stop with error if a linear model is used.
See the mod file: https://gist.github.com/houtanb/d2eaa90121e26bdace138bf477c631eeShould stop with error if a linear model is used.
See the mod file: https://gist.github.com/houtanb/d2eaa90121e26bdace138bf477c631ee4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1336make stoch_simul more efficient: solve at `order=1` when `M_.hessian_eq_zero==1`2019-06-19T15:37:45ZHoutan Bastanimake stoch_simul more efficient: solve at `order=1` when `M_.hessian_eq_zero==1`To avoid the error in `matlab/stochastic_solvers.m` line 64, when `M_.hessian_eq_zero` is true solve at `order = 1` instead of `2` or `3`.
Work to be done on a branchTo avoid the error in `matlab/stochastic_solvers.m` line 64, when `M_.hessian_eq_zero` is true solve at `order = 1` instead of `2` or `3`.
Work to be done on a branch4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1335add field to M_ when 2nd derivative is equal to zero2019-06-19T15:37:45ZHoutan Bastaniadd field to M_ when 2nd derivative is equal to zero4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1332Decide on how to deal with mh_recover on Octave2019-06-19T15:37:45ZJohannes Pfeifer Decide on how to deal with mh_recover on OctaveVarious unit test fail on Octave, because the `mh_recover` option does not work properly under Octave as there are differences in setting the random number generator. We can either
- disable the check in the unit test and accept that the behavior of `mh_recover` is different under Octave and Matlab (and then document this)
- or provide an error under Octave when someone tries to use this optionVarious unit test fail on Octave, because the `mh_recover` option does not work properly under Octave as there are differences in setting the random number generator. We can either
- disable the check in the unit test and accept that the behavior of `mh_recover` is different under Octave and Matlab (and then document this)
- or provide an error under Octave when someone tries to use this option4.5https://git.dynare.org/Dynare/dynare/-/issues/1328Find out why pr#1323 fails with older versions of matlab2019-06-19T15:37:45ZStéphane Adjemianstepan@adjemian.euFind out why pr#1323 fails with older versions of matlabSee the mod file [here](https://gist.github.com/stepan-a/260eabd535efa7c38d1197cad04a581a) and discussion [here](https://github.com/DynareTeam/dynare/pull/1323).See the mod file [here](https://gist.github.com/stepan-a/260eabd535efa7c38d1197cad04a581a) and discussion [here](https://github.com/DynareTeam/dynare/pull/1323).4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1314octave does not need the compiler argument when using use_dll2019-06-19T15:37:47ZHoutan Bastanioctave does not need the compiler argument when using use_dllThe preprocessor requires Windows users to pass the name of the compiler on their system when using `use_dll`. This is not necessary on Octave, as evidenced by `matlab/utilities/general/dyn_mex.m`. Fix `preprocessor/ModFile.cc` appropriately.
See discussion here: https://github.com/DynareTeam/dynare/commit/accd70a4c79c3e8dffb8ab367e1879680bd20606#commitcomment-19427662
The preprocessor requires Windows users to pass the name of the compiler on their system when using `use_dll`. This is not necessary on Octave, as evidenced by `matlab/utilities/general/dyn_mex.m`. Fix `preprocessor/ModFile.cc` appropriately.
See discussion here: https://github.com/DynareTeam/dynare/commit/accd70a4c79c3e8dffb8ab367e1879680bd20606#commitcomment-19427662
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1309improve documentation of datafile option2019-06-19T15:37:47ZMichelJuillardimprove documentation of datafile optionIn the manual add that if several files differ only by the extension, the filaname must include the extendsion and written between quotes
In the manual add that if several files differ only by the extension, the filaname must include the extendsion and written between quotes
4.5https://git.dynare.org/Dynare/dynare/-/issues/1302calib_smoother doesn't recognize diffuse_filter2019-06-19T15:37:47ZMichelJuillardcalib_smoother doesn't recognize diffuse_filterIt should be possible to run the smoother with calibrated parameters for a model with non-stationary variables
It should be possible to run the smoother with calibrated parameters for a model with non-stationary variables
4.5MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/1294Introduce proper check for stochastic singularity2019-06-19T15:37:47ZJohannes Pfeifer Introduce proper check for stochastic singularityIn `initial_estimation_checks` we should introduce a proper check for stochastic singularity by setting `options_.use_univariate_filters_if_singularity_is_detected=0` and then providing an informative error message when `info(1) == 50`.
This prevents user errors where the model has a fundamental stochastic singularity, because Dynare by default will resort to the univariate filter without warning.
In `initial_estimation_checks` we should introduce a proper check for stochastic singularity by setting `options_.use_univariate_filters_if_singularity_is_detected=0` and then providing an informative error message when `info(1) == 50`.
This prevents user errors where the model has a fundamental stochastic singularity, because Dynare by default will resort to the univariate filter without warning.
4.5Johannes Pfeifer Johannes Pfeifer https://git.dynare.org/Dynare/dynare/-/issues/1293xlswrite and xlsopen on Octave no longer work on .xls files, only .xlsx files2019-06-19T15:37:47ZHoutan Bastanixlswrite and xlsopen on Octave no longer work on .xls files, only .xlsx filesSee: http://savannah.gnu.org/bugs/?44109
This causes `tests/data/mod1a.mod` to crash in the test suite on Octave
See: http://savannah.gnu.org/bugs/?44109
This causes `tests/data/mod1a.mod` to crash in the test suite on Octave
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1291Error when running the OSR example in octave2019-02-08T08:30:47ZStéphane Adjemianstepan@adjemian.euError when running the OSR example in octave*Created by: felipeboralli*
When trying to run the Optimal simple rule example from the documentation, an error was generated in Octave.
GNU Octave, version 3.8.1 "i686-w64-mingw32".
Dynare unstable (version 2016-08-23).
Example run(the same in the documentation):
```
var y inflation r;
varexo y_ inf_;
parameters delta sigma alpha kappa gammarr gammax0 gammac0 gamma_y_ gamma_inf_;
delta = 0.44;
kappa = 0.18;
alpha = 0.48;
sigma = -0.06;
gammarr = 0;
gammax0 = 0.2;
gammac0 = 1.5;
gamma_y_ = 8;
gamma_inf_ = 3;
model(linear);
y = delta * y(-1) + (1-delta)*y(+1)+sigma *(r - inflation(+1)) + y_;
inflation = alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_;
r = gammax0*y(-1)+gammac0*inflation(-1)+gamma_y_*y_+gamma_inf_*inf_;
end;
shocks;
var y_; stderr 0.63;
var inf_; stderr 0.4;
end;
optim_weights;
inflation 1;
y 1;
y, inflation 0.5;
end;
osr_params gammax0 gammac0 gamma_y_ gamma_inf_;
osr y;
```
Output with error:
```
>> dynare vtest
Configuring Dynare ...
[mex] Generalized QZ.
[mex] Sylvester equation solution.
[mex] Kronecker products.
[mex] Sparse kronecker products.
[mex] Local state space iteration (second order).
[mex] Bytecode evaluation.
[mex] k-order perturbation solver.
[mex] k-order solution simulation.
[mex] Quasi Monte-Carlo sequence (Sobol).
[mex] Markov Switching SBVAR.
Using 32-bit preprocessor
Starting Dynare (version 2016-08-23).
Starting preprocessing of the model file ...
Found 3 equation(s).
Evaluating expressions...done
Computing static model derivatives:
- order 1
Computing dynamic model derivatives:
- order 1
- order 2
Processing outputs ...
done
Preprocessing completed.
error: strmatch: S must be a string
error: called from:
error: [redacted]\octave-3.8.1\share\octave\3.8.1\m\strings\strmatch.m at line 61, column 5
error: [redacted]\dynare-2016-08-23-win\matlab\osr.m at line 54, column 17
error: [redacted]\vtest.m at line 164, column 9
error: [redacted]\dynare-2016-08-23-win\matlab\dynare.m at line 223, column 1
```
*Created by: felipeboralli*
When trying to run the Optimal simple rule example from the documentation, an error was generated in Octave.
GNU Octave, version 3.8.1 "i686-w64-mingw32".
Dynare unstable (version 2016-08-23).
Example run(the same in the documentation):
```
var y inflation r;
varexo y_ inf_;
parameters delta sigma alpha kappa gammarr gammax0 gammac0 gamma_y_ gamma_inf_;
delta = 0.44;
kappa = 0.18;
alpha = 0.48;
sigma = -0.06;
gammarr = 0;
gammax0 = 0.2;
gammac0 = 1.5;
gamma_y_ = 8;
gamma_inf_ = 3;
model(linear);
y = delta * y(-1) + (1-delta)*y(+1)+sigma *(r - inflation(+1)) + y_;
inflation = alpha * inflation(-1) + (1-alpha) * inflation(+1) + kappa*y + inf_;
r = gammax0*y(-1)+gammac0*inflation(-1)+gamma_y_*y_+gamma_inf_*inf_;
end;
shocks;
var y_; stderr 0.63;
var inf_; stderr 0.4;
end;
optim_weights;
inflation 1;
y 1;
y, inflation 0.5;
end;
osr_params gammax0 gammac0 gamma_y_ gamma_inf_;
osr y;
```
Output with error:
```
>> dynare vtest
Configuring Dynare ...
[mex] Generalized QZ.
[mex] Sylvester equation solution.
[mex] Kronecker products.
[mex] Sparse kronecker products.
[mex] Local state space iteration (second order).
[mex] Bytecode evaluation.
[mex] k-order perturbation solver.
[mex] k-order solution simulation.
[mex] Quasi Monte-Carlo sequence (Sobol).
[mex] Markov Switching SBVAR.
Using 32-bit preprocessor
Starting Dynare (version 2016-08-23).
Starting preprocessing of the model file ...
Found 3 equation(s).
Evaluating expressions...done
Computing static model derivatives:
- order 1
Computing dynamic model derivatives:
- order 1
- order 2
Processing outputs ...
done
Preprocessing completed.
error: strmatch: S must be a string
error: called from:
error: [redacted]\octave-3.8.1\share\octave\3.8.1\m\strings\strmatch.m at line 61, column 5
error: [redacted]\dynare-2016-08-23-win\matlab\osr.m at line 54, column 17
error: [redacted]\vtest.m at line 164, column 9
error: [redacted]\dynare-2016-08-23-win\matlab\dynare.m at line 223, column 1
```
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1290Provide local nograph option to shock_decomposition2019-06-19T15:37:47ZJohannes Pfeifer Provide local nograph option to shock_decompositionIt should translate `shock_decomposition(nograph)` to the last input of
`shock_decomposition(M_,oo_,options_,varlist,nograph)`
with the default being 0. Alternatively, only if the `nograph` option is specified, we call `shock_decomposition` with a fifth input. Related to #1280
It should translate `shock_decomposition(nograph)` to the last input of
`shock_decomposition(M_,oo_,options_,varlist,nograph)`
with the default being 0. Alternatively, only if the `nograph` option is specified, we call `shock_decomposition` with a fifth input. Related to #1280
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1288bug with use_dll, k_order_perturbation2019-06-19T15:37:47ZHoutan Bastanibug with use_dll, k_order_perturbationThe following tests fail:
```
| * k_order_perturbation/fs2000k2_use_dll.mod
| * k_order_perturbation/fs2000k_1_use_dll.mod
| * k_order_perturbation/fs2000k3_use_dll.mod
```
with the error:`dynare:k_order_perturbation: Caught KordDynare exception: ../../../sources/k_order_perturbation/dynamic_dll.cc:70: Error when loading ./fs2000k2_use_dll_dynamic.mexa64 (can't locate the 'Dynamic' symbol)`
We first found this on Matlab R2016a, though it may have existed earlier. This bug exists on OS X, Linux and Windows with MinGW (thanks @JohannesPfeifer ). This does not exist on Windows with MSVC.
Can possibly fix with `extern "C"` or by creating C++ mex files. Should see in which version of Matlab this problem started and why.
The following tests fail:
```
| * k_order_perturbation/fs2000k2_use_dll.mod
| * k_order_perturbation/fs2000k_1_use_dll.mod
| * k_order_perturbation/fs2000k3_use_dll.mod
```
with the error:`dynare:k_order_perturbation: Caught KordDynare exception: ../../../sources/k_order_perturbation/dynamic_dll.cc:70: Error when loading ./fs2000k2_use_dll_dynamic.mexa64 (can't locate the 'Dynamic' symbol)`
We first found this on Matlab R2016a, though it may have existed earlier. This bug exists on OS X, Linux and Windows with MinGW (thanks @JohannesPfeifer ). This does not exist on Windows with MSVC.
Can possibly fix with `extern "C"` or by creating C++ mex files. Should see in which version of Matlab this problem started and why.
4.5Houtan BastaniHoutan Bastani