《数字信号处理》实验指导书(完整) - 图文 下载本文

特性。

MATLAB提供了求离散时间系统频响特性的函数freqz,调用freqz的格式主要有两种。一种形式为

[H,w]=freqz(B,A,N)

其中,B与A分别表示H(z)的分子和分母多项式的系数向量;N为正整数,默认值为512;返回值w包含[0,?]范围内的N个频率等分点;返回值H则是离散时间系统频率响应H(ej?)在0~?范围内N个频率处的值。另一种形式为

[H,w]=freqz(B,A,N,’whole’)

与第一种方式不同之处在于角频率的范围由[0,?]扩展到[0,2?]。

z2?0.96z?0.9028【实例2-6】 用MATLAB命令绘制系统H(z)?2的频率

z?1.56z?0.8109响应曲线。

解:利用函数freqz计算出H(ej?),然后利用函数abs和angle分别求出幅

频特性与相频特性,最后利用plot命令绘出曲线。MATLAB源程序为

>>b=[1 -0.96 0.9028]; >>a=[1 -1.56 0.8109];

>>[H,w]=freqz(b,a,400,'whole'); >>Hm=abs(H); >>Hp=angle(H); >>subplot(211) >>plot(w,Hm),grid on

>>xlabel('\\omega(rad/s)'),ylabel('Magnitude') >>title('离散系统幅频特性曲线') >>subplot(212) >>plot(w,Hp),grid on

>>xlabel('\\omega(rad/s)'),ylabel('Phase') >>title('离散系统相频特性曲线')

程序运行结果如图2-3所示。

20

图4-3 离散系统频响特性曲线

2.3 编程练习

2z4?16z3?44z2?56z?321. 试用MATLAB的residuez函数,求出X(z)?的

3z4?3z3?15z2?18z?12部分分式展开和。 结果:MATLAB源程序为 >>B=[2 16 44 56 32]; >>A=[3,3,-15,18,-12]; >>[R,P,K]=residuez(B,A) R =

-0.0177 9.4914

21

-3.0702 + 2.3398i -3.0702 - 2.3398i P =

-3.2361 1.2361 0.5000 + 0.8660i 0.5000 - 0.8660i K =

-2.6667

X(z)?(?2.6667)[ 2.

?0.01779.4914?3.0702?2.3398i?3.0702?2.3398i???]1?3.2361z?11?1.2361z?11?(0.5?0.866i)z?11?(0.5?0.866i)z?1试用MATLAB画出下列因果系统的系统函数零极点分布图,并判断系统的稳定性。

2z2?1.6z?0.9(1)H(z)?3

z?2.5z2?1.96z?0.48结果:程序: B=[2,-1.6,-0.9]; A=[1,-2.5,1.96,-0.48]; [R,P,K]=tf2zp(B,A) zplane(B,A)

22

(2)H(z)?z?1 432z?0.9z?0.65z?0.873z结果:程序: B=[1,-1];

A=[1,-0.9,-0.65,0.873]; [R,P,K]=tf2zp(B,A) zplane(B,A)

23