Java 基于jt变换的FFT混淆

Java 基于jt变换的FFT混淆,java,fft,Java,Fft,我一直在阅读关于FTT和使用JTTransform的所有文章。我有一个真实的数据,它的大小是N。我想把它传递给FFT,这样我就可以计算出每个频率的幅度 我已经在matlab中使用FFT函数完成了这项工作,我正试图在Java中也这样做。我的问题是: 是否使用RealForward或RealForwardFull?或者可能创建另一个具有0 imag的数组并将其传递给complex forward? 结果FTT有多大?当你计算一个N元素实数数组的DFT时,你的结果将是一个N元素复数数组。现在看看JTT

我一直在阅读关于FTT和使用JTTransform的所有文章。我有一个真实的数据,它的大小是N。我想把它传递给FFT,这样我就可以计算出每个频率的幅度

我已经在matlab中使用FFT函数完成了这项工作,我正试图在Java中也这样做。我的问题是:

是否使用RealForward或RealForwardFull?或者可能创建另一个具有0 imag的数组并将其传递给complex forward?
结果FTT有多大?

当你计算一个N元素实数数组的DFT时,你的结果将是一个N元素复数数组。现在看看JTTransform文档,在JTTransforms中,这些复数表示为一对2实数(一个表示实部,另一个表示虚部)因此,FFT结果实际上是FFT输入的两倍


RealForwardFull计算数组的FFT并返回所有FFT系数,而RealForward仅返回系数的一半。RealForward可能适合某些人的需要,因为FFT具有对称性,因此,只要知道一半的系数,就可以利用FFT的对称特性得到其余的系数。

为什么不试试看呢?我不知道该传递什么。它是同一个输入数组还是将数组的大小增加了一倍,还是应该在发送之前修改输入数组?