gpt4 book ai didi

fft - FFT 和逆 FFT 之间有什么实际区别吗?

转载 作者:行者123 更新时间:2023-12-04 03:04:04 28 4
gpt4 key购买 nike

FFT 库(例如 FFTW 或 numpy.fft)通常提供两个函数 fft()ifft()(及其用于实值输入的特殊版本)。这些功能似乎被定义为

ifft(fft(X)) == X

fft(X) == constant_factor * reverse(ifft(X))

在对复杂输入进行操作时,在 ifft()fft() 之间进行选择时,是否有任何实际或技术原因需要考虑?虽然 X(信号、时间或空间域)和 fft(X)(频谱、频域)的解释不同,但它在计算上重要吗?

最佳答案

不同的 fft 库将缩放常数放在不同的位置,在 fft、ifft 或 1/sqrt(N) 中。所以这只是一个很小的依赖于实现的差异。 fft 和 ifft 颠倒其结果的顺序。所以这只是结果数组中向前或向后索引之间的区别。您是否称一个时间/空间与频率只是一个标签差异。

因此,实际上,无论库使用何种规模,以及您希望为结果建立索引的方向,都可以选择一种可读性最强的代码。通常设置 fft/ifft 库,以便可以在同一方向 (++) 索引正时间和更高频率。

添加:次要的,可能是不必要的优化:如果您无论如何都需要对 FT 结果进行后缩放,则选择不包含内置缩放乘法的 fft 或 ifft 实现,因为这可能会节省 N 半冗余乘法运算。

关于fft - FFT 和逆 FFT 之间有什么实际区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7746587/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com