快速傅里叶变换(FFT)的原理、局限与应用
1. FFT 与 DFT 的关系
离散傅里叶变换(DFT)是傅里叶变换的离散时间近似。而快速傅里叶变换(FFT)因其高效性(复杂度为 (N \log_2 N)),几乎完全取代了 DFT 的直接形式。除了系数量化和对舍入误差的敏感性等细微差异外,FFT 和 DFT 的数学性质是相同的。
需要注意的是,关于公式 [4.3] 中的因子 (1/N) 应放在正向 DFT、逆向 DFT 中,还是在两个变换中平均分配为 (1/\sqrt{N}),文献中存在一些分歧。若要使正向和逆向变换匹配,即对于任何时域向量 (x),都有 (DFT^{-1}[DFT(x)] = x),那么 (1/N) 这个因子必须存在于某个地方,但具体位置并不重要。在 MathCad 函数 FFT() 中,将 (1/N) 因子放在了正向变换中。如果使用的工具对 FFT 的定义不同,则需要对 FFT 算法的归一化常数进行小的调整。
要点总结:
- DFT 是傅里叶变换的离散时间近似。
- 流行的 Cooley - Tukey FFT 算法是 DFT 的一种巧妙且高效的实现方式,仅适用于 (N) 为 2 的幂次方的情况。
2. 离散时间映射
FFT 需要确定连续时间世界和离散时间世界之间的映射,这通过两个参数 (\Delta T) 和 (N) 来实现。
-
参数 (\Delta T) :定义了待变换波形连续样本之间的时间间隔,样本是均匀分布的。(\Delta T) 必须足够小,以在不丢失重要信息的情况下准确表示完整的信号波形。这意味着在与一个样本相