matlab编程遇到的问题。程序如下,ig赋值4个的时候,图形很正常。但是ig赋值5个的时候,图形就错了。以下是图形正常的程序,
ig=[5.56294 2.76294 1.64294 1.00294];
for i=1:4
n=600:1:4000;
t=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
ft=t*ig(i)*5.83*0.85/0.367;
ua=0.377*0.367*n/ig(i)/5.83;
ff=3880*9.8*0.013+2.77/21.15*ua.*ua;
mh=3880+5.4/0.367/0.367+0.218*5.83*5.83*ig(i)^2*0.85/0.367/0.367;
a=(ft-ff)/mh;
m=1./a;
str=[*r*,*m*,*b*,*c*];
plot(ua,m,str(i));
grid on;
hold on;
end
以下为图形错误的程序,中间语句全部没有改变,就只是改变了ig和str和最后的legend,哪里出问题了,请前辈们帮忙看看!谢谢!
ig=[5.56294 2.76294 1.64294 1.00294 0.79294];
for i=1:5
n=600:1:4000;
t=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
ft=t*ig(i)*5.83*0.85/0.367;
ua=0.377*0.367*n/ig(i)/5.83;
ff=3880*9.8*0.013+2.77/21.15*ua.*ua;
mh=3880+5.4/0.367/0.367+0.218*5.83*5.83*ig(i)^2*0.85/0.367/0.367;
a=(ft-ff)/mh;
m=1./a;
str=[*r*,*m*,*b*,*c*,*r*];
plot(ua,m,str(i));
grid on;
hold on;
end
ig=[5.56294 2.76294 1.64294 1.00294];
for i=1:4
n=600:1:4000;
t=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
ft=t*ig(i)*5.83*0.85/0.367;
ua=0.377*0.367*n/ig(i)/5.83;
ff=3880*9.8*0.013+2.77/21.15*ua.*ua;
mh=3880+5.4/0.367/0.367+0.218*5.83*5.83*ig(i)^2*0.85/0.367/0.367;
a=(ft-ff)/mh;
m=1./a;
str=[*r*,*m*,*b*,*c*];
plot(ua,m,str(i));
grid on;
hold on;
end
以下为图形错误的程序,中间语句全部没有改变,就只是改变了ig和str和最后的legend,哪里出问题了,请前辈们帮忙看看!谢谢!
ig=[5.56294 2.76294 1.64294 1.00294 0.79294];
for i=1:5
n=600:1:4000;
t=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
ft=t*ig(i)*5.83*0.85/0.367;
ua=0.377*0.367*n/ig(i)/5.83;
ff=3880*9.8*0.013+2.77/21.15*ua.*ua;
mh=3880+5.4/0.367/0.367+0.218*5.83*5.83*ig(i)^2*0.85/0.367/0.367;
a=(ft-ff)/mh;
m=1./a;
str=[*r*,*m*,*b*,*c*,*r*];
plot(ua,m,str(i));
grid on;
hold on;
end