Return discrete Fourier transform of arbitrary type sequence x.
Parameters : | x : array-like
n : int, optional
axis : int, optional
overwrite_x : bool, optional
|
---|---|
Returns : | z : complex ndarray
|
Notes
The packing of the result is “standard”: If A = fft(a, n), then A[0] contains the zero-frequency term, A[1:n/2+1] contains the positive-frequency terms, and A[n/2+1:] contains the negative-frequency terms, in order of decreasingly negative frequency. So for an 8-point transform, the frequencies of the result are [ 0, 1, 2, 3, 4, -3, -2, -1].
This is most efficient for n a power of two.
Note
In scipy 0.8.0 fft in single precision is available, but only for input array sizes which can be factorized into (combinations of) 2, 3 and 5. For other sizes the computation will be done in double precision.
Examples
>>> x = np.arange(5)
>>> np.all(np.abs(x-fft(ifft(x))<1.e-15) #within numerical accuracy.
True