楼主: playboy008
3398 2

[问答] matlab dynare 报错,悬赏! [推广有奖]

  • 7关注
  • 0粉丝

已卖:387份资源

博士生

22%

还不是VIP/贵宾

-

威望
0
论坛币
50 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
3921 点
帖子
146
精华
0
在线时间
353 小时
注册时间
2008-12-7
最后登录
2021-8-17

楼主
playboy008 发表于 2014-11-5 14:17:39 |AI写论文
50论坛币
求救,本人在编写DSGE模型的dynare m文件,编完之后没法跑,具体文件内容如下:

var y c k i l y l w r z;
varexo e;
parameters beta psi delta alpha rho sigma epsilon;
alpha = 0.33;
beta = 0.99;
delta = 0.023;
psi = 1.75;
rho = 0.95;
sigma = (0.007/(1-alpha));
epsilon = 10;
model;
(1/c) = beta*(1/c(+1))*(1+r(+1)-delta);
l = (psi*c/w)-1;
c+i = y;
y = (k(-1)^alpha)*(exp(z)*l)^(1-alpha);
w = y*((epsilon-1)/epsilon)*(1-alpha)/l;
r = y*((epsilon-1)/epsilon)*alpha/k(-1);
i = k-(1-delta)*k(-1);
y_l = y/l;
z = rho*z(-1)+e;
end;

具体报错位置为蓝色的三条命令区域,其中第一条和第二条都是等号报错,均说等号左边是什么解析错误,不符合matlab的语法,但我把第二条的 i 移动到的等式右边就没有这个问题了,我也不知道我改的对不对。最后一个end也报错,真不知道是为什么,求大神指教!!

最佳答案

richardgu26 查看完整内容

首先,将dynare 模型存为.mod文件;其次,你的beta 可能跟Matlab自身所设定的beta函数有冲突。你先试试吧。第二条和end的错误,我觉得是因为你在.m环境下造成的。 祝你好运。
关键词:MATLAB dynare atlab matla ARE matlab sigma 模型

回帖推荐

richardgu26 发表于2楼  查看完整内容

首先,将dynare 模型存为.mod文件;其次,你的beta 可能跟Matlab自身所设定的beta函数有冲突。你先试试吧。第二条和end的错误,我觉得是因为你在.m环境下造成的。 祝你好运。

本帖被以下文库推荐

沙发
richardgu26 发表于 2014-11-5 14:17:40
首先,将dynare 模型存为.mod文件;其次,你的beta 可能跟Matlab自身所设定的beta函数有冲突。你先试试吧。第二条和end的错误,我觉得是因为你在.m环境下造成的。

祝你好运。

藤椅
richardgu26 发表于 2014-11-7 08:12:47
你的模型有问题

STEADY:  The Jacobian contains Inf or NaN. The problem arises from:

STEADY:  Derivative of Equation 5 with respect to Variable y  (initial value of y: 0)
STEADY:  Derivative of Equation 6 with respect to Variable y  (initial value of y: 0)
STEADY:  Derivative of Equation 8 with respect to Variable y  (initial value of y: 0)
STEADY:  Derivative of Equation 1 with respect to Variable c  (initial value of c: 0)
STEADY:  Derivative of Equation 2 with respect to Variable c  (initial value of c: 0)
STEADY:  Derivative of Equation 4 with respect to Variable k  (initial value of k: 0)
STEADY:  Derivative of Equation 6 with respect to Variable k  (initial value of k: 0)
STEADY:  Derivative of Equation 4 with respect to Variable l  (initial value of l: 0)
STEADY:  Derivative of Equation 5 with respect to Variable l  (initial value of l: 0)
STEADY:  Derivative of Equation 8 with respect to Variable l  (initial value of l: 0)
STEADY:  Derivative of Equation 2 with respect to Variable w  (initial value of w: 0)
STEADY:  Derivative of Equation 1 with respect to Variable r  (initial value of r: 0)
STEADY:  Derivative of Equation 4 with respect to Variable z  (initial value of z: 0)

STEADY:  The problem most often occurs, because a variable with
STEADY:  exponent smaller than 1 has been initialized to 0. Taking the derivative
STEADY:  and evaluating it at the steady state then results in a division by 0.
Error using dynare_solve (line 60)
An element of the Jacobian is not finite or NaN

Error in evaluate_steady_state (line 66)
            [ys,check] = dynare_solve([M.fname '_static'],...

Error in resol (line 104)
[dr.ys,M.params,info] = evaluate_steady_state(oo.steady_state,M,options,oo,0);

Error in check (line 73)
[dr,info,M,options,oo] = resol(1,M,options,oo);

Error in test (line 133)
oo_.dr.eigval = check(M_,options_,oo_);

Error in dynare (line 180)
evalin('base',fname) ;

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 00:44