Abstract Class representing FFT's of complex, single precision data. Concrete classes are typically named ComplexFloatFFT_method, implement the FFT using some particular method.
Complex data is represented by 2 double values in sequence: the real and imaginary parts. Thus, in the default case (i0=0, stride=2), N data points is represented by a double array dimensioned to 2*N. To support 2D (and higher) transforms, an offset, i0 (where the first element starts) and stride (the distance from the real part of one value, to the next: at least 2 for complex values) can be supplied. The physical layout in the array data, of the mathematical data d[i] is as follows:
Re(d[i]) = data[i0 + stride*i] Im(d[i]) = data[i0 + stride*i+1]The transformed data is returned in the original data array in wrap-around order.
Create an FFT for transforming n points of Complex, single precision data.
Compute the (unnomalized) inverse FFT of data, leaving it in place.
Creates an instance of a subclass of ComplexFloatFFT appropriate for data of n elements.
Compute the (nomalized) inverse FFT of data, leaving it in place.
Return the normalization factor. Multiply the elements of the backtransform'ed data to get the normalized inverse.
Compute the Fast Fourier Transform of data leaving the result in data. The array data must be dimensioned (at least) 2*n, consisting of alternating real and imaginary parts.