全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
1135 0
2012-08-04
主程序我就补贴了,太长了。主程序调用callGMM

主程序里面定义以下变量:

theta, delta_it, deltaf_jt : I set initial value of them

x is data
betaXmat is a function of x that is calculated in the main function.
z is instruments.

Function A:
function [var1] = callGMM(theta)  
var1 = gmm(theta);
end

Function B
function [var1] = gmm(theta)
moments = getMoments(theta);
objective = moments'*w*moments;
var1 = objective;
end

function C

function [var1] = getMoments(theta)
xi = getXi(theta);
var1 = (z'*xi);
end

function D

function [var1] = getXi(theta) %到这里就出问题了,说undefined variable deltaf_jt,,,,,,,,等等
[deltaf_jt, delta_it] = getDeltasAndV(theta, deltaf_jt, delta_it);
betaX = betaXmat*deltaf_jt;
xi = deltaf_jt - x*betaX;
var1 = xi;
end


不知到这样清楚不。

我尝试了1。把input argment 改称 (theta, delta_it, deltaf_jt, x,betaXmat, z) 被告知too many input arguments
2. global variable 肯定不行

我觉得主要问题就是怎么让子程序用主程序的variable,在这些variable不作为input的情况下???

谢谢拉,叩谢

二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群