也不晓得我写的是不是你所需要的答案!
只需要给定a的范围!
调用myfun函数即可得到阶跃响应的其中三个指标
如果是你需要的答案,请采纳!
谢!
还有问题请留言!
function [cmax,tp,ts]=myfun(a)
%概略计算某参数变化时阶跃响应的峰值、峰值时间、调节时间
%定义数组a,如a=1:0.1:5;
n=length(a);
for i=1:n
%建立传递函数
num=[1];den=[1 2*a(i) 1];
sys0=tf(num,den);
[y0,t0]=step(sys0);
%计算峰值cmax、峰值时间tp
cmax(i)=max(y0);
tp(i)=spline(y0,t0,cmax(i));
%计算调节时间ts,5%,如果需要计算2%只需将0.05换成0.02即可
for k=1:length(y0)
if abs(y0(k:length(y0))-1)