序列逆Z变换的Matlab.ppt
《序列逆Z变换的Matlab.ppt》由会员分享,可在线阅读,更多相关《序列逆Z变换的Matlab.ppt(37页珍藏版)》请在三一办公上搜索。
1、一、序列逆Z变换的Matlab实现,函数residuez:适合计算离散系统有理函数的留数和极点,可以用于求解序列的逆Z变换。,函数residuez基本调用方式:r,p,c=residuez(b,a);输入参数:b=b0,b1,bM为分子多项式的系数,a=a0,a1,aN为分母多项式的系数,这些多项式都按z的降幂排列 输出参数:r是极点的留数,p是极点,c是无穷项多项式的系数项,仅当MN时存在。,例:计算逆Z变换,例:计算 的逆Z变换。,解:有理分式X(z)分子和分母多项式都按z的降幂排列。,b=0,1;a=2,-3,1;%多项式的系数r,p,c=residuez(b,a);%求留数、极点和系数
2、项disp(留数:);disp(r);%显示输出参数disp(极点:);disp(p);disp(系数项:);disp(c);,程序运行结果为留数:1-1极点:1.0000 0.5000系数项:,X(z)的部分分式形式为,逆Z变换为,二、DFT物理意义的Matlab实现,序列的N点DFT的物理意义:对X(ej)在0,2上进行N点的等间隔取样。函数fft用于快速计算离散傅里叶变换,调用方式为y=fft(x);y=fft(x,N);y=fft(x)利用FFT算法计算序列x的离散傅里叶变换。当x为矩阵时,y为矩阵x每一列的FFT。当x长度为2的整数次幂时,函数fft采用基-2的FFT算法,否则采用混
3、合基算法。y=fft(x,N)采用N点FFT。当序列x长度小于N时,函数fft自动对序列尾部补零,构成N点数据;当x长度大于N时,函数fft自动截取序列前面N点数据进行FFT。,函数ifft用于快速计算向量或矩阵的离散傅里叶逆变换,与函数fft的调用规则基本相同。调用方式为y=ifft(x);y=ifft(x,N);,例:利用FFT实现线性卷积,例:利用FFT实现线性卷积。已知序列x(n)=R4(n),求:(1)用conv函数求x(n)与x(n)的线性卷积y(n),并绘出图形;(2)用FFT求x(n)与x(n)的4点循环卷积y1(n),并绘出图形;(3)用FFT求x(n)与x(n)的8点循环卷
4、积y2(n),并将结果与(1)比较,说明线性卷积与循环卷积之间的关系。,解 程序如下:,N1=4;N2=8;n1=0:1:N1-1;n2=0:1:N2-1;x=1,1,1,1;%构造序列x(n)x1=1,1,1,1,0,0,0,0;%在序列x(n)后补4个零figure(1)subplot(2,2,1)stem(n1,x),grid on;title(序列x(n)y1=conv(x,x);%y1为x(n)与x(n)的线性卷积subplot(2,2,2)stem(0:1:length(y1)-1,y1),grid on;title(x(n)与x(n)线性卷积),X2=fft(x);%计算x(n)
5、与x(n)的4点循环卷积Y2=X2.*X2;y2=ifft(Y2);subplot(2,2,3)stem(n1,y2),grid on;title(x(n)与x(n)的4点循环卷积)X3=fft(x1);%计算x(n)与x(n)的8点循环卷积Y3=X3.*X3;y3=ifft(Y3)subplot(2,2,4)stem(n2,y3),grid on;title(x(n)与x(n)的8点循环卷积),程序运行结果图,三、频域取样定理的Matlab实现,例:设x(n)=(0.7)nu(n),在单位圆上以M=5和M=20,对其Z变换取样,研究时域信号受M变化的影响。(1)对x(n)进行Z变换;(2)对
6、X(z)进行等角取样,取样点数为M,求X(k);(3)对X(k)进行IDFT变化,得到M点序列,请比较几个序列,并作分析。,解 x(n)=(0.7)nu(n)的Z变换为,程序清单,n=0:19;x=0.7.n;na=0:4;za=exp(j*2*pi*na/5);%在z平面的单位圆上对其进行5点的等角距取样Xa=za./(za-0.7);xa=abs(ifft(Xa);nb=0:19;zb=exp(j*2*nb*pi/20);%在z平面的单位圆上对其进行20点的等角距取样Xb=zb./(zb-0.7);xb=abs(ifft(Xb);,figure(1)subplot(2,2,1);%画出原始
7、时域信号stem(n,x)title(时域信号x(n)subplot(2,2,2);xa=xa,xa,xa,xa;stem(n,xa)title(5点取样恢复的序列)subplot(2,2,3);stem(n,xb)title(20点取样恢复的序列),程序运行结果,四、用FFT进行谱分析的Matlab实现,设模拟信号,以 t=0.01n(n=0:N-1)进行取样,试用fft函数对其做频谱分析。N分别为:(1)N=45;(2)N=50;(3)N=55;(2)N=60。,程序清单如下,%计算N=45的FFT并绘出其幅频曲线N=45;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*s
8、in(4*pi*t)+5*cos(8*pi*t);y=fft(x,N);figure(1)subplot(2,2,1)plot(q,abs(y)title(FFT N=45),程序清单,%计算N=50的FFT并绘出其幅频曲线N=50;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t);y=fft(x,N);figure(1)subplot(2,2,2)plot(q,abs(y)title(FFT N=50),%计算N=55的FFT并绘出其幅频曲线N=55;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 序列 变换 Matlab

链接地址:https://www.31ppt.com/p-6416041.html