I have a large scale New Keynesian model where I computed the steady state by hand. While trying to debug the model and its parametrization I encountered three problems (Dynare 4.1.1, Matlab2009b 64bit,Win XP Professional):
- When using
- Code: Select all
check;
as the last command in my model-file after- Code: Select all
model;
...
end;
shocks;
...
end;
steady;
it tells meThere are 41 eigenvalue(s) larger than 1 in modulus
for 42 forward-looking variable(s)
The rank conditions ISN'T verified!
When putting- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=1,nofunctions,noprint) y_H;
after the check command, I getThere are 40 eigenvalue(s) larger than 1 in modulus
for 42 forward-looking variable(s)
The rank conditions ISN'T verified!
and when putting the second order approximation- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=2,nofunctions,noprint) y_H;
I get;There are 42 eigenvalue(s) larger than 1 in modulus
for 42 forward-looking variable(s)
The rank condition is verified.
How can it be that the output of the check command depends on the following commands invoked? Is there maybe a bug in the .mex64-files invoked by "check;" or "resolve.m"? - For a somewhat different parametrization
- Code: Select all
check;
tells me thatThere are 43 eigenvalue(s) larger than 1 in modulus
for 42 forward-looking variable(s)
The rank conditions ISN'T verified!
However,- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=1,nofunctions,noprint) y_H;
nevertheless computes the model solution and gives impulse responses. However, they look completely different than the ones on Matlab 2009a 32 bit machine. Moreover, the check command on the latter Matlab version saysThere are 42 eigenvalue(s) larger than 1 in modulus
for 42 forward-looking variable(s)
The rank conditions is verified!
which would be consistent with the Blanchard-Kahn conditions being satisfied. - While the latter parametrization produces prima facie sensible output on the 64bit machine with
- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=1,nofunctions,noprint) y_H;
the standard second order approximation- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=2,nofunctions,noprint) y_H;
fails as all impulse responses in oo_.irfs are NaN. Moreover,- Code: Select all
stoch_simul(irf=20,nomoments,nocorr,order=1,aim_solver,nofunctions,noprint) y_H;
fails withError in AIM: aimcode=3 : Aim: too many big roots.
While there is most probably still a problem with the model parametrization, troubleshooting is complicated by the contradicting outputs. Which ones should I trust?