aesara.tensor.fourier.fft = <aesara.tensor.fourier.Fourier object>[source]#

for officially supported FFTs, use aesara.tensor.fft, which provides real-input FFTs. Gradients are supported.

An instance of this class returns a finite fourier transform calculated along one dimension of an input array.


a : Array of at least one dimension. Can be complex. n : Integer, optional. Length of the transformed axis of the output. If n is smaller than the length of the input, the input is cropped. If it is larger, the input is padded with zeros. If n is not given, the length of the input (along the axis specified by axis) is used. axis : Integer, optional. Axis over which to compute the FFT. If not supplied, the last axis is used.


Complex array. The input array, transformed along the axis indicated by ‘axis’ or along the last axis if ‘axis’ is not specified. It is truncated or zero-padded as required if ‘n’ is specified. (From numpy.fft.fft’s documentation:) The values in the output follow so-called standard order. If A = fft(a, n), then A[0] contains the zero-frequency term (the mean of the signal), which is always purely real for real inputs. Then A[1:n/2] contains the positive-frequency terms, and A[n/2+1:] contains the negative-frequency terms, in order of decreasingly negative frequency. For an even number of input points, A[n/2] represents both positive and negative Nyquist frequency, and is also purely real for real input. For an odd number of input points, A[(n-1)/2] contains the largest positive frequency, while A[(n+1)/2] contains the largest negative frequency.