资源描述:
《利用FFT实现快速卷积(杭电).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、信号、系统与信号处理实验Ⅱ实验报告实验名称:利用FFT实现快速卷积一、实验目的1.加深理解FFT在实现数字滤波(或快速卷积)中的重要作用,更好地利用FFT进行数字信号处理。2.进一步掌握圆周卷积和线性卷积两者之间的关系。二、实验内容与要求1、给定两个序列x(n)=[2,1,1,2],h(n)=[1,-1,-1,1]。首先直接在时域计算两者的线性卷积;其次用FFT快速计算二者的线性卷积,验证结果。2、数字滤波器的脉冲响应为,N可自定,本实验取N=17,输入序列x(n)可选下列几种情况:①,N可自取16②,N=16③,N=163、实
2、验前,预先编制一个应用FFT实现数字滤波器的通用程序。4、上机独立调试,并打印或记录实验结果。5、将实验结果与预先笔算的结果比较,验证其正确性。三、实验程序与结果1、给定两个序列x(n)=[2,1,1,2],h(n)=[1,-1,-1,1]。首先直接在时域计算两者的线性卷积;其次用FFT快速计算二者的线性卷积,验证结果。clearall;n=[2,1,1,2];m=[1,-1,-1,1];y1n=conv(n,m);ny1=[0:1:length(y1n)-1];stem(ny1,y1n);title('利用conv函数求线性卷
3、积')figure;N=length(n)+length(m)-1;NK=fft(n,N);MK=fft(m,N);YK=NK.*MK;y2n=ifft(YK,N);x=0:N-1;stem(x,y2n);title('利用fft方法求线性卷积')2、数字滤波器的脉冲响应为,N可自定,本实验取N=17,输入序列x(n)可选下列几种情况:①,N可自取16②,N=16③,N=16主程序:clearall;n=[0:1:15];m=[0:1:16];xn1=ones(1,16);xn2=cos(2*n*pi/16);xn3=(1/3)
4、.^n;hn=(-1/2).^n;y1=ccc(xn1,hn);y2=ccc(xn2,hn);y3=ccc(xn3,hn);定义函数实现利用FFT实现数字滤波器:functionyf=ccc(xn,hn)N1=length(xn);N2=length(hn);N=N1+N2-1;XK=fft(xn,N);HK=fft(hn,N);YK=XK.*HK;yf=ifft(YK,N);ifall(imag(xn)==0)&(all(imag(hn)==0))yf=real(yf);x=0:N-1;figure;stem(x,yf);en
5、d四、仿真结果分析五、实验问题解答与体会