MATLAB 根轨迹图绘制:直接定义参数实现
num = [1 11 37 35]; den = [1 9 26 24 0]; K = 0:0.1:500; % 定义增益范围 r = roots(num); % 求分子多项式根 p = roots(den); % 求分母多项式根 N = length(p)-length(r); % 计算开环系统零极点差 s = -1:0.01:1; % 定义s的范围 for i = 1:length(K) clf; % 清空图像 hold on; % 保持图像 plot(real(s),imag(s),'k--'); % 绘制虚轴 plot(real(r),imag(r),'ro'); % 绘制分子多项式根 plot(real(p),imag(p),'bx'); % 绘制分母多项式根 plot(-1:0.01:1,zeros(length(-1:0.01:1)),'k'); % 绘制实轴 axis([-2 2 -2 2]); % 设置坐标轴范围 Ksys = K(i)tf(num,den); % 计算系统传递函数 % 使用定义直接绘制根轨迹 for j = 1:length(s) charpoly = poly(Ksyss(j)); roots_charpoly = roots(charpoly); plot(real(roots_charpoly), imag(roots_charpoly), 'g.'); end title(['K = ', num2str(K(i))]); % 设置标题 pause(0.01); % 延时显示 end
原文地址: http://www.cveoy.top/t/topic/omJU 著作权归作者所有。请勿转载和采集!