两个实函数的同时逆快速傅里叶变换

时间:2011-06-14 22:11:03

标签: floating-point signal-processing fft ifft real-datatype

我正在尝试用单个IFFT计算两个实函数的逆傅立叶变换。到目前为止,我发现的最好和最直接的解释是here,其中说:

  

使用FFT是线性的这一事实,并形成第一个变换加上i乘以秒的总和。   你有两个向量,x1和x2,用   离散傅立叶变换X1和X2   分别。然后

     

x1 = Re [IDFT [X1 + i X2]]

     

     

x2 = Im [IDFT [X1 + i X2]]。

问题在于我没有得到'i'参数的来源。 任何暗示都会非常感激。

提前致谢。

编辑:

经过一些实验后我终于成功了,但现在我比以前更加困惑,因为它没有像我预期的那样工作,不得不用一些想象来找出正确的公式。

我刚刚组成了一个新的复杂数组:

Re[n] = X1Re[n] - X2Im[n]
Im[n] = X2Re[n] + X1Im[n]

对它进行IFFT后,x1 = Re和x2 = Im,那么表达它是不正确的呢?

x1 = Re[ IDFT[ X1 - i X2 ] ]
x2 = Im[ IDFT[ X2 + i X1 ] ].

2 个答案:

答案 0 :(得分:4)

你想知道'我'代表什么?在这种情况下,我认为'i'指的是sqrt(-1),即虚数单位向量。

然后:

Re[ IDFT[ X1 + i X2 ] ]

将成为该变换的“真实”部分(没有'i'的任何东西)和

Im[ IDFT[ X1 + i X2 ] ]

将成为该变换的“虚构”部分(任何乘以'i'的东西)。

我有可能误解了你的问题,这个答案太简单了;如果是的话,没有侮辱你的智力,我只是误解了你。

答案 1 :(得分:1)

如果你想忽略复变量的数学,乘以i只是你如何交换和缩放一对向量来产生另一对向量的符号。并且复数矢量X1和X2每个都可以被认为是仅有的实值向量对(在感兴趣的变换下具有“复杂”关系)。交换和缩放使得两个分量向量在经过一些算术和变换后更容易分离成感兴趣的实值向量。