《matlab零状态、零输入响应》由会员分享,可在线阅读,更多相关《matlab零状态、零输入响应(8页珍藏版)》请在金锄头文库上搜索。
1、1. 已知离散时间系统的差分方程为: 2y(n) - y(n-1) - 3y(n-2)=2x(n) - x(n-1) x(n)= u(n) , y(-1)=1,y(-2)=3 , 试用filter函数求系统的零输入响应、零状态响应和全响应.解:将差分方程Z变换得: .(1)依题意有:x(-1)=0,x(-2)=0,y(-1)=1,y(-2)=3 ,X(z)= 将上式变形如下: .(2) .(3) 易得系统函数为H(z)= 零输入时 零输入时,x(n)=0,差分方程右边为0,z变换后应为 = = 将Y(z)进行Z反变换,得到其零输入响应为:y(n)= 零状态时 零状态时,将y(-1)=0,y(-
2、2)=0代入上面的式(2)中,得 Y(z)= X(z)= =将其Z反变换,得到零状态响应为:y(n)= 全响应 与上面同理,y(-1)=1,y(-2)=3 将上面式(3)变形得: Y(z)= =Z反变换得全响应为 Y(n)= 程序代码:%第二章Z变换第2.12题程序clear all;close all;num=2 -1 0; %系统函数分子的系数den=2 -1 -3; %系统函数分母的系数n=0:50;nl=length(n);%求零输入响应y01=1 3; %y的初始状态x01=0 0; %x 的初始状态 x1=zeros(1,nl);zi1=filtic(num,den,y01,x01
3、); %为filter函数准备初始值y1=filter(num,den,x1,zi1); %求零输入响应subplot(311);stem(n,y1,r.);title(零输入响应);grid on;%求零状态响应y02=0 0;x02=0 0;x2=0.5.n;zi2=filtic(num,den,y02,x02);y2=filter(num,den,x2,zi2);subplot(312);stem(n,y2,r.);title(零状态响应);grid on;%求全响应y03=1 3;x03=0 0;x3=0.5.n;zi3=filtic(num,den,y03,x03);y3=filte
4、r(num,den,x1,zi3);subplot(313);stem(n,y3,r.);title(全响应);grid on;运行结果如下: 2. 已知离散系统的系统函数分别为 (1) (2) (3) (4) 试用MATLAB实现下列分析过程: 求出系统的零极点位置; 绘出系统的零极点图,根据零极点图判断系统的稳定性; 绘出系统单位响应的时域波形,并分析系统稳定性与系统单位响应时域特性的关系。解:程序代码如下: %第二章Z变换第2.13题程序clear all;close all;%题(1)a1=2 0 0 -1; %系统函数分母的系数b1=0 2 -2 -1; %系统函数分子的系数p1=r
5、oots(a1), %求极点pa1=abs(p1), %求极点到坐标原点的距离,看它是否大于1,若有一个大于1, %则系统不稳定;若所有的都小于1,则系统稳定q1=roots(b1), %求零点h1=impz(b1,a1); %求单位响应subplot(421);zplane(b1,a1);%画零极点图title(1)的零极点图);subplot(425);stem(h1,.); %单位响应的时域波形grid on;title(1)的单位响应的时域波形);%题(2)a2=3 0 0 -1; b2=0 0 1 1; p2=roots(a2), pa2=abs(p2), q2=roots(b2),
6、 h2=impz(b2,a2); subplot(422);zplane(b1,a1);title(2)的零极点图);subplot(426);stem(h2,.); grid on;title(2)的单位响应的时域波形);%题(3)a3=1 2 -4 1; b3=0 1 0 2; p3=roots(a3), pa3=abs(p3), q3=roots(b1), h3=impz(b3,a3); subplot(423);zplane(b3,a3);title(3)的零极点图);subplot(427);stem(h3,.); grid on;title(3)的单位响应的时域波形);%题(4)a
7、4=1 0 0 0; b4=1 0.2 0.3 0.4; p4=roots(a4), pa4=abs(p4), q4=roots(b4), h4=impz(b4,a4); subplot(424);zplane(b1,a1);title(1)的零极点图);subplot(428);stem(h4,.); grid on;title(1)的单位响应的时域波形);运行结果如下: 3. 已知描述离散系统的差分方程为: y(n) - y(n-1) - y(n-2)=4x(n) - x(n-1) - x(n-2) 试用MATLAB绘出系统的零极点分布图,并绘出系统的幅频和相频特性曲线,分析该系统的作用解
8、:程序代码如下:clear all;close all;num=4,-1,-1;den=1 -1 -1;H,w=freqz(num,den);subplot(311);zplane(num,den);subplot(312);plot(w/pi,abs(H);grid on;title(幅频响应曲线)subplot(313);plot(w/pi,angle(H);title(相频响应曲线);grid on;运行结果如下:4. 已知因果(单边)离散序列的Z变换分别如下所示,试用MATLAB求出其Z反变换 (1) (2) (3) (4) 解:程序代码如下:clear all;close all;F
9、1=sym(z2+z+1)/(z2+z-2);f1=iztrans(F1),F2=sym(2*z2-z+1)/(z3+z2+z/2);f2=iztrans(F2),F3=sym(z2)/(z2+sqrtm(2)*z+1);f3=iztrans(F3),F4=sym(z3+2*z2+z+1)/(3*z4+2*z3+3*z2+2*z+1);f4=iztrans(F4)运行结果如下:f1 = (-2)n/2 - kroneckerDelta(n, 0)/2 + 1注:kroneckerDelta(n, 0)=f2 = 2*kroneckerDelta(n - 1, 0) - 6*kroneckerD
10、elta(n, 0) + 3*(-1)n*2(1 - n)*i*(i + 1)(n - 1) - 3*(-1)n*2(1 - n)*i*(1 - i)(n - 1) f3 = 2*(-1)n*cos(n*acos(sqrtm(2)/2) + (-1)n*(sqrtm(2)/2 + (sqrtm(2)2/4 - 1)(1/2)(n - 1)/(2*(sqrtm(2)2/4 - 1)(1/2) - (-1)n*(sqrtm(2)/2 - (1/4*sqrtm(2)2 - 1)(1/2)(n - 1)/(2*(sqrtm(2)2/4 - 1)(1/2) f4 = sum(-(r3*r3n + r3n
11、 + 2*r32*r3n + r33*r3n)/(2*r33 + 6*r32 + 6*r3 + 4), r3 in RootOf(z14 + (2*z13)/3 + z12 + (2*z1)/3 + 1/3, z1) + kroneckerDelta(n, 0)sum( -(r3*r3n + r3n + 2*r32*r3n + r33*r3n)/(2*r33 + 6*r32 + 6*r3 + 4), r3 in RootOf(z14 + (2*z13)/3 + z12 + (2*z1)/3 + 1/3, z1) ) + kroneckerDelta(n, 0)注:r3 in RootOf(z1
12、4 + (2*z13)/3 + z12 + (2*z1)/3 + 1/3, z1)就是说r3是关于Z1的方程z14 + (2*z13)/3 + z12 + (2*z1)/3 + 1/3=0的根。sum( -(r3*r3n + r3n + 2*r32*r3n + r33*r3n)/(2*r33 + 6*r32 + 6*r3 + 4), r3 in RootOf(z14 + (2*z13)/3 + z12 + (2*z1)/3 + 1/3, z1) )就是将上面方程的每个根(即r3的值)代入-(r3*r3n + r3n + 2*r32*r3n + r33*r3n)/(2*r33 + 6*r32 + 6*r3 + 4),然后相加。