xrscipy.fftpack.rfft
- xrscipy.fftpack.rfft(x, coord, n=None)
rfft(x, coord, n=None)
- Parameters:
obj (xarray object) – The data to transform.
coord (string) – The axis along which the transform is applied. The default is the last axis.. The coordinate must be evenly spaced.
n (int, optional) – Defines the length of the Fourier transform. If n is not specified (the default) then
n = x.shape[axis]
. Ifn < x.shape[axis]
, x is truncated, ifn > x.shape[axis]
, x is zero-padded.
- Returns:
z –
The returned real array contains:
[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
where:
y(j) = sum[k=0..n-1] x[k] * exp(-sqrt(-1)*j*k*2*pi/n) j = 0..n-1
- Return type:
real ndarray
See also
numpy.fftpack.rfft
scipy.fft.rfft : Original scipy implementation
Notes
Within numerical accuracy,
y == rfft(irfft(y))
.Both single and double precision routines are implemented. Half precision inputs will be converted to single precision. Non-floating-point inputs will be converted to double precision. Long-double precision inputs are not supported.
To get an output with a complex datatype, consider using the newer function scipy.fft.rfft.
Examples
>>> 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])
Examples
>>> rfft(a) array([ 4., 8., 12., 16.])