Spec-Zone.ru › NumPy 2.0

numpy.fft.irfftn

fft.irfftn(a, s=None, axes=None, norm=None, out=None)[source]

Вычисляет обратное преобразование к rfftn.

Эта функция вычисляет обратное N-мерное дискретное преобразование Фурье для вещественного входного сигнала по любому числу осей в массиве размерности M с помощью быстрого преобразования Фурье (FFT). Другими словами, irfftn(rfftn(a), a.shape) == a с точностью до погрешности округления. (a.shape необходима, как и len(a) для irfft, и по той же причине.)

Входные данные должны быть упорядочены так же, как и возвращаемые rfftn, т.е. как для irfft для последней оси преобразования, и как для ifftn по всем остальным осям.

Параметры:
aarray_like

Входной массив.

sпоследовательность целых чисел, необязательно

Форма (длина каждой оси преобразования) выходного массива (s[0] относится к оси 0, s[1] к оси 1 и т.д.). s также является количеством точек входного сигнала, используемых вдоль этой оси, за исключением последней оси, где используется s[-1]//2+1 точек входного сигнала. Вдоль любой оси, если форма, указанная s, меньше формы входного сигнала, входной сигнал обрезается. Если она больше, входной сигнал дополняется нулями.

Изменено в версии 2.0: Если это -1, используется весь входной сигнал (без заполнения/обрезания).

Если s не указано, используется форма входного сигнала вдоль осей, указанных в axes. За исключением последней оси, которая принимается как 2*(m-1) , где m - длина входного сигнала вдоль этой оси.

Устарело начиная с версии 2.0: Если s не None, axes не должно быть None.

Устарело начиная с версии 2.0: s должно содержать только int, а не None значения. None значения в настоящее время означают, что используется значение по умолчанию для n в соответствующем одномерном преобразовании, но это поведение устарело.

axesпоследовательность целых чисел, необязательно

Оси, по которым вычисляется обратное преобразование Фурье. Если не указаны, используются последние len(s) оси, или все оси, если s также не указано. Повторяющиеся индексы в axes означают, что обратное преобразование вдоль этой оси выполняется несколько раз.

Устарело начиная с версии 2.0: Если s указано, соответствующие axes для преобразования также должны быть явно указаны.

norm{“backward”, “ortho”, “forward”}, optional

Введено в версии 1.10.0.

Режим нормализации (см. numpy.fft). Значение по умолчанию - “backward”. Указывает, какая из сторон прямого/обратного преобразования масштабируется и с каким коэффициентом нормализации.

Введено в версии 1.20.0: Значения “backward”, “forward” были добавлены.

outndarray, optional

Если задан, результат будет помещён в этот массив. Он должен иметь подходящую форму и тип данных для последнего преобразования.

Введено в версии 2.0.0.

Возвращаемые значения:
outndarray

Усечённый или дополненный нулями входной массив, преобразованный вдоль осей, указанных в axes, или комбинируемый s или a, как описано в разделе параметров. Длина каждой оси преобразования задаётся соответствующим элементом s, или длиной входного массива по каждой оси, за исключением последней, если s не указан. На последней оси длина выходного массива при s не задано, составляет 2*(m-1), где m - длина последней оси преобразования входного массива. Для получения нечётного количества точек выходных значений на последней оси, необходимо указать s.

Исключения:
ValueError

Если s и axes имеют разную длину.

IndexError

Если элемент axes больше, чем число осей массива a.

См. также

rfftn

Прямое N-мерное преобразование Фурье вещественного входного сигнала, обратное к которому ifftn.

fft

Одномерное преобразование Фурье, с определениями и соглашениями.

irfft

Обратное одномерное преобразование Фурье вещественного входного сигнала.

irfft2

Обратное двумерное преобразование Фурье вещественного входного сигнала.

Примечания

См. 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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.fft.irfftn.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API