8 common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
10 common/ludat2/kchg(500,3),pmas(500,4),parf(2000),vckm(4,4)
12 common/ludat3/mdcy(500,3),mdme(2000,2),brat(2000),kfdp(2000,5)
16 common/pyhisubs/msel,msub(200),kfin(2,-40:40),ckin(200)
20 common/pyhiint2/iset(200),kfpr(200,2),coef(200,20),icol(40,4,2)
25 IF(isub.EQ.96) goto 110
32 be34=sqrt((1.-rm3-rm4)**2-4.*rm3*rm4)
35 IF(min(sqm3,sqm4).LT.ckin(6)**2) pthmin=
max(ckin(3),ckin(5))
43 IF(iset(isub).LE.2)
THEN
45 x2=sqrt(
tau)*exp(-yst)
47 x1=sqrt(taup)*exp(yst)
48 x2=sqrt(taup)*exp(-yst)
52 IF(ckin(2).GE.0..AND.
tau*
vint(2).GT.ckin(2)**2)
mint(51)=1
53 IF(x1.LT.ckin(21).OR.x1.GT.ckin(22))
mint(51)=1
54 IF(x2.LT.ckin(23).OR.x2.GT.ckin(24))
mint(51)=1
55 IF(xf.LT.ckin(25).OR.xf.GT.ckin(26))
mint(51)=1
56 IF(yst.LT.ckin(7).OR.yst.GT.ckin(8))
mint(51)=1
57 IF(iset(isub).EQ.2.OR.iset(isub).EQ.4)
THEN
58 pth=0.5*be34*sqrt(
tau*
vint(2)*(1.-cth**2))
59 y3=yst+0.5*
log((1.+rm3-rm4+be34*cth)/(1.+rm3-rm4-be34*cth))
60 y4=yst+0.5*
log((1.+rm4-rm3-be34*cth)/(1.+rm4-rm3+be34*cth))
66 IF(sth.LT.1.
e-6) goto 100
67 expet3=((1.+rm3-rm4)*sinh(yst)+be34*cosh(yst)*cth+
68 & sqrt(((1.+rm3-rm4)*cosh(yst)+be34*sinh(yst)*cth)**2-4.*rm3))/
70 expet4=((1.-rm3+rm4)*sinh(yst)-be34*cosh(yst)*cth+
71 & sqrt(((1.-rm3+rm4)*cosh(yst)-be34*sinh(yst)*cth)**2-4.*rm4))/
73 eta3=
log(min(1.e10,
max(1.
e-10,expet3)))
74 eta4=
log(min(1.e10,
max(1.
e-10,expet4)))
77 100 cts3=((1.+rm3-rm4)*sinh(yst)+be34*cosh(yst)*cth)/
78 & sqrt(((1.+rm3-rm4)*cosh(yst)+be34*sinh(yst)*cth)**2-4.*rm3)
79 cts4=((1.-rm3+rm4)*sinh(yst)-be34*cosh(yst)*cth)/
80 & sqrt(((1.-rm3+rm4)*cosh(yst)-be34*sinh(yst)*cth)**2-4.*rm4)
83 IF(pth.LT.pthmin)
mint(51)=1
84 IF(ckin(4).GE.0..AND.pth.GT.ckin(4))
mint(51)=1
85 IF(ylarge.LT.ckin(9).OR.ylarge.GT.ckin(10))
mint(51)=1
86 IF(ysmall.LT.ckin(11).OR.ysmall.GT.ckin(12))
mint(51)=1
87 IF(etalar.LT.ckin(13).OR.etalar.GT.ckin(14))
mint(51)=1
88 IF(etasma.LT.ckin(15).OR.etasma.GT.ckin(16))
mint(51)=1
89 IF(ctslar.LT.ckin(17).OR.ctslar.GT.ckin(18))
mint(51)=1
90 IF(ctssma.LT.ckin(19).OR.ctssma.GT.ckin(20))
mint(51)=1
91 IF(cth.LT.ckin(27).OR.cth.GT.ckin(28))
mint(51)=1
93 IF(iset(isub).EQ.3.OR.iset(isub).EQ.4)
THEN
94 IF(taup*
vint(2).LT.ckin(31)**2)
mint(51)=1
95 IF(ckin(32).GE.0..AND.taup*
vint(2).GT.ckin(32)**2)
mint(51)=1
98 ELSEIF(ilim.EQ.1)
THEN
104 taumn1=ckin(1)**2/
vint(2)
106 IF(ckin(2).GE.0.) taumx1=ckin(2)**2/
vint(2)
108 tm3=sqrt(sqm3+pthmin**2)
109 tm4=sqrt(sqm4+pthmin**2)
111 IF(ckin(9).GT.ckin(12)) ydcosh=cosh(ckin(9)-ckin(12))
112 taumn2=(tm3**2+2.*tm3*tm4*ydcosh+tm4**2)/
vint(2)
115 cth2mn=min(ckin(27)**2,ckin(28)**2)
116 cth2mx=
max(ckin(27)**2,ckin(28)**2)
118 IF(ckin(27)*ckin(28).GT.0.) taumn3=
119 & (sqrt(sqm3+pthmin**2/(1.-cth2mn))+
120 & sqrt(sqm4+pthmin**2/(1.-cth2mn)))**2/
vint(2)
122 IF(ckin(4).GE.0..AND.cth2mx.LT.1.) taumx3=
123 & (sqrt(sqm3+ckin(4)**2/(1.-cth2mx))+
124 & sqrt(sqm4+ckin(4)**2/(1.-cth2mx)))**2/
vint(2)
126 taumn4=ckin(21)*ckin(23)
127 taumx4=ckin(22)*ckin(24)
130 taumx5=
max(1.-ckin(25),1.+ckin(26))
131 vint(11)=
max(taumn0,taumn1,taumn2,taumn3,taumn4,taumn5)
132 vint(31)=min(taumx0,taumx1,taumx2,taumx3,taumx4,taumx5)
133 IF(
mint(43).EQ.1.AND.(iset(isub).EQ.1.OR.iset(isub).EQ.2))
THEN
139 ELSEIF(ilim.EQ.2)
THEN
141 IF(iset(isub).EQ.3.OR.iset(isub).EQ.4)
tau=
vint(26)
156 yepmn4=0.5*abs(ckin(25))/taurt
157 ystmn4=
sign(
log(sqrt(1.+yepmn4**2)+yepmn4),ckin(25))
158 yepmx4=0.5*abs(ckin(26))/taurt
159 ystmx4=
sign(
log(sqrt(1.+yepmx4**2)+yepmx4),ckin(26))
161 yepsmn=(rm3-rm4)*sinh(ckin(9)-ckin(11))
162 yepsmx=(rm3-rm4)*sinh(ckin(10)-ckin(12))
163 ydifmn=abs(
log(sqrt(1.+yepsmn**2)-yepsmn))
164 ydifmx=abs(
log(sqrt(1.+yepsmx**2)-yepsmx))
165 ystmn5=0.5*(ckin(9)+ckin(11)-ydifmn)
166 ystmx5=0.5*(ckin(10)+ckin(12)+ydifmx)
169 cthlim=sqrt(1.-4.*pthmin**2/(be34*
tau*
vint(2)))
170 rzmn=be34*
max(ckin(27),-cthlim)
171 rzmx=be34*min(ckin(28),cthlim)
172 yex3mx=(1.+rm3-rm4+rzmx)/
max(1
e-10,1.+rm3-rm4-rzmx)
173 yex4mx=(1.+rm4-rm3-rzmn)/
max(1
e-10,1.+rm4-rm3+rzmn)
174 yex3mn=
max(1
e-10,1.+rm3-rm4+rzmn)/(1.+rm3-rm4-rzmn)
175 yex4mn=
max(1
e-10,1.+rm4-rm3-rzmx)/(1.+rm4-rm3+rzmx)
176 ystmn6=ckin(9)-0.5*
log(
max(yex3mx,yex4mx))
177 ystmx6=ckin(12)-0.5*
log(min(yex3mn,yex4mn))
178 vint(12)=
max(ystmn0,ystmn1,ystmn2,ystmn3,ystmn4,ystmn5,ystmn6)
179 vint(32)=min(ystmx0,ystmx1,ystmx2,ystmx3,ystmx4,ystmx5,ystmx6)
180 IF(
mint(43).EQ.1)
THEN
183 ELSEIF(
mint(43).EQ.2)
THEN
184 vint(12)=0.99999*ystmx0
185 vint(32)=1.00001*ystmx0
186 ELSEIF(
mint(43).EQ.3)
THEN
187 vint(12)=-1.00001*ystmx0
188 vint(32)=-0.99999*ystmx0
192 ELSEIF(ilim.EQ.3)
THEN
201 ctnmn1=min(0.,ckin(27))
202 ctnmx1=min(0.,ckin(28))
203 ctpmn1=
max(0.,ckin(27))
204 ctpmx1=
max(0.,ckin(28))
206 ctnmn2=-sqrt(1.-4.*pthmin**2/(be34**2*
tau*
vint(2)))
210 IF(ckin(4).GE.0.)
THEN
211 ctnmx2=-sqrt(
max(0.,1.-4.*ckin(4)**2/(be34**2*
tau*
vint(2))))
215 ctnmn3=min(0.,
max((1.+rm3-rm4)/be34*tanh(ckin(11)-yst),
216 & -(1.-rm3+rm4)/be34*tanh(ckin(10)-yst)))
217 ctnmx3=min(0.,(1.+rm3-rm4)/be34*tanh(ckin(12)-yst),
218 & -(1.-rm3+rm4)/be34*tanh(ckin(9)-yst))
219 ctpmn3=
max(0.,(1.+rm3-rm4)/be34*tanh(ckin(9)-yst),
220 & -(1.-rm3+rm4)/be34*tanh(ckin(12)-yst))
221 ctpmx3=
max(0.,min((1.+rm3-rm4)/be34*tanh(ckin(10)-yst),
222 & -(1.-rm3+rm4)/be34*tanh(ckin(11)-yst)))
223 vint(13)=
max(ctnmn0,ctnmn1,ctnmn2,ctnmn3)
224 vint(33)=min(ctnmx0,ctnmx1,ctnmx2,ctnmx3)
225 vint(14)=
max(ctpmn0,ctpmn1,ctpmn2,ctpmn3)
226 vint(34)=min(ctpmx0,ctpmx1,ctpmx2,ctpmx3)
229 ELSEIF(ilim.EQ.4)
THEN
235 tapmn1=ckin(31)**2/
vint(2)
237 IF(ckin(32).GE.0.) tapmx1=ckin(32)**2/
vint(2)
239 vint(36)=min(tapmx0,tapmx1)
240 IF(
mint(43).EQ.1)
THEN
251 110
IF(ilim.EQ.0)
THEN
252 ELSEIF(ilim.EQ.1)
THEN
256 ELSEIF(ilim.EQ.2)
THEN
259 ELSEIF(ilim.EQ.3)
THEN
262 vint(13)=-sqrt(
max(0.,1.-st2eff))