SPfCFFT
Routine
-
void SPfCFFT (float x[], float y[], int N, int Ifn)
Purpose
-
Fast Fourier transform (complex data)
Description
This subroutine calculates the discrete Fourier transform or the inverse
discrete Fourier transform of a set of complex numbers using the fast Fourier
transform algorithm developed by G. Sande (mixed radix 4 and radix 2).
-
Reference:
-
W. M. Gentleman and G. Sande, "Fast Fourier Transforms - For Fun and
Profit", 1966 Fall Joint Computer Conference.
The calculation is done in place, that is the output data replaces the input
data. The k-th complex output data point of the N point discrete Fourier
transform is
N-1 nk
G(k) = SUM g(n) * W , where W = exp(-j*2*pi/N),
n=0
where j is the imaginary operator, and g(n) is the n-th complex input data
point. The k-th complex output data point of the N point inverse discrete
Fourier transform is
1 N-1 -nk
g(n) = - SUM G(k) * W .
N k=0
Parameters
-
<-> float x[]
-
Array of length N containing the real part of the data
-
<-> float y[]
-
Array of length N containing the imaginary part of the data
-
-> int N
-
Number of elements in each of the arrays x and y. N must be a power of
two.
-
-> int Ifn
-
Input parameter, positive for the forward transform and negative for the
inverse transform.
Author / revision
P. Kabal
/ Revision 1.21 2003/05/09
See Also
SPfRFFT,
SPfDCT
Main Index libtsp