numpy.fft.ihfft
-
numpy.fft.ihfft(a, n=None, axis=-1, norm=None)[source] -
Вычислить обратное БПФ сигнала, обладающего эрмитовой симметрией.
Параметры: a : array_like
Входной массив.
n : int, необязательно
Длина обратного БПФ, число точек вдоль оси преобразования во входных данных для использования. Если
nменьше длины входных данных, входные данные обрезаются. Если оно больше, входные данные дополняются нулями. Еслиnне указано, используется длина входных данных вдоль оси, указаннойaxis, или последней оси, еслиaxisне указано.axis : int, необязательно
Ось, по которой вычисляется обратное БПФ. Если не указано, используется последняя ось.
norm : {None, “ortho”}, необязательно
Режим нормализации (см.
numpy.fft). По умолчанию None.Новое в версии 1.10.0.
Возвращает: out : complex ndarray
Усечённые или дополненные нулями входные данные, преобразованные вдоль оси, указанной
axis, или последней, еслиaxisне указано. Длина преобразованной оси —n//2 + 1.Примечания
hfft/ihfftпредставляют собой пару, аналогичнуюrfft/irfft, но для обратного случая: здесь сигнал обладает эрмитовой симметрией во временной области и является вещественным в частотной области. Таким образом, здесь требуетсяhfft, для которого необходимо указать длину результата, если она нечётная:- чётная:
ihfft(hfft(a, 2*len(a) - 2) == a, с точностью до погрешности округления, - нечётная:
ihfft(hfft(a, 2*len(a) - 1) == a, с точностью до погрешности округления.
Примеры
>>> spectrum = np.array([ 15, -4, 0, -1, 0, -4]) >>> np.fft.ifft(spectrum) array([ 1.+0.j, 2.-0.j, 3.+0.j, 4.+0.j, 3.+0.j, 2.-0.j]) >>> np.fft.ihfft(spectrum) array([ 1.-0.j, 2.-0.j, 3.-0.j, 4.-0.j])
- чётная:
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.fft.ihfft.html