1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE MRADFG
(M
,IDO
,IP
,L1
,IDL1
,CC
,C1
,C2
,IM1
,IN1
,
13 REAL CH
(IN2
,IDO
,L1
,IP
) ,CC
(IN1
,IDO
,IP
,L1
),
14 1 C1
(IN1
,IDO
,L1
,IP
) ,C2
(IN1
,IDL1
,IP
),
15 2 CH2
(IN2
,IDL1
,IP
) ,WA
(IDO
)
27 IF (IDO
.EQ
. 1) GO TO 119
32 CH2
(M2
,IK
,1) = C2
(M1
,IK
,1)
40 CH
(M2
,1,K
,J
) = C1
(M1
,1,K
,J
)
44 IF (NBD
.GT
. L1
) GO TO 107
55 CH
(M2
,I
-1,K
,J
) = WA
(IDIJ
-1)*C1
(M1
,I
-1,K
,J
)+WA
(IDIJ
)
57 CH
(M2
,I
,K
,J
) = WA
(IDIJ
-1)*C1
(M1
,I
,K
,J
)-WA
(IDIJ
)
74 CH
(M2
,I
-1,K
,J
) = WA
(IDIJ
-1)*C1
(M1
,I
-1,K
,J
)+WA
(IDIJ
)
76 CH
(M2
,I
,K
,J
) = WA
(IDIJ
-1)*C1
(M1
,I
,K
,J
)-WA
(IDIJ
)
82 111 IF (NBD
.LT
. L1
) GO TO 115
90 C1
(M1
,I
-1,K
,J
) = CH
(M2
,I
-1,K
,J
)+CH
(M2
,I
-1,K
,JC
)
91 C1
(M1
,I
-1,K
,JC
) = CH
(M2
,I
,K
,J
)-CH
(M2
,I
,K
,JC
)
92 C1
(M1
,I
,K
,J
) = CH
(M2
,I
,K
,J
)+CH
(M2
,I
,K
,JC
)
93 C1
(M1
,I
,K
,JC
) = CH
(M2
,I
-1,K
,JC
)-CH
(M2
,I
-1,K
,J
)
106 C1
(M1
,I
-1,K
,J
) = CH
(M2
,I
-1,K
,J
)+CH
(M2
,I
-1,K
,JC
)
107 C1
(M1
,I
-1,K
,JC
) = CH
(M2
,I
,K
,J
)-CH
(M2
,I
,K
,JC
)
108 C1
(M1
,I
,K
,J
) = CH
(M2
,I
,K
,J
)+CH
(M2
,I
,K
,JC
)
109 C1
(M1
,I
,K
,JC
) = CH
(M2
,I
-1,K
,JC
)-CH
(M2
,I
-1,K
,J
)
119 C2
(M1
,IK
,1) = CH2
(M2
,IK
,1)
128 C1
(M1
,1,K
,J
) = CH
(M2
,1,K
,J
)+CH
(M2
,1,K
,JC
)
129 C1
(M1
,1,K
,JC
) = CH
(M2
,1,K
,JC
)-CH
(M2
,1,K
,J
)
138 AR1H
= DCP*AR1
-DSP*AI1
139 AI1
= DCP*AI1
+DSP*AR1
145 CH2
(M2
,IK
,L
) = C2
(M1
,IK
,1)+AR1*C2
(M1
,IK
,2)
146 CH2
(M2
,IK
,LC
) = AI1*C2
(M1
,IK
,IP
)
155 AR2H
= DC2*AR2
-DS2*AI2
156 AI2
= DC2*AI2
+DS2*AR2
162 CH2
(M2
,IK
,L
) = CH2
(M2
,IK
,L
)+AR2*C2
(M1
,IK
,J
)
163 CH2
(M2
,IK
,LC
) = CH2
(M2
,IK
,LC
)+AI2*C2
(M1
,IK
,JC
)
173 CH2
(M2
,IK
,1) = CH2
(M2
,IK
,1)+C2
(M1
,IK
,J
)
178 IF (IDO
.LT
. L1
) GO TO 132
184 CC
(M1
,I
,1,K
) = CH
(M2
,I
,K
,1)
194 CC
(M1
,I
,1,K
) = CH
(M2
,I
,K
,1)
205 CC
(M1
,IDO
,J2
-2,K
) = CH
(M2
,1,K
,J
)
206 CC
(M1
,1,J2
-1,K
) = CH
(M2
,1,K
,JC
)
210 IF (IDO
.EQ
. 1) RETURN
211 IF (NBD
.LT
. L1
) GO TO 141
221 CC
(M1
,I
-1,J2
-1,K
) = CH
(M2
,I
-1,K
,J
)+CH
(M2
,I
-1,K
,JC
)
222 CC
(M1
,IC
-1,J2
-2,K
) = CH
(M2
,I
-1,K
,J
)-CH
(M2
,I
-1,K
,JC
)
223 CC
(M1
,I
,J2
-1,K
) = CH
(M2
,I
,K
,J
)+CH
(M2
,I
,K
,JC
)
224 CC
(M1
,IC
,J2
-2,K
) = CH
(M2
,I
,K
,JC
)-CH
(M2
,I
,K
,J
)
239 CC
(M1
,I
-1,J2
-1,K
) = CH
(M2
,I
-1,K
,J
)+CH
(M2
,I
-1,K
,JC
)
240 CC
(M1
,IC
-1,J2
-2,K
) = CH
(M2
,I
-1,K
,J
)-CH
(M2
,I
-1,K
,JC
)
241 CC
(M1
,I
,J2
-1,K
) = CH
(M2
,I
,K
,J
)+CH
(M2
,I
,K
,JC
)
242 CC
(M1
,IC
,J2
-2,K
) = CH
(M2
,I
,K
,JC
)-CH
(M2
,I
,K
,J
)