FFT算法研究及基2-FFT算法的C语言实现.doc
《FFT算法研究及基2-FFT算法的C语言实现.doc》由会员分享,可在线阅读,更多相关《FFT算法研究及基2-FFT算法的C语言实现.doc(49页珍藏版)》请在冰豆网上搜索。
![FFT算法研究及基2-FFT算法的C语言实现.doc](https://file1.bdocx.com/fileroot1/2022-11/3/492dd9a2-364e-4c14-9791-7d6676878c20/492dd9a2-364e-4c14-9791-7d6676878c201.gif)
毕业设计[论文]
题目:
FFT算法研究及基2-FFT算法的C语言实现
学院:
电气与信息工程学院
专业:
电气工程及其自动化
姓名:
XXX
学号:
XXXXXX
指导老师:
XXX
完成时间:
2015年06月01日
河南城建学院本科毕业设计(论文)摘要
摘要
离散傅立叶变换(DFT)常常用于计算信号处理。
DFT算法可以得到信号的频域特性,因为该算法在计算上是密集的,长时间的使用时,计算机不能实时进行信号处理。
所以DFT被发现之后的相当长时间内是没被应用到实际的项目。
到了二十世纪六十年代中期一种新的计算方法被研究者发现出来,它就是FFT。
FFT并不是一种新的获取频域特征的方式,而是离散傅里叶变换的一种快速实现算法。
数字信号处理在当今科技发展中发展很迅速,不但是在传统的通信领域,其他方面也经常用到。
利用快速傅里叶变换,实现了信号频域的变换处理。
对于信号的处理,往往会和数学中的算法联系到一起。
如果处理得当,将会对气象,地理信息等的发展,起到举足轻重的作用,同时对世界其他领域的发展有很大的促进作用。
关键词:
FFT算法,C语言,编译实现
II
河南城建学院本科毕业设计(论文)Abstract
Abstract
DiscreteFourierTransform(DFT)isoftenusedtocalculatethesignalprocessingtoobtainfrequencydomainsignals.DFTalgorithmcangetthefrequencydomaincharacteristicsofthesignal,becausethealgorithmiscomputationallyintensive,long-timeuse,thecomputerisnotconducivetoreal-timesignalprocessing.SoDFTsinceitwasdiscoveredinarelativelylongperiodoftimeisnottobeappliedtotheactualprojectsuntilanewfastdiscreteFouriercalculationmethod--FFTisfoundindiscreteFouriertransformwasabletoactuallyprojecthasbeenwidelyused.FFTisnotanewwaytogetthefrequencydomain,butthediscreteFouriertransformofafastalgorithm.
FastFourierTransform(FFT)isadigitalsignalprocessingimportanttoolthatthetimedomainsignalintoafrequency-domainsignalprocessing.matchedfilteringhasimportantapplications.FFTisadiscreteFouriertransform(DFT)isafastalgorithm,itcanbeasignalfromthetimedomaintothefrequencydomain.Somesignalsinthetimedomainisnoteasytoobservethecharacteristicsofwhatis,butthenifyouchangethesignalfromthetimedomaintothefrequencydomain,itiseasytoseeoutof.ThisdesignisrequiredtobefamiliarwiththebasicprinciplesofFFTalgorithm,basedonthepreparationofClanguageprogramtoachieveFFTalgorithmrealnumbersequence.
Keywords:
FFTalgorithm,Clanguagecompilertoachieve
河南城建学院本科毕业设计(论文)目录
河南城建学院本科毕业设计(论文)目录
目录
摘要 I
Abstract II
目录 III
1引言 1
1.1课题背景 1
1.2FFT算法的现状 1
1.3研究内容 2
1.4论文的研究成果 2
2数字信号处理综述 3
2.1数字信号理论 3
2.2数字信号处理的实现 3
2.3数字信号处理的应用及特点 4
3基本理论 6
3.1FFT算法的基本概念 6
3.1.1离散傅里叶变换(DFT) 6
3.1.2快速傅里叶变换(FFT) 7
3.2FFT算法的分类 7
3.2.1按时间抽取(DIT)的FTT 8
3.2.2按频率抽取(DIF)的FTT 12
3.2.3快速傅里叶分裂基FFT算法 15
3.2.4N为组合数的FFT——混合基算法 17
3.3傅里叶变换的应用 20
4基-2FFT算法的C语言实现及仿真 21
4.1码位倒序 21
4.2蝶形运算 22
结论 23
参考文献 24
附录A 25
附录B 35
致谢 42
III
河南城建学院本科毕业设计(论文)1引言
1引言
1.1课题背景
离散傅里叶变换(DFT)可以将有限长序列的的频域也离散化成有现长序列,但是计算量很大,不利于应用于实际工程。
直到1965年J.W.库利和T.W.图基提出了一种快速计算离散复傅里叶的计算方法,DFT的计算量减少了几个数量级,特别是被变换的抽样点数N越多,FFT算法计算量的就越少。
快速傅立叶变换作为一种数学计算方法,已经被广泛地运用在几乎所有领域的频谱分析中,而且长久不衰,因为信号处理方法不分先进和落后之说。
只有经典的和现代的之别,在实际系统中用得最好的方法就是实用的方法。
换句话说信号处理方法与应用背景和目的的近程度是衡量信号处理方法优劣的唯一标准。
快速傅里叶变换(FFT),它在当今的科技世界表现的很是活跃。
无论是在信号分析中,还是应用在高科技领域中的不断发展研究中都占有很重要的位置。
1.2FFT算法的现状
在过去的几十年里,数字信号处理技术,数字计算机,LSI等先进技术发展一直较快,日新月异,已成为科学技术里面具有强大的生命力。
由于它本身具有许多优点,它可以有效地推动技术创新和各种工程学科的发展,在应用领域更加广泛,深入,越来越多的人们关注这一领域。
在数字信号处理里,离散傅立叶变换(DFT)是一种常见的变换方法,它在各种各样的数字信号处理系统中占有很重要的位置。
快速傅立叶变换(FFT)与离散傅里叶变换(DFT)不是两种不同的计算方法,FFT只是为了更快捷有效的计算离散傅里叶变换。
傅立叶变换已经出现了一个多世纪,众所周知,信号的频域分析往往比时域分析更好,它不仅简单,易于分析较为复杂的信号。
但有一个更准确的数值计算方法,就是利用离散傅里叶变换进行信号的频谱分析,但是由于DFT的计算量大,耗费更多的时间,此法没有很好地得到应用。
直到二十世纪六十年代中期,一种更为便捷的算法出现即FFT,数字信号处理这门技术才得以快速的发展。
应当注意的是,在二十世纪六十年代中后期的时候FFT在电子计算机的帮助下已经提出了,此时FFT的硬件电路部分也已可以制作了。
在这个时候DFT运算较之以前减少了很多,计算的时间较之以前也大大减少。
因此,FFT算法大量运用到各种学科和技术领域,信号处理技术在近半个世纪的时间里得到了很好地发展,变为数字信号处理这门学科在应用领域中功能强大的工具,广泛应用于各种领域里。
1.3研究内容
研究FFT算法,掌握其原理,针对目前FFT算法的广泛使用,本文提出了
(1)设计出一个FFT算法的实验项目,用C语言来编译实现。
(2)为了验证该程序的准确性,用C语言仿真。
1.4论文的研究成果
通过查阅图书等更深入的了解FFT算法,熟悉FFT算法的的基本原理,掌握FFT算法及应用,培养C语言编程能力,用C语言完成基2-FFT算法的C语言实现,最后使用C语言实现软件仿真。
本次设计的程序又较强的适应性,对于有相关需求的相关,可以快速扩展。
23
河南城建学院本科毕业设计(论文)2数字信号处理综述
2数字信号处理综述
2.1数字信号理论
数字信号的处理,在理论上所涉及的范围非常广泛。
在数学领域中,不但在微积分、概率统计、随机过程,还在高等代数、数值分析和复变函数等等,都是它基本的工具,网络理论和信号以及系统等,均都是它的理论基础。
在学科的发展上,数字信号处理不但和最优控制、通信理论以及故障诊断等紧密相连,近年来又成为了人工智能、模式识别以及神经网络等新兴的学科理论基础之一,其算法的实现不但和计算机学科紧密相连,而且与微电子技术密不可分。
故可以说,数字信号处理是将经典的理论体系(如数学、系统)当作自己的理论基础。
一般把二十世纪六十年代中期快速傅里叶(FFT)的出现,作为数字信号处理这门新学科的开端。
在这几十年的发展中,数字信号处理这门学科本身已经基本形成了比较完整的理论体系。
这些理论包括:
(1)信号采集;
(2)离散信号分析;
(3)离散系统分析;
(4)信号处理中的快速计算;
(5)信号的估值;
(6)滤波技术;
(7)信号的建模;
(8)信号处理中的特殊算法;
(9)信号处理技术的实现;
(10)信