大家好,
请问在使用dynare做贝叶斯估计的时候,应该怎样写关于通货膨胀(用pie表示)的bservation equation?
我的模型中,所有变量平稳,并且已经对数线性化。关于通货膨胀的数据处理,我采用的是smet(2007)的方法,对cpi指数(1992年1季度为基期)先取对数,然后在做差分,得到通货膨胀的对数值,然后季节调整,然后乘以100,对于通货膨胀没有再做差分。我曾尝试如下的写法,但都出现了不正确提示。(1)pie_obs=pie_bar*(1+pie); (2)pie_obs=pie_bar+pie; (3) pie_obs= pie+ log(pie_bar); 其中,pie_bar为稳态值,pie_obs为观测数据,pie为模型中对数线性化后的变量。
另外一个问题是,如何检查模型中的错误?运行结果提示:Input to EIG must not contain NaN or Inf.
恳请各位指点,谢谢!
出错的程序提示为:
>> dynare gov
Configuring Dynare ...
[mex] Generalized QZ.
[mex] Sylvester equation solution.
[mex] Kronecker products.
[mex] Sparse kronecker products.
[mex] Bytecode evaluation.
[mex] k-order perturbation solver.
[mex] k-order solution simulation.
Starting Dynare (version 4.2.1).
Starting preprocessing of the model file ...
Found 26 equation(s).
Evaluating expressions...done
Computing static model derivatives:
- order 1
Computing dynamic model derivatives:
- order 1
Processing outputs ...done
Preprocessing completed.
Starting MATLAB/Octave computing.
Residuals of the static equations:
Equation number 1 : 0
Equation number 2 : 0
Equation number 3 : 0
Equation number 4 : 0
Equation number 5 : 0
Equation number 6 : 0
Equation number 7 : 0
Equation number 8 : 0
Equation number 9 : 0
Equation number 10 : 0
Equation number 11 : 0
Equation number 12 : 0
Equation number 13 : 0
Equation number 14 : 0
Equation number 15 : 0
Equation number 16 : 0
Equation number 17 : 0
Equation number 18 : 0
Equation number 19 : 0
Equation number 20 : 0
Equation number 21 : 0
Equation number 22 : 0
Equation number 23 : 0
Equation number 24 : 0
Equation number 25 : 0
Equation number 26 : -1.012
STEADY-STATE RESULTS:
pie 0
w 0
g1 0
g2 0
k 0
R 0
y 0
c 0
vp 0
q 0
x 0
lam 0
r 0
pie_st 0
l 0
mc 0
d 0
phi 0
mu 0
A 0
ksi 0
y_obs 0
c_obs 0
x_obs 0
w_obs 0
pie_obs 1.012
??? Error using ==> eig
Input to EIG must not contain NaN or Inf.
Error in ==> dr1 at 369
dr.eigval = eig(e,d);
Error in ==> resol at 147
[dr,info,M_,options_,oo_] = dr1(dr,check_flag,M_,options_,oo_);
Error in ==> check at 46
[dr, info] = resol(oo_.steady_state,1);
Error in ==> gov at 244
check;
Error in ==> dynare at 132
evalin('base',fname) ;