rfft3i


NAME

rfft3i - initialize the array WSAVE, which is used in both RFFT3F and RFFT3B.


SYNOPSIS

  SUBROUTINE RFFT3I( M, N, K, WORK)
  INTEGER M, N, K
  REAL WORK(*)
 
  SUBROUTINE RFFT3I_64( M, N, K, WORK)
  INTEGER*8 M, N, K
  REAL WORK(*)
 

F95 INTERFACE

  SUBROUTINE FFT3I( M, N, K, WORK)
  INTEGER :: M, N, K
  REAL, DIMENSION(:) :: WORK
 
  SUBROUTINE FFT3I_64( M, N, K, WORK)
  INTEGER(8) :: M, N, K
  REAL, DIMENSION(:) :: WORK
 

C INTERFACE

#include <sunperf.h>

void rfft3i(int m, int n, int k, float *work);

void rfft3i_64(long m, long n, long k, float *work);


ARGUMENTS

* M (input)
Number of rows to be transformed. M >= 0.

* N (input)
Number of columns to be transformed. N >= 0.

* K (input)
Number of planes to be transformed. K >= 0.

* WORK (input/output)
On entry, an array of dimension (M + 2*(N + K) + 4*K + 45) or greater. RFFT3I needs to be called only once to initialize array WORK before calling RFFT3F and/or RFFT3B if M, N, K and WORK remain unchanged between these calls. Thus, subsequent transforms or inverse transforms of same size can be obtained faster than the first since they do not require initialization of the workspace.