离散系统函数零积点分析

离散系统函数零积点分析

在 Matlab中,系统函数的零极点就可以通过函数 roots 得到。

函数的零极点也可以通过函数 tf2zp 获得,其调用格式为:[Z, P, K] = tf2zp(B, A),函数 tf2zp 可以将H(z)的有理分式转换为零极点增益形式,B、A分别表示 H(z) 的分子、分母多项式的系统向量,

  • Z 表示零点向量,P 表示极点向量,K 表示系统增益。

函数 zplane 用于绘制 H(z)的零极点图,其调用形式为:zplane(z, p),绘制出列向量 z 中的零点(以符号 o 表示)和 p 中的极点(以符号 x 表示)。

说明:如果 z 和 p 为矩阵,则会以不同的颜色绘制出 z 和 p 各列中的零点和极点。

% E_6_5.m

% 已知某离散系统的系统函数如下。试用 Matlab 求出该系统的零极点,并画出零极点分布图,判断系统是否稳定。

% 系统函数为:H(z) = (2*z + 1)/(3*z^5 - 2*z^4 + 1)

% E_6_5.m
% 已知某离散系统的系统函数如下。试用 Matlab 求出该系统的零极点,
% 并画出零极点分布图,判断系统是否稳定。
% 系统函数为:H(z) = (2*z + 1)/(3*z^5 - 2*z^4 + 1)

% 绘制零极点分布图的实现程序
a = [3 -2 0 0 0 1];
b = [2 1];
% ljdt(a,b);
% % % % % % 函数ljdt % % START % % % % % % % % % % % % % % % % 
% function ljdt(A,B)
p = roots(a);  % 求系统极点
q = roots(b);  % 求系统零点
p = p';  % 将极点列向量转置为行向量
q = q';  % 将零点列向量转置为行向量
x = max(abs([p q 1]));  % 确定纵坐标范围
x = x + 0.1;
y = x;
hold on
axis([-x x -y y]);
w = 0:pi/300:2*pi;
t = exp(1i*w);
plot(t);  % 画出单位圆
axis('square');
plot([-x x], [0 0]);
plot([0 0], [-y y]);
text(0.1, x, 'jIm[z]');
text(y, 1/10, 'Re[z]');
plot(real(p), imag(p), 'x');
plot(real(q), imag(q), 'o');
title('零极点图');
hold off;
% end
% % % % % % % % 函数ljdt % % END % % % % % % % % % % % % % % % % 
p = roots(a)
q = roots(b)
pa = abs(p)

% 该系统的所有极点都位于 Z 平面的单位圆内,故该系统为稳定系统。

该系统的所有极点都位于 Z 平面的单位圆内,故该系统为稳定系统。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值