12 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
17 common/pyctag/nct,mct(4000,2)
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)
20 common/
pydat3/mdcy(500,3),mdme(8000,2),brat(8000),kfdp(8000,5)
23 common/
pyint2/iset(500),kfpr(500,2),coef(500,20),icol(40,4,2)
24 common/
pyint4/mwid(500),wids(500,5)
26 common/pyintm/kfival(2,3),nmi(2),imi(2,800,2),nvc(2,-6:6),
27 & xassoc(2,-6:6,240),xpsvc(-6:6,-1:240),pvctot(2,-1:1),
28 & xmi(2,240),pt2mi(240),imisep(0:240)
35 IF(
mint(121).EQ.1.AND.
msti(53).EQ.1)
THEN
62 IF(
mstp(171).EQ.1)
THEN
64 IF(
msti(61).EQ.1)
THEN
73 IF(
mstp(131).LE.0)
THEN
80 IF(
mint(84)+100.GE.mstu(4))
THEN
82 &
'(PYEVNW:) no more space in PYJETS for pileup events')
83 IF(mstu(21).GE.1) goto 310
98 IF(
msti(61).EQ.1)
THEN
102 IF(
mint(51).EQ.2)
RETURN
104 IF(
mstp(111).EQ.-1) goto 290
112 IF((isub.LE.90.OR.isub.GE.95).AND.isub.NE.99)
THEN
119 IF(
mint(51).EQ.1) goto 100
130 IF ((
mstp(61).GE.1.OR.mod(
mstp(81),10).GE.0).AND.
131 &
mint(111).NE.12)
THEN
133 pt2mxs=0.25d0*
vint(2)
141 CALL
pyerrm(9,
'(PYEVNW:) failed to evolve shower or '
142 & //
'multiple interactions.')
150 IF (loop.EQ.1) CALL
pyevol(-1,dummy1,dummy2)
159 CALL
pyevol(0,pt2max,pt2min)
160 IF (
mint(51).EQ.1) goto 130
169 CALL
pyevol(1,pt2max,pt2min)
170 IF (
mint(51).EQ.1) goto 130
173 CALL
pyevol(2,pt2max,pt2min)
174 IF (
mint(51).EQ.1) goto 130
179 IF(
mint(51).EQ.1) goto 100
186 140
IF(
mint(50).EQ.1)
THEN
187 IF (isub.EQ.95)
mint(31)=1
193 IF(
mint(51).EQ.1) goto 100
199 IF(
mint(51).EQ.1) goto 100
200 IF (isub.EQ.95)
mint(31)=0
201 ELSEIF(
mint(111).NE.12)
THEN
207 IF(
mint(51).EQ.1.AND.
mint(57).GE.1.AND.
mint(57).LE.5) goto
209 IF(
mint(51).EQ.1) goto 100
213 ida=mod(
k(
i,kcs),mstu(5))
215 mct(
i,kcs-3)=mct(ida,6-kcs)
228 IF (
k(
i,1).NE.3) goto 350
232 IF(kq.EQ.0.OR.(mqgst.EQ.1.AND.kq.EQ.2)) goto 350
236 IF(kq*isign(1,
k(
i,2)).LT.0) kcs=5
237 IF(mct(
i,kcs-3).NE.0) goto 350
240 IF(
mint(51).NE.0)
RETURN
248 k(
i,4)=mod(
k(
i,4),mstu(5)**2)
249 k(
i,5)=mod(
k(
i,5),mstu(5)**2)
257 IF(
mstp(71).GE.1.AND.iset(isub).GE.1.AND.iset(isub).LE.10)
260 IF(iset(isub).EQ.2) qmax=sqrt(
parp(71))*
vint(55)
261 CALL
pyptfs(1,qmax,0d0,ptgen)
263 ELSEIF(iset(isub).EQ.11)
THEN
270 IF(ipile.EQ.1.AND.
mstp(143).EQ.1) CALL
pyveto(iveto)
271 IF(iveto.EQ.1) goto 100
276 IF(
mstp(41).GE.1.AND.iset(isub).LE.10)
THEN
278 IF(
mint(51).NE.0) goto 100
281 IF(
mint(51).EQ.1) goto 100
283 ELSEIF(isub.NE.99)
THEN
290 IF(
mint(51).EQ.1) goto 100
295 IF(
mstp(111).GE.1)
THEN
297 DO 180
i=
mint(84)+1,nfix
298 IF(
k(
i,1).GE.1.AND.
k(
i,1).LE.10.AND.
k(
i,2).NE.21.AND.
301 IF(mwid(kca).NE.0.AND.mdcy(kca,1).GE.1)
THEN
303 IF(
mint(51).EQ.1) goto 100
314 IF(
mstp(113).GE.1)
THEN
316 IF(
k(
i,1).GT.0.AND.
k(
i,1).LE.10)
p(
i,4)=sqrt(
p(
i,1)**2+
317 &
p(
i,2)**2+
p(
i,3)**2+
p(
i,5)**2)
327 IF(
mstp(111).LE.0) mstj(14)=-1
330 IF(
mint(51).EQ.1.AND.mstu(24).EQ.1)
THEN
334 IF(
mint(51).EQ.1) goto 110
335 IF(
mstp(112).EQ.1.AND.mstu(28).EQ.3) goto 100
336 IF(
mstp(125).EQ.0.OR.
mstp(125).EQ.1)
THEN
338 IF(
k(
i,2).EQ.94)
THEN
339 DO 210
i1=
i+1,min(
n,
i+10)
340 IF(
k(
i1,3).EQ.
i)
THEN
341 k(
i1,3)=mod(
k(
i1,4)/mstu(5),mstu(5))
342 IF(
k(
i1,3).EQ.0)
THEN
343 DO 200 ii=
mint(84)+1,
i-1
344 IF(
k(ii,2).EQ.
k(
i1,2))
THEN
345 IF(mod(
k(ii,4),mstu(5)).EQ.
i1.OR.
346 & mod(
k(ii,5),mstu(5)).EQ.
i1)
k(
i1,3)=ii
349 IF(
k(
i+1,3).EQ.0)
k(
i+1,3)=
k(
i,3)
360 IF(
k(
i,1).EQ.11.AND.
k(
i,4).EQ.0.AND.
k(
i,5).EQ.0)
THEN
370 IF(ipile.EQ.1.AND.
mstp(125).LE.0)
THEN
373 ELSEIF(ipile.EQ.1)
THEN
384 IF(
mstp(151).EQ.1)
THEN
387 & sin(paru(2)*
pyr(0))
397 IF(
mstp(111).GE.1)
THEN
399 IF(mstu(24).NE.0) goto 100
401 IF(
mstp(113).GE.1)
THEN
403 IF(
p(
i,5).GT.0d0)
p(
i,4)=sqrt(
p(
i,1)**2+
404 &
p(
i,2)**2+
p(
i,3)**2+
p(
i,5)**2)
411 290
IF(ipile.EQ.1) CALL
pydocu
415 IF(ipile.GE.2.AND.ipile.LE.10)
msti(40+ipile)=isub
416 IF(mstu70.LT.10)
THEN
422 IF(ipile.LT.npile) CALL
pyfram(2)
426 IF(
mstp(131).EQ.1.AND.
mstp(133).GE.1)
THEN
440 5100
FORMAT(1
x,
'Error: no subprocess switched on.'/
441 &1
x,
'Execution stopped.')