V3FIT
LIBSTELL
Sources
FFTpack
cftfax.f90
1
SUBROUTINE
cftfax_g(n, ifax, trigs)
2
USE
stel_kinds
3
IMPLICIT NONE
4
!-----------------------------------------------
5
! D u m m y A r g u m e n t s
6
!-----------------------------------------------
7
INTEGER
n
8
INTEGER
,
DIMENSION(13)
:: ifax
9
REAL
(rprec),
DIMENSION(*)
:: trigs
10
#if
!defined(CRAY) || defined(LONESTAR) || defined(MCURIE)
11
!-----------------------------------------------
12
! L o c a l V a r i a b l e s
13
!-----------------------------------------------
14
INTEGER
:: k
15
!-----------------------------------------------
16
!
17
! on input n
18
! the length of each complex transform to be performed
19
!
20
! n must be greater than 1 and contain no prime
21
! factors greater than 5.
22
!
23
! on output ifax
24
! ifax(1)
25
! the number of factors chosen or -99 in CASE of error
26
! ifax(2) thru ifax( ifax(1)+1 )
27
! the factors of n in the followin order: appearing
28
! first are as many factors of 4 as can be obtained.
29
! subsequent factors are primes, and appear in
30
! ascending order, except for multiple factors.
31
!
32
! trigs
33
! 2n SIN and COS values for USE by the transform routine
34
!
35
CALL
fact_g (n, ifax)
36
k = ifax(1)
37
IF
(k<1 .or. ifax(k+1)>5) ifax(1) = -99
38
IF
(ifax(1) .le. 0) stop
'IFAX(1) <= 0 in CFTFAX'
39
CALL
cftrig_g (n, trigs)
40
#else
41
CALL
cftfax (n, ifax, trigs)
42
#endif
43
END SUBROUTINE
cftfax_g
Generated on Thu Mar 5 2020 15:49:23 for V3FIT by
1.8.17