NCEPLIBS-sp
2.3.3
|
Go to the source code of this file.
Functions/Subroutines | |
subroutine | spfft (IMAX, INCW, INCG, KMAX, W, G, IDIR) |
This subprogram performs multiple fast fourier transforms between complex amplitudes in fourier space and real values in cyclic physical space. More... | |
subroutine spfft | ( | integer, intent(in) | IMAX, |
integer, intent(in) | INCW, | ||
integer, intent(in) | INCG, | ||
integer, intent(in) | KMAX, | ||
complex, dimension(incw,kmax), intent(inout) | W, | ||
real, dimension(incg,kmax), intent(inout) | G, | ||
integer, intent(in) | IDIR | ||
) |
This subprogram performs multiple fast fourier transforms between complex amplitudes in fourier space and real values in cyclic physical space.
Subprogram spfft must be invoked first with idir=0 to initialize trigonemetric data. Use subprogram spfft1 to perform an fft without previous initialization. This version invokes the ibm essl fft.
the restrictions on imax are that it must be a multiple of 1 to 25 factors of two, up to 2 factors of three, and up to 1 factor of five, seven and eleven.
If IDIR=0, then W and G need not contain any valid data. the other parameters must be supplied and cannot change in succeeding calls until the next time it is called with IDIR=0.
This subprogram is not thread-safe when IDIR=0. On the other hand, when IDIR is not zero, it can be called from a threaded region.
IMAX | - INTEGER NUMBER OF VALUES IN THE CYCLIC PHYSICAL SPACE (SEE LIMITATIONS ON IMAX IN REMARKS BELOW.) | |
INCW | - INTEGER FIRST DIMENSION OF THE COMPLEX AMPLITUDE ARRAY (INCW >= IMAX/2+1) | |
INCG | - INTEGER FIRST DIMENSION OF THE REAL VALUE ARRAY (INCG >= IMAX) | |
KMAX | - INTEGER NUMBER OF TRANSFORMS TO PERFORM | |
[out] | W | - COMPLEX(INCW,KMAX) COMPLEX AMPLITUDES IF IDIR>0 |
[out] | G | - REAL(INCG,KMAX) REAL VALUES IF IDIR<0 |
IDIR | - INTEGER DIRECTION FLAG IDIR=0 TO INITIALIZE INTERNAL TRIGONOMETRIC DATA IDIR>0 TO TRANSFORM FROM FOURIER TO PHYSICAL SPACE IDIR<0 TO TRANSFORM FROM PHYSICAL TO FOURIER SPACE |
CALLED: