实验四 FFT的计算机实现及谱分析.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一、实验目的(1) 了解DFT的性质及应用。 (2) 熟悉MATLAB编程的特点。 (3)掌握有限离散傅里叶变换的计算机实现方法。 (4)进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FPT的运算结果必然满足DFT的基本性质)。 (5)熟悉FFT算法原理和FFT子程序的应用。 (6)学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。 二、实验原理,有限离散信号,则它的有限离散频谱为 令 则上式为 把信号按下标偶数项和奇数项分成两部分,即令 它们的有限离散频谱分别为 经分析,我们可得如下的时域分解FFT算法 若我们把按偶奇序号分成两部分,则可得如下的频域分解FFT算法 2、MATLAB提供的快速傅立叶变换函数 (1)fftfft函数用于计算快速傅立叶变换,其语法格式为: B = fft(I) B = fft(I)返回I的fft变换矩阵,输入I和输出B大小相同。?(2)fftshift MATLAB提供的fftshift函数用于将变换后的频谱中心从矩阵的原点移到矩阵的中心,其语法格式为:   B = fftshift(I) 对于矩阵I,B = fftshift(I)将I的一、三限和二、四限进行互换。 ()ifftifft函数用于计算的傅立叶反变换,其语法格式为: B = ifft(I) B = ifft(A)返回I的傅立叶反变换矩阵,输入I和输出B大小相同。其语法格式含义与fft函数的语法格式相同,可以参考fft函数的说明。,如何求信号的一项频谱排列? 我们可通过二进制的逆序得到:假设的二进制为,则 2、碟形运算两节点的距离: 第一级(第一列)两节点间的距离为1; 第二级(第二列)两节点间的距离为2; ............................................................ 第m级(第m列)两节点间的距离为; 3、的确定 因子最后一列有种,顺序为为; 因子倒数第二列有种,为 ; 因子倒数第三列有种,为; ……………………………………………………………… 因子第一列有一种,为=1 频域分解FFT算法的几点说明: 1、对一般的,最后得到的逆序频谱如何排列才能得到原信号的频谱? 我们可通过二进制的逆序得到:假设的二进制为,则 2、碟形运算两节点的距离: 第一级(第一列,m=1)两节点间的距离为; ............................................................ 第m级(第m列)两节点间的距离为; 3、的确定 因子第一列有种,顺序为为; 因子第二列有种,为 ; 因子第三列有种,为; ……………………………………………………………… 因子最后一列有一种,为=1 三 实验内容及步骤 1、用三种不同的DFT程序计算的傅里叶变换,并比较三种程序计算机运行时间。 (1)用for 语句的M函数文件dft1.m,用循环变量逐点计算X(k); (2)编写时域分解FFT 算法或频域分解FFT 算法的M函数文件dft2.m; (3)调用FFT库函数,直接计算X(k); (4)分别利用上述三种不同方式编写的DFT程序计算序列x(n)的傅立叶变换,并画出相应的幅频和相频特性,再比较各个程序的计算机运行时间。 (5)复习DFT的定义、性质和用DFT作谱分析的有关内容。 (6)复习FFT算法原理与编程思想,并对照DIT—FFT运算流图和程序框图,读懂本实验提供的FFT子程序。 (7)编制信号产生子程序,产生以下典型信号供谱分析用: (8)编写主程序。 (9)按实验内容要求,上机实验,并写出实验报告。 M函数文件如下: dft1.m: function[Am,pha]=dft1(x) N=length(x); w=exp(-j*2*pi/N); for k=1:N sum=0; for n=1:N sum=sum+x(n)*w^((k-1)*(n-1)); end Am(k)=abs(sum); pha(k)=angle(sum); end dft3.m: function[Am,pha]=dft3(x) Xk=fft(x); Am=abs(Xk); pha=angle(Xk); 源程序及运行结果: (1)x=[ones(1,8),zeros(1,N-8)]; t=cputime; [Am1,pha1]=dft1(x); t1=cputime-t n=[0:(length(x)-1)]; w=(2*pi/length(x))*n; figure(1) subp

文档评论(0)

bhl0572 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档