numpy.fft.irfft
-
numpy.fft.irfft(a, n=None, axis=-1, norm=None)[source] -
Вычислить обратное преобразование ДФТ для вещественного входного сигнала.
Эта функция вычисляет обратное одномерное дискретное преобразование Фурье (ДПФ) размера n для вещественного входного сигнала, вычисленное функцией
rfft. Другими словами,irfft(rfft(a), len(a)) == aс точностью до вычислительной погрешности. (См. Примечания ниже, чтобы понять, почемуlen(a)необходимо в данном случае.)Входной сигнал должен иметь вид, возвращаемый функцией
rfft, т.е. вещественная нулевая частота, за которой следуют комплексные положительные частоты в порядке возрастания частоты. Поскольку дискретное преобразование Фурье (ДПФ) вещественного входного сигнала является эрмитово-симметричным, отрицательные частоты принимаются как комплексные сопряжения соответствующих положительных частот.Параметры: a : array_like
Входной массив.
n : int, необязательно
Длина преобразованной оси выходного массива. Для
nвыходных точек, необходимоn//2+1входных точек. Если входной массив длиннее, он усекается. Если он короче, он заполняется нулями. Еслиnне указан, он определяется по длине входного массива вдоль оси, указаннойaxis.axis : int, необязательно
Ось, по которой вычисляется обратное БПФ. Если не указано, используется последняя ось.
norm : {None, “ortho”}, необязательно
Новое в версии 1.10.0.
Режим нормализации (см.
numpy.fft). По умолчанию None.Возвращаемое значение: out : ndarray
Усечённый или дополненный нулями входной массив, преобразованный вдоль оси, указанной
axis, или последней оси, еслиaxisне указано. Длина преобразованной оси равнаn, или, еслиnне задано,2*(m-1), гдеm— длина преобразованной оси входного массива. Чтобы получить нечётное количество выходных точек, необходимо указатьn.Исключения: IndexError
Если
axisбольше, чем последняя осьa.См. также
Примечания
Возвращает вещественное
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, отрицательные частоты не заданы, и выходной массив является чисто вещественным.
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.fft.irfft.html