"The steadystate file did not compute the steady state"

I have written the steady state file of my .mod file and I received this message.

I followed the process described by the authors and I made sure that the tolerance limit is under e-10.

Is it sure that I have done some mistake computing it or could it be something else?

I just used the option “solve_algo=2” of the steady command in my .mod file. I get 0 residuals for all my equations but I still get the same error “The steadystate file did not compute the steady state”.

Is it normal to get 0 residuals for all my equations but still get that my steadystate file did not compute the steady state?

No, it’s not normal and usually happens if you do not set info correctly in the steady state file

Thank you jpfeifer. I don’t know what I have missed in my steadystate file, but I just copied the steady states of all my variables into my .mod and it worked.

I am having another problem now, I am trying to get the irf but I get the following error message:

[quote]Error using chol
Matrix must be square.
Error in irf (line 80)
VC_epschol = chol(VC_eps)’;[/quote]

I found on the forum that if I use two different but correlated shocks, Dynare performs a Cholesky decomposition. In my .mod file, I have several shocks but they are not correlated.

I looked into the error message, it seems that the matrix that is the source of problems is the covariance matrix of reduced-form residuals. Is my problem in my shocks declaration or could it be something else?

Without the mod-file, one cannot tell.

Sorry about that.

I don’t know if it helps but I have noticed that if I use the “partial_information” option I can use the PCL_Part_info_irf.m instead of the irf.m in the stoch_simul.m file. I have tested it and I got the irf, but I still don’t understand my mistake.

Using Dynare 4.3.3

stoch_simul(order=1, irf=20) Yz c Inv w H Re piCMR n bTot Rk kBar m mB dM;
works without problems.

I wasn’t using the 4.3.3 version, it is working now. Thank you jpfeifer.

Dear All,

I have model about interaction monetary and macroprudential policy, but when I execute the model, I get message error :

Loading 114 observations from data.xlsx

ESTIMATION_CHECKS: There was an error in computing the likelihood for initial parameter values.
ESTIMATION_CHECKS: You should try using the calibrated version of the model as starting values. To do
ESTIMATION_CHECKS: this, add an empty estimated_params_init-block with use_calibration option immediately before the estimation
ESTIMATION_CHECKS: command (and after the estimated_params-block so that it does not get overwritten):

??? Error using ==> initial_estimation_checks at 38
initial_estimation_checks:: Estimation can’t take place because too many shocks have been calibrated with a zero variance!

Error in ==> initial_estimation_checks at 38
error(‘initial_estimation_checks:: Estimation can’‘t take place because too many shocks have been calibrated with a zero

Error in ==> dynare_estimation_1 at 179
oo_ = initial_estimation_checks(objective_function,xparam1,dataset_,M_,estim_params_,options_,bayestopt_,oo_);

Error in ==> dynare_estimation at 89

Error in ==> ds1 at 686

Error in ==> dynare at 180
evalin(‘base’,fname) ;

I hope your help about my code and here I attached the mod.file. Thank you very much.

Best regards
ds1.mod (4.9 KB)

First off, never name your data-file “data”

The error message means that you have stochastic singularity, because there are more observables than shocks with non-zero variance.

Thank you jpfeifer. I’ll try again to run my model.


I am attempting to compute the steady state of a labor search model with monetary frictions. Given the complicated nature of the steady state, I use an external file. Specifically, the file analysis_392016 defines the parameter values and calls the mod file. The external steady state file OBC_DSCES_392016 runs the function roolz.m through nonlinear least squares to compute the steady state.

Unfortunately, I run into the error “The steadystate file did not compute the steady state.” The residuals on static equations are as follows:

The static equations are zero, except for two equations, 15 and 16, which read:

Equation number 15 : -0.00046174
Equation number 16 : -6.5804e-05

This suggests a potential error, but with a mild TolFun should nevertheless meet the convergence criterion. Yet, this does not happen. I suspect there is some other problem. By the way, for some reason I get an error in the external steady state file assigning one of the parameters “eps” to a structure, i.e. param.eps=eps, and have to resort to directly assigning the number, param.eps=0.1. Not sure if this issue has any bearing on the primary problem.

Any help would be most appreciated!
analysis_392016.m (8.53 KB)
roolz.m (1.76 KB)
OBC_DSCES_392016_steadystate.m (4.27 KB)
OBC_DSCES_392016.mod (3.24 KB)

First off:

[quote]WARNING: you are using a function (max, min, abs, sign) or an operator (<, >, <=, >=, ==, !=) which is unsuitable for a stochastic context; see the reference manual, section about “Expressions”, for more details.

Second, your exitcode from the solver is

Change in the residual was less than the specified tolerance.[/quote]

This does not mean you arrived at a solution and might explain the slight difference.

Third, eps is the Matlab command for the machine epsilon. You should never use it as a variable name (as is the case with i)