scipy.fftpack.
ifft#
- scipy.fftpack.ifft(x, n=None, axis=-1, overwrite_x=False)[源代码][源代码]#
返回实数或复数序列的离散傅里叶逆变换。
返回的复数数组包含
y(0), y(1),..., y(n-1),其中y(j) = (x * exp(2*pi*sqrt(-1)*j*np.arange(n)/n)).mean().- 参数:
- xarray_like
转换数据以反转。
- nint, 可选
逆傅里叶变换的长度。如果
n < x.shape[axis],x 被截断。如果n > x.shape[axis],x 被零填充。默认情况下,结果为n = x.shape[axis]。- 轴int, 可选
计算ifft的轴;默认是沿最后一个轴(即
axis=-1)。- overwrite_xbool, 可选
如果为 True,x 的内容可以被销毁;默认是 False。
- 返回:
- ifft浮点数的 ndarray
逆离散傅里叶变换。
参见
fft正向FFT
注释
单精度和双精度例程都已实现。半精度输入将被转换为单精度。非浮点输入将被转换为双精度。不支持长双精度输入。
当 n 是二的幂时,此函数最为高效,而当 n 是质数时,效率最低。
如果 x 的数据类型是实数,将自动使用“实数 IFFT”算法,该算法大约将计算时间减半。
示例
>>> from scipy.fftpack import fft, ifft >>> import numpy as np >>> x = np.arange(5) >>> np.allclose(ifft(fft(x)), x, atol=1e-15) # within numerical accuracy. True