7 IMPLICIT REAL*8 (a-h,o-z)
8 REAL*8 m,mij,xnr(9),fnr(9),wi(9),at(3),aq(3),ap(9),fq(9),wp(9),
9 & p(12),q(12),dp(12),dq(13),upr(12),mb
10 LOGICAL switch,gtype,gtype0
11 common/creg/ m(4),x(12),xd(12),pp(12),qq(12),time4,
energy,epsr2,
12 &
xr(9),w(9),r(6),ta(6),mij(6),cm(10),rmax4,tmax,
13 & ds,
tstep,eps,nstep4,name4(4),kz15,kz27,nreg,nfn
14 common/tpr/
switch,gtype,gtype0
15 common/iconf/ i1,i2,i3,i4
16 common/close/ rij(4,4),rcoll,qperi,
SIZE(4),ecoll3,ip(4)
17 common/ccoll/ qk(12),pk(12),icall,icoll,ndiss4
18 common/bssave/ ep(4),dsc,facm,tfac,itfac,jc
43 xr(kp1) = q(k1)**2 - q(k2)**2 - q(k3)**2 + q(k4)**2
44 xr(kp2) = 2.d0*(q(k1)*q(k2) - q(k3)*q(k4))
45 xr(kp3) = 2.d0*(q(k1)*q(k3) + q(k2)*q(k4))
46 r(l) = q(k1)**2 + q(k2)**2 + q(k3)**2 + q(k4)**2
48 wi(kp1) = q(k1)*p(k1) - q(k2)*p(k2) - q(k3)*p(k3) +
50 wi(kp2) = q(k2)*p(k1) + q(k1)*p(k2) - q(k4)*p(k3) -
52 wi(kp3) = q(k3)*p(k1) + q(k4)*p(k2) + q(k1)*p(k3) +
54 at(l) = ta(l)*(p(k1)**2 + p(k2)**2 + p(k3)**2 +
65 xnr(k ) =
xr(k ) +
xr(k+3)
66 xnr(k+3) =
xr(k+3) +
xr(k+6)
67 xnr(k+6) = xnr(k ) +
xr(k+6)
68 r(4) = r(4) + xnr(k )**2
69 r(5) = r(5) + xnr(k+3)**2
70 r(6) = r(6) + xnr(k+6)**2
83 fnr(ik+k) = fc*xnr(ik+k)
86 w1w2 = wi(1)*wi(4) + wi(2)*wi(5) + wi(3)*wi(6)
87 w2w3 = wi(4)*wi(7) + wi(5)*wi(8) + wi(6)*wi(9)
92 aq(1) = at(2)*r(3) + at(3)*r(2) + t23*w2w3-r23*unre
93 aq(2) = at(1)*r(3) + at(3)*r(1) - r13*unre
94 aq(3) = at(2)*r(1) + at(1)*r(2) + t12*w1w2-r12*unre
102 wp(k ) = wk12*wi(k+3)
103 wp(k+3) = wk12*wi(k ) + wk23*wi(k+6)
104 wp(k+6) = wk23*wi(k+3)
105 fq(k ) = fnr(k ) + fnr(k+6)
106 fq(k+3) = fnr(k ) + fnr(k+3) + fnr(k+6)
107 fq(k+6) = fnr(k+3) + fnr(k+6)
122 f1 = +fq(l1)*q(k1) + fq(l2)*q(k2) + fq(l3)*q(k3)
123 f2 = -fq(l1)*q(k2) + fq(l2)*q(k1) + fq(l3)*q(k4)
124 f3 = -fq(l1)*q(k3) - fq(l2)*q(k4) + fq(l3)*q(k1)
125 f4 = +fq(l1)*q(k4) - fq(l2)*q(k3) + fq(l3)*q(k2)
127 g1 = +wp(l1)*p(k1) + wp(l2)*p(k2) + wp(l3)*p(k3)
128 g2 = -wp(l1)*p(k2) + wp(l2)*p(k1) + wp(l3)*p(k4)
129 g3 = -wp(l1)*p(k3) - wp(l2)*p(k4) + wp(l3)*p(k1)
130 g4 = +wp(l1)*p(k4) - wp(l2)*p(k3) + wp(l3)*p(k2)
133 dp(k1) = -(2.d0*aq(i)*q(k1) + g1+rrr*f1)
134 dp(k2) = -(2.d0*aq(i)*q(k2) + g2+rrr*f2)
135 dp(k3) = -(2.d0*aq(i)*q(k3) + g3+rrr*f3)
136 dp(k4) = -(2.d0*aq(i)*q(k4) + g4+rrr*f4)
138 g1 = +wp(l1)*q(k1) + wp(l2)*q(k2) + wp(l3)*q(k3)
139 g2 = -wp(l1)*q(k2) + wp(l2)*q(k1) + wp(l3)*q(k4)
140 g3 = -wp(l1)*q(k3) - wp(l2)*q(k4) + wp(l3)*q(k1)
141 g4 = +wp(l1)*q(k4) - wp(l2)*q(k3) + wp(l3)*q(k2)
143 dq(k1) = ap(i)*p(k1) + g1
144 dq(k2) = ap(i)*p(k2) + g2
145 dq(k3) = ap(i)*p(k3) + g3
146 dq(k4) = ap(i)*p(k4) + g4
155 tfac = facm*(r(1)*r(2) + r(1)*r(3) + r(2)*r(3))
169 gamma = at(1)*r23 + at(2)*r13 + at(3)*r12 +
170 & r(3)*t12*w1w2 + t23*r(1)*w2w3 - r123*unre
171 sigin = 1.d0/(r12 + r23 + r13)
172 gsigin = 2.d0*gamma*sigin
173 sumr = r(1) + r(2) + r(3)
175 si = (sumr - r(i))*gsigin
179 dp(k) = sigin*(dp(k) + si*q(k))
182 dq(13) = dq(13)*sigin
190 IF (icall.EQ.0) go to 50
199 ELSE IF (im.EQ.2)
THEN
208 IF (im.EQ.1.OR.im.EQ.3)
THEN
216 IF (gi.LT.0.005)
THEN
218 CALL
peri(q(k),dq(k),dq(13),m(k1),m(k2),qperi)
224 rij(k1,k2) = min(rij(k1,k2),qperi)
225 rij(k2,k1) = min(rij(k2,k1),qperi)
228 IF (im.EQ.1.OR.r(im).LE.r(im0))
THEN
239 rcoll = min(rcoll,qpmin)
253 IF (qpmin.LT.4.0*max(
SIZE(k1),
SIZE(k2)))
THEN
256 IF (r(im).GT.rp0) go to 50
261 upr(j) = dq(j)*r(im)/dq(13)
262 rpr = rpr + 2.0d0*q(j)*upr(j)
266 CALL
erel4(im,eb,semi)
270 CALL
tperi(semi,q(k),upr(k),mb,tp)
279 IF (abs(rpr).LT.1.0e-06*sqrt(2.0d0*mb*r(im)).OR.
280 & (abs(dsc).LT.1.0e-06))
THEN
288 IF (r(im).GT.2.0*qpmin)
THEN
289 dsc = 2.0*abs(tp)/dq(13)
295 IF (jc.GT.0.AND.rpr.GT.0.0d0)
THEN
298 IF (jc.EQ.0) dsc = 1.0
301 IF (r(im).LT.rp0.OR.rpr.GT.0.0d0)
THEN
302 dsfac = 0.2*abs(ds/dsc)
303 IF (r(im).LT.rp0) dsfac = 1.0