NCEPLIBS-sp 2.4.0
|
Perform multiple fast fourier transforms. More...
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 | number of values in the cyclic physical space (see limitations on imax in remarks below.) | |
INCW | first dimension of the complex amplitude array (INCW >= IMAX/2+1) | |
INCG | first dimension of the real value array (INCG >= IMAX) | |
KMAX | number of transforms to perform | |
[out] | W | complex amplitudes if IDIR>0 |
[out] | G | real values if IDIR<0 |
IDIR | direction flag
|