当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy fftpack.irfft用法及代码示例


本文简要介绍 python 语言中 scipy.fftpack.irfft 的用法。

用法:

scipy.fftpack.irfft(x, n=None, axis=-1, overwrite_x=False)#

返回实序列 x 的离散傅里叶逆变换。

的内容x被解释为的输出scipy.fftpack.rfft函数。

参数

x array_like

要反转的转换数据。

n 整数,可选

傅里叶逆变换的长度。如果 n < x.shape[axis],x 被截断。如果 n > x.shape[axis],x 是零填充的。默认结果为 n = x.shape[axis]。

axis 整数,可选

计算 ifft 的轴;默认值在最后一个轴上(即,axis=-1)。

overwrite_x 布尔型,可选

如果为 True,则 x 的内容可以被销毁;默认为假。

返回

irfft 浮点数数组

离散傅里叶逆变换。

注意

返回的实数数组包含:

[y(0),y(1),...,y(n-1)]

其中 n 是偶数:

y(j) = 1/n (sum[k=1..n/2-1] (x[2*k-1]+sqrt(-1)*x[2*k])
                             * exp(sqrt(-1)*j*k* 2*pi/n)
            + c.c. + x[0] + (-1)**(j) x[n-1])

对于 n 是奇数:

y(j) = 1/n (sum[k=1..(n-1)/2] (x[2*k-1]+sqrt(-1)*x[2*k])
                             * exp(sqrt(-1)*j*k* 2*pi/n)
            + c.c. + x[0])

抄送表示前面表达式的复共轭。

有关输入参数的详细信息,请参阅 rfft

要处理具有复杂数据类型的 (conjugate-symmetric) frequency-domain 数据,请考虑使用较新的函数 scipy.fft.irfft

例子

>>> from scipy.fftpack import rfft, irfft
>>> a = [1.0, 2.0, 3.0, 4.0, 5.0]
>>> irfft(a)
array([ 2.6       , -3.16405192,  1.24398433, -1.14955713,  1.46962473])
>>> irfft(rfft(a))
array([1., 2., 3., 4., 5.])

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.fftpack.irfft。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。