我试图了解fft
和ifft
函数在python中的工作方式。我给出了一个虚构奇函数的简单示例,以计算傅里叶逆变换,以期获得一个实奇函数(应如此)。下面是我的代码:
v = np.array([-1,-2,0,2,1]) * 1j
t = [-2,-1,0,1,2]
V = ifft(fftshift(v))
很显然,v
采样的函数是一个奇数虚函数,因此当我计算傅立叶逆变换并进行平移后,我应该得到一个实奇函数。但这种情况并非如此。我对傅立叶变换有什么误解?谢谢!
答案 0 :(得分:4)
您需要ifftshift
,并在最后使用fftshift
和fftshift
:
>>> w = fftshift(ifft(ifftshift(v)))
>>>
>>> np.allclose(w, w.real)
True
>>> np.allclose(w, -w[::-1])
True