Spec-Zone.ru › NumPy 1.15

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, т.е. вещественная нулевая частота, за которой следуют комплексные положительные частоты в порядке возрастания частоты. Поскольку дискретное преобразование Фурье вещественного входного сигнала является эрмитово-симметричным, отрицательные частоты принимаются как комплексные сопряженные соответствующих положительных частот.

Параметры:
a : array_like

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

n : int, optional

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

axis : int, optional

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

norm : {None, “ortho”}, optional

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

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

Возвращает:
out : ndarray

Усеченный или дополненный нулями входной массив, преобразованный вдоль оси, указанной 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).

Примеры

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

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

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

Spec-Zone.ru

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