- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验七 离散时间信号与系统的Z域分析及MATLAB实现
实验七离散时间信号与系统的Z域分析及MATLAB实现
[]
1.
2..离散时间系统零极点分布图和系统幅频响应的MATLAB实现
[]
一.反z变换的MATLAB实现
在MATLAB中,函数residuez可以用来计算一个有理分式的留数部分和直接项。
设多项式表示为:
函数residuez的调用格式为:
[r, p, c]=residuez(b, a)
其中,向量b,a分别决定多项式B(z)和A(z)的系数,按z的降幂排列。返回的列
向量r包含留数值,列向量p包含极点的位置,行向量包含直接项。
一般情况下,用MATLAB求反z变换的步骤为:
(1)确定z变换的收敛域,这是最关键的一步。
(2)用MATLAB求出有理分式的极点分布,以及在各个极点上的留数值和直接项
的值,从而将有理分式分解为简单的分式之和,然后根据收敛域,求出原始序列。
解:本例的反z变换的程序如下:
b=[10, 1, -1]; a=[1, 0, -0.25]; %确定z变换表示式
[r, p, c] = residuez(b, a)
运算结果显示为:
r=4
2
p=0.5000
-0.5000
c=4
因此,分式X(z)可以表示为:
下面的MATLAB命令将产生频率响应曲线:
num=[dN dN-1 ….. d0];
den=[aN aN-1 ….. a0];
omega=-pi: pi/150: pi;
H=freqz(num, den, omega);
mag=abs(H);
phase=180/pi*unwrap(angle(H));
则下面的MATLAB程序可以获得频率响应曲线:
num=[1 0];
den=[1 -0.5];
omega=-pi: pi/150: pi;
H=freqz(num, den, omega);
subplot(211), plot(omega, abs(H));
subplot(212), plot(omega, 180/pi*unwrap(angle(H)));
此程序产生的曲线如下图1所示:
三.离散时间系统零极点分布图和系统幅频响应的MATLAB实现
试用MATLAB在z平面中画出H(z)的零点和极点,以及系统的幅度响应。
解:本例的MATLAB程序实现为:
b= [1, -1, -2]
a=[1, 1.5, -1];
%figure
subplot(221)
zplane(b,a)
xlabel(虚部)
ylabel(实部)
title(零极点图)
[H, w]=freqz(b, a, 250);
%figure
subplot(222)
plot(w, abs(H))
xlabel(频率)
ylabel(幅度)
title(幅频响应图)
系统的零极点图如图2(a),系统幅频响应曲线如图2(b)。
文档评论(0)