阅读背景:

数字信号处理matlab逆z变换,数字信号处理实验(MATLAB版)实验7 z变换及其应用.ppt..._氢气青丘的博客

来源:互联网 

一、实验目的  (1)加深对离散系统变换域分析——z变换的理解。  (2)掌握进行z变换和z反变换的基本方法,了解部分分式法在z反变换中的应用。  (3)掌握使用MATLAB语言进行z变换和z反变换的常用子函数。 二、实验涉及的MATLAB子函数  1.ztrans  功能:返回无限长序列函数x(n)的z变换。  调用格式:  X=ztrans(x);求无限长序列函数x(n)的z变换X(z),返回z变换的表达式。   2.iztrans  功能:求函数X(z)的z反变换x(n)。  调用格式:  x=iztrans(X);求函数X(z)的z反变换x(n),返回z反变换的表达式。   3.syms  功能:定义多个符号对象。  调用格式:  symsabw0;把字符a,b,w0定义为基本的符号对象。   4.residuez  功能:有理多项式的部分分式展开。  调用格式:  =residuez(b,a);把b(z)/a(z)展开成(如式(7-3))部分分式。  [b,a]=residuez(rpc);根据部分分式的r、p、c数组,返回有理多项式。  其中:b,a为按降幂排列的多项式(如式(7-1))的分子和分母的系数数组;r为余数数组;p为极点数组;c为无穷项多项式系数数组。 三、实验原理  1.用ztrans子函数求无限长序列的z变换  MATLAB为我们提供了进行无限长序列的z变换的子函数ztrans。使用时须知,该函数只给出z变换的表达式,而没有给出收敛域。另外,由于这一功能还不尽完善,因而有的序列的z变换还不能求出,z逆变换也存在同样的问题。   例7-1 求以下各序列的z变换。    解 syms w0 n z a  x1=a^n;X1=ztrans(x1)  x2=n;X2=ztrans(x2)  x3=(n*(n-1))/2;X3=ztrans(x3)  x4=exp(j*w0*n);X4=ztrans(x4)  x5=1/n*(n-1);X5=ztrans(x5)   程序运行结果如下:  X1=z/a/(z/a-1)  X2=z/(z-1)^2  X3=-1/2*z/(z-1)^2+1/2*z*(z+1)/(z-1)^3  X4=z/exp(i*w0)/(z/exp(i*w0)-1)  ???Errorusing==>sym/maple ←表示(x5)不能求出z变换  [ZK(]Error,(inconvert/hypergeom)Summandissingularatn=0intheintervalofsummation   Errorin==>C:\MATLAB6p1\toolbox\symbolic\@sym\ztrans.m  Online81==>F=maple(¢map¢,¢ztrans¢,f,n,z);   2.用iztrans子函数求无限长序列的z反变换  MATLAB还提供了进行无限长序列的z反变换的子函数iztrans。  例7-2 求下列函数的z反变换。   解 symsnza  X1=z/(z-1);x1=iztrans(X1)  X2=a*z/(a-z)^2;x2=iztrans(X2)  X3=z/(z-1)^3;x3=iztrans(X3)  X4=(1-z^-n)/(1-z^-1);x4=iztrans(X4)  程序运行结果如下:  x1=1  x2=n*a^n  x3=-1/2*n+1/2*n^2  x4=iztrans((1-z^(-n))/(1-1/z),z,n)   3.用部分分式法求z反变换  部分分式法是一种常用的求解z反变换的方法。当z变换表达式是一个多项式时,可以表示为  (7-1)将该多项式分解为真有理式与直接多项式两部分,即得到:   (7-2)当式中M1,试用部分分式法求z反变换,并列出N=20点的数值。  解 由表达式和收敛域条件可知,所求序列x(n)为一个右边序列,且为因果序列。将上式按式(7-1)的形式整理得:     求z反变换的程序如下:  b=[1,0,0];  a=[1,-1.5,0.5];  [r一、实验目的  (1)加深对离散系统变换域分析——z变换的理解。  (2)掌握进行z变换和z反




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: