楼主: lisuper0000
7217 13

[经济学模型] Dynare程序不能运行,求帮助 [推广有奖]

  • 2关注
  • 0粉丝

高中生

15%

还不是VIP/贵宾

-

威望
0
论坛币
1 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
100 点
帖子
14
精华
0
在线时间
34 小时
注册时间
2012-10-30
最后登录
2024-10-24

楼主
lisuper0000 发表于 2012-12-9 15:32:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
刚刚开始学习Dynare,看了Userguide的第三章,想把上面的程序跑一遍试试,但是总是出错。

Starting Dynare (version 4.3.1).
Starting preprocessing of the model file ...
ERROR: example1.mod:39.5: Symbol e declared twice with different types!

??? Error using ==> dynare
DYNARE: preprocessing failed


求帮忙解释一下怎么回事,应该怎么改。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:dynare 求帮助 ARE Processing userguide different declared version failed ERROR

example1.zip
下载链接: https://bbs.pinggu.org/a-1229193.html

494 Bytes

本附件包括:

  • example1.mod

已有 1 人评分经验 收起 理由
rastila + 1 不要传附件,直接把code复制上来

总评分: 经验 + 1   查看全部评分

沙发
lisuper0000 发表于 2012-12-10 11:56:51
下面是代码,问题还是没解决,求各位老师帮忙。

var y c k i l y_l w r z;
varexo e;
parameters beta psi delta alpha rho gamma 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);
psi*c/(1-l) = w;
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;

initval;
k = 9;
c = 0.76;
l = 0.3;
w = 2.07;
r = 0.03;
z = 0;
e = 0;
end;

steady;
check;

shock;
var e = sigma^2;
end;

stoch_simul(periods=2100);

藤椅
Jiarui_Zhang 发表于 2012-12-10 14:27:30
你的Matlab路径设置对了吗?

板凳
rastila 在职认证  发表于 2012-12-10 16:24:58
lisuper0000 发表于 2012-12-10 11:56
下面是代码,问题还是没解决,求各位老师帮忙。

var y c k i l y_l w r z;
把 initval 里面的 e=0去掉

报纸
lisuper0000 发表于 2012-12-10 21:41:06
rastila 发表于 2012-12-10 16:24
把 initval 里面的 e=0去掉
还是不行啊,下面这个程序就可以运行,不知道为什么。

var y, c, k, a, h, b;
varexo e, u;

parameters beta, rho, alpha, delta, theta, psi, tau;

alpha = 0.36;
rho   = 0.95;
tau   = 0.025;
beta  = 0.99;
delta = 0.025;
psi   = 0;
theta = 2.95;

model;
exp(c)*theta*exp(h)^(1+psi)=(1-alpha)*exp(y);
exp(k) = beta*(((exp(b)*exp(c))/(exp(b(+1))*exp(c(+1))))
         *(exp(b(+1))*alpha*exp(y(+1))+(1-delta)*exp(k)));
exp(y) = exp(a)*(exp(k(-1))^alpha)*(exp(h)^(1-alpha));
exp(k) = exp(b)*(exp(y)-exp(c))+(1-delta)*exp(k(-1));
a = rho*a(-1)+tau*b(-1) + e;
b = tau*a(-1)+rho*b(-1) + u;
end;

initval;
y = 0.1;
c = -0.2;
h = -1.2;
k =  2.4;
a = 0;
b = 0;
e = 0;
u = 0;
end;

steady;

shocks;
var e = 0.009^2;
var u = 0.009^2;
end;

stoch_simul(periods=2000, drop=200);

地板
lisuper0000 发表于 2012-12-10 21:41:58
Jiarui_Zhang 发表于 2012-12-10 14:27
你的Matlab路径设置对了吗?
路径设置是对的,别的程序也可以运行,就这个不行。

7
发呆有害 学生认证  发表于 2012-12-10 22:58:39
我也遇到了同样的问题。

8
bjjdking 发表于 2013-1-12 11:11:19
定义 var和 varexo, parameters把变量逗号去掉。 另外,我感觉你是要写log linear approximation,log linear的写法是要用steady state SS 乘以自己变量的exp(.)。

9
aijundang 发表于 2013-1-23 19:16:35
其实很简单,这个程序我跑过了,没有问题。
你的问题出在了输入错误上,c+i == y;改成c+i = y;就没有问题了。

10
moon1202x 发表于 2013-1-24 02:59:05
不知道,帮顶~

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

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-29 01:02