numpy.fft.rfft
-
numpy.fft.rfft(a, n=None, axis=-1, norm=None)[source] -
Вычисление одномерного дискретного преобразования Фурье для вещественного входного сигнала.
Эта функция вычисляет одномерное дискретное преобразование Фурье (DFT) n-точечного массива вещественных значений с использованием эффективного алгоритма быстрого преобразования Фурье (FFT).
Параметры: a : array_like
Входной массив
n : int, необязательно
Количество точек вдоль оси преобразования во входном массиве. Если
nменьше длины входного массива, входной массив усекается. Если оно больше, входной массив дополняется нулями. Еслиnне указано, используется длина входного массива вдоль оси, указаннойaxis.axis : int, необязательно
Ось, по которой вычисляется FFT. Если не указано, используется последняя ось.
norm : {None, “ortho”}, необязательно
Новое в версии 1.10.0.
Режим нормализации (см.
numpy.fft). По умолчанию None.Возвращаемые значения: out : complex ndarray
Усечённый или дополненный нулями входной массив, преобразованный вдоль оси, указанной
axis, или вдоль последней оси, еслиaxisне указано. Еслиnчётное, длина преобразованной оси равна(n/2)+1. Еслиnнечётное, длина равна(n+1)/2.Исключения: IndexError
Если
axisбольше, чем последняя осьa.См. также
Примечания
Когда DFT вычисляется для чисто вещественного входного массива, выходной массив является эрмитово-симметричным, т.е. значения отрицательных частот являются просто комплексными сопряженными значениям соответствующих положительных частот, а значения отрицательных частот, следовательно, избыточны. Эта функция не вычисляет значения отрицательных частот, и длина преобразованной оси выходного массива, поэтому, равна
n//2 + 1.Когда
A = rfft(a)и fs - частота дискретизации,A[0]содержит значение нулевой частоты 0*fs, которое является вещественным из-за эрмитовой симметрии.Если
nчётное,A[-1]содержит член, представляющий как положительную, так и отрицательную частоту Найквиста (+fs/2 и -fs/2), который также должен быть чисто вещественным. Еслиnнечётное, члена с частотой fs/2 нет;A[-1]содержит наибольшую положительную частоту (fs/2*(n-1)/n) и, как правило, является комплексной величиной.Если входной массив
aсодержит мнимую часть, она игнорируется.Примеры
>>> np.fft.fft([0, 1, 0, 0]) array([ 1.+0.j, 0.-1.j, -1.+0.j, 0.+1.j]) >>> np.fft.rfft([0, 1, 0, 0]) array([ 1.+0.j, 0.-1.j, -1.+0.j])
Обратите внимание, как последний элемент выходного массива
fftявляется комплексным сопряжением второго элемента для вещественного входного массива. Дляrfftэта симметрия используется для вычисления только значений положительных частот.
© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.fft.rfft.html