14 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
18 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
19 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
22 common/pyctag/nct,mct(4000,2)
28 IF (
k(
i,1).LE.0) goto 120
33 IF (iabs(kq).EQ.1.AND.kq*(9-2*abs(kcs)).NE.isign(1,
k(
i,2)))
44 IF (ncs.EQ.0) goto 120
51 CALL
pyerrm(14,
'(PYCTTR:) caught in infinite loop')
57 IF(nstp.GE.2.AND.kchg(
pycomp(
k(ia,2)),2).NE.2) goto 120
61 IF(
k(ia,1).EQ.42)
THEN
68 IF(mod(
k(ib,kcs)/mstu(5)**2,2).EQ.0.AND.mod(
k(ib,kcs),mstu(5))
70 ia=mod(
k(ib,kcs),mstu(5))
71 k(ib,kcs)=
k(ib,kcs)+mstu(5)**2
75 IF(
k(ib,kcs).GE.2*mstu(5)**2.OR.mod(
k(ib,kcs)/mstu(5),
84 ia=mod(
k(ib,kcs)/mstu(5),mstu(5))
85 k(ib,kcs)=
k(ib,kcs)+2*mstu(5)**2
88 IF(ia.LE.0.OR.ia.GT.
n)
THEN
89 CALL
pyerrm(12,
'(PYCTTR:) colour tag tracing failed')
91 write(*,*)
'began at ',
i
92 write(*,*)
'ended going from', ib,
' to', ia,
' KCS=',kcs,
93 &
' NCS=',ncs,
' MREV=',mrev
100 IF(mod(
k(ia,4)/mstu(5),mstu(5)).EQ.ib.OR.mod(
k(ia,5)/mstu(5),
101 & mstu(5)).EQ.ib)
THEN
102 IF(mrev.EQ.1) kcs=9-kcs
103 IF(mod(
k(ia,kcs)/mstu(5),mstu(5)).NE.ib) kcs=9-kcs
105 k(ia,kcs)=
k(ia,kcs)+2*mstu(5)**2
107 IF(mrev.EQ.0) kcs=9-kcs
108 IF(mod(
k(ia,kcs),mstu(5)).NE.ib) kcs=9-kcs
110 k(ia,kcs)=
k(ia,kcs)+mstu(5)**2
114 IF(ia.NE.
i.AND.ia.NE.iend) goto 100