licm 发表于 2011-3-31 17:26

请问matlab 程序是什么错误?

本帖最后由 licm 于 2011-3-31 17:27 编辑

不知道错误出在哪里,
源程序:function y=za(z)
=size(z);
f=[];
for i=1:c
   
    f(i)=z(1,i)-z(a,i);
end
=min(f)

z0=z(:,columnx);%choose the optimal solution
=max(consg(z0));
syms z1 z2 z3 z3 z4 z5 z6 z7 z8 z9 z10;
cc=c;
while maxg>0
gradg=jacobian(,);
gradp=subs(gradg(columng,:),{z1,z2,z3,z4,z5,z6,z7,z8,z9,z10},{z0(1),z0(2),z0(3),z0(4),z0(5),z0(6),z0(7),z0(8),z0(9),z0(10)});

grad=double(gradp);
p0=double(maxg);

Vne=[];
l=[];
for i=1:cc
l(i)=grad*(z(:,i)-z0)+p0;
if l(i)<=0
   Vne=;

end
end

z=Vne;

=size(z);

f=[];
for i=1:cc
   f(i)=z(1,i)-z(a,i);
end
=min(f);
z0=z(:,columnx);
=max(consg(z0));

end

运行结果 ??? Attempted to access z(1); index out of bounds because numel(z)=0.

Error in ==> consg at 4
g=;

Error in ==> za at 45
=max(consg(z0));

ChaChing 发表于 2011-4-1 00:40

本帖最后由 ChaChing 于 2011-4-1 01:09 编辑

回复 1 # licm 的帖子

1.个人水平专业有限, consg好像没交代!?
2.请标题要明确!

雨人 发表于 2011-4-1 10:34

回复 1 # licm 的帖子

程序运行错误,可以单步调试,定位到出错的地方。你的还是矩阵访问超出矩阵的边界

zhenzhy 发表于 2011-4-7 13:01

好像是数组越界了

licm 发表于 2011-4-12 10:03

谢谢谢谢
页: [1]
查看完整版本: 请问matlab 程序是什么错误?