Non linear equations - The steady state at the initial parameters cannot be computed

Dear all,

I am trying to replicate a simple model for a small open economy, including oil price schocks. The original .mod file I using as a base has a model (linear) block, since all equations were manually log-linearized before inputing them into matlab, and it runs. As for my model (bruna.mod, attached), since I did not want to manually linearize and compute the steady state, the model block has non-linear equations. The data file is also available below.

When I try to estimate, I get the following errors:

dynare_estimation_init:: The steady state at the initial parameters cannot be computed.
Error using print_info (line 90)
The steady state contains NaN or Inf
Error in dynare_estimation_init (line 565)
print_info(info, 0, options_);
Error in dynare_estimation_1 (line 116)
dynare_estimation_init(var_list_, dname, [], M_, options_, oo_, estim_params_, bayestopt_);
Error in dynare_estimation (line 105)
dynare_estimation_1(var_list,dname);
Error in tesebm2020 (line 566)
oo_recursive_=dynare_estimation(var_list_);
Error in dynare (line 235)
evalin(‘base’,fname) ;

Could someone please help to understand how do I put a code for Dynare to perform the linearization and find the correct steady states?

Thank you in advance,
Best,
Bruna

bruna.mod.mod (9.3 KB)
dados_dynare_18abril.xls (56.5 KB)

In Dynare 4.6.1 I get

Error: w_nom not used in the model block

Dear Dr Pfeifer,

Thank you very much for your help. You are correct. I just removed this variable since it was not included in the model, and made some other adjustments in the model. Please find attached the corrected version (bruna2.mod (9.1 KB)

Still, I got the same error:
dynare_estimation_init:: The steady state at the initial parameters cannot be computed.
Error using print_info (line 90)
The steady state contains NaN or Inf
Error in dynare_estimation_init (line 565)
print_info(info, 0, options_);
Error in dynare_estimation_1 (line 116)
dynare_estimation_init(var_list_, dname, [], M_, options_, oo_, estim_params_, bayestopt_);
Error in dynare_estimation (line 105)
dynare_estimation_1(var_list,dname);
Error in tesebm2020 (line 548)
oo_recursive_=dynare_estimation(var_list_);
Error in dynare (line 235)
evalin(‘base’,fname) ;

Do you have any idea of what is missing or is wrong? I am not sure if I ordered Dynare to “linearize the model and find the steady state for me”, which is what I intented to. I read in the Dynare manual about functions “initvals” or “steady”, but I don’t know if I need to use them and if so where exactly to put it in the code.

Thank you very much.
Best,
Bruna

  1. For a nonlinear model, you need to provide initial values.
  2. Make sure a simulated version of the model runs before you start estimation.
  3. Recheck all equations. For example a and v have steady state 0. Is that how they should enter in other equations?

Dear Dr Pfeifer,
Thank you very much for your valuable help.

  1. I ended up log-linearizing the model, so there was no need for initial values
  2. I did run a simulated version, thank you for that tip, it did help
  3. There were lots of little mistakes in the equations, thank you for this tip too.
    Best regards,
    Bruna