numpy.fft.rfftn

fft.rfftn(a, s=None, axes=None, norm=None)[源代码]

计算实际输入的N维离散傅立叶变换。

该函数通过快速傅立叶变换(FFT)计算m维实数组中任意轴的n维离散傅立叶变换。默认情况下,所有轴都将被转换,实际转换将在最后一个轴上执行,而其余的转换则很复杂。

参数
aarray_like

输入数组,视为实数。

sINTS序列,可选

要从输入使用的形状(沿每个转换轴的长度)。 (s[0] 指0轴, s[1] 至轴1等)。的最后一个元素 s 对应于 n 对于 rfft(x, n) ,而对于其余轴,它对应于 n 对于 fft(x, n) . 沿任意轴,如果给定的形状小于输入的形状,则将剪切输入。如果它更大,输入将用零填充。如果 s 未给定,输入沿指定轴的形状 axes 使用。

axesINTS序列,可选

计算FFT的轴。如果没有给出,最后一个 len(s) 使用轴,或所有轴,如果 s 也未指定。

norm{“向后”,“正交”,“向前”},可选

1.10.0 新版功能.

标准化模式(参见 numpy.fft ). 默认为“向后”。指示前向/后向变换对的哪个方向被缩放以及使用什么规格化因子。

1.20.0 新版功能: 添加了“向后”、“向前”值。

返回
out复合中子

截断的或零填充的输入,沿所指示的轴转换。 axes 或通过 sa 如上述参数部分所述。最后转换的轴的长度将为 s[-1]//2+1 ,而其余转换轴的长度将根据 s 或与输入保持不变。

加薪
ValueError

如果 saxes 长度不同。

IndexError

如果一个元素 axes 大于的轴数 a .

参见

irfftn

rfftn 即实际输入的n维FFT的倒数。

fft

一维FFT,使用定义和约定。

rfft

实际输入的一维FFT。

fftn

N维FFT。

rfft2

实际输入的二维FFT。

笔记

实际输入的转换在最后一个转换轴上执行,如 rfft ,然后对其余轴执行转换 fftn . 输出的顺序与 rfft 对于最终的变换轴, fftn 对于其余的变换轴。

fft 有关详细信息,请参阅使用的定义和约定。

实例

>>> a = np.ones((2, 2, 2))
>>> np.fft.rfftn(a)
array([[[8.+0.j,  0.+0.j], # may vary
        [0.+0.j,  0.+0.j]],
       [[0.+0.j,  0.+0.j],
        [0.+0.j,  0.+0.j]]])
>>> np.fft.rfftn(a, axes=(2, 0))
array([[[4.+0.j,  0.+0.j], # may vary
        [4.+0.j,  0.+0.j]],
       [[0.+0.j,  0.+0.j],
        [0.+0.j,  0.+0.j]]])