Spec-Zone.ru › NumPy 2.0

numpy.fft.rfft

fft.rfft(a, n=None, axis=-1, norm=None, out=None)[source]

Вычислить одномерное дискретное преобразование Фурье для вещественного входного сигнала.

Эта функция вычисляет одномерное дискретное преобразование Фурье (ДПФ) n-го порядка от массива с вещественными значениями, используя эффективный алгоритм быстрой Фурье-трансформации (БПФ).

Параметры:
aarray_like

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

nint, необязательно

Количество точек по оси преобразования во входных данных. Если n меньше длины входных данных, входные данные обрезаются. Если оно больше, входные данные дополняются нулями. Если n не задано, используется длина входных данных вдоль оси, указанной в axis.

axisint, необязательно

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

norm{“backward”, “ortho”, “forward”}, необязательно

Введено в версии 1.10.0.

Режим нормализации (см. numpy.fft). По умолчанию — “backward”. Указывает, какая из прямых/обратных пар преобразований масштабируется и с каким коэффициентом нормализации.

В версии 1.20.0: Добавлены значения “backward”, “forward”.

outcomplex ndarray, необязательно

Если предоставлено, результат будет помещён в этот массив. Он должен иметь соответствующую форму и тип данных.

Введено в версии 2.0.0.

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

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

Возбуждает:
IndexError

Если axis не является допустимой осью для a.

См. также

numpy.fft

Для определения ДПФ и используемых соглашений.

irfft

Обратное преобразование rfft.

fft

Одномерное преобразование Фурье для общего (комплексного) входного сигнала.

fftn

n-мерное БПФ.

rfftn

n-мерное БПФ для вещественного входного сигнала.

Примечания

При вычислении ДПФ для чисто вещественного входного сигнала выходной сигнал является эрмитово-симметричным, т. е. термины отрицательных частот являются просто комплексными сопряжёнными соответствующим терминам положительных частот, и поэтому термины отрицательных частот являются избыточными. Данная функция не вычисляет термины отрицательных частот, и поэтому длина преобразованной оси выходного сигнала равна 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]) # may vary
>>> np.fft.rfft([0, 1, 0, 0])
array([ 1.+0.j,  0.-1.j, -1.+0.j]) # may vary

Обратите внимание, как последний элемент выходного сигнала fft является комплексным сопряжённым второго элемента для вещественного входного сигнала. Для rfft эта симметрия используется для вычисления только членов с неотрицательными частотами.

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.fft.rfft.html

Spec-Zone.ru

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