FFTPACK
Fast Fourier Transform Package


FFTPACK is a FORTRAN90 library, using single precision arithmetic, which computes Fast Fourier Transforms.

Special features include:

In most cases, you will need to call several routines from FFTPACK in order to get your results. In the simplest case, you will need to call just two routines:

In more complicated situations, you might want to call three routines:

In a few cases, a single routine may be used for both the forward and backward computation.

Sometimes, a routine has been so heavily optimized that it is impossible to determine if it is really a correct implementation of the relatively simple Fourier formulas. In some cases, a "slow" version of a transform routine has been supplied, simply to provide a simple check that the formulas are correct.

The following table shows how the routines are grouped:
InitializationForwardBackwardPurpose
CFFTICFFTFCFFTBFFT for complex data
COSQICOSQFCOSQBQuarter wave cosine FFT
COSTICOSTCOSTEven function cosine FFT
EZFFTIEZFFTFEZFFTBEasy version of RFFT routines
RFFTIRFFTFRFFTBFFT for real data
SINQISINQFSINQBQuarter wave sine FFT
SINTISINTSINTOdd function sine FFT

Related Data and Programs:

FFTPACK5 is a more recent version of FFTPACK.

FFTW3 is a C library which computes Fast Fourier Transforms. You may refer to C examples or FORTRAN77 examples.

GSL is the Gnu Scientific Library, which includes a number of FFT routines.

NMS is a FORTRAN90 library which includes a number of FFT routines.

SLATEC is a FORTRAN90 library which includes FFTPACK.

Reference:

  1. William Briggs and Van Emden Henson,
    The Discrete Fourier Transform,
    SIAM,
    QA403.5 B75
  2. Bill Buzbee,
    The SLATEC Common Math Library,
    in Sources and Development of Mathematical Software,
    edited by W. Cowell,
    Prentice Hall, 1984, pages 302-318.
  3. Chu and George,
    Inside the FFT Black Box,
    CRC Press,
    QA403.5 C5
  4. David Kahaner, Cleve Moler, Steven Nash,
    Numerical Methods and Software,
    Prentice Hall, 1988.
  5. Paul Swarztrauber,
    Vectorizing the FFT's,
    in Parallel Computations,
    edited by G. Rodrigue,
    Academic Press, 1982, pages 51-83.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN90 source codes.


Last revised on 12 November 2006.