dynare issueshttps://git.dynare.org/Dynare/dynare/-/issues2019-06-19T15:37:57Zhttps://git.dynare.org/Dynare/dynare/-/issues/979Make M_.dname more consistent2019-06-19T15:37:57ZMichelJuillardMake M_.dname more consistentM_.dname is used more as an option than as a characteristic of the model file. By default, the directory name of saving output is M_.fname. When the user wants to change the name, this should be setting options_.dname, not M_.dname
M_.dname is used more as an option than as a characteristic of the model file. By default, the directory name of saving output is M_.fname. When the user wants to change the name, this should be setting options_.dname, not M_.dname
https://git.dynare.org/Dynare/dynare/-/issues/981Expand writing of eps-loaders on consistent basis to identification2019-06-19T15:37:57ZJohannes PfeiferExpand writing of eps-loaders on consistent basis to identificationLeft after implementing #937
Left after implementing #937
https://git.dynare.org/Dynare/dynare/-/issues/976Block using parameters as variables in mod-files2019-06-19T15:37:57ZJohannes PfeiferBlock using parameters as variables in mod-filesThe following file defines `pip` as a parameter, but uses `pip(+1)` like a variable. We should block this and issue an error.
```
%%% PROGETTO 11 %%%
var C lambda R r K I MRS h w N mc Y T b W ;
varexo epst ;
parameters beta delta phi...The following file defines `pip` as a parameter, but uses `pip(+1)` like a variable. We should block this and issue an error.
```
%%% PROGETTO 11 %%%
var C lambda R r K I MRS h w N mc Y T b W ;
varexo epst ;
parameters beta delta phi eps alpha phir phip phiy tau rho phia phib epsp piw pit sigma pip cy iy b2;
%%% calibrazione parametri %%%
beta=0.99;
delta=0.5;
phi=2;
eps=1;
alpha=2;
phir=0.5;
phip=0.6;
phiy=0.7;
tau=0.35;
rho=0.3;
phia=1;
phib=1.1;
epsp=1.3;
piw=2;
pit=2.3;
sigma=1;
pip=2.1;
cy=1.2;
iy=1.4;
b2=0.7;
%steady state%
model(linear);
-sigma*C=lambda;
lambda=lambda(+1)+R-pip(+1);
lambda(+1)=lambda+(1-beta*(1-delta))*r(+1);
K=(1-delta)*K(-1)+delta*I;
MRS=sigma*C+phi*h;
piw=beta*piw(+1)-(((1-eps)*(1-beta*eps))/eps)*(w-MRS);
K(-1)-N=w-r;
mc=alpha*r+(1-alpha)*w;
Y=alpha*K(-1)+(1-alpha)*h;
pip=beta*pip(+1)+(((1-epsp)*(1-beta*epsp))/epsp)*mc;
(cy)*C+(iy)*I=Y;
R=phir*R(-1)+(1-phir)*(phip*pip+phiy);
T=(1/((((R*b2(-1))/pip)-b2-tau*w*h))*((R*b2(-1))/pip)*(-pip+b2(-1)+R)-(tau*w*h)*(tau+h+w)-b2(-1)*b);
tau=rho*tau(-1)+phia*b(-1)+phib*Y+epst;
piw=w-w(-1)+pip;
end;
resid(1);
steady;
check;
shocks;
var epst=2;
end;
stoch_simul(order=1, irf=20);
```
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/972Change display_problematic_vars_Jacobian.m to use number of auxiliary equati...2019-06-19T15:37:57ZJohannes PfeiferChange display_problematic_vars_Jacobian.m to use number of auxiliary equations stored by preprocessorSee #729
See #729
https://git.dynare.org/Dynare/dynare/-/issues/971Improve unit tests for correctness of Kalman filter results2019-06-19T15:37:57ZJohannes PfeiferImprove unit tests for correctness of Kalman filter resultsFollowing #738, we still need to
- Fix all bugs that result in unit tests crashing
- Improve unit tests to compare likelihood results for consistency
- Update and enable other unit tests for Kalman filter in kalman/likelihood directory
Following #738, we still need to
- Fix all bugs that result in unit tests crashing
- Improve unit tests to compare likelihood results for consistency
- Update and enable other unit tests for Kalman filter in kalman/likelihood directory
https://git.dynare.org/Dynare/dynare/-/issues/966split output of write_latex_dynamic_model so it can be included in a report2019-06-19T15:37:58ZHoutan Bastanisplit output of write_latex_dynamic_model so it can be included in a reportwrite_latex_dynamic_model can create two files:
1. one containing everything before `\begin{document}`, an `\input` command and an `\end{document}`
2. a second containing the equations that is included in the `\input` command
This secon...write_latex_dynamic_model can create two files:
1. one containing everything before `\begin{document}`, an `\input` command and an `\end{document}`
2. a second containing the equations that is included in the `\input` command
This second document can also be included in a report if someone wants the model equations in a report.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/965Add posterior distribution of contemporaneous correlations2019-06-19T15:37:58ZJohannes PfeiferAdd posterior distribution of contemporaneous correlationsCurrently, we only save the covariances, but users often want correlations, see e.g. http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6968.
Currently, we only save the covariances, but users often want correlations, see e.g. http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6968.
https://git.dynare.org/Dynare/dynare/-/issues/964Add cholcov function to missing/statistics2019-06-19T15:37:58ZJohannes PfeiferAdd cholcov function to missing/statisticsThe TaRB algorithm makes use of the `cholcov` function of the statistics toolbox. We might want to add the Octave version to the missing folder.
The TaRB algorithm makes use of the `cholcov` function of the statistics toolbox. We might want to add the Octave version to the missing folder.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/963Bug in dyn_mex.m2019-06-19T15:37:58ZTom HoldenBug in dyn_mex.mAt present dyn_mex.m uses the undefined variables msvc and cygwin.
It also tries to export the wrong function from the _static.c file.
The fix is in the following commit in my branch: https://github.com/tholden/dynare/commit/0c53374475...At present dyn_mex.m uses the undefined variables msvc and cygwin.
It also tries to export the wrong function from the _static.c file.
The fix is in the following commit in my branch: https://github.com/tholden/dynare/commit/0c533744750ed3247fd25c43b1fe82c1fea64bbb
It is also shown here:
Lines 50 to 65 of dyn_mex.m should read as follows:
```
if strcmp( win_compiler, 'msvc' )
% MATLAB/Windows + Microsoft Visual C++
eval(['mex -O LINKFLAGS="$LINKFLAGS /export:Dynamic" ' basename '_dynamic.c ' basename '_dynamic_mex.c'])
eval(['mex -O LINKFLAGS="$LINKFLAGS /export:Static" ' basename '_static.c ' basename '_static_mex.c'])
elseif strcmp( win_compiler, 'cygwin' )
% MATLAB/Windows + Cygwin g++
eval(['mex -O PRELINK_CMDS1="echo EXPORTS > mex.def & echo ' ...
'mexFunction >> mex.def & echo Dynamic >> mex.def" ' ...
basename '_dynamic.c ' basename '_dynamic_mex.c'])
eval(['mex -O PRELINK_CMDS1="echo EXPORTS > mex.def & echo ' ...
'mexFunction >> mex.def & echo Static >> mex.def" ' ...
basename '_static.c ' basename '_static_mex.c'])
else
error(['When using the USE_DLL option, you must give either ' ...
'''cygwin'' or ''msvc'' option to the ''dynare'' command'])
end
```
https://git.dynare.org/Dynare/dynare/-/issues/959Clean up http://www.dynare.org/events2019-06-19T15:37:58ZJohannes PfeiferClean up http://www.dynare.org/eventsThe current ordering is a mess.
The current ordering is a mess.
https://git.dynare.org/Dynare/dynare/-/issues/953create new class VerbatimStatement2019-06-19T15:37:58ZHoutan Bastanicreate new class VerbatimStatementCurrently, lines in the `verbatim` block are stored as `NativeStatement` objects. This was ok before we decided to replace dates in the preprocessor (e.g. `9q1` with `dates('9q1)`). These dates should be replaced in native statements but...Currently, lines in the `verbatim` block are stored as `NativeStatement` objects. This was ok before we decided to replace dates in the preprocessor (e.g. `9q1` with `dates('9q1)`). These dates should be replaced in native statements but not in verbatim statements, hence the new class.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/948Potentially add interface to set parameter bounds for osr.2019-06-19T15:37:58ZJohannes PfeiferPotentially add interface to set parameter bounds for osr.In principle, there is everything in place to use constrained optimizers with osr. An example on how to use this with a user-defined optimizer wrapper is at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6835
However, we do not provide...In principle, there is everything in place to use constrained optimizers with osr. An example on how to use this with a user-defined optimizer wrapper is at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6835
However, we do not provide an interface to set such bounds. We should discuss if we should leave it at that (more work for users) or whether we provide functionality to automatically set the bounds (including their correct ordering in the parameter vector).
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/946Add new preprocessor option minimal_workspace2019-06-19T15:37:58ZJohannes PfeiferAdd new preprocessor option minimal_workspaceMatlab has a limit on the number of variables allowed in the workspace. To prevent problems with this limit, introduce new preprocessor option `minimal_workspace` that when used, suppresses writing the parameters to a variable with their...Matlab has a limit on the number of variables allowed in the workspace. To prevent problems with this limit, introduce new preprocessor option `minimal_workspace` that when used, suppresses writing the parameters to a variable with their name in the workspace. That is, instead of
```
M_.params( 1 ) = 0.999;
beta = M_.params( 1 );
```
only write
`M_.params( 1 ) = 0.999;`
Also set `options_.minimal_workspace` to 1 (default: 0) so that we can suppress the call to `dyn2vec` in stoch_simul to prevent duplicating simulated variables in the workspace. See the email of Stéphane from 26/05/15
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/943Update manual on ordering of variables coming from smoother2019-06-19T15:37:58ZJohannes PfeiferUpdate manual on ordering of variables coming from smootherSee http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6020. Needs to be done after #804
See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6020. Needs to be done after #804
4.5https://git.dynare.org/Dynare/dynare/-/issues/945Fix bug in identification when estimating only standard deviations2019-06-19T15:37:58ZJohannes PfeiferFix bug in identification when estimating only standard deviationsSee email from 05/23/15.
See email from 05/23/15.
4.5https://git.dynare.org/Dynare/dynare/-/issues/944Fix description of Ramsey timeless perspective in manual2019-06-19T15:37:58ZJohannes PfeiferFix description of Ramsey timeless perspective in manualMichel writes:
```
I don't agree with the part on timeless perspective. Setting the initial
multiplier to its steady state value is not timeless
perspective. "Setting the initial Lagrange multipliers as if optimal
policy was started a ...Michel writes:
```
I don't agree with the part on timeless perspective. Setting the initial
multiplier to its steady state value is not timeless
perspective. "Setting the initial Lagrange multipliers as if optimal
policy was started a long time ago" would take into consideration the
value of the initial state variables.
```
4.5https://git.dynare.org/Dynare/dynare/-/issues/940Add interface for TaRB algorithm2019-06-19T15:37:58ZJohannes PfeiferAdd interface for TaRB algorithmIn `estimation` we would need the following options:
1. `use_TaRB` which translates to `options_.TaRB.use_TaRB=1`;
2. `TaRB_mode_compute=integer` resembling `mode_compute` and translating into `options_.TaRB.mode_compute=4`
3. `TaRB_new_...In `estimation` we would need the following options:
1. `use_TaRB` which translates to `options_.TaRB.use_TaRB=1`;
2. `TaRB_mode_compute=integer` resembling `mode_compute` and translating into `options_.TaRB.mode_compute=4`
3. `TaRB_new_block_probability=double` translating into `options_.TaRB.new_block_probability` and checking whether it is between 0 and 1.
4. `TaRB_optim` resembling `optim` and translating into `options_.TaRB.optim_opt`
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/934Clarify notation of MS-SBVAR2019-06-19T15:37:58ZJohannes PfeiferClarify notation of MS-SBVARSection 4.18 of the manual refers to variables limke A^0, A^+ or Q. But they seem to come from a different paper than the cited Sims/Waggoner/Zha (2008). My guess is Sims/Zha (1998). See also
http://www.dynare.org/phpBB3/viewtopic.php?f...Section 4.18 of the manual refers to variables limke A^0, A^+ or Q. But they seem to come from a different paper than the cited Sims/Waggoner/Zha (2008). My guess is Sims/Zha (1998). See also
http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6801&p=19671#p19671
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/925Add preprocessor interface for selecting proposal density2019-06-19T15:37:58ZJohannes PfeiferAdd preprocessor interface for selecting proposal densityIn the MCMC, we seem to have everything in place for using a student t-distribution as the proposal density, but we have no interface.
Modify the estimation command to accept the following new options:
- proposal_distribution, which tak...In the MCMC, we seem to have everything in place for using a student t-distribution as the proposal density, but we have no interface.
Modify the estimation command to accept the following new options:
- proposal_distribution, which takes two arguments: `rand_multivariate_normal` (default) or `rand_multivariate_student` and maps to `options_.proposal_distribution`
- `student_degrees_of_freedom`, which accepts an integer argument and maps to `options_.student_degrees_of_freedom`
These options already exist in `global_initialization.m`.
After doing this, we need to convert `tests/estimation/t_proposal/fs2000_student.mod` to use this interface.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/924Add preprocessor interface and documentation for dr_display_tol and huge_number2019-06-19T15:37:58ZJohannes PfeiferAdd preprocessor interface and documentation for dr_display_tol and huge_numberSee #906 and 6d0dfc2d3fe302333204bac446458b1dd3b62b49
See #906 and 6d0dfc2d3fe302333204bac446458b1dd3b62b49
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/917Add indicator for successful run of MCMC to mh_history_2019-06-19T15:37:58ZJohannes PfeiferAdd indicator for successful run of MCMC to mh_history_Currently, at the beginning of the MCMC we use `metropolis_hastings_initialization` to write a new `mh_history`file. But we never confirm that this run was successful. When using the `load_mh_file` this leads to cryptic crashes. I would ...Currently, at the beginning of the MCMC we use `metropolis_hastings_initialization` to write a new `mh_history`file. But we never confirm that this run was successful. When using the `load_mh_file` this leads to cryptic crashes. I would propose to add an indicator for a non-crashed run to the history file and check this indicator when `load_mh_file` is requested. If the indicator shows a non-successful run, we should recommend either using the `mh_recover` option or to delete the most recent history file to make Dynare try to access the previous, hopefully successful run.
https://git.dynare.org/Dynare/dynare/-/issues/916Investigate preprocessor crash with external function in model-local variable2019-06-19T15:37:58ZJohannes PfeiferInvestigate preprocessor crash with external function in model-local variableSee `use_local_variable_for_beta.mod` at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6772
See `use_local_variable_for_beta.mod` at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6772
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/914place oo_.exo_simul in the same format as oo_.endo_simul2019-06-19T15:37:58ZHoutan Bastaniplace oo_.exo_simul in the same format as oo_.endo_simulSee #546, #806, #875,
See #546, #806, #875,
4.5https://git.dynare.org/Dynare/dynare/-/issues/912Fix bug for mh_recover that prevents using mh-files already created2019-06-19T15:37:58ZJohannes PfeiferFix bug for mh_recover that prevents using mh-files already createdThere seems to be a bug hidden in `metropolis_hastings_initialization.m` when using `mh_recover`.
We have at the end
```
NumberOfSavedMhFiles = NumberOfSavedMhFilesInTheCrashedBlck+LastFileNumberInThePreviousMh;
if NumberOfSaved...There seems to be a bug hidden in `metropolis_hastings_initialization.m` when using `mh_recover`.
We have at the end
```
NumberOfSavedMhFiles = NumberOfSavedMhFilesInTheCrashedBlck+LastFileNumberInThePreviousMh;
if NumberOfSavedMhFiles
load([BaseName '_mh' int2str(NumberOfSavedMhFiles) '_blck' int2str(fblck) '.mat']);
ilogpo2(fblck) = logpo2(end);
ix2(fblck,:) = x2(end,:);
end
```
That means that the starting values for the chain are taken from the last mh-file on the disk. In the unit test at #911 , there are 4 in the current block and the crash happened after file number 3 (as the fourth file is deleted). In this case, we start the MCMC with the last draw in mh-file number 3. But we do not set `Fline`, `nruns`, and `NewFile` to account for the presence of three quarters of the MCMC. Instead, we run the full chain again, but starting at the endpoint of the last crashed chain.
Moreover, I think we are not accounting for the state of the random number generator when using mh_recover. My proposal is to save the last seed of each mh-file in `record` (instead of always only keeping the very last one for use in `load_mh_file`, saved to `record.LastSeeds` in `random_walk_metropolis_hastings_core`). We could then continue after the respective last mh-file on the disk at this state by changing `record.InitialSeeds(curr_block)` together with `Fline`, `nruns`, and `NewFile` in `metropolis_hastings_initialization.m`
4.5MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/910Allow specifying output directory for estimation2019-06-19T15:37:58ZJohannes PfeiferAllow specifying output directory for estimation`dynare_estimation.m` takes as an input `dname`, but as far as I can see, there is no way to set this. `ComputingTasks.cc` in line 482 only writes `var_list_` as an argument.
`dynare_estimation.m` takes as an input `dname`, but as far as I can see, there is no way to set this. `ComputingTasks.cc` in line 482 only writes `var_list_` as an argument.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/894An option (noprint?) should be available to disable output of solvers2019-06-19T15:38:00ZTom HoldenAn option (noprint?) should be available to disable output of solversIf I'm not misremembering, prior versions of dynare used to allow you to pass custom options to solvers.
While complete flexibility in solver options is probably unnecessary, it would be good if there was an option to disable output fro...If I'm not misremembering, prior versions of dynare used to allow you to pass custom options to solvers.
While complete flexibility in solver options is probably unnecessary, it would be good if there was an option to disable output from solvers (e.g., to set 'display', 'off' in the fsolve optimset call). Otherwise, when optimising the parameters of a model in a loop over resol (e.g. in a partially global solution procedure), the screen is so full of junk that you cannot track the progress of the outer optimisation.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/892Clean up use of dyntable2019-06-19T15:38:00ZJohannes PfeiferClean up use of dyntableThe function `dyntable` takes as arguments the width of the label and value columns, but internally overrides them so that they are not used. We should either enable that functionality again or completely get rid of it.
The function `dyntable` takes as arguments the width of the label and value columns, but internally overrides them so that they are not used. We should either enable that functionality again or completely get rid of it.
https://git.dynare.org/Dynare/dynare/-/issues/888Remove redundant optimization related mod files from testsuite.2019-06-19T15:38:00ZStéphane Adjemianstepan@adjemian.euRemove redundant optimization related mod files from testsuite.All the tests for optimizers should be in `tests/optimizers` (introduced in merged PR #873).
All the tests for optimizers should be in `tests/optimizers` (introduced in merged PR #873).
https://git.dynare.org/Dynare/dynare/-/issues/887Document new optimizers...2019-06-19T15:38:00ZStéphane Adjemianstepan@adjemian.euDocument new optimizers...... And fix license.txt. See #873.
... And fix license.txt. See #873.
4.5https://git.dynare.org/Dynare/dynare/-/issues/885move creation of M_ to a separate file2019-06-19T15:38:00ZHoutan Bastanimove creation of M_ to a separate file4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/881Fix bug with tests/gsa/ls2003a.mod2019-06-19T15:38:00ZStéphane Adjemianstepan@adjemian.euFix bug with tests/gsa/ls2003a.modwhich causes a segmentation fault. See discussion in #880 and commit a7f0366980540d668a4b54bb8517798e1ae4deac.
which causes a segmentation fault. See discussion in #880 and commit a7f0366980540d668a4b54bb8517798e1ae4deac.
Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/879update doc for markov_switching2019-06-19T15:38:00ZHoutan Bastaniupdate doc for markov_switching`number_of_states` should be `number_of_regimes`
The `restrictions`, `number_of_lags`, and `parameters` options have not been documented
`number_of_states` should be `number_of_regimes`
The `restrictions`, `number_of_lags`, and `parameters` options have not been documented
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/875Fix extended path with varexo_det2019-06-19T15:38:00ZJohannes PfeiferFix extended path with varexo_detAs noted in #806 `oo_.exo_simul` is `periods` by `exo_nbr` while `endo_simul` has periods as the second dimension. This seems to be a problem for e.g. `extended_path`. See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6675
As noted in #806 `oo_.exo_simul` is `periods` by `exo_nbr` while `endo_simul` has periods as the second dimension. This seems to be a problem for e.g. `extended_path`. See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6675
4.5MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/874Update license file2019-06-19T15:38:00ZJohannes PfeiferUpdate license fileWe have massively changed the folder structure, but these changes are not reflected in the license file yet.
We have massively changed the folder structure, but these changes are not reflected in the license file yet.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/870allow the possibility to change the font size of the series in a table2019-06-19T15:38:00ZHoutan Bastaniallow the possibility to change the font size of the series in a table4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/869make sure tables in landscape mode expand to take up all the space possible2019-06-19T15:38:00ZHoutan Bastanimake sure tables in landscape mode expand to take up all the space possible4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/868problem running modfile in octave from draw_prior_density.m2019-06-19T15:38:00ZHoutan Bastaniproblem running modfile in octave from draw_prior_density.mhttp://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6627
http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6627
4.5https://git.dynare.org/Dynare/dynare/-/issues/867add fan charts to reporting2019-06-19T15:38:00ZHoutan Bastaniadd fan charts to reportingpass 3 series to the plot command
pass 3 series to the plot command
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/862support 32bit and 64bit preprocessors2019-06-19T15:38:00ZHoutan Bastanisupport 32bit and 64bit preprocessors- if a 64 bit preprocessor is created, rename it to `dynare_m64` (32 bit remains `dynare_m`)
- depending on whether the host OS is 32 or 64 bit, call the appropriate preprocessor from the matlab code
- if a 64 bit preprocessor is created, rename it to `dynare_m64` (32 bit remains `dynare_m`)
- depending on whether the host OS is 32 or 64 bit, call the appropriate preprocessor from the matlab code
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/860Account for loglinear option with lagged/leaded exogenous variables2019-06-19T15:38:00ZJohannes PfeiferAccount for loglinear option with lagged/leaded exogenous variablesThe problem is that e.g. news shocks are incompatible with the `loglinear` option. The reason is that they require auxiliary variables with mean 0 so that taking the log of them is not possible. The easiest way to deal with this is proba...The problem is that e.g. news shocks are incompatible with the `loglinear` option. The reason is that they require auxiliary variables with mean 0 so that taking the log of them is not possible. The easiest way to deal with this is probably state this explicitly in the manual and let the preprocessor throw out an error when `loglinear` is used and there there is a substitution of exogenous lags.
MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/857Investigate problem in .mod file2019-06-19T15:38:00ZHoutan BastaniInvestigate problem in .mod filehttp://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6577
14 endos in .mod file but preprocessor sees 15
http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6577
14 endos in .mod file but preprocessor sees 15
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/855preprocessor and matlab command lines2019-06-19T15:38:00ZMarco Rattopreprocessor and matlab command linesI was trying to do tests on the current status of HEAD, but I am getting an error from the preprocessor, that does no longer allow to call matlab functions with multiple output arguments, like
`[out1, out2, out3] = function_name(bla1, b...I was trying to do tests on the current status of HEAD, but I am getting an error from the preprocessor, that does no longer allow to call matlab functions with multiple output arguments, like
`[out1, out2, out3] = function_name(bla1, bla2);`
the preprocessor complains with the following message
`ERROR: gemc.dyn: line 1686, col 15: syntax error, unexpected '[', expecting '.'`
is there a new way to properly call matlab functions, or this is a bug or a desired behavior of the pre-processor?
the call to matlab is outside of any model or other block.
thank you for your help
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/848macroprocessor: add possibility to evaluate expression in @#include2019-06-19T15:38:00ZHoutan Bastanimacroprocessor: add possibility to evaluate expression in @#includeCurrently, `@#include` expects a quoted string. Allow the user to also pass a macro expression or at least a macro value to the `@#include` expression.
Motivated by the following forum question:
http://www.dynare.org/phpBB3/viewtopic.ph...Currently, `@#include` expects a quoted string. Allow the user to also pass a macro expression or at least a macro value to the `@#include` expression.
Motivated by the following forum question:
http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6532&p=18600
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/849Make use_calibration option compatible with ML2019-06-19T15:38:00ZJohannes PfeiferMake use_calibration option compatible with MLML currently requires to specify explicit starting values inside of the `estimated_params` block, rendering the `estimated_params_init` block useless.
ML currently requires to specify explicit starting values inside of the `estimated_params` block, rendering the `estimated_params_init` block useless.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/847Add option to print calibrated values in latex reports2019-06-19T15:38:00ZHoutan BastaniAdd option to print calibrated values in latex reportsfor use in `write_latex_*_model` commands
for use in `write_latex_*_model` commands
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/844Make sure order=3 implies k_order_solver in the preprocessor2019-06-19T15:38:01ZJohannes PfeiferMake sure order=3 implies k_order_solver in the preprocessorCurrently, we set `k_order_solver = 1` if `order=3` within two functions: `stoch_simul` and `simult_`. This approach is prone to problems. `stoch_simul` will not pass `k_order_solver = 1` to the `options`-structure, because it is local t...Currently, we set `k_order_solver = 1` if `order=3` within two functions: `stoch_simul` and `simult_`. This approach is prone to problems. `stoch_simul` will not pass `k_order_solver = 1` to the `options`-structure, because it is local to the function. When a user tries to directly call `resol`, this will thus fail, see http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6432
We should take this out of specialized functions and use the preprocessor to set `k_order_solver = 1` whenever `order=3`. This would assure the option is always correctly set.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/843Check why name GF is suddenly blocked in preprocessor2019-06-19T15:38:01ZJohannes PfeiferCheck why name GF is suddenly blocked in preprocessorThe mod-file
```
////////////////////////////////////////////////////////////////////////////////////
////// Deregulation at the Cost of Shadow Work /////////////////////////////////////
////// Deterministic simulation file with es...The mod-file
```
////////////////////////////////////////////////////////////////////////////////////
////// Deregulation at the Cost of Shadow Work /////////////////////////////////////
////// Deterministic simulation file with estimated parameters, South Africa ///////
////// R. Anand, P. Khera, Z. Munkacsi, M. Saxegaard ///////////////////////////////
////// IMF, Jan 2015 ///////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
```
For some reason, it thinks GF is a reserved name/token. It works in 4.4.3.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/841Investigate crash in bytecode due to incompatible dimensions of jacobia_2019-06-19T15:38:02ZJohannes PfeiferInvestigate crash in bytecode due to incompatible dimensions of jacobia_See Email from 22.01.2015
The problem is due to some exogenous (e7, e8) being declared but not used in the model. Removing them solves the issue.
See Email from 22.01.2015
The problem is due to some exogenous (e7, e8) being declared but not used in the model. Removing them solves the issue.
4.5MichelJuillardHoutan BastaniMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/838fix parallel on os x2019-06-19T15:38:02ZHoutan Bastanifix parallel on os xSee: http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6373
respond there when fixed
See: http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6373
respond there when fixed
4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/834Build a test suite for large scale models.2019-06-19T15:38:02ZStéphane Adjemianstepan@adjemian.euBuild a test suite for large scale models.The test suite should check the accuracy of the results and provide timings (for different algorithms). It would be nice if we could do that in a travis-ci like environment (with [jenkins](http://jenkins-ci.org) and [docker](https://www....The test suite should check the accuracy of the results and provide timings (for different algorithms). It would be nice if we could do that in a travis-ci like environment (with [jenkins](http://jenkins-ci.org) and [docker](https://www.docker.com)).
- [ ] Eagle
- [ ] Gpm
- [ ] Gimf
- [ ] FSGM
Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/833Reporting: write the generated reports (tables and plots) in csv and xls files.2019-06-19T15:38:02ZStéphane Adjemianstepan@adjemian.euReporting: write the generated reports (tables and plots) in csv and xls files.@houtanb, if this is already implemented please close this issue (looking at the manual this is not very clear for me).
@houtanb, if this is already implemented please close this issue (looking at the manual this is not very clear for me).
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/828Investigate why mod-file using k_order_pert crashes Matlab2019-11-21T08:36:43ZJohannes PfeiferInvestigate why mod-file using k_order_pert crashes MatlabThe following mod-file crashes Matlab on different Windows and Dynare versions (http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6306):
```
%------------------------------------------------------------------------------------------%
% ...The following mod-file crashes Matlab on different Windows and Dynare versions (http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6306):
```
%------------------------------------------------------------------------------------------%
% VARIABLES ENDO %
%------------------------------------------------------------------------------------------%
var y c i L k khat u betateta q teta w Rk Qtilde Omega pi pireset X1 X2 mc v r rr Spr A ;
%------------------------------------------------------------------------------------------%
% VARIABLES EXO %
%------------------------------------------------------------------------------------------%
varexo
eteta % disaster probability shock
er % monetary policy shock
;
%------------------------------------------------------------------------------------------%
% PARAMETERS %
%------------------------------------------------------------------------------------------%
parameters muz, beta0, delta0, zeta, upsilon, sigxi, muxi, gamma, psi, psitilde, chi, alpha, varpi, tau,
rhor, rhoteta, phipi, phiy, sigr, sigteta, sigz, eta, yss, rss, iss, kss, piss, tetass, uss, betatetass, bk;
muz = 0.005;
delta0 = 0.02;
zeta = 0.8;
upsilon = 6;
sigxi = 0.092;
muxi = -0.007;
gamma = 3.8;
alpha = 0.33;
tau = 1.7;
rhor =0.85;
rhoteta =0.85;
phipi = 1.5;
phiy = 0.5;
sigr = 0.01;
sigteta = 0.01;
sigz = 0;
psitilde = 0.5;
bk = 0.43;
piss = 1.005;
tetass = 0.0072;
uss = 1;
qss = 1;
varpi = 2.33;
psi=1-((1-psitilde)/(1+varpi));
chi = 1- (1-gamma)/(1-psi);
beta0 = 0.999;
betatetass = beta0 * ((1 - tetass + tetass * exp((1-gamma)*log(1-bk)))^(1/(1-chi)));
%------------------------------------------------------------------------------------------%
% STEADY STATE PARAMETERS %
%------------------------------------------------------------------------------------------%
Qtildess=betatetass*exp((1-psi)*muz);
rss=exp(muz)*(piss)/Qtildess;
eta=(exp(muz)/(Qtildess*(1-tetass*bk))-1)*1/delta0 +1;
rkss=delta0*eta;
piresetss=(((piss)^(1-upsilon)-zeta)/(1-zeta))^(1/(1-upsilon));
Ass=exp(-muz)*(1 - tetass + tetass/(1-bk));
mcss=((upsilon-1)/upsilon)*(1/(piss))*((1-(zeta*Ass*Qtildess*(piss)^upsilon))/(1-(zeta*Ass*Qtildess*(piss)^(upsilon-1))))*(piresetss);
klss=(mcss*alpha/rkss)^(1/(1-alpha));
wss=mcss*(1-alpha)*(klss)^alpha;
omegass=((1-zeta)*(piresetss)^(-upsilon)*(piss)^upsilon)/(1-zeta*(piss)^upsilon);
clss=(1/omegass)*(klss)^alpha - klss*(exp(muz)/(1-tetass*bk)-1+delta0);
lss=1/(1+(varpi/wss)*clss);
kss=klss*lss;
khatss=kss;
css=clss*lss;
ylss=clss+klss*(exp(muz)/(1-tetass*bk)-1+delta0);
yss=ylss*lss;
iss=yss-css;
X1ss=yss*mcss/(1-zeta*Ass*Qtildess*(piss)^upsilon);
X2ss=yss/(1-zeta*Ass*Qtildess*(piss)^(upsilon-1));
vss=(css*(1-lss)^varpi)^(1-psi) /(1-betatetass*exp(muz*(1-psi)));
rrss = rss/piss;
sprss = rkss/rrss;
%------------------------------------------------------------------------------------------%
% MODEL %
%------------------------------------------------------------------------------------------%
model;
// exogenous variables
log(teta)=(1-rhoteta)*log(tetass)+ rhoteta*log(teta(-1))+ sigteta*eteta;
// Households
(1-L)/c = varpi / w;
pi(+1)/r*exp(muz+sigz) = Qtilde;
Qtilde = (c(+1)/c)^(-psi) * ((1-L(+1))/(1-L))^(varpi*(1-psi)) * betateta * exp((1-psi)*muz)* (exp((1-gamma)*sigz)*v(+1)^(-chi))/(exp((1-gamma)*sigz)*v(+1)^(1-chi))^(-chi/(1-chi));
(1-teta*bk)* (Qtilde*Rk(+1)*(u(+1) + 1/(delta0*eta*u(+1)^(eta-1)) * (1-delta0 * u(+1)^eta +tau*i(+1)/k * (i(+1)/k - iss/kss) - tau/2* (i(+1)/k - iss/kss)^2))) = Rk /(delta0*eta*u^(eta-1)) * exp(muz+sigz);
delta0*eta*u^(eta-1)/Rk = 1-tau*(i/k(-1) - iss/kss);
v = (c * (1-L)^varpi)^(1-psi) + betateta * exp((1-psi)*muz) * (exp((1-psi)*(1-chi)*sigz) * v(+1)^(1-chi))^(1/(1-chi));
k = (1-teta*bk)*(((1-delta0*u^eta) * k(-1) + (i/k(-1) - tau/2*((i/k(-1) - iss/kss)^2))*k(-1)))/(exp(muz+sigz));
q = 1/(1-tau*(i/k(-1) - iss/kss));
betateta = beta0 * ((1 - teta + teta * exp((1-gamma)*log(1-bk)))^(1/(1-chi)));
// Firms
y = khat^alpha * L^(1-alpha) / Omega;
w = mc * (1 - alpha) * (khat/L)^alpha;
Rk = mc * alpha * (khat/L)^(alpha-1);
khat = u*k(-1);
// price setting
A = exp(-muz) * (1 - teta + teta/(1-bk)) * exp(-sigz);
pireset = pi*upsilon/(upsilon-1)*X1/X2;
X1 = y*mc + zeta*A*Qtilde*X1(+1)*pi(+1)^upsilon;
X2 = y + zeta*A*Qtilde*X2(+1)*pi(+1)^(upsilon-1);
Omega = (1-zeta)*pireset^(-upsilon)*pi^upsilon + zeta*pi^upsilon*Omega(-1);
pi^(1-upsilon) = (1-zeta)*pireset^(1-upsilon) + zeta;
//Spreads
rr = r/pi;
Spr = Rk/rr;
// markets
y = c + i;
// Monetary policy
r= rhor*r(-1) + (1-rhor)*( phipi*(pi-piss) + phiy*(y-yss) + rss ) + sigr*er;
end;
%------------------------------------------------------------------------------------------%
% STEADY STATE INITIAL VALUES %
%------------------------------------------------------------------------------------------%
initval;
y = yss;
c = css;
i = iss;
A = Ass;
L = lss;
u = uss;
k = kss;
khat = khatss;
Omega = omegass;
pi = piss;
pireset = piresetss;
X1 = X1ss;
X2 = X2ss;
mc = mcss;
w = wss;
Rk = rkss;
teta = tetass;
r = rss;
q = qss;
Qtilde = Qtildess;
betateta = betatetass;
v = vss;
rr = rrss;
Spr = sprss;
end;
shocks;
var eteta = sigteta^2;
var er = sigr^2;
end;
resid(1);
check;
steady;
stoch_simul(order=3,k_order_solver, IRF=20) ;
```
MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/820Clean up setting of bayestopt_.mf* in dynare_estimation_init2019-06-19T15:38:02ZJohannes PfeiferClean up setting of bayestopt_.mf* in dynare_estimation_initThe setting of fields like `bayestopt_.mf0` is present twice and seems partially recursive. This is confusing and error-prone. We should make sure there are not redundant definitions.
The setting of fields like `bayestopt_.mf0` is present twice and seems partially recursive. This is confusing and error-prone. We should make sure there are not redundant definitions.
4.5MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/823Clear up unused or stale files2019-06-19T15:38:02ZJohannes PfeiferClear up unused or stale files1. In Master we have a function `PosteriorFilterSmootherAndForecast.m` that seems not be called by any other function. Can it be deleted?
2. In Master, we have both `rndprior.m`, used only in `forcst_unc`, and `prior_draw.m` to draw fr...1. In Master we have a function `PosteriorFilterSmootherAndForecast.m` that seems not be called by any other function. Can it be deleted?
2. In Master, we have both `rndprior.m`, used only in `forcst_unc`, and `prior_draw.m` to draw from the prior. I would suggest to switch to the latter and delete the first one, because `rndprior.m` does not check for violation of prior bounds.
3. The `forcst_unc.m` also does not seem to be used. Can it be deleted?
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/822Investigate MS-SBVAR bug2019-06-19T15:38:02ZHoutan BastaniInvestigate MS-SBVAR bugEmail from Stéphane Lhuissier 10 Dec 3:32PM
Email from Stéphane Lhuissier 10 Dec 3:32PM
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/821Add flag if lyapunov_symm fails2019-11-21T08:36:45ZJohannes PfeiferAdd flag if lyapunov_symm failsIn models like the one at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6291
`lyapunov_symm` fails to solve the Lyapunov equation and outputs NaN. This error is not flagged and no exception thrown out, leading to subsequent crashes. W...In models like the one at http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6291
`lyapunov_symm` fails to solve the Lyapunov equation and outputs NaN. This error is not flagged and no exception thrown out, leading to subsequent crashes. We should add a check whether the solver was successful and only continue if so.
https://git.dynare.org/Dynare/dynare/-/issues/814Decide upon what to do stale mode_compute options2019-06-19T15:38:02ZJohannes PfeiferDecide upon what to do stale mode_compute optionsIn the process of factorizing the optimization calls (see #800), we should clean up. Currently, `mode_compute==2,101,102` are broken/not supported anymore. 2 and 102 are non-existing simulated annealings. I would propose to drop 102 and ...In the process of factorizing the optimization calls (see #800), we should clean up. Currently, `mode_compute==2,101,102` are broken/not supported anymore. 2 and 102 are non-existing simulated annealings. I would propose to drop 102 and replace 2 by Matlab's
`simulannealbnd` from the Global Optimization Toolbox. That way we would have at least one simulated annealing available.
I have no clue why we have the undocumented 101 which is `solveopt` and would suggest to drop it.
https://git.dynare.org/Dynare/dynare/-/issues/812Potentially make oo_recursive_ accessible by default.2019-06-19T15:38:02ZJohannes PfeiferPotentially make oo_recursive_ accessible by default.See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6274
See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6274
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/811move reporting code to a different repository and include it as a submodule2019-06-19T15:38:02ZHoutan Bastanimove reporting code to a different repository and include it as a submoduleEmails on Nov 29, 2014
Emails on Nov 29, 2014
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/810investigate legend placement options2019-06-19T15:38:02ZHoutan Bastaniinvestigate legend placement optionsCan they be automatically placed?
Can they be placed in the middle of the plot?
Can they be automatically placed?
Can they be placed in the middle of the plot?
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/809allow timeseries to be represented as bar graphs2019-06-19T15:38:02ZHoutan Bastaniallow timeseries to be represented as bar graphs4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/806Harmonize initval-file loading and update documentation2019-06-19T15:38:02ZJohannes PfeiferHarmonize initval-file loading and update documentation`oo_.exo_simul` is `periods` by `exo_nbr`, i.e. a collection of column vectors. In contrast, `oo_.endo_simul` is `endo_nbr` by `periods`, i.e. a collection of row vectors. This is confusing and leads to problems with initval-files where ...`oo_.exo_simul` is `periods` by `exo_nbr`, i.e. a collection of column vectors. In contrast, `oo_.endo_simul` is `endo_nbr` by `periods`, i.e. a collection of row vectors. This is confusing and leads to problems with initval-files where this needs to be taken into account. See
http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6261.
This should be harmonized in 4.5.
Moreover, in `initvalf` we should simply transpose non-conforming vectors to be more flexibe.
4.5https://git.dynare.org/Dynare/dynare/-/issues/805Update Homebrew-science script to allow build from HEAD2019-06-19T15:38:02ZHoutan BastaniUpdate Homebrew-science script to allow build from HEADHoutan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/804Factorize saving of smoother results used in dynare_estimation_1 and evaluate...2019-06-19T15:38:02ZJohannes PfeiferFactorize saving of smoother results used in dynare_estimation_1 and evaluate_smootherIn `dynare_estimation_1` both the calibrated smoother and ML/MCMC without replications write the smoother results to oo_. The same holds true for `evaluate_smoother.m`. I would propose to outsource this code to a separate function that i...In `dynare_estimation_1` both the calibrated smoother and ML/MCMC without replications write the smoother results to oo_. The same holds true for `evaluate_smoother.m`. I would propose to outsource this code to a separate function that is easier to maintain (in particular when working on #679). This would also make sure that the saving is consistent. Currently, I don't think the calibrated smoother saves all necessary fields.
If agreed upon, I would volunteer to do this.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/803Be more flexible with calib_smoother command2019-06-19T15:38:02ZJohannes PfeiferBe more flexible with calib_smoother commandCurrently, we do not allow `prefilter`, `loglinear`, and `first_obs`. I think they are all valid options that can be easily handled within the current framework. The first step would be to add the preprocessor interface allowing these op...Currently, we do not allow `prefilter`, `loglinear`, and `first_obs`. I think they are all valid options that can be easily handled within the current framework. The first step would be to add the preprocessor interface allowing these options.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/801add option to build from head in dynare.rb in homebrew-science depo2019-06-19T15:38:03ZHoutan Bastaniadd option to build from head in dynare.rb in homebrew-science depoHoutan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/774Formatting issue with impulse response charts after running sbvar( ... )2019-06-19T15:38:03ZStéphane Adjemianstepan@adjemian.euFormatting issue with impulse response charts after running sbvar( ... )*Created by: RolandMeeks*
Tick marks and labels do not appear on the M_.endo_nbr by M_.endo_nbr grid of impulse-response functions that are produced by a call to sbvar( ... ).
*Created by: RolandMeeks*
Tick marks and labels do not appear on the M_.endo_nbr by M_.endo_nbr grid of impulse-response functions that are produced by a call to sbvar( ... ).
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/796corrcoef in octave2019-06-19T15:38:03ZMarco Rattocorrcoef in octaveAfter my latest commit, gsa crashes with octave. It turns out that the `corrcoef` function in octave is different from natlab, in that no second output argument is given (the pvalue of the corr-coef).
Now, there is a forge package for oc...After my latest commit, gsa crashes with octave. It turns out that the `corrcoef` function in octave is different from natlab, in that no second output argument is given (the pvalue of the corr-coef).
Now, there is a forge package for octave
http://octave.sourceforge.net/nan/function/corrcoef.html
that contains such an extended corrcoef for octave. Could we include that function is we are using octave?
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/792test fs2000_corr_me fails in 4.42019-06-19T15:38:03ZMichelJuillardtest fs2000_corr_me fails in 4.4options_.varobs is a character matrix in 4.4, not a cellarray
In addition there is a problem of dimension for some object
options_.varobs is a character matrix in 4.4, not a cellarray
In addition there is a problem of dimension for some object
Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/789update default values for sensitivity options in doc2019-06-19T15:38:04ZHoutan Bastaniupdate default values for sensitivity options in docIt seems as though some default values in the documentation do not accord with the default values in `dynare_sensitivity.m`. e.g. `alpha_rmse`, `ksstat_redform`. Please review the defaults and update the manual.
It seems as though some default values in the documentation do not accord with the default values in `dynare_sensitivity.m`. e.g. `alpha_rmse`, `ksstat_redform`. Please review the defaults and update the manual.
Johannes PfeiferMarco RattoJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/781deal with dseries in dynare_identification.m2019-06-19T15:38:04ZHoutan Bastanideal with dseries in dynare_identification.mThe following test files break under Octave:
- `identification/kim/kim2.mod`
- `identification/as2007/as2007.mod`
The problem is at line 134 in dynare_identification.m as `info` is not a method in the `dseries` called `dataset_`. Fix pr...The following test files break under Octave:
- `identification/kim/kim2.mod`
- `identification/as2007/as2007.mod`
The problem is at line 134 in dynare_identification.m as `info` is not a method in the `dseries` called `dataset_`. Fix probably consists of replacing `dataset_.info` with `dataset_info`, but @rattoma should verify this change.....
4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/784document nodecomposition option to estimation and stoch_simul2019-06-19T15:38:04ZHoutan Bastanidocument nodecomposition option to estimation and stoch_simuloption introduced in #702
option introduced in #702
4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/779add option opt_algo to osr2019-06-19T15:38:04ZHoutan Bastaniadd option opt_algo to osrIt generally allows integer inputs for a case distinction and also takes a “function_name” string for user-provided files.
It generally allows integer inputs for a case distinction and also takes a “function_name” string for user-provided files.
4.5Johannes PfeiferJohannes Pfeiferhttps://git.dynare.org/Dynare/dynare/-/issues/780Deal with options_.nobs and options_.first_obs in master2019-11-21T08:36:46ZJohannes PfeiferDeal with options_.nobs and options_.first_obs in masterWith the new data interface, these fields are not always set, leading to crashes in different places. For example, recursive forecasting still relies on those fields. See also afb5be206741457a9b6383fa004bb3f208ed5d94
We need to decide o...With the new data interface, these fields are not always set, leading to crashes in different places. For example, recursive forecasting still relies on those fields. See also afb5be206741457a9b6383fa004bb3f208ed5d94
We need to decide on how to treat them. Are these field properties of the dataset to be moved into `dataset_`? Or are they to be used as options in other commands?
Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/766Deal with correlations in identification2019-06-19T15:38:04ZJohannes PfeiferDeal with correlations in identificationCurrently, `identification` does not support specified correlations and simply crashes. We should either support this or block it. See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6156
Currently, `identification` does not support specified correlations and simply crashes. We should either support this or block it. See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6156
4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/764Fix initialization of variables in dynare_sensitivity routine2019-06-19T15:38:04ZJohannes PfeiferFix initialization of variables in dynare_sensitivity routineSome of the variables are not properly initialized, grow within loops, and/or are not set in all cases. The `ls2003a.mod` from the tests-folder crashes with `prior_range=1` for example crashes because of this when no standard deviations ...Some of the variables are not properly initialized, grow within loops, and/or are not set in all cases. The `ls2003a.mod` from the tests-folder crashes with `prior_range=1` for example crashes because of this when no standard deviations are estimated, i.e. when using
```
estimated_params;
psi1 , gamma_pdf,1.5,0.5;
psi2 , gamma_pdf,0.25,0.125;
psi3 , gamma_pdf,0.25,0.125;
rho_R ,beta_pdf,0.5,0.2;
alpha ,beta_pdf,0.3,0.1;
rr ,gamma_pdf,2.5,1;
k , gamma_pdf,0.5,0.25;
tau ,gamma_pdf,0.5,0.2;
rho_q ,beta_pdf,0.4,0.2;
rho_A ,beta_pdf,0.5,0.2;
rho_ys ,beta_pdf,0.8,0.1;
rho_pies,beta_pdf,0.7,0.15;
// stderr e_R,inv_gamma_pdf,1.2533,0.6551;
// stderr e_q,inv_gamma_pdf,2.5066,1.3103;
// stderr e_A,inv_gamma_pdf,1.2533,0.6551;
// stderr e_ys,inv_gamma_pdf,1.2533,0.6551;
// stderr e_pies,inv_gamma_pdf,1.88,0.9827;
end;
```
With `prior_range=0` the respective field associated with estimated shocks is correctly set to an empty array and everything works.
4.5Marco RattoMarco Rattohttps://git.dynare.org/Dynare/dynare/-/issues/763Fix the (header of) hessian routine2019-06-19T15:38:04ZStéphane Adjemianstepan@adjemian.euFix the (header of) hessian routineDescription of the algorithm seems wrong (check the reference to the formulas given in Abramovitz and Stegun).
Description of the algorithm seems wrong (check the reference to the formulas given in Abramovitz and Stegun).
https://git.dynare.org/Dynare/dynare/-/issues/758Write specialized code for loading data...2019-06-19T15:38:04ZStéphane Adjemianstepan@adjemian.euWrite specialized code for loading data...We should not use the same code if we load data with the "legacy approach" (`datafile` option of the `estimation` command) or if we use the `data` command. In the first case we should create a `dseries` restricted to the variables listed...We should not use the same code if we load data with the "legacy approach" (`datafile` option of the `estimation` command) or if we use the `data` command. In the first case we should create a `dseries` restricted to the variables listed in `options_.varobs`. See PR #741.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/754Enforce estimation to be fully Bayesian or fully ML2019-06-19T15:38:04ZJohannes PfeiferEnforce estimation to be fully Bayesian or fully MLCurrently, we allow for mixtures in the estimated_params-block like
```
estimated_params;
csadjcost,6.3325,2,15,NORMAL_PDF,4,1.5;
csigma,1.2312,0,1;
```
This leads to strange subsequent crashes like
```
Error using prior_bounds (line...Currently, we allow for mixtures in the estimated_params-block like
```
estimated_params;
csadjcost,6.3325,2,15,NORMAL_PDF,4,1.5;
csigma,1.2312,0,1;
```
This leads to strange subsequent crashes like
```
Error using prior_bounds (line 157)
prior_bounds: unknown distribution shape (index 1, type 0)
```
We should check earlier whether priors have been defined for all variables or none.
MichelJuillardMichelJuillardhttps://git.dynare.org/Dynare/dynare/-/issues/755Investigate dseries bug under Octave2019-06-19T15:38:04ZJohannes PfeiferInvestigate dseries bug under OctaveSee http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6105
See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6105
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/750Decide on treatment of prior truncation during estimation2021-08-02T11:28:56ZJohannes PfeiferDecide on treatment of prior truncation during estimationWe need to decide on how to proceed, see https://github.com/DynareTeam/dynare/commit/aa503abfa79145efc0840c79210e795e1b76df84
We need to decide on how to proceed, see https://github.com/DynareTeam/dynare/commit/aa503abfa79145efc0840c79210e795e1b76df84
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/745Discuss change in solve12019-06-19T15:38:04ZJohannes PfeiferDiscuss change in solve1See my email to the dev list at http://www.dynare.org/pipermail/dev/2014-September/003868.html
See my email to the dev list at http://www.dynare.org/pipermail/dev/2014-September/003868.html
https://git.dynare.org/Dynare/dynare/-/issues/744create Julia preprocessor output2019-06-19T15:38:04ZHoutan Bastanicreate Julia preprocessor outputSee #694
See #694
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/730add explicit warning message when dividing by zero2019-06-19T15:38:04ZHoutan Bastaniadd explicit warning message when dividing by zeroDataTree::AddDivide should throw an exception when dividing by zero. This exception should be caught in a higher level function and an explicit warning given. e.g., division by zero when parsing the .mod file or e.g. division by zero whe...DataTree::AddDivide should throw an exception when dividing by zero. This exception should be caught in a higher level function and an explicit warning given. e.g., division by zero when parsing the .mod file or e.g. division by zero when converting to static model
To be complete, we can do this for DataTree::AddLog10 and DataTree::AddLog.
See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6022
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/728Add information on auxiliary equations to M_2019-06-19T15:38:04ZJohannes PfeiferAdd information on auxiliary equations to M_Use the preprocessor to always add `M_.orig_eq_nbr` (currently only present if the Ramsey command is used) and `M_.eq_nbr` to save the number of total equations. This would mimic the behavior of `M_.endo_nbr` and `M_.orig_endo_nbr` and p...Use the preprocessor to always add `M_.orig_eq_nbr` (currently only present if the Ramsey command is used) and `M_.eq_nbr` to save the number of total equations. This would mimic the behavior of `M_.endo_nbr` and `M_.orig_endo_nbr` and provide all information necessary. See the end of #696
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/727Add unit test and example for differentiate_forward_vars2019-06-19T15:38:05ZJohannes PfeiferAdd unit test and example for differentiate_forward_varsStéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/720relative_irf2019-06-19T15:38:05ZMarco Rattorelative_irfWould it make sense to allow option relative_irf also in estimation for producing bayesian irfs?
Would it be possible to allow options to the new syntax
`irf_calibration(<options>)`
in particular would be fine to have the relative_irf o...Would it make sense to allow option relative_irf also in estimation for producing bayesian irfs?
Would it be possible to allow options to the new syntax
`irf_calibration(<options>)`
in particular would be fine to have the relative_irf option
`irf_calibration(relative_irf)`
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/717Check size of MeanForecast fields and make it consistent across options2019-06-19T15:38:05ZJohannes PfeiferCheck size of MeanForecast fields and make it consistent across options`oo_.MeanForecast.Mean.variablename` and `oo_.PointForecast.Mean.variablenam` are n+1 vectors if `mh_replic>0` and `forecast=n`, but only n-vectors if `mh_replic=0`. This should be made consistent or at least documented. See http://www.d...`oo_.MeanForecast.Mean.variablename` and `oo_.PointForecast.Mean.variablenam` are n+1 vectors if `mh_replic>0` and `forecast=n`, but only n-vectors if `mh_replic=0`. This should be made consistent or at least documented. See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=5987
https://git.dynare.org/Dynare/dynare/-/issues/712Fix computation decision rules for deterministic variables2019-06-19T15:38:05ZJohannes PfeiferFix computation decision rules for deterministic variablesFor the mod-file reported in #711 from http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=5951 the decision rules are different from the 4.2 branch starting in the 4.3 branch. In particular, `dr.ghudud` differs.
When fixing this, we shoul...For the mod-file reported in #711 from http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=5951 the decision rules are different from the 4.2 branch starting in the 4.3 branch. In particular, `dr.ghudud` differs.
When fixing this, we should also add information on how the decision rules are actually computed to the manual and potentially add a unit test.
https://git.dynare.org/Dynare/dynare/-/issues/711Fix forecasting with exogenous deterministic variables in master and add uni...2019-06-19T15:38:06ZJohannes PfeiferFix forecasting with exogenous deterministic variables in master and add unit testForecasting with exogenous deterministic variables in master is broken. In the mod-file
```
/*
* Example 2 from F. Collard (2001): "Stochastic simulations with DYNARE:
* A practical guide" (see "guide.pdf" in the documentation directo...Forecasting with exogenous deterministic variables in master is broken. In the mod-file
```
/*
* Example 2 from F. Collard (2001): "Stochastic simulations with DYNARE:
* A practical guide" (see "guide.pdf" in the documentation directory).
*/
/*
* Copyright (C) 2001-2010 Dynare Team
*
* This file is part of Dynare.
*
* Dynare is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Dynare is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Dynare. If not, see <http://www.gnu.org/licenses/>.
*/
var y, c, k, a, h, b dy;
//var Sum;
varexo e, u;
varexo_det e_det;
parameters beta, rho, alpha, delta, theta, psi, tau;
alpha = 0.36;
rho = 0.95;
tau = 0.025;
beta = 0.99;
delta = 0.025;
psi = 0;
theta = 2.95;
model;
exp(c)*theta*exp(h)^(1+psi)=(1-alpha)*exp(y);
exp(k) = beta*(((exp(b)*exp(c))/(exp(b(+1))*exp(c(+1))))
*(exp(b(+1))*alpha*exp(y(+1))+(1-delta)*exp(k)));
exp(y) = exp(a)*(exp(k(-1))^alpha)*(exp(h)^(1-alpha));
exp(k) = exp(b)*(exp(y)-exp(c))+(1-delta)*exp(k(-1));
a = rho*a(-1)+tau*b(-1) + e +e_det;
b = tau*a(-1)+rho*b(-1) + u;
dy=(y-0.0775944)/0.0775944*100;
//Sum=c+y;
end;
initval;
y = 0.1;
c = -0.2;
h = -1.2;
k = 2.4;
a = 0;
b = 0;
e = 0;
u = 0;
dy=0;
//Sum=c+y;
end;
steady;
shocks;
var e = 0.01^2;
var u = 0;
var e_det;
periods 1:1;
values 0.03;
end;
stoch_simul(irf=40, nograph, nomoments, order=2);
forecast(periods=100);
```
`dyn_forecast.m` still uses `oo_.exo_det_simul`, but this variable is not set anymore.
We should also add a unit test for this case.
https://git.dynare.org/Dynare/dynare/-/issues/707Preprocessor: Support creating empty arrays with [] (wishlist)2019-06-19T15:38:06ZTom HoldenPreprocessor: Support creating empty arrays with [] (wishlist)It would be great if [] returned an empty array. (At the moment it produces an error.) Doing [ "" ] - [ "" ] is a bit cumbersome!
It would be great if [] returned an empty array. (At the moment it produces an error.) Doing [ "" ] - [ "" ] is a bit cumbersome!
Sébastien VillemotSébastien Villemothttps://git.dynare.org/Dynare/dynare/-/issues/708Preprocessor: String termination bug2019-06-19T15:38:06ZTom HoldenPreprocessor: String termination bugLength one sub-strings do not appear to be properly terminated, which produces strange results when they are concatenated.
Create a file with the following three lines:
@#define Numbers = "123456789"
@#define AString = "One " + Numbers...Length one sub-strings do not appear to be properly terminated, which produces strange results when they are concatenated.
Create a file with the following three lines:
@#define Numbers = "123456789"
@#define AString = "One " + Numbers[1] + " Two " + Numbers[2] + " Three " + Numbers[3]
@#echo AString
(or just clone StringTermination.mod from https://github.com/tholden/DynareBugs/tree/master).
On my PC, its output is different every time. E.g.:
One 16 Two 26 Three 36
Or:
One 1w Two 2w Three 3w
Sébastien VillemotSébastien Villemothttps://git.dynare.org/Dynare/dynare/-/issues/706Preprocessor: @#for end of file bug2019-06-19T15:38:06ZTom HoldenPreprocessor: @#for end of file bugIf a file @#include-ed into another file contains a @#for loop for which the matching @#endfor is followed immediately by the end of the file, rather than by a new-line, then the pre-processor fails to find the @#endfor. To see this clon...If a file @#include-ed into another file contains a @#for loop for which the matching @#endfor is followed immediately by the end of the file, rather than by a new-line, then the pre-processor fails to find the @#endfor. To see this clone the repository https://github.com/tholden/DynareBugs/tree/master and then run dynare TestForLoopBug.mod . On Windows at least you will get an error saying it failed to find the @#endfor. However if you add a blank line at the end of ForLoopBug.mod then you no longer get this error.
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/704bug saving dseries in csv format that have had operations made on them2019-06-19T15:38:06ZHoutan Bastanibug saving dseries in csv format that have had operations made on themThe following results in a malformed csv file because of the commas in the names of the variables:
```
a=dseries(rand(3,1), '1999y', 'a');
b=a*a;
b.save('malformed','csv');
```
results in:
```
,multiply(a,a)
1999Y, 0.66377469
200...The following results in a malformed csv file because of the commas in the names of the variables:
```
a=dseries(rand(3,1), '1999y', 'a');
b=a*a;
b.save('malformed','csv');
```
results in:
```
,multiply(a,a)
1999Y, 0.66377469
2000Y, 0.82045903
2001Y, 0.016125652
```
need to replace the second comma in the first line with something else
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/697change syntax for instantiation of year dates2019-06-19T15:38:06ZHoutan Bastanichange syntax for instantiation of year datesCurrently, we can instantiate years as:
`t = dates(1, [1990; 1990; 1978], [1; 1; 1])`
but not as
`t = dates(1, [1990; 1990; 1978])`
In the case of years, the periods are irrelevant and so we should be able to declare a dates in the seco...Currently, we can instantiate years as:
`t = dates(1, [1990; 1990; 1978], [1; 1; 1])`
but not as
`t = dates(1, [1990; 1990; 1978])`
In the case of years, the periods are irrelevant and so we should be able to declare a dates in the second syntax
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/693create csv output for every graph and table in a report2019-06-19T15:38:06ZHoutan Bastanicreate csv output for every graph and table in a reportStore in a parallel subdirectory for csv files.....or, perhaps just in the same tmpRepDir.
Store in a parallel subdirectory for csv files.....or, perhaps just in the same tmpRepDir.
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/690Crash of k_order_perturbation DLL under MATLAB/Windows2019-06-19T15:38:06ZSébastien VillemotCrash of k_order_perturbation DLL under MATLAB/WindowsThe following MOD-file crashes MATLAB under Windows:
```
var y, c, k, a, h, b;
varexo e, u;
parameters beta, rho, alpha, delta, theta, psi, tau;
alpha = 0.36;
rho = 0.95;
tau = 0.025;
beta = 0.99;
delta = 0.025;
psi = 0;
theta ...The following MOD-file crashes MATLAB under Windows:
```
var y, c, k, a, h, b;
varexo e, u;
parameters beta, rho, alpha, delta, theta, psi, tau;
alpha = 0.36;
rho = 0.95;
tau = 0.025;
beta = 0.99;
delta = 0.025;
psi = 0;
theta = 2.95;
phi = 0.1;
model;
c*theta*h^(1+psi)=(1-alpha)*y;
k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1)))
*(exp(b(+1))*alpha*y(+1)+(1-delta)*k));
y = exp(a)*(k(-1)^alpha)*(h^(1-alpha));
k = exp(b)*(y-c)+(1-delta)*k(-1);
a = rho*a(-1)+tau*b(-1) + e;
b = tau*a(-1)+rho*b(-1) + u;
end;
initval;
y = 1.08068253095672;
c = 0.80359242014163;
h = 0.29175631001732;
k = 11.08360443260358;
a = 0;
b = 0;
e = 0;
u = 0;
end;
shocks;
var e; stderr 0.009;
var u; stderr 0.009;
var e, u = phi*0.009*0.009;
end;
stoch_simul(order=3,periods=100);
```
The crash only occurs under MATLAB+Windows. It does not occur on Octave or under GNU/Linux.
It seems to be a memory corruption, because MATLAB does not crash immediately within the MEX file, but a little after. However, under Linux, a Valgrind run reveals nothing suspicious. A gdb session under Windows is not helpful either.
Still to be tried:
- convert the MOD file for Dynare++, and see if it crashes
- investigate the MEX file by selectively commenting out/in portions of the code, to detect which one causes the memory corruption
4.5Sébastien VillemotSébastien Villemothttps://git.dynare.org/Dynare/dynare/-/issues/695Ramsey: fix M_.aux_vars2019-06-19T15:38:06ZJohannes PfeiferRamsey: fix M_.aux_varsIn case of the Ramsey multipliers, the counting of equation numbers starts at 0, but should start at 1
In case of the Ramsey multipliers, the counting of equation numbers starts at 0, but should start at 1
4.5Sébastien VillemotSébastien Villemothttps://git.dynare.org/Dynare/dynare/-/issues/694create fortran preprocessor output2019-06-19T15:38:06ZHoutan Bastanicreate fortran preprocessor outputdynamic and static files each as independent functions
model as a fortran module
dynamic and static files each as independent functions
model as a fortran module
Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/688add option to suppress all reporting stdout output2019-06-19T15:38:06ZHoutan Bastaniadd option to suppress all reporting stdout outputi.e., suppress:
Adding Page X
Writing Page X
Compiler Output
Where the file is located
i.e., suppress:
Adding Page X
Writing Page X
Compiler Output
Where the file is located
4.5Houtan BastaniHoutan Bastani