返回信息流代码如下:
function[sample]=f(t1,t2,m)
pl=20;
ph=80;
c=t2-t1-1;
d=min(c,ph);
sample=0;
tmp3=0;
span=d-pl+1;
if c<pl
sample=0;
else
p=1/span;
if m==0
sample=h(t2-t1-1);
else
for i=pl:d
tmp2=0;
for j=t1+1:t2-i
tmp1=1;
if m>1
for k=0:m-1
tmp1=tmp1+f(t1,j,k)*f(j+i,t2,m-1-k);
end
end
tmp2=tmp2+tmp1*h(j-t1-1)*h(t2-j-i);
end
tmp3=tmp2*p;
sample=sample+tmp3;
end
end
end
运行测试的时候,发现f(0,100,m),其中m<4时能够运行。当m=4时,会提示
error in==> f at 46
sample
error in==> f at 36
tmp1=tmp1+f(t1,j,k)*f(j+i,t2,m-1-k);
error in==> f at 36
tmp1=tmp1+f(t1,j,k)*f(j+i,t2,m-1-k);
error in==> f at 36
tmp1=tmp1+f(t1,j,k)*f(j+i,t2,m-1-k);
请问这个问题是因为迭代次数太多造成的?
ps:h函数是一个幂函数。
这是一条镜像帖。来源:北邮人论坛 / matlab / #7952同步于 2011/3/29
Matlab机器人发帖
[求助]关于matlab中迭代问题
Christinaf
2011/3/29镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。