The current documentation about unit_root_vars claims that this command is not longer required. But if I exclude it from my mod file I get this error message:

??? Error using ==> initial_estimation_checks at 92

The seadystate values returned by fs2000ns_steadystate.m don’t solve the static model!

Error in ==> dynare_estimation_1 at 334

initial_estimation_checks(xparam1,gend,data,data_index,number_of_observations,no_more_missing_observations);

Error in ==> dynare_estimation at 62

dynare_estimation_1(var_list,varargin{:});

Error in ==> fs2000ns at 150

dynare_estimation(var_list_);

Error in ==> dynare at 132

evalin(‘base’,fname) ;

With unit_root_vars in the mod file the program runs fine. I do not understand why the documentation says that unit_root_vars is no longer needed.

Thank you for the help.

fsdat.m (4.52 KB)

fs2000ns_steadystate.m (1007 Bytes)

fs2000ns.mod (2.65 KB)

Hi,

The documentation is wrong, thanks for reporting this inconsistency. The documentation says that this command is no longer required because in the kalman filter routines we transform the (reduced form) transition matrix T and reorder the eigenvalues so that we are able to identify automatically the non stationary linear combinations of endogenous variables. But we still need to use this command for the steady state. Dynare needs to know which are the unit root variables and won’t test the steady state declared in the **steadystate.m file for these variables (because if you have a drift in a unit root variable, ie if y_t = a + y*{t-1} + e_t, there is no steady state. The practice is to give any value for the steady state level of y and dynare won’t check the steady state for this variable if y is declared as a unit root variable).

The doc will be corrected in the coming bug-fix release.

Best,

Stéphane.