Compute the one dimensional fft on a given axis.
Return the n point discrete Fourier transform of a. n defaults to the length of a. If n is larger than the length of a, then a will be zeropadded to make up the difference. If n is smaller than the length of a, only the first n items in a will be used.
Parameters:  a : array
n : int
axis : int


Notes
The packing of the result is “standard”: If A = fft(a, n), then A[0] contains the zerofrequency term, A[1:n/2+1] contains the positivefrequency terms, and A[n/2+1:] contains the negativefrequency terms, in order of decreasingly negative frequency. So for an 8point 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. This also stores a cache of working memory for different sizes of fft’s, so you could theoretically run into memory problems if you call this too many times with too many different n’s.