答案 0 :(得分:3)
问题不在于您所做的计算,而在于您对数据的解释。重要的是要考虑你已经通过的高斯分布以及它如何在原点上分阶段进行。如果你也传递了一个以原点为中心的高斯,你可以期待一个真正的高斯 ONLY 。你有一个高斯乘以exp(i*phase*omega)
因为原始数据不太可能是以原点为中心的。如果你检查虚数值,你会发现它们相对于实部也是振荡和去相关的M_PI*0.25
。零中心实数函数的数据应该从N/2
变为N-1
以获得负值(以N方式的补码),然后从0
变为N/2-1
阳性样本。很可能你把高斯围绕在样本N/2
上(我刚检查过,你已经完成了这个:))这就产生了输出中复杂的指数乘法。
此外,原点位于元素0
,因此它在原点处被正确反映。只需将输入高斯中心放在同一点上,看看它是如何不显示这样的振荡结果的。