### FFT Routines

cfft1d / zfft1d compute a forward or inverse FFT of a complex vector (in-place).
Fortran:
``` call cfft1d (r, n, isign, wsave) call zfft1d (r, n, isign, wsave) ``` C:
``` void cfft1dc (float* r, float* i, int n, int isign, float* wsave); void zfft1dc (double* r, double* i, int n, int isign, double* wsave); ```

scfft1d / dzfft1d compute forward FFT of a real vector and represent the complex conjugate-symmetric result in CCS format (in-place).
Fortran:
``` call scfft1d (r, n, isign, wsave) call dzfft1d (r, n, isign, wsave) ``` C:
``` void scfft1dc (float* r, int n, int isign, float* wsave); void dzfft1dc (double* r, int n, int isign, double* wsave); ```

csfft1d / zdfft1d compute inverse FFT of a complex conjugate-symmetric vector packed in CCS format (in-place).
Fortran:
``` call csfft1d (r, n, isign, wsave) call zdfft1d (r, n, isign, wsave) ``` C:
``` void csfft1dc (float* r, int n, int isign, float* wsave); void zdfft1dc (double* r, int n, int isign, double* wsave); ```

cfft2d / zfft2d compute a forward or inverse FFT of a complex matrix (in-place).
Fortran:
``` call cfft2d (r, m, n, isign) call zfft2d (r, m, n, isign) ``` C:
``` void cfft2dc (float* r, float* i, int m, int n, int isign); void zfft2dc (double* r, double* i, int m, int n, int isign); ```

scfft2d / dzfft2d compute forward FFT of a real matrix and represent the complex conjugate-symmetric result in CCS format (in-place).
Fortran:
``` call scfft2d (r, m, n) call dzfft2d (r, m, n) ``` C:
``` void scfft2dc (float* r, int m, int n); void dzfft2dc (double* r, int m, int n); ```

csfft2d / zdfft2d compute inverse FFT of a complex conjugate-symmetric matrix packed in CCS format (in-place).
Fortran:
``` call csfft2d (r, m, n) call zdfft2d (r, m, n) ``` C:
``` void csfft2dc (float* r, int m, int n); void zdfft2dc (double* r, int m, int n); ```

* Legal Information © 1999, 2002-2004, Intel Corporation