matlab离散数据fft,matlab离散信号的DFT及其快速算法fft以及ifft

41528d3028836879cd698677c3999917.gifmatlab离散信号的DFT及其快速算法fft以及ifft

实验四 离散信号的DFT及其快速算法 一、 实验目的 1.在学习DFT理论的基础上,通过本实验,加深对FFT的理解,体会二者之间的关系。 2.熟悉应用FFT实现两个序列的线性卷积的方法。 二、 实验原理 N点序列x[n] 的DFT和IDFT定义: 可以用函数U=fft(u,N)和u=ifft(U,N)计算N点序列的DFT正、反变换。 三、 实验内容 1. x(n)=R5(n),求N分别取8,32时的X(k),最后绘出图形。 离散傅立叶变换函数的MATLAB实现如下: N=8; x=[ones(1,5),zeros(1,N-5)]; n=0:N-1; X=dft(x,N); magX=abs(X); phaX=angle(X)*180/pi; k=(0:length(magX) -1)*N/length(magX); subplot(2,2,1);stem(n,x);title( x(n)—8点 ); subplot(2,2,2);stem(k,magX);axis([0,8,0,6]);title( |X(k)|--8点 ); N=32; x=[ones(1,5),zeros(1,N-5)]; n=0:N-1; X=dft(x,N); magX=abs(X); phaX=angle(X)*180/pi; k=(0:length(magX) -1)*N/length(magX); subplot(2,2,3);stem(n,x);title( x(n)—32点 ); subplot(2,2,4);stem(k,magX);axis([0,32,0,5]);title( |x(k)|--32点 ); % dft函数 function[Xk]=dft(xn,N) n=[0:1:N-1]; k=[0:1:N-1]; WN=exp(-j*2*pi/N); nk=n *k; WNnk=WN.^nk; Xk=xn*WNnk; 2. 已知一个8点的时域非周期离散阶跃信号,n1=0,n2=7,在n0=4前为0,n0以后为1。 用N=32点进行FFT变换,作其时域信号图及信号频谱图。 n1=0;n0=4;n2=7;N=32; n=n1:n2; w=[(n-n0)>=0]; subplot(2,1,1);stem(n,w); i=0:N-1; y=fft(w,N); aw=abs(y); subplot(2,1,2);stem(i,aw); 3.利用FFT计算线性卷积。设x(n)=[2 3 1 4 5];h(n)=[2 1 7 4 5 7 2 3]。计算二者的线性卷积。 xn=[2 3 1 4 5]; nx=0:(length(xn)-1); hn=[2 1 7 4 5 7 2 3]; nh=0:(length(hn)-1); stem(nx,xn) title( x(n) );figure stem(nh,hn) title( h(n) );figure y=conv(xn,hn); n=0:(length(xn)+length(hn)-2); stem(n,y) title( x(n)与h(n)直接线性卷积 );figure m=0:11; X=fft(xn,12); H=fft(hn,12); Y=X.*H; y=ifft(Y,12); stem(m,y) title( x(n)与h(n)fft变换——12点’); 四、实验分析 认真观察实验结果,分析实验产生的现象的原因。 1、对时域离散序列信号进行DFT变换,若采样点数越多,则所得频谱图越密集。 2、对时域离散序列信号进行DFT变换再IDFT反变换得到的序列,与原信号序列基本相同。 3、两个时域离散序列信号的线性卷积可以用它们在频域的乘积的反变换表示。 4、fft算法相比与原来的算法速度很快,因为出结果要快! 五、实验总结 总结实验认识、过程、效果及体会、意见建议。 我以为在实验前咱要了解相关背景知识,并查找好相关资料,实验时要大量借鉴其他的资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值