Spec-Zone.ru › NumPy 1.19

numpy.fft.irfft

numpy.fft.irfft(a, n=None, axis=-1, norm=None) [source]

Вычисление обратного n-точечного ДПФ для вещественного входного сигнала.

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

Ожидается, что входной сигнал будет иметь форму, возвращаемую функцией rfft, т.е. вещественная нулевая частота, за которой следуют комплексные положительные частоты в порядке возрастания частоты. Поскольку дискретное преобразование Фурье вещественного входного сигнала является эрмитово-симметричным, отрицательные частоты считаются комплексными сопряжениями соответствующих положительных частот.

Параметры
aarray_like

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

nint, optional

Длина преобразованной оси выходного сигнала. Для n выходных точек необходимо n//2+1 входных точек. Если входной массив длиннее, он усекается. Если он короче, он заполняется нулями. Если n не указан, он принимается равным 2*(m-1), где m — длина входного сигнала вдоль оси, указанной axis.

axisint, optional

Ось, по которой вычисляется обратное БПФ. Если не указано, используется последняя ось.

norm{None, “ortho”}, optional

Новая версия с 1.10.0.

Режим нормализации (см. numpy.fft). По умолчанию None.

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

Усечённый или заполненный нулями входной сигнал, преобразованный вдоль оси, указанной axis, или последней, если axis не указан. Длина преобразованной оси — n, или, если n не указан, 2*(m-1), где m — длина преобразованной оси входного сигнала. Чтобы получить нечётное число выходных точек, необходимо указать n.

Исключения
IndexError

Если axis больше, чем последняя ось массива a.

См. также

numpy.fft

Для определения ДПФ и используемых соглашений.

rfft

Одномерное БПФ вещественного входного сигнала, обратным к которому является irfft.

fft

Одномерное БПФ.

irfft2

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

irfftn

Обратное n-мерное БПФ вещественного входного сигнала.

Примечания

Возвращает вещественное n-точечное обратное дискретное преобразование Фурье a, где a содержит члены с неотрицательными частотами эрмитово-симметричной последовательности. n — длина результата, а не входного сигнала.

Если указана длина n, такая что a, необходимо заполнение нулями или усечение, дополнительные/удаляемые значения будут добавлены/удалены на высоких частотах. Таким образом, можно пересэмплировать последовательность в m точек с помощью интерполяции Фурье следующим образом: a_resamp = irfft(rfft(a), m).

Правильная интерпретация эрмитова входного сигнала зависит от длины исходных данных, как указано n. Это связано с тем, что каждая форма входного массива может соответствовать как нечётной, так и чётной последовательности. По умолчанию, irfft предполагает чётную длину результата, что помещает последний член на частоте Найквиста; с алиасингом его симметричного значения. Благодаря эрмитовой симметрии, значение таким образом рассматривается как чисто вещественное. Для предотвращения потери информации, необходимо указать правильную длину вещественного входного сигнала.

Примеры

>>> np.fft.ifft([1, -1j, -1, 1j])
array([0.+0.j,  1.+0.j,  0.+0.j,  0.+0.j]) # may vary
>>> np.fft.irfft([1, -1j, -1])
array([0.,  1.,  0.,  0.])

Обратите внимание, как последний член входного сигнала в обычном ifft является комплексным сопряжением второго члена, а выходной сигнал имеет нулевую мнимую часть везде. При вызове irfft отрицательные частоты не задаются, и выходной массив чисто вещественный.

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.fft.irfft.html

Spec-Zone.ru

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