2.3 编程练习
1. 试用MATLAB命令求解以下离散时间系统的单位取样响应。
(1)3y(n)?4y(n?1)?y(n?2)?x(n)?x(n?1) (2) 解:
5y(n)?6y(n?1)?10y(n?2)?x(n) 2
附:
a1=[3 4 1];a2=[5/2 6 10]; b1=[1 1];b2=1; n=0:20; subplot(211)
impz(b1,a1,n),grid on
title('系统(1)单位取样响应h(n)') subplot(212)
impz(b2,a2,n),grid on
title('系统(2)单位取样响应h(n)')
2. 已知某系统的单位取样响应为h?n??()?u?n??u?n?10??,试用MATLAB求当激励信
n78号为x(n)?u(n)?u(n?5)时,系统的零状态响应。
解:
附:
nx=-1:6; nh=-2:12; x=uDT(nx)-uDT(nx-5);
h=(7/8).^nh.*(uDT(nh)-uDT(nh-10)); y=conv(x,h);
ny1=nx(1)+nh(1);
ny=ny1+(0:(length(nx)+length(nh)-2)); subplot(311)
stem(nx,x,'fill'),grid on xlabel('n'),title('x(n)') axis([-4 16 0 3]) subplot(312)
stem(nh,h','fill'),grid on xlabel('n'),title('h(n)') axis([-4 16 0 3]) subplot(313)
stem(ny,y,'fill'),grid on
xlabel('n'),title('y(n)=x(n)*h(n)') axis([-4 16 0 5]
实验三 z变换及离散时间LTI系统的z域分析
3.1 实验目的
? ? ? ?
学会运用MATLAB求离散时间信号的z变换和z反变换; 学会运用MATLAB分析离散时间系统的系统函数的零极点;
学会运用MATLAB分析系统函数的零极点分布与其时域特性的关系; 学会运用MATLAB进行离散时间系统的频率特性分析。
3.2 实验原理及实例分析
3.2.1 z正反变换
序列x?n?的z变换定义为
X?z??Z?x?n???n????x?n?z???n
其中,符号Z表示取z变换,z是复变量。相应地,单边z变换定义为
X?z??Z?x?n????x?n?zn?0?n
MATLAB符号数学工具箱提供了计算离散时间信号单边z变换的函数ztrans和z反变换函数iztrans,其语句格式分别为
Z=ztrans(x) x=iztrans(z)
上式中的x和Z分别为时域表达式和z域表达式的符号表示,可通过sym函数来定义。 实例1: 试用ztrans函数求下列函数的z变换。
(1)x(n)?acos(?n)u(n); 解:(1)z变换MATLAB源程序为
>>x=sym('a^n*cos(pi*n)'); >>Z=ztrans(x); >>simplify(Z) ans=
z/(z+a)
n 实例2: 试用iztrans函数求x(z)?8z?19的z反变换。
z2?5z?6解:(1)z反变换MATLAB源程序为
>>Z=sym('(8*z-19)/(z^2-5*z+6)');
>>x=iztrans(Z); >>simplify(x) ans=
-19/6*charfcn[0](n)+5*3^(n-1)+3*2^(n-1)
其中,charfcn[0](n)是?(n)函数在MATLAB符号工具箱中的表示,反变换后的函数形式为
x(n)??19?(n)?(5?3n?1?3?2n?1)u(n) 63.2.2 系统函数的零极点分析
离散时间系统的系统函数定义为系统零状态响应的z变换与激励的z变换之比,即
H(z)?Y(z) X(z)如果系统函数H(z)的有理函数表示式为
b1zm?b2zm?1???bmz?bm?1 H(z)?
a1zn?a2zn?1???anz?an?1那么,在MATLAB中系统函数的零极点就可通过函数roots得到,也可借助函数tf2zp得到,tf2zp的语句格式为
[Z,P,K]=tf2zp(B,A) 其中,B与A分别表示H(z)的分子与分母多项式的系数向量。它的作用是将H(z)的有理分式表示式转换为零极点增益形式,即
H(z)?k(z?z1)(z?z2)?(z?zm)
(z?p1)(z?p2)?(z?pn)z?0.32,试用MATLAB2z?z?0.16 实例3:已知一离散因果LTI系统的系统函数为H(z)?命令求该系统的零极点。
解:用tf2zp函数求系统的零极点,MATLAB源程序为
>>B=[1,0.32]; >>A=[1,1,0.16]; >>[R,P,K]=tf2zp(B,A) R= -0.3200 P= -0.8000 -0.2000 K= 1