rfft#
- scipy.fftpack.rfft(x, n=None, ось=-1, overwrite_x=False)[источник]#
Дискретное преобразование Фурье вещественной последовательности.
- Параметры:
- xarray_like, вещественные значения
Данные для преобразования.
- nint, необязательный
Определяет длину преобразования Фурье. Если n не указан (по умолчанию), тогда
n = x.shape[axis]. Еслиn < x.shape[axis], x обрезается, еслиn > x.shape[axis], x дополняется нулями.- осьint, необязательный
Ось, вдоль которой применяется преобразование. По умолчанию это последняя ось.
- overwrite_xbool, необязательно
Если установлено значение true, содержимое x может быть перезаписано. По умолчанию False.
- Возвращает:
- zreal ndarray
Возвращаемый вещественный массив содержит:
[y(0),Re(y(1)),Im(y(1)),...,Re(y(n/2))] if n is even [y(0),Re(y(1)),Im(y(1)),...,Re(y(n/2)),Im(y(n/2))] if n is odd
где:
y(j) = sum[k=0..n-1] x[k] * exp(-sqrt(-1)*j*k*2*pi/n) j = 0..n-1
Смотрите также
Примечания
В пределах численной точности,
y == rfft(irfft(y)).Реализованы процедуры как для одинарной, так и для двойной точности. Входные данные с половинной точностью будут преобразованы в одинарную точность. Нечисловые входные данные будут преобразованы в двойную точность. Входные данные с расширенной двойной точностью не поддерживаются.
Чтобы получить вывод с комплексным типом данных, рассмотрите использование более новой функции
scipy.fft.rfft.Примеры
>>> from scipy.fftpack import fft, rfft >>> a = [9, -9, 1, 3] >>> fft(a) array([ 4. +0.j, 8.+12.j, 16. +0.j, 8.-12.j]) >>> rfft(a) array([ 4., 8., 12., 16.])