11 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
15 parameter(ksusy1=1000000,ksusy2=2000000,ktechn=3000000,
16 &kexcit=4000000,kdimen=5000000)
19 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
20 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
23 dimension tdi(3),tpr(3)
29 IF(
k(
i,1).LE.0.OR.
k(
i,1).GT.10) goto 100
30 IF(mstu(41).GE.2)
THEN
32 IF(kc.EQ.0.OR.kc.EQ.12.OR.kc.EQ.14.OR.kc.EQ.16.OR.
33 & kc.EQ.18.OR.
k(
i,2).EQ.ksusy1+22.OR.
k(
i,2).EQ.39.OR.
34 &
k(
i,2).EQ.ksusy1+39) goto 100
35 IF(mstu(41).GE.3.AND.kchg(kc,2).EQ.0.AND.
pychge(
k(
i,2)).EQ.0)
38 IF(
n+
np+mstu(44)+15.GE.mstu(4)-mstu(32)-5)
THEN
39 CALL
pyerrm(11,
'(PYTHRU:) no more memory left in PYJETS')
51 IF(abs(paru(42)-1d0).GT.0.001d0)
p(
n+
np,5)=
52 &
p(
n+
np,4)**(paru(42)-1d0)
58 CALL
pyerrm(8,
'(PYTHRU:) too few particles for analysis')
76 DO 110 ilf=
n+
np+4,
n+
np+mstu(44)+4
80 IF(ild.EQ.2)
p(
i,4)=sqrt(
p(
i,1)**2+
p(
i,2)**2)
81 DO 130 ilf=
n+
np+mstu(44)+3,
n+
np+4,-1
82 IF(
p(
i,4).LE.
p(ilf,4)) goto 140
94 DO 170 ilg=
n+
np+mstu(44)+5,
n+
np+mstu(44)+15
97 nc=2**(min(mstu(44),
np)-1)
102 DO 200 ilf=1,min(mstu(44),
np)
104 IF(2**ilf*((ilc+2**(ilf-1)-1)/2**ilf).GE.ilc) sgn=-sgn
106 tdi(
j)=tdi(
j)+sgn*
p(
n+
np+ilf+3,
j)
109 tds=tdi(1)**2+tdi(2)**2+tdi(3)**2
110 DO 220 ilg=
n+
np+mstu(44)+min(ilc,10)+4,
n+
np+mstu(44)+5,-1
111 IF(tds.LE.
p(ilg,4)) goto 230
130 IF(thp.LE.1d-10) tdi(
j)=
p(
n+
np+mstu(44)+4+ilg,
j)
131 IF(thp.GT.1d-10) tdi(
j)=tpr(
j)
135 sgn=
sign(
p(
i,5),tdi(1)*
p(
i,1)+tdi(2)*
p(
i,2)+tdi(3)*
p(
i,3))
137 tpr(
j)=tpr(
j)+sgn*
p(
i,
j)
140 thp=sqrt(tpr(1)**2+tpr(2)**2+tpr(3)**2)/
ps
141 IF(thp.GE.thps+paru(48)) goto 270
144 IF(thp.LT.
p(
n+
np+ild,4)-paru(48).AND.ilg.LT.min(10,nc)) goto 260
145 IF(thp.GT.
p(
n+
np+ild,4)+paru(48))
THEN
147 sgn=(-1d0)**int(
pyr(0)+0.5d0)
155 IF(iagr.LT.mstu(45).AND.ilg.LT.min(10,nc)) goto 260
159 sgn=(-1d0)**int(
pyr(0)+0.5d0)
186 obl=
p(
n+2,4)-
p(
n+3,4)
189 IF(mstu(43).LE.1) mstu(3)=3
190 IF(mstu(43).GE.2)
n=
n+3