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 kth complex output data point of the N point discrete Fourier
transform is
N1 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 nth complex input data
point. The kth complex output data point of the N point inverse discrete
Fourier transform is
1 N1 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