5 &( iangnl, coefnl, ndire , nf , raisf , xlamd , xmu )
57 INTEGER,
INTENT(IN) :: NDIRE , NF
58 INTEGER,
INTENT(INOUT) :: IANGNL(ndire,16)
59 DOUBLE PRECISION,
INTENT(IN) :: RAISF , XLAMD , XMU
60 DOUBLE PRECISION,
INTENT(INOUT) :: COEFNL(32)
65 DOUBLE PRECISION DELTA1, DELTA2, DTMOIN, DTPLUS, DTETAD, XXXX
66 DOUBLE PRECISION APLUS , AMOIN , BPLUS , BMOIN , FPLUS , FMOIN
84 CALL angles( xxxx , dtplus, dtmoin)
89 IF (xxxx.GT.1.d-6)
THEN 93 CALL intang(iangnl(jp, 2), iangnl(jp, 1), jp , ndire , delta1)
94 CALL intang(iangnl(jp, 3), iangnl(jp, 4), jp , ndire , delta2)
100 IF (jp.EQ.1) iangnl(jp, 2)=ndire
103 IF (jp.EQ.ndire) iangnl(jp, 4)=1
110 IF (xxxx.GT.1.d-6)
THEN 114 CALL intang( iangnl(jp, 5), iangnl(jp, 6), jp , ndire , delta1)
115 CALL intang( iangnl(jp, 8), iangnl(jp, 7), jp , ndire , delta2)
121 IF (jp.EQ.ndire) iangnl(jp, 6)=1
124 IF (jp.EQ.1) iangnl(jp, 8)=ndire
130 dtetad=360.d0/dble(ndire)
131 aplus=dtplus/dtetad-dble(int(dtplus/dtetad))
132 amoin=dtmoin/dtetad-dble(int(dtmoin/dtetad))
138 fplus=log(1.d0+xxxx)/log(raisf)
139 fmoin=log(1.d0-xxxx)/log(raisf)
140 bplus=(raisf**(fplus-int(fplus) )-1.d0)/(raisf-1.d0)
141 bmoin=(raisf**(fmoin-int(fmoin)+1.d0)-1.d0)/(raisf-1.d0)
147 coefnl( 1)=(1.d0-aplus) * (1.d0-bplus)
148 coefnl( 2)= aplus * (1.d0-bplus)
149 coefnl( 3)=(1.d0-aplus) * bplus
150 coefnl( 4)= aplus * bplus
151 coefnl( 5)=(1.d0-amoin) * (1.d0-bmoin)
152 coefnl( 6)= amoin * (1.d0-bmoin)
153 coefnl( 7)=(1.d0-amoin) * bmoin
154 coefnl( 8)= amoin * bmoin
157 coefnl(11)=1.d0/(1.d0+xxxx)**4
158 coefnl(12)=1.d0/(1.d0-xxxx)**4
160 coefnl(14)=dble(nf+int(1.d0-fmoin))
178 CALL angles( xxxx , dtplus, dtmoin)
183 IF (xxxx.GT.1.d-6)
THEN 187 CALL intang(iangnl(jp,10), iangnl(jp, 9), jp , ndire , delta1)
188 CALL intang(iangnl(jp,11), iangnl(jp,12), jp , ndire , delta2)
194 IF (jp.EQ.1) iangnl(jp,10)=ndire
197 IF (jp.EQ.ndire) iangnl(jp,12)=1
204 IF (xxxx.GT.1.d-6)
THEN 208 CALL intang(iangnl(jp,13), iangnl(jp,14), jp , ndire , delta1)
209 CALL intang(iangnl(jp,16), iangnl(jp,15), jp , ndire , delta2)
215 IF (jp.EQ.ndire) iangnl(jp,14)=1
218 IF (jp.EQ.1) iangnl(jp,16)=ndire
224 dtetad=360.d0/dble(ndire)
225 aplus=dtplus/dtetad-dble(int(dtplus/dtetad))
226 amoin=dtmoin/dtetad-dble(int(dtmoin/dtetad))
232 fplus=log(1.d0+xxxx)/log(raisf)
233 fmoin=log(1.d0-xxxx)/log(raisf)
234 bplus=(raisf**(fplus-int(fplus) )-1.d0)/(raisf-1.d0)
235 bmoin=(raisf**(fmoin-int(fmoin)+1.d0)-1.d0)/(raisf-1.d0)
241 coefnl(17)=(1.d0-aplus) * (1.d0-bplus)
242 coefnl(18)= aplus * (1.d0-bplus)
243 coefnl(19)=(1.d0-aplus) * bplus
244 coefnl(20)= aplus * bplus
245 coefnl(21)=(1.d0-amoin) * (1.d0-bmoin)
246 coefnl(22)= amoin * (1.d0-bmoin)
247 coefnl(23)=(1.d0-amoin) * bmoin
248 coefnl(24)= amoin * bmoin
251 coefnl(27)=1.d0/(1.d0+xxxx)**4
252 coefnl(28)=1.d0/(1.d0-xxxx)**4
254 coefnl(30)=dble(nf+int(1.d0-fmoin))
subroutine angles(XLAMD, DTPLUS, DTMOIN)
subroutine prenl2(IANGNL, COEFNL, NDIRE, NF, RAISF, XLAMD, XMU)
subroutine intang(LAVANT, LAPRES, IDIRE, NDIRE, DELTAD)