matlab程序错误Undefined function or variable 'm'. 30
已知Ф=5Ka/s^2+34.5s+5Ka,试计算Ka=200时,系统的性能指标tp,ts,σ%。>>t=0:0.01:2;num=[1000];den=[134.510...
已知Ф=5Ka/s^2+34.5s+5Ka,试计算Ka=200时,系统的性能指标tp,ts,σ%。
>> t=0:0.01:2;
num=[1000];
den=[1 34.5 1000];
[y,x,t]=step(num,den,t);
plot (t,y);
maxy=max(y);
yss=y(length(t));
pos=100*(maxy-yss)/yss;
for i=1:1:201
if y(i)==maxy,n=i;end
end
tp=(n-1)*0.01;
for i=1:1:201
if(y(i)<1.05&y(i)>0.95),m=i;end
break;
end
ts=(m-1)*0.01;
Undefined function or variable 'm'. 展开
>> t=0:0.01:2;
num=[1000];
den=[1 34.5 1000];
[y,x,t]=step(num,den,t);
plot (t,y);
maxy=max(y);
yss=y(length(t));
pos=100*(maxy-yss)/yss;
for i=1:1:201
if y(i)==maxy,n=i;end
end
tp=(n-1)*0.01;
for i=1:1:201
if(y(i)<1.05&y(i)>0.95),m=i;end
break;
end
ts=(m-1)*0.01;
Undefined function or variable 'm'. 展开
2个回答
展开全部
应当这样说,你的for i=1:1:201没有一个满足if那个条件.
也就是说m=i从来没有被运行过.
所以m这个变量没有定义过.
导致ts那一行引用m会提示没有m这个东西.
也就是说m=i从来没有被运行过.
所以m这个变量没有定义过.
导致ts那一行引用m会提示没有m这个东西.
追问
我该怎么定义m这个值呢?
追答
关键是你自己想干什么?
你自己要判断如果都没有执行都那一句,你是报错,还是给m赋个值。如果要给m赋值,你可以在for前面加一句:
m=100;
之类的,如果for里面有执行到,那么m的值自动就被修改了,如果没有被执行到,那么m的值就是100
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询