- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对 离散傅立叶变换的算法进行改进获得的。它对傅氏变换的理论并没有新的发现,但是对于在计算机 系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。
设 x(n)为 N 项的复数序列,由 DFT 变换,任一 X(m)的计算都需要 N 次复数乘法和 N-1 次复数 加法,而一次复数乘法等于四次实数乘法和两次实数加法,一次复数加法等于两次实数加法,即使 把一次复数乘法和一次复数加法定义成一次“运算”(四次实数乘法和四次实数加法),那么求出 N 项复数序列的 X(m), 即 N 点 DFT 变换大约就需要 N2 次运算。当 N=1024 点甚至更多的时候, 需要 N2=1048576 次运算,在 FFT 中,利用 WN 的周期性和对称性,把一个 N 项序列(设 N=2k,k 为正整数),分为两个 N/2 项的子序列,每个 N/2 点 DFT 变换需要(N/2)2 次运算,再 用 N 次运算把两个 N/2 点的 DFT 变换组合成一个 N 点的 DFT 变换。这样变换以后,总的运算次 数就变成 N+2(N/2)2=N+N2/2。继续上面的例子,N=1024 时,总的运算次数就变成了 525312 次,节省了大约 50%的运算量。而如果我们将这种“一分为二”的思想不断进行下去,直到分成两两 一组的 DFT 运算单元,那么 N 点的 DFT 变换就只需要 Nlog2N 次的运算,N 在 1024 点时,运算 量仅有 10240 次,是先前的直接算法的 1%,点数越多,运算量的节约就越大,这就是 FFT 的优 越性.
傅里叶变换(Transformée de Fourier)是一种积分变换。因其基本思想首先由法国学者傅里叶系 统地提出,所以以其名字来命名以示纪念。
应用
傅里叶变换在物理学、数论、组合数学、信号处理、概率论、统计学、密码学、声学、光学、海洋 学、结构动力学等领域都有着广泛的应用(例如在信号处理中,傅里叶变换的典型用途是将信号分 解成幅值分量和频率分量)。
概要介绍
傅里叶变换能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分 的线性组合。在不同的研究领域,傅里叶变换具有多种不同的变体形式,如连续傅里叶变换和离散 傅里叶变换。最初傅里叶分析是作为热过程的解析分析的工具被提出的(参见:林家翘、西格尔著 《自然科学中确定性问题的应用数学》,科学出版社,北京。原版书名为 C. C. Lin L. A. Segel, Mathematics Applied to Deterministic Problems in the Natural Sciences, Macmillan Inc., New York, 1974)。
傅里叶变换属于谐波分析。
傅里叶变换的逆变换容易求出,而且形式与正变换非常类似;
正弦基函数是微分运算的本征函数,从而使得线性微分方程的求解可以转化为常系数的代数方程的 求解.在线性时不变的物理系统内,频率是个不变的性质,从而系统对于复杂激励的响应可以通过组合 其对不同频率正弦信号的响应来获取;
卷积定理指出:傅里叶变换可以化复杂的卷积运算为简单的乘积运算,从而提供了计算卷积的一种简 单手段;
离散形式的傅里叶变换可以利用数字计算机快速的算出(其算法称为快速傅里叶变换算法(FFT)).
快速傅立叶变换 FFT 的 C 语言程序
2008 年 08 月 29 日 星期五 22:59
// 入口参数:
// l: l = 0, 傅立叶变换; l = 1, 逆傅立叶变换
// il: il = 0,不计算傅立叶变换或逆变换模和幅角;il = 1,计算模和幅角
// n: 输入的点数,为偶数,一般为 32,64,128,...,1024 等
// k: 满足 n=2^k(k0),实质上 k 是 n 个采样数据可以分解为偶次幂和奇次幂的次数
// pr[]: l=0 时,存放 N 点采样数据的实部
// l=1 时, 存放傅立叶变换的 N 个实部
// pi[]: l=0 时,存放 N 点采样数据的虚部
// l=1 时, 存放傅立叶变换的 N 个虚部
//
// 出口参数:
// fr[]: l=0, 返回傅立叶变换的实部
// l=1, 返回逆傅立叶变换的实部
// fi[]: l=0, 返回傅立叶变换的虚部
// l=1, 返回逆傅立叶变换的虚部
// pr[]: il = 1,l = 0 时,返回傅立叶变换的模
// il = 1,l = 1 时,返回逆傅立叶变换的模
// pi[]: il = 1,l = 0 时,返回傅立叶变换的辐角
// il = 1,l = 1 时,返回逆傅立叶变换的辐角
voi
文档评论(0)