CXML
RFFTMLT (3sciport)
Applies complex to real or real to complex Fast Fourier
Transforms (FFTs) on multiple input vectors
SYNOPSIS
Call RFFTMLT( x, work, trigs ,ifax, inc1x, inc2x, n, lot, isign )
ARGUMENTS
x Real matrix.
An input/output matrix containing lot real/complex vectors
on input and lot complex/real vectors on output. Output
vectors overwrite input vectors.
work Real vector.
A vestigial argument ignored by the SCIPORT implementation.
trigs Real vector.
A vector overlaid by the CXML FFT structure. The trigs
vector must contain at least 105 elements. Before being
used, trigs must be initialized by the following call:
CALL FFTFAX( n,ifax,trigs ).
When FFTFAX is called with ifax equal to
'80FF0FF0FF0FF0FF'X, the FFT structure overlaying trigs is
freed.
ifax Integer vector.
A vestigial argument ignored by the SCIPORT implementation.
inc1x Integer.
The increment between elements within each length n data
vector of matrix x.
inc2x Integer.
The increment between starting elements of vectors within
matrix x.
n Integer.
The length of the data vectors. The value n is the length
of the real data vectors regardless of transform direction.
lot Integer.
The number of data vectors.
isign Integer.
+1 for a complex to real FFT
-1 for a real to complex FFT
DESCRIPTION
When isign = -1, RFFTMLT applies a real to complex FFT to lot real data
vectors, each of length n, simultaneously. When isign = +1, RFFTMLT applies
a complex to real FFT to lot complex data vectors, each of length n/2+1,
simultaneously.
For equations and other information, see Volume 3: UNICOS Math and
Scientific Library Reference Manual SR-2081 7.0, Cray Research, Inc.
NOTE
Before RFFTMLT is called the first time, the trigs vector must be
initialized by calling FFTFAX as shown below:
Call FFTFAX( n,ifax,trigs )
Thereafter, the vector trigs must not be written to. However, it can be
used by RFFTMLT any number of times, as long as the length n is not
changed.
Calling FFTFAX with ifax set to '80FF0FF0FF0FF0FF'X initiates an escape.
Please see the sciport man page for details. The escape mechanism should be
inserted immediately after the last call to RFFTMLT for which the status of
trigs is known. This mechanism should be used sparingly. Its use implies
frequent re-initializations of the sine and cosine tables - which are quite
costly.
See also sciport.
CXML Home Page Index of CXML Routines