]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PYTHIA/pythia/pyklim.F
New version of MUON from M.Bondila & A.Morsch
[u/mrichter/AliRoot.git] / PYTHIA / pythia / pyklim.F
CommitLineData
fe4da5cc 1
2C***********************************************************************
3
4 SUBROUTINE PYKLIM(ILIM)
5
6C...Checks generated variables against pre-set kinematical limits;
7C...also calculates limits on variables used in generation.
8 COMMON/LUJETS/N,K(4000,5),P(4000,5),V(4000,5)
9 COMMON/LUDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
10 COMMON/LUDAT2/KCHG(500,3),PMAS(500,4),PARF(2000),VCKM(4,4)
11 COMMON/LUDAT3/MDCY(500,3),MDME(2000,2),BRAT(2000),KFDP(2000,5)
12 COMMON/PYSUBS/MSEL,MSUB(200),KFIN(2,-40:40),CKIN(200)
13 COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
14 COMMON/PYINT1/MINT(400),VINT(400)
15 COMMON/PYINT2/ISET(200),KFPR(200,2),COEF(200,20),ICOL(40,4,2)
16 SAVE /LUJETS/,/LUDAT1/,/LUDAT2/,/LUDAT3/
17 SAVE /PYSUBS/,/PYPARS/,/PYINT1/,/PYINT2/
18
19C...Common kinematical expressions.
20 MINT(51)=0
21 ISUB=MINT(1)
22 ISTSB=ISET(ISUB)
23 IF(ISUB.EQ.96) GOTO 110
24 SQM3=VINT(63)
25 SQM4=VINT(64)
26 IF(ILIM.NE.0) THEN
27 IF(ABS(SQM3).LT.1E-4.AND.ABS(SQM4).LT.1E-4) THEN
28 CKIN09=MAX(CKIN(9),CKIN(13))
29 CKIN10=MIN(CKIN(10),CKIN(14))
30 CKIN11=MAX(CKIN(11),CKIN(15))
31 CKIN12=MIN(CKIN(12),CKIN(16))
32 ELSE
33 CKIN09=MAX(CKIN(9),MIN(0.,CKIN(13)))
34 CKIN10=MIN(CKIN(10),MAX(0.,CKIN(14)))
35 CKIN11=MAX(CKIN(11),MIN(0.,CKIN(15)))
36 CKIN12=MIN(CKIN(12),MAX(0.,CKIN(16)))
37 ENDIF
38 ENDIF
39 IF(ILIM.NE.1) THEN
40 TAU=VINT(21)
41 RM3=SQM3/(TAU*VINT(2))
42 RM4=SQM4/(TAU*VINT(2))
43 BE34=SQRT(MAX(1E-20,(1.-RM3-RM4)**2-4.*RM3*RM4))
44 ENDIF
45 PTHMIN=CKIN(3)
46 IF(MIN(SQM3,SQM4).LT.CKIN(6)**2.AND.ISTSB.NE.1.AND.ISTSB.NE.3)
47 &PTHMIN=MAX(CKIN(3),CKIN(5))
48
49 IF(ILIM.EQ.0) THEN
50C...Check generated values of tau, y*, cos(theta-hat), and tau' against
51C...pre-set kinematical limits.
52 YST=VINT(22)
53 CTH=VINT(23)
54 TAUP=VINT(26)
55 TAUE=TAU
56 IF(ISTSB.GE.3.AND.ISTSB.LE.5) TAUE=TAUP
57 X1=SQRT(TAUE)*EXP(YST)
58 X2=SQRT(TAUE)*EXP(-YST)
59 XF=X1-X2
60 IF(MINT(47).NE.1) THEN
61 IF(TAU*VINT(2).LT.CKIN(1)**2) MINT(51)=1
62 IF(CKIN(2).GE.0..AND.TAU*VINT(2).GT.CKIN(2)**2) MINT(51)=1
63 IF(YST.LT.CKIN(7).OR.YST.GT.CKIN(8)) MINT(51)=1
64 IF(XF.LT.CKIN(25).OR.XF.GT.CKIN(26)) MINT(51)=1
65 ENDIF
66 IF(MINT(45).NE.1) THEN
67 IF(X1.LT.CKIN(21).OR.X1.GT.CKIN(22)) MINT(51)=1
68 ENDIF
69 IF(MINT(46).NE.1) THEN
70 IF(X2.LT.CKIN(23).OR.X2.GT.CKIN(24)) MINT(51)=1
71 ENDIF
72 IF(ISTSB.EQ.2.OR.ISTSB.EQ.4.OR.ISTSB.EQ.6) THEN
73 PTH=0.5*BE34*SQRT(TAU*VINT(2)*MAX(0.,1.-CTH**2))
74 EXPY3=MAX(1.E-10,(1.+RM3-RM4+BE34*CTH)/
75 & MAX(1.E-10,(1.+RM3-RM4-BE34*CTH)))
76 EXPY4=MAX(1.E-10,(1.-RM3+RM4-BE34*CTH)/
77 & MAX(1.E-10,(1.-RM3+RM4+BE34*CTH)))
78 Y3=YST+0.5*LOG(EXPY3)
79 Y4=YST+0.5*LOG(EXPY4)
80 YLARGE=MAX(Y3,Y4)
81 YSMALL=MIN(Y3,Y4)
82 ETALAR=10.
83 ETASMA=-10.
84 STH=SQRT(MAX(0.,1.-CTH**2))
85 EXSQ3=SQRT(MAX(1E-20,((1.+RM3-RM4)*COSH(YST)+BE34*SINH(YST)*
86 & CTH)**2-4.*RM3))
87 EXSQ4=SQRT(MAX(1E-20,((1.-RM3+RM4)*COSH(YST)-BE34*SINH(YST)*
88 & CTH)**2-4.*RM4))
89 IF(STH.GE.1.E-6) THEN
90 EXPET3=((1.+RM3-RM4)*SINH(YST)+BE34*COSH(YST)*CTH+EXSQ3)/
91 & (BE34*STH)
92 EXPET4=((1.-RM3+RM4)*SINH(YST)-BE34*COSH(YST)*CTH+EXSQ4)/
93 & (BE34*STH)
94 ETA3=LOG(MIN(1.E10,MAX(1.E-10,EXPET3)))
95 ETA4=LOG(MIN(1.E10,MAX(1.E-10,EXPET4)))
96 ETALAR=MAX(ETA3,ETA4)
97 ETASMA=MIN(ETA3,ETA4)
98 ENDIF
99 CTS3=((1.+RM3-RM4)*SINH(YST)+BE34*COSH(YST)*CTH)/EXSQ3
100 CTS4=((1.-RM3+RM4)*SINH(YST)-BE34*COSH(YST)*CTH)/EXSQ4
101 CTSLAR=MIN(1.,MAX(CTS3,CTS4))
102 CTSSMA=MAX(-1.,MIN(CTS3,CTS4))
103 SH=TAU*VINT(2)
104 RPTS=4.*VINT(71)**2/SH
105 BE34L=SQRT(MAX(0.,(1.-RM3-RM4)**2-4.*RM3*RM4-RPTS))
106 RM34=MAX(1E-20,2.*RM3*RM4)
107 IF(2.*VINT(71)**2/(VINT(21)*VINT(2)).LT.0.0001)
108 & RM34=MAX(RM34,2.*VINT(71)**2/(VINT(21)*VINT(2)))
109 RTHM=(4.*RM3*RM4+RPTS)/(1.-RM3-RM4+BE34L)
110 THA=0.5*SH*MAX(RTHM,1.-RM3-RM4-BE34*CTH)
111 UHA=0.5*SH*MAX(RTHM,1.-RM3-RM4+BE34*CTH)
112 IF(PTH.LT.PTHMIN) MINT(51)=1
113 IF(CKIN(4).GE.0..AND.PTH.GT.CKIN(4)) MINT(51)=1
114 IF(YLARGE.LT.CKIN(9).OR.YLARGE.GT.CKIN(10)) MINT(51)=1
115 IF(YSMALL.LT.CKIN(11).OR.YSMALL.GT.CKIN(12)) MINT(51)=1
116 IF(ETALAR.LT.CKIN(13).OR.ETALAR.GT.CKIN(14)) MINT(51)=1
117 IF(ETASMA.LT.CKIN(15).OR.ETASMA.GT.CKIN(16)) MINT(51)=1
118 IF(CTSLAR.LT.CKIN(17).OR.CTSLAR.GT.CKIN(18)) MINT(51)=1
119 IF(CTSSMA.LT.CKIN(19).OR.CTSSMA.GT.CKIN(20)) MINT(51)=1
120 IF(CTH.LT.CKIN(27).OR.CTH.GT.CKIN(28)) MINT(51)=1
121 IF(THA.LT.CKIN(35)) MINT(51)=1
122 IF(CKIN(36).GE.0..AND.THA.GT.CKIN(36)) MINT(51)=1
123 IF(UHA.LT.CKIN(37)) MINT(51)=1
124 IF(CKIN(38).GE.0..AND.UHA.GT.CKIN(38)) MINT(51)=1
125 ENDIF
126 IF(ISTSB.GE.3.AND.ISTSB.LE.5) THEN
127 IF(TAUP*VINT(2).LT.CKIN(31)**2) MINT(51)=1
128 IF(CKIN(32).GE.0..AND.TAUP*VINT(2).GT.CKIN(32)**2) MINT(51)=1
129 ENDIF
130
131C...Additional cuts on W2 (approximately) in DIS.
132 IF(ISUB.EQ.10) THEN
133 XBJ=X2
134 IF(IABS(MINT(12)).LT.20) XBJ=X1
135 Q2BJ=THA
136 W2BJ=Q2BJ*(1.-XBJ)/XBJ
137 IF(W2BJ.LT.CKIN(39)) MINT(51)=1
138 IF(CKIN(40).GT.0..AND.W2BJ.GT.CKIN(40)) MINT(51)=1
139 ENDIF
140
141C...Additional p_T cuts on 2 -> 3 process.
142 IF(ISTSB.EQ.6) THEN
143 KFQ=KFPR(131,2)
144 PMQQ=SQRT(VINT(64))
145 PMQ=PMAS(KFQ,1)
146 PZQ=SQRT(MAX(0.,(0.5*PMQQ)**2-PMQ**2))
147 DO 100 I=MINT(84)+1,MINT(84)+2
148 K(I,1)=1
149 P(I,1)=0.
150 P(I,2)=0.
151 P(I,3)=PZQ*(-1.)**(I-1)
152 P(I,4)=0.5*PMQQ
153 P(I,5)=PMQ
154 100 CONTINUE
155 PEQQ=0.5*SQRT(TAU*VINT(2))*(1.+(VINT(64)-VINT(63))/
156 & (TAU*VINT(2)))
157 PZQQ=SQRT(MAX(0.,PEQQ**2-VINT(64)))
158 CALL LUDBRB(MINT(84)+1,MINT(84)+2,ACOS(VINT(83)),VINT(84),
159 & 0D0,0D0,-DBLE(PZQQ/PEQQ))
160 CALL LUDBRB(MINT(84)+1,MINT(84)+2,ACOS(VINT(23)),VINT(24),
161 & 0D0,0D0,0D0)
162 PTQ2=SQRT(P(MINT(84)+1,1)**2+P(MINT(84)+1,2)**2)
163 PTQ3=SQRT(P(MINT(84)+2,1)**2+P(MINT(84)+2,2)**2)
164 PTMNQ=MIN(PTQ2,PTQ3)
165 PTMXQ=MAX(PTQ2,PTQ3)
166 IF(PTMNQ.LT.CKIN(51)) MINT(51)=1
167 IF(CKIN(52).GE.0..AND.PTMNQ.GT.CKIN(52)) MINT(51)=1
168 IF(PTMXQ.LT.CKIN(53)) MINT(51)=1
169 IF(CKIN(54).GE.0..AND.PTMXQ.GT.CKIN(54)) MINT(51)=1
170 VINT(85)=PTMNQ
171 VINT(86)=PTMXQ
172 ENDIF
173
174 ELSEIF(ILIM.EQ.1) THEN
175C...Calculate limits on tau
176C...0) due to definition
177 TAUMN0=0.
178 TAUMX0=1.
179C...1) due to limits on subsystem mass
180 TAUMN1=CKIN(1)**2/VINT(2)
181 TAUMX1=1.
182 IF(CKIN(2).GE.0.) TAUMX1=CKIN(2)**2/VINT(2)
183C...2) due to limits on pT-hat (and non-overlapping rapidity intervals)
184 TM3=SQRT(SQM3+PTHMIN**2)
185 TM4=SQRT(SQM4+PTHMIN**2)
186 YDCOSH=1.
187 IF(CKIN09.GT.CKIN12) YDCOSH=COSH(CKIN09-CKIN12)
188 TAUMN2=(TM3**2+2.*TM3*TM4*YDCOSH+TM4**2)/VINT(2)
189 TAUMX2=1.
190C...3) due to limits on pT-hat and cos(theta-hat)
191 CTH2MN=MIN(CKIN(27)**2,CKIN(28)**2)
192 CTH2MX=MAX(CKIN(27)**2,CKIN(28)**2)
193 TAUMN3=0.
194 IF(CKIN(27)*CKIN(28).GT.0.) TAUMN3=
195 & (SQRT(SQM3+PTHMIN**2/(1.-CTH2MN))+
196 & SQRT(SQM4+PTHMIN**2/(1.-CTH2MN)))**2/VINT(2)
197 TAUMX3=1.
198 IF(CKIN(4).GE.0..AND.CTH2MX.LT.1.) TAUMX3=
199 & (SQRT(SQM3+CKIN(4)**2/(1.-CTH2MX))+
200 & SQRT(SQM4+CKIN(4)**2/(1.-CTH2MX)))**2/VINT(2)
201C...4) due to limits on x1 and x2
202 TAUMN4=CKIN(21)*CKIN(23)
203 TAUMX4=CKIN(22)*CKIN(24)
204C...5) due to limits on xF
205 TAUMN5=0.
206 TAUMX5=MAX(1.-CKIN(25),1.+CKIN(26))
207C...6) due to limits on that and uhat
208 TAUMN6=(SQM3+SQM4+CKIN(35)+CKIN(37))/VINT(2)
209 TAUMX6=1.
210 IF(CKIN(36).GT.0..AND.CKIN(38).GT.0.) TAUMX6=
211 & (SQM3+SQM4+CKIN(36)+CKIN(38))/VINT(2)
212
213C...Net effect of all separate limits.
214 VINT(11)=MAX(TAUMN0,TAUMN1,TAUMN2,TAUMN3,TAUMN4,TAUMN5,TAUMN6)
215 VINT(31)=MIN(TAUMX0,TAUMX1,TAUMX2,TAUMX3,TAUMX4,TAUMX5,TAUMX6)
216 IF(MINT(47).EQ.1.AND.(ISTSB.EQ.1.OR.ISTSB.EQ.2.OR.ISTSB.EQ.6))
217 & THEN
218 VINT(11)=0.99999
219 VINT(31)=1.00001
220 ELSEIF(MINT(47).EQ.5) THEN
221 VINT(31)=MIN(VINT(31),0.999998)
222 ENDIF
223 IF(VINT(31).LE.VINT(11)) MINT(51)=1
224
225 ELSEIF(ILIM.EQ.2) THEN
226C...Calculate limits on y*
227 TAUE=TAU
228 IF(ISTSB.GE.3.AND.ISTSB.LE.5) TAUE=VINT(26)
229 TAURT=SQRT(TAUE)
230C...0) due to kinematics
231 YSTMN0=LOG(TAURT)
232 YSTMX0=-YSTMN0
233C...1) due to explicit limits
234 YSTMN1=CKIN(7)
235 YSTMX1=CKIN(8)
236C...2) due to limits on x1
237 YSTMN2=LOG(MAX(TAUE,CKIN(21))/TAURT)
238 YSTMX2=LOG(MAX(TAUE,CKIN(22))/TAURT)
239C...3) due to limits on x2
240 YSTMN3=-LOG(MAX(TAUE,CKIN(24))/TAURT)
241 YSTMX3=-LOG(MAX(TAUE,CKIN(23))/TAURT)
242C...4) due to limits on xF
243 YEPMN4=0.5*ABS(CKIN(25))/TAURT
244 YSTMN4=SIGN(LOG(MAX(1E-20,SQRT(1.+YEPMN4**2)+YEPMN4)),CKIN(25))
245 YEPMX4=0.5*ABS(CKIN(26))/TAURT
246 YSTMX4=SIGN(LOG(MAX(1E-20,SQRT(1.+YEPMX4**2)+YEPMX4)),CKIN(26))
247C...5) due to simultaneous limits on y-large and y-small
248 YEPSMN=(RM3-RM4)*SINH(CKIN09-CKIN11)
249 YEPSMX=(RM3-RM4)*SINH(CKIN10-CKIN12)
250 YDIFMN=ABS(LOG(MAX(1E-20,SQRT(1.+YEPSMN**2)-YEPSMN)))
251 YDIFMX=ABS(LOG(MAX(1E-20,SQRT(1.+YEPSMX**2)-YEPSMX)))
252 YSTMN5=0.5*(CKIN09+CKIN11-YDIFMN)
253 YSTMX5=0.5*(CKIN10+CKIN12+YDIFMX)
254C...6) due to simultaneous limits on cos(theta-hat) and y-large or
255C... y-small
256 CTHLIM=SQRT(MAX(0.,1.-4.*PTHMIN**2/(BE34**2*TAUE*VINT(2))))
257 RZMN=BE34*MAX(CKIN(27),-CTHLIM)
258 RZMX=BE34*MIN(CKIN(28),CTHLIM)
259 YEX3MX=(1.+RM3-RM4+RZMX)/MAX(1E-10,1.+RM3-RM4-RZMX)
260 YEX4MX=(1.+RM4-RM3-RZMN)/MAX(1E-10,1.+RM4-RM3+RZMN)
261 YEX3MN=MAX(1E-10,1.+RM3-RM4+RZMN)/(1.+RM3-RM4-RZMN)
262 YEX4MN=MAX(1E-10,1.+RM4-RM3-RZMX)/(1.+RM4-RM3+RZMX)
263 YSTMN6=CKIN09-0.5*LOG(MAX(YEX3MX,YEX4MX))
264 YSTMX6=CKIN12-0.5*LOG(MIN(YEX3MN,YEX4MN))
265
266C...Net effect of all separate limits.
267 VINT(12)=MAX(YSTMN0,YSTMN1,YSTMN2,YSTMN3,YSTMN4,YSTMN5,YSTMN6)
268 VINT(32)=MIN(YSTMX0,YSTMX1,YSTMX2,YSTMX3,YSTMX4,YSTMX5,YSTMX6)
269 IF(MINT(47).EQ.1) THEN
270 VINT(12)=-0.00001
271 VINT(32)=0.00001
272 ELSEIF(MINT(47).EQ.2) THEN
273 VINT(12)=0.99999*YSTMX0
274 VINT(32)=1.00001*YSTMX0
275 ELSEIF(MINT(47).EQ.3) THEN
276 VINT(12)=-1.00001*YSTMX0
277 VINT(32)=-0.99999*YSTMX0
278 ELSEIF(MINT(47).EQ.5) THEN
279 YSTEE=LOG(0.999999/TAURT)
280 VINT(12)=MAX(VINT(12),-YSTEE)
281 VINT(32)=MIN(VINT(32),YSTEE)
282 ENDIF
283 IF(VINT(32).LE.VINT(12)) MINT(51)=1
284
285 ELSEIF(ILIM.EQ.3) THEN
286C...Calculate limits on cos(theta-hat)
287 YST=VINT(22)
288C...0) due to definition
289 CTNMN0=-1.
290 CTNMX0=0.
291 CTPMN0=0.
292 CTPMX0=1.
293C...1) due to explicit limits
294 CTNMN1=MIN(0.,CKIN(27))
295 CTNMX1=MIN(0.,CKIN(28))
296 CTPMN1=MAX(0.,CKIN(27))
297 CTPMX1=MAX(0.,CKIN(28))
298C...2) due to limits on pT-hat
299 CTNMN2=-SQRT(MAX(0.,1.-4.*PTHMIN**2/(BE34**2*TAU*VINT(2))))
300 CTPMX2=-CTNMN2
301 CTNMX2=0.
302 CTPMN2=0.
303 IF(CKIN(4).GE.0.) THEN
304 CTNMX2=-SQRT(MAX(0.,1.-4.*CKIN(4)**2/(BE34**2*TAU*VINT(2))))
305 CTPMN2=-CTNMX2
306 ENDIF
307C...3) due to limits on y-large and y-small
308 CTNMN3=MIN(0.,MAX((1.+RM3-RM4)/BE34*TANH(CKIN11-YST),
309 & -(1.-RM3+RM4)/BE34*TANH(CKIN10-YST)))
310 CTNMX3=MIN(0.,(1.+RM3-RM4)/BE34*TANH(CKIN12-YST),
311 & -(1.-RM3+RM4)/BE34*TANH(CKIN09-YST))
312 CTPMN3=MAX(0.,(1.+RM3-RM4)/BE34*TANH(CKIN09-YST),
313 & -(1.-RM3+RM4)/BE34*TANH(CKIN12-YST))
314 CTPMX3=MAX(0.,MIN((1.+RM3-RM4)/BE34*TANH(CKIN10-YST),
315 & -(1.-RM3+RM4)/BE34*TANH(CKIN11-YST)))
316C...4) due to limits on that
317 CTNMN4=-1.
318 CTNMX4=0.
319 CTPMN4=0.
320 CTPMX4=1.
321 SH=TAU*VINT(2)
322 IF(CKIN(35).GT.0.) THEN
323 CTLIM=(1.-RM3-RM4-2.*CKIN(35)/SH)/BE34
324 IF(CTLIM.GT.0.) THEN
325 CTPMX4=CTLIM
326 ELSE
327 CTPMX4=0.
328 CTNMX4=CTLIM
329 ENDIF
330 ENDIF
331 IF(CKIN(36).GT.0.) THEN
332 CTLIM=(1.-RM3-RM4-2.*CKIN(36)/SH)/BE34
333 IF(CTLIM.LT.0.) THEN
334 CTNMN4=CTLIM
335 ELSE
336 CTNMN4=0.
337 CTPMN4=CTLIM
338 ENDIF
339 ENDIF
340C...5) due to limits on uhat
341 CTNMN5=-1.
342 CTNMX5=0.
343 CTPMN5=0.
344 CTPMX5=1.
345 IF(CKIN(37).GT.0.) THEN
346 CTLIM=(2.*CKIN(37)/SH-(1.-RM3-RM4))/BE34
347 IF(CTLIM.LT.0.) THEN
348 CTNMN5=CTLIM
349 ELSE
350 CTNMN5=0.
351 CTPMN5=CTLIM
352 ENDIF
353 ENDIF
354 IF(CKIN(38).GT.0.) THEN
355 CTLIM=(2.*CKIN(38)/SH-(1.-RM3-RM4))/BE34
356 IF(CTLIM.GT.0.) THEN
357 CTPMX5=CTLIM
358 ELSE
359 CTPMX5=0.
360 CTNMX5=CTLIM
361 ENDIF
362 ENDIF
363
364C...Net effect of all separate limits.
365 VINT(13)=MAX(CTNMN0,CTNMN1,CTNMN2,CTNMN3,CTNMN4,CTNMN5)
366 VINT(33)=MIN(CTNMX0,CTNMX1,CTNMX2,CTNMX3,CTNMX4,CTNMX5)
367 VINT(14)=MAX(CTPMN0,CTPMN1,CTPMN2,CTPMN3,CTPMN4,CTPMN5)
368 VINT(34)=MIN(CTPMX0,CTPMX1,CTPMX2,CTPMX3,CTPMX4,CTPMX5)
369 IF(VINT(33).LE.VINT(13).AND.VINT(34).LE.VINT(14)) MINT(51)=1
370
371 ELSEIF(ILIM.EQ.4) THEN
372C...Calculate limits on tau'
373C...0) due to kinematics
374 TAPMN0=TAU
375 IF((ISTSB.EQ.5.OR.ISTSB.EQ.6).AND.KFPR(ISUB,2).GT.0) THEN
376 PQRAT=2.*PMAS(KFPR(ISUB,2),1)/VINT(1)
377 TAPMN0=(SQRT(TAU)+PQRAT)**2
378 ENDIF
379 TAPMX0=1.
380C...1) due to explicit limits
381 TAPMN1=CKIN(31)**2/VINT(2)
382 TAPMX1=1.
383 IF(CKIN(32).GE.0.) TAPMX1=CKIN(32)**2/VINT(2)
384
385C...Net effect of all separate limits.
386 VINT(16)=MAX(TAPMN0,TAPMN1)
387 VINT(36)=MIN(TAPMX0,TAPMX1)
388 IF(MINT(47).EQ.1) THEN
389 VINT(16)=0.99999
390 VINT(36)=1.00001
391 ENDIF
392 IF(VINT(36).LE.VINT(16)) MINT(51)=1
393
394 ENDIF
395 RETURN
396
397C...Special case for low-pT and multiple interactions:
398C...effective kinematical limits for tau, y*, cos(theta-hat).
399 110 IF(ILIM.EQ.0) THEN
400 ELSEIF(ILIM.EQ.1) THEN
401 IF(MSTP(82).LE.1) VINT(11)=4.*PARP(81)**2/VINT(2)
402 IF(MSTP(82).GE.2) VINT(11)=PARP(82)**2/VINT(2)
403 VINT(31)=1.
404 ELSEIF(ILIM.EQ.2) THEN
405 VINT(12)=0.5*LOG(VINT(21))
406 VINT(32)=-VINT(12)
407 ELSEIF(ILIM.EQ.3) THEN
408 IF(MSTP(82).LE.1) ST2EFF=4.*PARP(81)**2/(VINT(21)*VINT(2))
409 IF(MSTP(82).GE.2) ST2EFF=0.01*PARP(82)**2/(VINT(21)*VINT(2))
410 VINT(13)=-SQRT(MAX(0.,1.-ST2EFF))
411 VINT(33)=0.
412 VINT(14)=0.
413 VINT(34)=-VINT(13)
414 ENDIF
415
416 RETURN
417 END