1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE MRADB5
(M
,IDO
,L1
,CC
,IM1
,IN1
,CH
,IM2
,IN2
,
13 REAL CC
(IN1
,IDO
,5,L1
) ,CH
(IN2
,IDO
,L1
,5),
14 1 WA1
(IDO
) ,WA2
(IDO
) ,WA3
(IDO
) ,WA4
(IDO
)
18 ARG
=2.*4.*ATAN
(1.0)/5.
27 CH
(M2
,1,K
,1) = CC
(M1
,1,1,K
)+2.*CC
(M1
,IDO
,2,K
)+2.*CC
(M1
,IDO
,4,K
)
28 CH
(M2
,1,K
,2) = (CC
(M1
,1,1,K
)+TR11*2
.*CC
(M1
,IDO
,2,K
)
29 1 +TR12*2
.*CC
(M1
,IDO
,4,K
))-(TI11*2
.*CC
(M1
,1,3,K
)
30 1 +TI12*2
.*CC
(M1
,1,5,K
))
31 CH
(M2
,1,K
,3) = (CC
(M1
,1,1,K
)+TR12*2
.*CC
(M1
,IDO
,2,K
)
32 1 +TR11*2
.*CC
(M1
,IDO
,4,K
))-(TI12*2
.*CC
(M1
,1,3,K
)
33 1 -TI11*2
.*CC
(M1
,1,5,K
))
34 CH
(M2
,1,K
,4) = (CC
(M1
,1,1,K
)+TR12*2
.*CC
(M1
,IDO
,2,K
)
35 1 +TR11*2
.*CC
(M1
,IDO
,4,K
))+(TI12*2
.*CC
(M1
,1,3,K
)
36 1 -TI11*2
.*CC
(M1
,1,5,K
))
37 CH
(M2
,1,K
,5) = (CC
(M1
,1,1,K
)+TR11*2
.*CC
(M1
,IDO
,2,K
)
38 1 +TR12*2
.*CC
(M1
,IDO
,4,K
))+(TI11*2
.*CC
(M1
,1,3,K
)
39 1 +TI12*2
.*CC
(M1
,1,5,K
))
42 IF (IDO
.EQ
. 1) RETURN
50 CH
(M2
,I
-1,K
,1) = CC
(M1
,I
-1,1,K
)+(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
51 1 +(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
))
52 CH
(M2
,I
,K
,1) = CC
(M1
,I
,1,K
)+(CC
(M1
,I
,3,K
)-CC
(M1
,IC
,2,K
))
53 1 +(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
))
54 CH
(M2
,I
-1,K
,2) = WA1
(I
-2)*((CC
(M1
,I
-1,1,K
)+TR11*
55 1 (CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))+TR12
56 1 *(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))-(TI11*
(CC
(M1
,I
,3,K
)
57 1 +CC
(M1
,IC
,2,K
))+TI12*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
58 1 -WA1
(I
-1)*((CC
(M1
,I
,1,K
)+TR11*
(CC
(M1
,I
,3,K
)-CC
(M1
,IC
,2,K
))
59 1 +TR12*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))+(TI11*
(CC
(M1
,I
-1,3,K
)
60 1 -CC
(M1
,IC
-1,2,K
))+TI12*
(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
61 CH
(M2
,I
,K
,2) = WA1
(I
-2)*((CC
(M1
,I
,1,K
)+TR11*
(CC
(M1
,I
,3,K
)
62 1 -CC
(M1
,IC
,2,K
))+TR12*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))
63 1 +(TI11*
(CC
(M1
,I
-1,3,K
)-CC
(M1
,IC
-1,2,K
))+TI12
64 1 *(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))+WA1
(I
-1)
65 1 *((CC
(M1
,I
-1,1,K
)+TR11*
(CC
(M1
,I
-1,3,K
)
66 1 +CC
(M1
,IC
-1,2,K
))+TR12*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))
67 1 -(TI11*
(CC
(M1
,I
,3,K
)+CC
(M1
,IC
,2,K
))+TI12
68 1 *(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
69 CH
(M2
,I
-1,K
,3) = WA2
(I
-2)
70 1 *((CC
(M1
,I
-1,1,K
)+TR12*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
71 1 +TR11*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))-(TI12*
(CC
(M1
,I
,3,K
)
72 1 +CC
(M1
,IC
,2,K
))-TI11*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
74 1 *((CC
(M1
,I
,1,K
)+TR12*
(CC
(M1
,I
,3,K
)-
75 1 CC
(M1
,IC
,2,K
))+TR11*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))
76 1 +(TI12*
(CC
(M1
,I
-1,3,K
)-CC
(M1
,IC
-1,2,K
))-TI11
77 1 *(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
78 CH
(M2
,I
,K
,3) = WA2
(I
-2)
79 1 *((CC
(M1
,I
,1,K
)+TR12*
(CC
(M1
,I
,3,K
)-
80 1 CC
(M1
,IC
,2,K
))+TR11*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))
81 1 +(TI12*
(CC
(M1
,I
-1,3,K
)-CC
(M1
,IC
-1,2,K
))-TI11
82 1 *(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
84 1 *((CC
(M1
,I
-1,1,K
)+TR12*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
85 1 +TR11*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))-(TI12*
(CC
(M1
,I
,3,K
)
86 1 +CC
(M1
,IC
,2,K
))-TI11*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
87 CH
(M2
,I
-1,K
,4) = WA3
(I
-2)
88 1 *((CC
(M1
,I
-1,1,K
)+TR12*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
89 1 +TR11*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))+(TI12*
(CC
(M1
,I
,3,K
)
90 1 +CC
(M1
,IC
,2,K
))-TI11*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
92 1 *((CC
(M1
,I
,1,K
)+TR12*
(CC
(M1
,I
,3,K
)-
93 1 CC
(M1
,IC
,2,K
))+TR11*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))
94 1 -(TI12*
(CC
(M1
,I
-1,3,K
)-CC
(M1
,IC
-1,2,K
))-TI11
95 1 *(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
96 CH
(M2
,I
,K
,4) = WA3
(I
-2)
97 1 *((CC
(M1
,I
,1,K
)+TR12*
(CC
(M1
,I
,3,K
)-
98 1 CC
(M1
,IC
,2,K
))+TR11*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))
99 1 -(TI12*
(CC
(M1
,I
-1,3,K
)-CC
(M1
,IC
-1,2,K
))-TI11
100 1 *(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
102 1 *((CC
(M1
,I
-1,1,K
)+TR12*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
103 1 +TR11*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))+(TI12*
(CC
(M1
,I
,3,K
)
104 1 +CC
(M1
,IC
,2,K
))-TI11*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
105 CH
(M2
,I
-1,K
,5) = WA4
(I
-2)
106 1 *((CC
(M1
,I
-1,1,K
)+TR11*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
107 1 +TR12*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))+(TI11*
(CC
(M1
,I
,3,K
)
108 1 +CC
(M1
,IC
,2,K
))+TI12*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))
110 1 *((CC
(M1
,I
,1,K
)+TR11*
(CC
(M1
,I
,3,K
)-CC
(M1
,IC
,2,K
))
111 1 +TR12*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))-(TI11*
(CC
(M1
,I
-1,3,K
)
112 1 -CC
(M1
,IC
-1,2,K
))+TI12*
(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
113 CH
(M2
,I
,K
,5) = WA4
(I
-2)
114 1 *((CC
(M1
,I
,1,K
)+TR11*
(CC
(M1
,I
,3,K
)-CC
(M1
,IC
,2,K
))
115 1 +TR12*
(CC
(M1
,I
,5,K
)-CC
(M1
,IC
,4,K
)))-(TI11*
(CC
(M1
,I
-1,3,K
)
116 1 -CC
(M1
,IC
-1,2,K
))+TI12*
(CC
(M1
,I
-1,5,K
)-CC
(M1
,IC
-1,4,K
))))
118 1 *((CC
(M1
,I
-1,1,K
)+TR11*
(CC
(M1
,I
-1,3,K
)+CC
(M1
,IC
-1,2,K
))
119 1 +TR12*
(CC
(M1
,I
-1,5,K
)+CC
(M1
,IC
-1,4,K
)))+(TI11*
(CC
(M1
,I
,3,K
)
120 1 +CC
(M1
,IC
,2,K
))+TI12*
(CC
(M1
,I
,5,K
)+CC
(M1
,IC
,4,K
))))