概述
我的程序如下:// Declare variables
var y r k b tax agov wage gama s cf cs;
// Declare parameter values
parameters cbeta cdelta cphi ctheta cn ca cd cb ct da ft;
cbeta=0.98;
cdelta=5;
cphi=0.2058;
cn=1;
ctheta=0.2;
ca=0.3;
cd=0.97;
cb=0.09;
ct=0.05;
ft=0.1;
da=2;
model;
y= da*k^ctheta;
r= da*ctheta*k^(ctheta-1);
wage= da*(1-ctheta)*k^ctheta;
gama(+1)=cn*(cd+cphi*agov^ca)*k(+1)^ctheta/k^ctheta;
tax=ct*wage+ft*r*(b+k);
b(+1)*cn*(cd+cphi*agov^ca)=agov+r*b-tax;
s=wage*(1-ct)*cbeta^cdelta*(r*(1-ft))^(cdelta-1)/(1+cbeta^cdelta*(r*(1-ft))^(cdelta-1));
k(+1)+b(+1)=s/(cn*(cd+cphi*agov^ca));
b=cb*y;
cf=wage*(1-ct)/(1+cbeta^(-cdelta)*(r*(1-ft))^(1-cdelta));
cs=wage*(1-ct)*(cbeta*r*(1-ft))^(1-cdelta)/(1+cbeta^(0-cdelta)*(r*(1-ft))^(1-cdelta));
end;
initval;
k =0.1;
y = da*k^ctheta;
r= da*ctheta*k^(ctheta-1);
wage= da*(1-ctheta)*k^ctheta;
b =cb*y;
tax =ct*wage;
agov =0.1;
s=(wage-tax)*cbeta^cdelta*r^(cdelta-1)/(1+cbeta^cdelta*r^(cdelta-1));
end;
steady;
如果不加check是可以求出稳态值得,但是加了check命令后,就出现了以下的问题,求大神解答问题出在哪?
无法执行赋值,因为左侧的大小为 3-by-2,右侧的大小为 3-by-3。
出错 dyn_first_order_solver (line 213)
E(row_indx_de_1,index_e1) = -aa(row_indx,index_e);
出错 stochastic_solvers (line 267)
[dr,info] = dyn_first_order_solver(jacobia_,M_,dr,options_,task);
出错 resol (line 144)
[dr,info] = stochastic_solvers(dr,check_flag,M,options,oo);
出错 check (line 73)
[dr,info,M,options,oo] = resol(1,M,options,oo);
出错 model5 (line 194)
oo_.dr.eigval = check(M_,options_,oo_);
出错 dynare (line 235)
evalin('base',fname) ;
>>
最后
以上就是典雅啤酒为你收集整理的matlab中check,使用dynare的check命令是遇到的问题的全部内容,希望文章能够帮你解决matlab中check,使用dynare的check命令是遇到的问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复