Contents


NAME

     vzfftf - compute the  Fourier  coefficients  of  a  periodic
     sequence.  The VZFFT operations are normalized, so a call of
     VZFFTF followed by a call of VZFFTB will return the original
     sequence.

SYNOPSIS

     SUBROUTINE VZFFTF(M, N, X, XT, MDIMX, ROWCOL, WSAVE)

     CHARACTER * 1 ROWCOL
     DOUBLE COMPLEX X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
     INTEGER M, N, MDIMX

     SUBROUTINE VZFFTF_64(M, N, X, XT, MDIMX, ROWCOL, WSAVE)

     CHARACTER * 1 ROWCOL
     DOUBLE COMPLEX X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
     INTEGER*8 M, N, MDIMX

  F95 INTERFACE
     SUBROUTINE FFTF([M], [N], X, XT, [MDIMX], ROWCOL, WSAVE)

     CHARACTER(LEN=1) :: ROWCOL
     COMPLEX(8), DIMENSION(:) :: WSAVE
     COMPLEX(8), DIMENSION(:,:) :: X, XT
     INTEGER :: M, N, MDIMX

     SUBROUTINE FFTF_64([M], [N], X, XT, [MDIMX], ROWCOL, WSAVE)

     CHARACTER(LEN=1) :: ROWCOL
     COMPLEX(8), DIMENSION(:) :: WSAVE
     COMPLEX(8), DIMENSION(:,:) :: X, XT
     INTEGER(8) :: M, N, MDIMX

  C INTERFACE
     #include <sunperf.h>

     void vzfftf(int m, int n,  doublecomplex  *x,  doublecomplex
               *xt,   int   mdimx,   char  rowcol,  doublecomplex
               *wsave);

     void vzfftf_64(long m, long n, doublecomplex *x,  doublecom-
               plex  *xt,  long mdimx, char rowcol, doublecomplex
               *wsave);

ARGUMENTS

     M (input) The number of sequences to be transformed.   M  >=
               0.

     N (input) Length of the sequence to be  transformed.   These
               subroutines are most efficient when N is a product
               of small primes.  N >= 0.

     X (input) On entry, an array X(M,N) whose rows  contain  the
               sequences to be transformed.

     XT (input)
               A work array.

     MDIMX (input)
               Leading dimension of the arrays X and XT as speci-
               fied  in  a dimension or type statement.  MDIMX >=
               M.

     ROWCOL (input)
               Indicates whether to transform rows ('R'  or  'r')
               or columns ('C' or 'c').

     WSAVE (input/output)
               On entry, an array of dimension (K+15) or greater,
               where  K = M if ROWCOL = ('R' or 'r').  Otherwise,
               K = N.  WSAVE is initialized by VZFFTI.