numpy.fft.hfft
-
numpy.fft.hfft(a, n=None, axis=-1, norm=None)[source] -
Вычислить ДПФ сигнала, обладающего эрмитовой симметрией (вещественный спектр).
Параметры: 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.См. также
Примечания
hfft/ihfft- это пары, аналогичныеrfft/irfft, но для противоположного случая: здесь сигнал имеет эрмитову симметрию во временной области и является вещественным в частотной области. Таким образом, здесь требуется функцияhfft, для которой необходимо указать длину результата, если она нечётная:ihfft(hfft(a), len(a)) == a, с точностью до вычислительной погрешности.Примеры
>>> signal = np.array([1, 2, 3, 4, 3, 2]) >>> np.fft.fft(signal) array([ 15.+0.j, -4.+0.j, 0.+0.j, -1.-0.j, 0.+0.j, -4.+0.j]) >>> np.fft.hfft(signal[:4]) # Input first half of signal array([ 15., -4., 0., -1., 0., -4.]) >>> np.fft.hfft(signal, 6) # Input entire signal and truncate array([ 15., -4., 0., -1., 0., -4.])
>>> signal = np.array([[1, 1.j], [-1.j, 2]]) >>> np.conj(signal.T) - signal # check Hermitian symmetry array([[ 0.-0.j, 0.+0.j], [ 0.+0.j, 0.-0.j]]) >>> freq_spectrum = np.fft.hfft(signal) >>> freq_spectrum array([[ 1., 1.], [ 2., -2.]])
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.fft.hfft.html