numpy.fft.irfftn
- fft.irfftn(a, s=None, axes=None, norm=None)[source]
-
Вычисляет обратное преобразование
rfftn.Эта функция вычисляет обратное N-мерное дискретное преобразование Фурье для вещественного входного сигнала по любому количеству осей в массиве размерностью M с использованием быстрого преобразования Фурье (FFT). Другими словами,
irfftn(rfftn(a), a.shape) == aс точностью до погрешности вычислений. (a.shapeнеобходима, как иlen(a)дляirfft, по той же причине.)Входные данные должны быть упорядочены так же, как и возвращаемые
rfftn, т.е. так же, как и дляirfftдля последней оси преобразования, и так же, как и дляifftnпо всем остальным осям.- Parameters
-
- aarray_like
-
Вводной массив.
- ssequence of ints, optional
-
Размер (длина каждой оси преобразования) выходного массива (
s[0]относится к оси 0,s[1]к оси 1 и т.д.).sтакже является количеством точек входного сигнала, используемых по этой оси, за исключением последней оси, где используетсяs[-1]//2+1точек входного сигнала. По любой оси, если размер, указанныйs, меньше размера входного массива, входной массив усекается. Если он больше, входной массив дополняется нулями. Еслиsне указан, используется размер входного массива по осям, указанным вaxes. За исключением последней оси, которая принимается равной2*(m-1), гдеm— длина входного массива по этой оси. - axessequence of ints, optional
-
Оси, по которым вычисляется обратное преобразование Фурье. Если не указаны, используются последние
len(s)оси, или все оси, еслиsтакже не указан. Повторные индексы вaxesозначают, что обратное преобразование по этой оси выполняется несколько раз. - norm{“backward”, “ortho”, “forward”}, optional
-
New in version 1.10.0.
Режим нормализации (см.
numpy.fft). По умолчанию — “backward”. Указывает, какая из направлений прямого/обратного преобразования масштабируется и с каким нормализационным множителем.New in version 1.20.0: Значения “backward”, “forward” были добавлены.
- Returns
-
- outndarray
-
Усечённый или дополненный нулями входной массив, преобразованный по осям, указанным в
axes, или по сочетаниюsилиa, как объяснено в разделе параметров выше. Длина каждой оси преобразования задаётся соответствующим элементомs, или длиной входного массива по каждой оси, за исключением последней, еслиsне указан. В последней оси преобразованной длины выходного массива при отсутствииsявляется2*(m-1), гдеm— длина последней оси преобразования входного массива. Чтобы получить нечётное количество выходных точек на последней оси,sдолжен быть указан.
- Raises
-
- ValueError
-
Если
sиaxesимеют разную длину. - IndexError
-
Если элемент
axesбольше, чем количество осей вa.
См. также
Примечания
См.
fftдля определений и соглашений, используемых.См.
rfftдля определений и соглашений, используемых для вещественного входного сигнала.Правильная интерпретация эрмитовых входных данных зависит от размера исходных данных, как указано в
s. Это связано с тем, что каждый размер входных данных может соответствовать как сигналу чётной, так и нечётной длины. По умолчанию,irfftnпредполагает чётную длину выходных данных, что помещает последний элемент на частоту Найквиста; с алиасом с его симметричным аналогом. При выполнении окончательного преобразования комплексного сигнала в вещественный, последнее значение обрабатывается как чисто вещественное. Для предотвращения потери информации, правильный размер вещественного входного сигнала должен быть задан.Примеры
>>> 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.]]])
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.fft.irfftn.html