数字信号处理实验5_数字信号处理五个实验
数字信号处理实验5由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数字信号处理五个实验”。
实验五 FFT 算法的应用
1.进一步加深对离散信号 DFT 的理解。
2.运用其 FFT 算法解决实际问题。
1.微机。
2.Matlab 编程环境。
1.熟悉 Matlab 的编程环境和编程语言。
2.学习教材 P213-227,P249-263,掌握快速傅里叶变换(FFT)的原理。
1.实验重点、难点、特点
快速傅里叶变换(FFT)的原理及应用。难点在 FFT 的应用以及 Matlab 编程中矩阵乘和数乘的应用。
2.实验原理
一、实验目的二、实验仪器设备
三、实验学时学时
四、预习要求
五、实验特点及实验原理简介
1.已知 2N 点实数序列
N=64。理论计算 X(k)=DFT[x(n)]2N。
六、实验内容及步骤
N=64;n=0:1:N-1;n2=0:1:2*N-1;k=0:1:2*N-1;xn1=cos(2*pi/N*7*2*n)+1/2*cos(2*pi/N*19*2*n);xn2=cos(2*pi/N*7*(2*n+1))+1/2*cos(2*pi/N*19*(2*n+1));wn=xn1+i*xn2;[wk,kk]=dft_my(wn,N);xk1=1/2*(wk+conj(wk(mod(-kk,N)+1)));xk2=1/2*(wk-conj(wk(mod(-kk,N)+1)))/i;XK1=fft(xn1,N);XK2=fft(xn2,N);%subplot(2,2,1);%stem(kk,abs(xk1));grid on;%subplot(2,2,3);%stem(kk,abs(XK1));grid on;%subplot(2,2,2);%stem(kk,abs(xk2));grid on;%subplot(2,2,4);%stem(kk,abs(XK2));grid on;
xk=[xk1+(exp(-1i*pi/N).^kk).*xk2,xk1-(exp(-1i*pi/N).^kk).*xk2];subplot(2,1,1);stem(k,abs(xk),'r');grid on;xlabel('k');ylabel('2*NFFT');title('n点DFT完成2N点FFT');xn=cos(2*pi/N*7*n2)+1/2*cos(2*pi/N*19*n2);xkk=fft(xn,2*N);subplot(2,1,2);stem(k,abs(xkk),'g');grid on;xlabel('k');ylabel('2*NFFT');title('Matlab2N点FFT');
七、问题思考
1.两次编程计算与理论计算相比较,结果一致吗?说明原因。
2.两次编程计算在编程方面、运算量上的比较。
八、心得体会