1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE CMFGKF
(LOT
,IDO
,IP
,L1
,LID
,NA
,CC
,CC1
,IM1
,IN1
,
13 REAL CH
(2,IN2
,L1
,IDO
,IP
) ,CC
(2,IN1
,L1
,IP
,IDO
),
14 1 CC1
(2,IN1
,LID
,IP
) ,CH1
(2,IN2
,LID
,IP
) ,
17 C FFTPACK 5.0 auxiliary routine
27 CH1
(1,M2
,KI
,1) = CC1
(1,M1
,KI
,1)
28 CH1
(2,M2
,KI
,1) = CC1
(2,M1
,KI
,1)
36 CH1
(1,M2
,KI
,J
) = CC1
(1,M1
,KI
,J
)+CC1
(1,M1
,KI
,JC
)
37 CH1
(1,M2
,KI
,JC
) = CC1
(1,M1
,KI
,J
)-CC1
(1,M1
,KI
,JC
)
38 CH1
(2,M2
,KI
,J
) = CC1
(2,M1
,KI
,J
)+CC1
(2,M1
,KI
,JC
)
39 CH1
(2,M2
,KI
,JC
) = CC1
(2,M1
,KI
,J
)-CC1
(2,M1
,KI
,JC
)
47 CC1
(1,M1
,KI
,1) = CC1
(1,M1
,KI
,1)+CH1
(1,M2
,KI
,J
)
48 CC1
(2,M1
,KI
,1) = CC1
(2,M1
,KI
,1)+CH1
(2,M2
,KI
,J
)
57 CC1
(1,M1
,KI
,L
) = CH1
(1,M2
,KI
,1)+WA
(1,L
-1,1)*CH1
(1,M2
,KI
,2)
58 CC1
(1,M1
,KI
,LC
) = -WA
(1,L
-1,2)*CH1
(1,M2
,KI
,IP
)
59 CC1
(2,M1
,KI
,L
) = CH1
(2,M2
,KI
,1)+WA
(1,L
-1,1)*CH1
(2,M2
,KI
,2)
60 CC1
(2,M1
,KI
,LC
) = -WA
(1,L
-1,2)*CH1
(2,M2
,KI
,IP
)
64 IDLJ
= MOD
((L
-1)*(J
-1),IP
)
71 CC1
(1,M1
,KI
,L
) = CC1
(1,M1
,KI
,L
)+WAR*CH1
(1,M2
,KI
,J
)
72 CC1
(1,M1
,KI
,LC
) = CC1
(1,M1
,KI
,LC
)+WAI*CH1
(1,M2
,KI
,JC
)
73 CC1
(2,M1
,KI
,L
) = CC1
(2,M1
,KI
,L
)+WAR*CH1
(2,M2
,KI
,J
)
74 CC1
(2,M1
,KI
,LC
) = CC1
(2,M1
,KI
,LC
)+WAI*CH1
(2,M2
,KI
,JC
)
78 IF (IDO
.GT
. 1) GO TO 136
80 IF (NA
.EQ
. 1) GO TO 146
85 CC1
(1,M1
,KI
,1) = SN*CC1
(1,M1
,KI
,1)
86 CC1
(2,M1
,KI
,1) = SN*CC1
(2,M1
,KI
,1)
92 CHOLD1
= SN*
(CC1
(1,M1
,KI
,J
)-CC1
(2,M1
,KI
,JC
))
93 CHOLD2
= SN*
(CC1
(1,M1
,KI
,J
)+CC1
(2,M1
,KI
,JC
))
94 CC1
(1,M1
,KI
,J
) = CHOLD1
95 CC1
(2,M1
,KI
,JC
) = SN*
(CC1
(2,M1
,KI
,J
)-CC1
(1,M1
,KI
,JC
))
96 CC1
(2,M1
,KI
,J
) = SN*
(CC1
(2,M1
,KI
,J
)+CC1
(1,M1
,KI
,JC
))
97 CC1
(1,M1
,KI
,JC
) = CHOLD2
105 CH1
(1,M2
,KI
,1) = SN*CC1
(1,M1
,KI
,1)
106 CH1
(2,M2
,KI
,1) = SN*CC1
(2,M1
,KI
,1)
114 CH1
(1,M2
,KI
,J
) = SN*
(CC1
(1,M1
,KI
,J
)-CC1
(2,M1
,KI
,JC
))
115 CH1
(2,M2
,KI
,J
) = SN*
(CC1
(2,M1
,KI
,J
)+CC1
(1,M1
,KI
,JC
))
116 CH1
(1,M2
,KI
,JC
) = SN*
(CC1
(1,M1
,KI
,J
)+CC1
(2,M1
,KI
,JC
))
117 CH1
(2,M2
,KI
,JC
) = SN*
(CC1
(2,M1
,KI
,J
)-CC1
(1,M1
,KI
,JC
))
125 CH1
(1,M2
,KI
,1) = CC1
(1,M1
,KI
,1)
126 CH1
(2,M2
,KI
,1) = CC1
(2,M1
,KI
,1)
134 CH1
(1,M2
,KI
,J
) = CC1
(1,M1
,KI
,J
)-CC1
(2,M1
,KI
,JC
)
135 CH1
(2,M2
,KI
,J
) = CC1
(2,M1
,KI
,J
)+CC1
(1,M1
,KI
,JC
)
136 CH1
(1,M2
,KI
,JC
) = CC1
(1,M1
,KI
,J
)+CC1
(2,M1
,KI
,JC
)
137 CH1
(2,M2
,KI
,JC
) = CC1
(2,M1
,KI
,J
)-CC1
(1,M1
,KI
,JC
)
145 CC
(1,M1
,K
,1,I
) = CH
(1,M2
,K
,I
,1)
146 CC
(2,M1
,K
,1,I
) = CH
(2,M2
,K
,I
,1)
154 CC
(1,M1
,K
,J
,1) = CH
(1,M2
,K
,1,J
)
155 CC
(2,M1
,K
,J
,1) = CH
(2,M2
,K
,1,J
)
164 CC
(1,M1
,K
,J
,I
) = WA
(I
,J
-1,1)*CH
(1,M2
,K
,I
,J
)
165 1 +WA
(I
,J
-1,2)*CH
(2,M2
,K
,I
,J
)
166 CC
(2,M1
,K
,J
,I
) = WA
(I
,J
-1,1)*CH
(2,M2
,K
,I
,J
)
167 1 -WA
(I
,J
-1,2)*CH
(1,M2
,K
,I
,J
)