您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 实验4DFS、DFT与FFT
实验4DFS、DFT与FFT一、实验内容:1、阅读并输入实验原理中介绍的例题程序,观察输出的数据和图形,结合基本原理理解每一条语句的含义。2、已知某周期序列的主值序列为x(n)=[0,1,2,3,2,1,0],编程显示2个周期的序列波形。要求:①用傅里叶级数求信号的幅度谱和相位谱,并画出图形②求傅里叶级数逆变换的图形,并与原序列进行比较。程序清单:N=7;xn=[0,1,2,3,2,1,0];xn=[xn,xn];n=0:2*N-1;k=0:2*N-1;Xk=xn*exp(-1i*2*pi/N).^(n'*k);x=(Xk*exp(1i*2*pi/N).^(n'*k))/N;subplot(2,2,1);stem(n,xn);title('x(n)');axis([-1,2*N,1.1*min(xn),1.1*max(xn)]);subplot(2,2,2);stem(n,abs(x));title('IDFS|X(k)|');axis([-1,2*N,1.1*min(x),1.1*max(x)]);subplot(2,2,3),stem(k,abs(Xk));title('|X(k)|');axis([-1,2*N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]);subplot(2,2,4),stem(k,angle(Xk));title('arg|X(k)|');axis([-1,2*N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]);课程名称数字信号处理实验成绩指导教师王丽霞实验报告院系信息工程学院班级09通信一班学号090110009姓名张莹日期2011.12.2205100123x(n)05100510IDFS|X(k)|051051015|X(k)|0510-2-1012arg|X(k)|3、已知有限长序列x(n)=[1,0.5,0,0.5,1,1,0.5,0],要求:①求该序列的DFT、IDFT的图形;程序清单:xn=[1,0.5,0,0.5,1,1,0.5,0];N=length(xn);n=0:N-1;k=0:N-1;Xk=xn*exp(-1i*2*pi/N).^(n'*k);x=(Xk*exp(1i*2*pi/N).^(n'*k))/N;subplot(2,2,1);stem(n,xn);title('x(n)');axis([-1,N,1.1*min(xn),1.1*max(xn)]);subplot(2,2,2);stem(n,abs(x));title('IDFT|X(k)|');axis([-1,N,1.1*min(x),1.1*max(x)]);subplot(2,2,3),stem(k,abs(Xk));title('|X(k)|');axis([-1,N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]);subplot(2,2,4),stem(k,angle(Xk));title('arg|X(k)|');axis([-1,N,1.1*min(angle(Xk)),1.1*max(angle(Xk))])0246800.20.40.60.81x(n)0246800.20.40.60.81IDFT|X(k)|024681234|X(k)|02468-2-1012arg|X(k)|②用FFT算法求该序列的DFT、IDFT的图形;程序清单:xn=[1,0.5,0,0.5,1,1,0.5,0];N=length(xn);subplot(2,2,1);stem(n,xn);title('x(n)');k=0:N-1;Xk=fft(xn,N);subplot(2,1,2);stem(k,abs(Xk));title('Xk=DFT(xn)');xn1=ifft(Xk,N);subplot(2,2,2);stem(n,xn1);title('x(n)=IDFT(Xk)')0246800.20.40.60.81x(n)0246800.20.40.60.81x(n)=IDFT(Xk)012345670246Xk=DFT(xn)③假定采用频率Fs=20Hz,序列长度N分别取8、32和64,用FFT计算其幅度谱和相位谱。程序清单:Ts=0.05;C=[32,64,512];forr=0:2;N=C(r+1);n=0:N-1;xn=[1,0.5,0,0.5,1,1,0.5,0,zeros(1,N-8)];D=2*pi/(N*Ts);k=floor(-(N-1)/2:(N-1)/2);X=fftshift(fft(xn,N));subplot(3,2,2*r+1);plot(k*D,abs(X));subplot(3,2,2*r+2);stairs(k*D,angle(X));end-100-500501000246-100-50050100-505-100-500501000246-100-50050100-505-100-500501000246-100-50050100-5054、已知一个无限长序列x(n)=0.5n(n≥0),采样周期Ts=0.2s,要求序列长度分别取8、32和64,用FFT求其频谱。程序清单:Ts=0.2;C=[8,32,64];forr=0:2;N=C(r+1);n=0:N-1;xn=0.5.^n;D=2*pi/(N*Ts);k=floor(-(N-1)/2:(N-1)/2);X=fftshift(fft(xn,N));subplot(3,2,2*r+1);plot(k*D,abs(X));axis([-80,80,0,3]);subplot(3,2,2*r+2);stairs(k*D,angle(X));axis([-80,80,-1,1]);end-500500123-50050-101-500500123-50050-101-500500123-50050-101二、思考题:①离散傅里叶级数与连续性周期信号的傅里叶级数有何不同?周期序列的频谱有何特点?答:傅里叶级数仅有N个独立的谐波分量,展成离散傅立叶级数时,只能取k=0~N-1的N个独立的谐波分量,而连续性周期信号的傅里叶级数由无穷多个与基波频率成整数倍的谐波分量叠加而成。周期序列的频谱特点:以N为周期的周期序列的频谱X(k)也是一个以N为周期的周期序列。②DFS、DFT、FFT有何联系?答:DFS是求周期序列(周期为N)的离散傅里叶级数,也是一个以N为周期的周期序列,DFT是求有限长序列的离散傅立叶变换X(k),而X(k)是的主值序列,也就是说对DFS的变换结果只取0~N-1的序列值就得到DFT的变换。FFT只是DFT的一种快速高效的算法,它适用序列长度很大时,使用其可以大大缩短运算时间。
本文标题:实验4DFS、DFT与FFT
链接地址:https://www.777doc.com/doc-4521655 .html