vdfftf


NAME

vdfftf - compute the Fourier coefficients of a periodic sequence. The VRFFT operations are normalized, so a call of VRFFTF followed by a call of VRFFTB will return the original sequence.


SYNOPSIS

  SUBROUTINE VDFFTF( M, N, X, XT, MDIMX, WSAVE)
  INTEGER M, N, MDIMX
  DOUBLE PRECISION X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
 
  SUBROUTINE VDFFTF_64( M, N, X, XT, MDIMX, WSAVE)
  INTEGER*8 M, N, MDIMX
  DOUBLE PRECISION X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
 

F95 INTERFACE

  SUBROUTINE FFTF( [M], [N], X, XT, [MDIMX], WSAVE)
  INTEGER :: M, N, MDIMX
  REAL(8), DIMENSION(:) :: WSAVE
  REAL(8), DIMENSION(:,:) :: X, XT
 
  SUBROUTINE FFTF_64( [M], [N], X, XT, [MDIMX], WSAVE)
  INTEGER(8) :: M, N, MDIMX
  REAL(8), DIMENSION(:) :: WSAVE
  REAL(8), DIMENSION(:,:) :: X, XT
 

C INTERFACE

#include <sunperf.h>

void vdfftf(int m, int n, double *x, double *xt, int mdimx, double *wsave);

void vdfftf_64(long m, long n, double *x, double *xt, long mdimx, double *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 of length N containing the sequence to be transformed. For VRFFTF, a real two- dimensional array X(M,N) whose rows contain the sequences to be transformed.

* XT (input)
A real two-dimensional work array with dimensions of (MDIMX x N).

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

* WSAVE (input)
On entry, an array of dimension (N+15) or greater initialized by VRFFTI.