fft.
irfftn
计算 rfftn .
rfftn
该函数通过快速傅立叶变换(FFT)计算m维阵列中任意轴上实际输入的n维离散傅立叶变换的逆。换言之, irfftn(rfftn(a), a.shape) == a 在数字精度范围内。(The a.shape 是必要的,比如 len(a) 是为了 irfft ,出于同样的原因。)
irfftn(rfftn(a), a.shape) == a
a.shape
len(a)
irfft
输入的顺序应与返回的顺序相同。 rfftn ,即 irfft 对于最终的变换轴, ifftn 沿着所有其他轴。
ifftn
输入数组。
输出的形状(每个转换轴的长度) (s[0] 指0轴, s[1] 至轴1等)。 s 也是沿此轴使用的输入点数,除了最后一个轴,其中 s[-1]//2+1 使用输入点。如果形状由 s 小于输入的值,将剪切输入。如果它更大,输入将用零填充。如果 s 如果未给定,则使用沿轴指定的轴的输入形状。除了最后一个轴 2*(m-1) 在哪里? m 是输入沿该轴的长度。
s[0]
s[1]
s[-1]//2+1
2*(m-1)
m
计算反FFT的轴。如果没有给出,最后一个 len(s) 使用轴,或所有轴,如果 s 也未指定。中的重复索引 axes 意味着在该轴上执行多次反向变换。
1.10.0 新版功能.
标准化模式(参见 numpy.fft ). 默认为“向后”。指示前向/后向变换对的哪个方向被缩放以及使用什么规格化因子。
numpy.fft
1.20.0 新版功能: 添加了“向后”、“向前”值。
截断的或零填充的输入,沿所指示的轴转换。 axes 或通过 s 或 a 如上述参数部分所述。每个变换轴的长度由 s ,或每个轴中输入的长度,但最后一个轴除外,如果 s 没有给出。在最终转换轴中,输出的长度 s 没有给出的是 2*(m-1) 在哪里? m 是输入的最终转换轴的长度。要在最终轴中获得奇数个输出点, s 必须指定。
如果 s 和 axes 长度不同。
如果一个元素 axes 大于的轴数 a .
参见
实输入的正向n维FFT,其中 ifftn 是相反的。
fft
一维FFT,使用定义和约定。
实际输入的一维FFT的倒数。
irfft2
实际输入的二维FFT的倒数。
笔记
见 fft 用于定义和约定。
见 rfft 用于实际输入的定义和约定。
rfft
厄米输入的正确解释取决于原始数据的形状,如 s . 这是因为每个输入形状可以对应于奇数或偶数长度信号。默认情况下, irfftn 假设输出长度为偶数,将最后一个条目置于奈奎斯特频率;与对称对应项混叠。当执行最终的复数到实数转换时,最后一个值被视为纯实数。为了避免信息丢失,正确的形状才是真正的输入 must 被给予。
实例
>>> a = np.zeros((3, 2, 2)) >>> a[0, 0, 0] = 3 * 2 * 2 >>> np.fft.irfftn(a) array([[[1., 1.], [1., 1.]], [[1., 1.], [1., 1.]], [[1., 1.], [1., 1.]]])