快速傅里叶变换
大纲
Javascript 中的 FFT 代码和演示。 显示正向、逆向和半长实数变换。
实值信号到复数
对于实值信号,我们必须将其填充为复数信号并将虚项归零。 在下面的图表中,您可以看到创建一系列新复数值的步骤。 蓝色是真实的,红色是虚构的。
复数正向 FFT 和幅度
下面显示了复信号的复正向变换和幅度。
全长逆变换
通过反向应用 FFT 和重新缩放,可以将复信号的变换逆变换回原始信号。 由于浮点数学的精度有限,因此轴会因数学错误而略有变化。
将真实信号打包成半复数
作为显着的效率改进,仅由实数组成的信号可以被砍成两半,偶数 n 放置在实部中,奇数 n 放置在半长复数变换的复数部分中。
打包实信号的半长 FFT
半实数变换允许将实数变换分解为半长复数信号并通过半长变换进行变换。 根据处理器的不同,这可能会显着提高效率,而不仅仅是将日期长度减半可能表明的效率更高。
半长逆变换
2022-02-25 10:11:06
51KB
HTML
1