cfft3f


NAME

cfft3f - compute the Fourier coefficients of a periodic sequence. The FFT operations are unnormalized, so a call of CFFT3F followed by a call of CFFT3B will multiply the input sequence by M*N*K.


SYNOPSIS

  SUBROUTINE CFFT3F( M, N, K, A, LDA, LD2A, WORK, LWORK)
  COMPLEX A(LDA,LD2A,*)
  INTEGER M, N, K, LDA, LD2A, LWORK
  REAL WORK(*)
 
  SUBROUTINE CFFT3F_64( M, N, K, A, LDA, LD2A, WORK, LWORK)
  COMPLEX A(LDA,LD2A,*)
  INTEGER*8 M, N, K, LDA, LD2A, LWORK
  REAL WORK(*)
 

F95 INTERFACE

  SUBROUTINE FFT3F( [M], [N], [K], A, [LDA], LD2A, WORK, LWORK)
  COMPLEX, DIMENSION(:,:,:) :: A
  INTEGER :: M, N, K, LDA, LD2A, LWORK
  REAL, DIMENSION(:) :: WORK
 
  SUBROUTINE FFT3F_64( [M], [N], [K], A, [LDA], LD2A, WORK, LWORK)
  COMPLEX, DIMENSION(:,:,:) :: A
  INTEGER(8) :: M, N, K, LDA, LD2A, LWORK
  REAL, DIMENSION(:) :: WORK
 

C INTERFACE

#include <sunperf.h>

void cfft3f(int m, int n, int k, complex *a, int lda, int ld2a, float *work, int lwork);

void cfft3f_64(long m, long n, long k, complex *a, long lda, long ld2a, float *work, long lwork);


ARGUMENTS

* M (input)
Number of rows to be transformed. These subroutines are most efficient when M is a product of small primes. M >= 0.

* N (input)
Number of columns to be transformed. These subroutines are most efficient when N is a product of small primes. N >= 0.

* K (input)
Number of planes to be transformed. These subroutines are most efficient when K is a product of small primes. K >= 0.

* A (input/output)
On entry, a three-dimensional array A(M,N,K) that contains the sequences to be transformed.

* LDA (input)
Leading dimension of the array containing the data to be transformed. LDA >= M.

* LD2A (input)
Second dimension of the array containing the data to be transformed. LD2A >= N.

* WORK (input)
On input, workspace WORK must have been initialized by CFFT3I.

* LWORK (input)
The dimension of the array WORK. LWORK >= (4*(M + N + K) + 45).