Random Error with Dynare - Attempting to run HFI/GPM

Hello,

I am currently working with Marianne Johnson at the Bank of Canada to get the HFI in GPM model (Clinton, Johnson, Juillard, Kamenik, Laxton, Mathai) running on our Linux servers (Matlab 7.4, Red Hat Enterprise 4, Kernel 2.6.9). We are running Dynare 4.0.3.

The error occurs at random, and it seems that matlab is unable to find the file generated by Dynare. When I check the status of the dynare command, it is always 0, and when I check in the directory afterwards, the files are in there. This error seems to occur at random - sometimes 2 months in, sometimes 16. The error is (I have pasted 2 iterations of the driver):

> **** Running forecast for 2000M02 for case U
>
> Configuring Dynare ...
> [mex] Generalized QZ.
> [mex] Sylvester equation solution.
> [mex] Kronecker products.
> [mex] Sparse kronecker products.
> [mex] Fast model evaluation.
>
> Starting Dynare ...
> Starting preprocessing of the model file ...
> Found 25 equation(s).
> Evaluating expressions...done
> WARNING: can't find a numeric initial value for BLT_BAR_US, using zero
> WARNING: can't find a numeric initial value for BLT_US, using zero
> WARNING: can't find a numeric initial value for E2_US, using zero
> WARNING: can't find a numeric initial value for E_US, using zero
> WARNING: can't find a numeric initial value for GROWTH4_BAR_US, using zero
> WARNING: can't find a numeric initial value for GROWTH4_US, using zero
> WARNING: can't find a numeric initial value for GROWTH_US, using zero
> WARNING: can't find a numeric initial value for G_US, using zero
> WARNING: can't find a numeric initial value for LCPI_US, using zero
> WARNING: can't find a numeric initial value for LGDP_BAR_US, using zero
> WARNING: can't find a numeric initial value for LGDP_US, using zero
> WARNING: can't find a numeric initial value for PIE4_US, using zero
> WARNING: can't find a numeric initial value for PIE_US, using zero
> WARNING: can't find a numeric initial value for RR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RR_US, using zero
> WARNING: can't find a numeric initial value for RS_US, using zero
> WARNING: can't find a numeric initial value for UNR_BAR_US, using zero
> WARNING: can't find a numeric initial value for UNR_GAP_US, using zero
> WARNING: can't find a numeric initial value for UNR_G_US, using zero
> WARNING: can't find a numeric initial value for UNR_US, using zero
> WARNING: can't find a numeric initial value for Y_US, using zero
> WARNING: can't find a numeric initial value for E1_PIE_US, using zero
> WARNING: can't find a numeric initial value for E1_Y_US, using zero
> WARNING: can't find a numeric initial value for E3_PIE4_US, using zero
> WARNING: can't find a numeric initial value for E4_PIE4_US, using zero
> WARNING: can't find a numeric initial value for RES_RR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_GAP_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_RS_US, using zero
> WARNING: can't find a numeric initial value for RES_G_US, using zero
> WARNING: can't find a numeric initial value for RES_Y_US, using zero
> WARNING: can't find a numeric initial value for RES_LGDP_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_PIE_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_G_US, using zero
> WARNING: can't find a numeric initial value for RES_BLT_US, using zero
> WARNING: can't find a numeric initial value for RES_BLT_BAR_US, using zero
> Computing static model derivatives at order 1... done
> Computing dynamic model derivatives at order 2... done
> Processing outputs ...done
> Preprocessing completed.
> Starting Matlab computing ...
>
>
> STEADY-STATE RESULTS:
>
> BLT_BAR_US               -8.88
> BLT_US                   -8.88
> E2_US                    0
> E_US                     0
> GROWTH4_BAR_US           2.59312
> GROWTH4_US               2.59312
> GROWTH_US                2.59312
> G_US                     2.59312
> LCPI_US                  0
> LGDP_BAR_US              895.09
> LGDP_US                  895.09
> PIE4_US                  2.5
> PIE_US                   2.5
> RR_BAR_US                1.83145
> RR_US                    1.83145
> RS_US                    4.33145
> UNR_BAR_US               6.57
> UNR_GAP_US               0
> UNR_G_US                 0
> UNR_US                   6.57
> Y_US                     0
> E1_PIE_US                2.5
> E1_Y_US                  0
> E3_PIE4_US               2.5
> E4_PIE4_US               2.5
>
> EIGENVALUES:
>         Modulus             Real        Imaginary
>
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>               0                0                0
>         0.07596          0.07596                0
>          0.4436          -0.4436                0
>          0.4708         -0.05091            0.468
>          0.4708         -0.05091           -0.468
>          0.5702           0.5702                0
>          0.6974           0.6974                0
>          0.8141           0.7883           0.2033
>          0.8141           0.7883          -0.2033
>          0.8425           0.8425                0
>           0.915            0.915                0
>               1                1                0
>               1                1                0
>               1                1                0
>               1                1                0
>            1.06             1.06                0
>           1.661          -0.1993            1.649
>           1.661          -0.1993           -1.649
>           1.763           -1.763                0
>           15.78            15.78                0
>             Inf              Inf                0
>             Inf              Inf                0
>             Inf              Inf                0
>             Inf              Inf                0
>
>
> There are 9 eigenvalue(s) larger than 1 in modulus
> for 9 forward-looking variable(s)
>
> The rank condition is verified.
>
> Loading 26 observations from non_existent_data.m
>
> Initial value of the log posterior (or likelihood): -103.2708
> smoother done
> Total computing time : 0h00m00s
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --generate-files --options csv_format=iris --makedb U2000M02sirius.mod 1994Q1 26 tmp_default.csv
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --generate-files --options csv_format=iris --solvedb U2000M02sirius.mod 1994Q1 tmp_default.csv tmp_ss.csv
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --generate-files --options csv_format=iris --makedb U2000M02sirius.mod 1993Q3 26 tmp_default.csv
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --generate-files --options csv_format=iris --solvedb U2000M02sirius.mod 1993Q3 tmp_default.csv tmp_ss.csv
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --generate-files --makedb U2000M02sirius.mod 2000Q1 30 to_be_deleted.csv
> This is Sirius. Copyright (C) 2004-2007 OGResearch Ltd. NO WARRANTY.
> Iter            Delta           Resid
>  0     2.86313e-13     4.42241e-27
> running: /home/int/proj/dynare/sirius ss_solve_trends=true --options ,homotopy_steps=1 --solvedb U2000M02sirius.mod 2000Q1 tmp0b.csv U2000M02_forecast.csv
> This is Sirius. Copyright (C) 2004-2007 OGResearch Ltd. NO WARRANTY.
> Iter            Delta           Resid
>  0     2.86313e-13     4.42241e-27
> **** Solving 1 out of 1 portion
> *** Perfect foresight solver, periods = 76
> Iter            Delta           Resid
>        GMRES dim=3353
>                1 1     6.28877e-15
>  0        681.607       0.0343038
>        GMRES dim=3353
>                1 1       0.105127
>                1 2     0.000427719
>                1 3     1.56795e-06
>                1 4     4.37385e-09
>                1 5     7.03198e-12
>  1        0.45188      4.76483e-06
>        GMRES dim=3353
>                1 1       0.047978
>                1 2     0.000159178
>                1 3     4.26763e-07
>                1 4     8.64601e-10
>                1 5     4.77109e-13
>  2     0.000190834     1.86371e-12
>        GMRES dim=3353
>                1 1      0.0843436
>                1 2     0.000202971
>                1 3     1.58224e-07
>                1 4     3.10449e-10
>                1 5     2.34817e-13
>  3     3.91302e-11     1.19029e-12
> **** Running forecast for 2000M03 for case U
>
> Configuring Dynare ...
> [mex] Generalized QZ.
> [mex] Sylvester equation solution.
> [mex] Kronecker products.
> [mex] Sparse kronecker products.
> [mex] Fast model evaluation.
>
> Starting Dynare ...
> Starting preprocessing of the model file ...
> Found 25 equation(s).
> Evaluating expressions...done
> WARNING: can't find a numeric initial value for BLT_BAR_US, using zero
> WARNING: can't find a numeric initial value for BLT_US, using zero
> WARNING: can't find a numeric initial value for E2_US, using zero
> WARNING: can't find a numeric initial value for E_US, using zero
> WARNING: can't find a numeric initial value for GROWTH4_BAR_US, using zero
> WARNING: can't find a numeric initial value for GROWTH4_US, using zero
> WARNING: can't find a numeric initial value for GROWTH_US, using zero
> WARNING: can't find a numeric initial value for G_US, using zero
> WARNING: can't find a numeric initial value for LCPI_US, using zero
> WARNING: can't find a numeric initial value for LGDP_BAR_US, using zero
> WARNING: can't find a numeric initial value for LGDP_US, using zero
> WARNING: can't find a numeric initial value for PIE4_US, using zero
> WARNING: can't find a numeric initial value for PIE_US, using zero
> WARNING: can't find a numeric initial value for RR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RR_US, using zero
> WARNING: can't find a numeric initial value for RS_US, using zero
> WARNING: can't find a numeric initial value for UNR_BAR_US, using zero
> WARNING: can't find a numeric initial value for UNR_GAP_US, using zero
> WARNING: can't find a numeric initial value for UNR_G_US, using zero
> WARNING: can't find a numeric initial value for UNR_US, using zero
> WARNING: can't find a numeric initial value for Y_US, using zero
> WARNING: can't find a numeric initial value for E1_PIE_US, using zero
> WARNING: can't find a numeric initial value for E1_Y_US, using zero
> WARNING: can't find a numeric initial value for E3_PIE4_US, using zero
> WARNING: can't find a numeric initial value for E4_PIE4_US, using zero
> WARNING: can't find a numeric initial value for RES_RR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_GAP_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_RS_US, using zero
> WARNING: can't find a numeric initial value for RES_G_US, using zero
> WARNING: can't find a numeric initial value for RES_Y_US, using zero
> WARNING: can't find a numeric initial value for RES_LGDP_BAR_US, using zero
> WARNING: can't find a numeric initial value for RES_PIE_US, using zero
> WARNING: can't find a numeric initial value for RES_UNR_G_US, using zero
> WARNING: can't find a numeric initial value for RES_BLT_US, using zero
> WARNING: can't find a numeric initial value for RES_BLT_BAR_US, using zero
> Computing static model derivatives at order 1... done
> Computing dynamic model derivatives at order 2... done
> Processing outputs ...done
> Preprocessing completed.
> Starting Matlab computing ...
>
> ??? Error using ==> evalin
> Undefined function or variable 'U2000M03'.
>
> Error in ==> dynare at 125
> evalin('base',fname) ;
>
> Error in ==> run_smoother at 144
> dynare([opt.basename '.dyn'], 'noclearall');
>
> Error in ==> rtf at 39
>    run_smoother('PP', PPsmoother, 'data', 'non_existent_data',...
>
> Error in ==> driver_rtf at 64
> rtf(letters, planpats, rng, md, h, PPsmoother, PPfore, estimation_wkspace_file)

Ondra suggested that I upgrade Dynare - I installed it (with some difficulty - I am pretty inexperienced with Linux), and did not find any errors in the installation. However, when I attempt to run the model with the newer version, it crashes on the first iteration, with the error:

Starting Dynare ...
Starting preprocessing of the model file ...
25 equation(s) found
Processing derivation ...
  Processing Order 1... done
  Processing Order 2... done
Processing outputs ...
Preprocessing completed.
Starting Matlab computing ...

 
STEADY-STATE RESULTS:
 
BLT_BAR_US     		 -8.88
BLT_US         		 -8.88
E2_US          		 0
E_US           		 0
GROWTH4_BAR_US 		 2.59312
GROWTH4_US     		 2.59312
GROWTH_US      		 2.59312
G_US           		 2.59312
LCPI_US        		 0
LGDP_BAR_US    		 895.09
LGDP_US        		 895.09
PIE4_US        		 2.5
PIE_US         		 2.5
RR_BAR_US      		 1.83145
RR_US          		 1.83145
RS_US          		 4.33145
UNR_BAR_US     		 6.57
UNR_GAP_US     		 0
UNR_G_US       		 0
UNR_US         		 6.57
Y_US           		 0
E1_PIE_US      		 2.5
E1_Y_US        		 0
E3_PIE4_US     		 2.5
E4_PIE4_US     		 2.5
 
EIGENVALUES:
         Modulus             Real        Imaginary

               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
               0                0                0
         0.07596          0.07596                0
          0.4436          -0.4436                0
          0.4708         -0.05091            0.468
          0.4708         -0.05091           -0.468
          0.5702           0.5702                0
          0.6974           0.6974                0
          0.8141           0.7883           0.2033
          0.8141           0.7883          -0.2033
          0.8425           0.8425                0
           0.915            0.915                0
               1                1                0
               1                1                0
               1                1                0
               1                1                0
            1.06             1.06                0
           1.661          -0.1993            1.649
           1.661          -0.1993           -1.649
           1.763           -1.763                0
           15.78            15.78                0
             Inf              Inf                0
             Inf              Inf                0
             Inf              Inf                0
             Inf              Inf                0


There are 9 eigenvalue(s) larger than 1 in modulus 
for 9 forward-looking variable(s)
 
The rank condition is verified.
 
Loading 26 observations from non_existent_data.m

??? Error using ==> svd
Input to SVD must not contain NaN or Inf.

Error in ==> rank at 15
s = svd(A);

Error in ==> initial_estimation_checks at 49
  r = rank(data);

Error in ==> dynare_estimation_1 at 320
initial_estimation_checks(xparam1,gend,data);

Error in ==> dynare_estimation at 62
    dynare_estimation_1(var_list,varargin{:});

Error in ==> U2000M01 at 324
dynare_estimation(var_list_);

Error in ==> dynare at 102
evalin('base',fname) ;

Error in ==> run_smoother at 144
dynare([opt.basename '.dyn'], 'noclearall');

Error in ==> rtf at 39
    run_smoother('PP', PPsmoother, 'data', 'non_existent_data',...

Error in ==> driver_rtf at 62
rtf(letters, planpats, rng, md, h, PPsmoother, PPfore, estimation_wkspace_file)

I have also attached the installation log from Linux and Dynare, in case I may have made an error in the installation of 4.0.4.

Any insight that could be provided would be greatly appreciated.

Many, many thanks in advance
dynare_installation_log.txt (23.8 KB)

Another update: Ondra suggested that I comment out the rank code (line 49 in initial_estimation_check.m) - this solved the error that was occuring on version 4.0.4, but eventually the same problem occurs as originally occured in 4.0.3 (the problem with evalin being unable to find the generated file ‘U####M##’ )…

You are calling Dynare from a driver that we aren’t familiar with. We need all the codes to be able to diagnose the issue. Please, send them to my personal address, michel (dot) juillard (at) ens (dot) fr

All the best,

Michel