7 common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
9 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)
17 common/pyhiint4/widp(21:40,0:40),wide(21:40,0:40),wids(21:40,3)
19 dimension wdtp(0:40),wdte(0:40,0:5)
39 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
40 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
41 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 110
44 wdtp(
i)=(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
47 wdtp(0)=wdtp(0)+wdtp(
i)
48 IF(mdme(idc,1).GT.0)
THEN
49 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
50 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
51 wdte(
i,0)=wdte(
i,mdme(idc,1))
52 wdte(0,0)=wdte(0,0)+wdte(
i,0)
56 ELSEIF(kfla.EQ.23)
THEN
58 IF(
mint(61).EQ.1)
THEN
59 ei=kchg(iabs(
mint(15)),1)/3.
63 gzmz=pmas(23,2)*pmas(23,1)
65 gzi=
ei*vi/(8.*xw*(1.-xw))*sqm*(sqm-sqmz)/
66 & ((sqm-sqmz)**2+gzmz**2)
67 zzi=(vi**2+ai**2)/(16.*xw*(1.-xw))**2*sqm**2/
68 & ((sqm-sqmz)**2+gzmz**2)
69 IF(
mstp(43).EQ.1)
THEN
73 ELSEIF(
mstp(43).EQ.2)
THEN
78 ELSEIF(
mint(61).EQ.2)
THEN
85 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
86 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
87 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 120
93 IF(
mint(61).EQ.0)
THEN
94 wdtp(
i)=3.*(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
95 & sqrt(
max(0.,1.-4.*rm1))*radc
96 ELSEIF(
mint(61).EQ.1)
THEN
97 wdtp(
i)=3.*((ggi*ef**2+gzi*ef*vf+zzi*vf**2)*
98 & (1.+2.*rm1)+zzi*af**2*(1.-4.*rm1))*
99 & sqrt(
max(0.,1.-4.*rm1))*radc
100 ELSEIF(
mint(61).EQ.2)
THEN
101 ggf=3.*ef**2*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
102 gzf=3.*ef*vf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
103 zzf=3.*(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
104 & sqrt(
max(0.,1.-4.*rm1))*radc
112 wdtp(
i)=(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
113 & sqrt(
max(0.,1.-4.*rm1))
114 IF(
mint(61).EQ.0)
THEN
115 wdtp(
i)=(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
116 & sqrt(
max(0.,1.-4.*rm1))
117 ELSEIF(
mint(61).EQ.1)
THEN
118 wdtp(
i)=((ggi*ef**2+gzi*ef*vf+zzi*vf**2)*
119 & (1.+2.*rm1)+zzi*af**2*(1.-4.*rm1))*
120 & sqrt(
max(0.,1.-4.*rm1))
121 ELSEIF(
mint(61).EQ.2)
THEN
122 ggf=ef**2*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
123 gzf=ef*vf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
124 zzf=(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
125 & sqrt(
max(0.,1.-4.*rm1))
131 IF(
mint(61).EQ.0)
THEN
132 wdtp(
i)=0.25*cf**2*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))
133 ELSEIF(
mint(61).EQ.1)
THEN
134 wdtp(
i)=0.25*(ggi+gzi*cf+zzi*cf**2)*(1.-4.*rm1)*
135 & sqrt(
max(0.,1.-4.*rm1))
136 ELSEIF(
mint(61).EQ.2)
THEN
137 ggf=0.25*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))
138 gzf=0.25*cf*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))
139 zzf=0.25*cf**2*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))
143 wdtp(0)=wdtp(0)+wdtp(
i)
144 IF(mdme(idc,1).GT.0)
THEN
145 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
146 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
147 wdte(
i,0)=wdte(
i,mdme(idc,1))
148 wdte(0,0)=wdte(0,0)+wdte(
i,0)
154 IF(
mstp(43).EQ.1)
THEN
158 ELSEIF(
mstp(43).EQ.2)
THEN
164 ELSEIF(kfla.EQ.24)
THEN
166 DO 130
i=1,mdcy(24,3)
168 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
169 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
170 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 130
173 wdtp(
i)=3.*(2.-rm1-rm2-(rm1-rm2)**2)*
174 & sqrt(
max(0.,(1.-rm1-rm2)**2-4.*rm1*rm2))*
175 & vckm((
i-1)/4+1,mod(
i-1,4)+1)*radc
179 wdtp(
i)=(2.-rm1-rm2-(rm1-rm2)**2)*
180 & sqrt(
max(0.,(1.-rm1-rm2)**2-4.*rm1*rm2))
183 wdtp(0)=wdtp(0)+wdtp(
i)
184 IF(mdme(idc,1).GT.0)
THEN
185 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
186 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
187 wdte(
i,0)=wdte(
i,mdme(idc,1))
188 wdte(0,0)=wdte(0,0)+wdte(
i,0)
192 ELSEIF(kfla.EQ.25)
THEN
194 DO 170
i=1,mdcy(25,3)
196 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
197 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
198 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 170
201 wdtp(
i)=3.*rm1*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
205 wdtp(
i)=rm1*(1.-4.*rm1)*sqrt(
max(0.,1.-4.*rm1))
212 eps=(2.*pmas(
j,1)/rmas)**2
214 IF(
eps.GT.1.
e-4)
THEN
216 rln=
log((1.+root)/(1.-root))
220 phire=0.25*(rln**2-paru(1)**2)
221 phiim=0.5*paru(1)*rln
223 phire=-(asin(1./sqrt(
eps)))**2
226 etare=etare+0.5*
eps*(1.+(
eps-1.)*phire)
227 etaim=etaim+0.5*
eps*(
eps-1.)*phiim
229 eta2=etare**2+etaim**2
230 wdtp(
i)=(as/paru(1))**2*eta2
236 DO 150
j=1,3*
mstp(1)+1
237 IF(
j.LE.2*
mstp(1))
THEN
239 eps=(2.*pmas(
j,1)/rmas)**2
240 ELSEIF(
j.LE.3*
mstp(1))
THEN
243 eps=(2.*pmas(10+jl,1)/rmas)**2
245 eps=(2.*pmas(24,1)/rmas)**2
248 IF(
eps.GT.1.
e-4)
THEN
250 rln=
log((1.+root)/(1.-root))
254 phire=0.25*(rln**2-paru(1)**2)
255 phiim=0.5*paru(1)*rln
257 phire=-(asin(1./sqrt(
eps)))**2
260 IF(
j.LE.2*
mstp(1))
THEN
261 etare=etare+0.5*3.*ej**2*
eps*(1.+(
eps-1.)*phire)
262 etaim=etaim+0.5*3.*ej**2*
eps*(
eps-1.)*phiim
263 ELSEIF(
j.LE.3*
mstp(1))
THEN
264 etare=etare+0.5*ej**2*
eps*(1.+(
eps-1.)*phire)
265 etaim=etaim+0.5*ej**2*
eps*(
eps-1.)*phiim
267 etare=etare-0.5-0.75*
eps*(1.+(
eps-2.)*phire)
268 etaim=etaim+0.75*
eps*(
eps-2.)*phiim
271 eta2=etare**2+etaim**2
272 wdtp(
i)=(aem/paru(1))**2*0.5*eta2
278 DO 160
j=1,3*
mstp(1)+1
279 IF(
j.LE.2*
mstp(1))
THEN
283 eps=(2.*pmas(
j,1)/rmas)**2
284 epsp=(2.*pmas(
j,1)/pmas(23,1))**2
285 ELSEIF(
j.LE.3*
mstp(1))
THEN
290 eps=(2.*pmas(10+jl,1)/rmas)**2
291 epsp=(2.*pmas(10+jl,1)/pmas(23,1))**2
293 eps=(2.*pmas(24,1)/rmas)**2
294 epsp=(2.*pmas(24,1)/pmas(23,1))**2
298 IF(
eps.GT.1.
e-4)
THEN
299 rln=
log((1.+root)/(1.-root))
303 phire=0.25*(rln**2-paru(1)**2)
304 phiim=0.5*paru(1)*rln
305 psire=-(1.+0.5*root*rln)
306 psiim=0.5*paru(1)*root
308 phire=-(asin(1./sqrt(
eps)))**2
310 psire=-(1.+sqrt(
eps-1.)*asin(1./sqrt(
eps)))
315 IF(epsp.GT.1.
e-4)
THEN
316 rln=
log((1.+root)/(1.-root))
320 phirep=0.25*(rln**2-paru(1)**2)
321 phiimp=0.5*paru(1)*rln
322 psirep=-(1.+0.5*root*rln)
323 psiimp=0.5*paru(1)*root
325 phirep=-(asin(1./sqrt(epsp)))**2
327 psirep=-(1.+sqrt(epsp-1.)*asin(1./sqrt(epsp)))
330 fxyre=
eps*epsp/(8.*(
eps-epsp))*(1.-
eps*epsp/(
eps-epsp)*(phire-
331 & phirep)+2.*
eps/(
eps-epsp)*(psire-psirep))
332 fxyim=
eps*epsp/(8.*(
eps-epsp))*(-
eps*epsp/(
eps-epsp)*(phiim-
333 & phiimp)+2.*
eps/(
eps-epsp)*(psiim-psiimp))
334 f1re=
eps*epsp/(2.*(
eps-epsp))*(phire-phirep)
335 f1im=
eps*epsp/(2.*(
eps-epsp))*(phiim-phiimp)
336 IF(
j.LE.2*
mstp(1))
THEN
337 etare=etare-3.*ej*vj*(fxyre-0.25*f1re)
338 etaim=etaim-3.*ej*vj*(fxyim-0.25*f1im)
339 ELSEIF(
j.LE.3*
mstp(1))
THEN
340 etare=etare-ej*vj*(fxyre-0.25*f1re)
341 etaim=etaim-ej*vj*(fxyim-0.25*f1im)
343 etare=etare-sqrt(1.-xw)*(((1.+2./
eps)*xw/sqrt(1.-xw)-
344 & (5.+2./
eps))*fxyre+(3.-xw/sqrt(1.-xw))*f1re)
345 etaim=etaim-sqrt(1.-xw)*(((1.+2./
eps)*xw/sqrt(1.-xw)-
346 & (5.+2./
eps))*fxyim+(3.-xw/sqrt(1.-xw))*f1im)
349 eta2=etare**2+etaim**2
350 wdtp(
i)=(aem/paru(1))**2*(1.-(pmas(23,1)/rmas)**2)**3/xw*eta2
354 wdtp(
i)=(1.-4.*rm1+12.*rm1**2)*sqrt(
max(0.,1.-4.*rm1))/
358 wdtp(0)=wdtp(0)+wdtp(
i)
359 IF(mdme(idc,1).GT.0)
THEN
360 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
361 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
362 wdte(
i,0)=wdte(
i,mdme(idc,1))
363 wdte(0,0)=wdte(0,0)+wdte(
i,0)
367 ELSEIF(kfla.EQ.32)
THEN
369 IF(
mint(61).EQ.1)
THEN
370 ei=kchg(iabs(
mint(15)),1)/3.
374 gzmz=pmas(23,2)*pmas(23,1)
378 gzpmzp=pmas(32,2)*pmas(32,1)
380 gzi=
ei*vi/(8.*xw*(1.-xw))*sqm*(sqm-sqmz)/
381 & ((sqm-sqmz)**2+gzmz**2)
382 gzpi=
ei*vpi/(8.*xw*(1.-xw))*sqm*(sqm-sqmzp)/
383 & ((sqm-sqmzp)**2+gzpmzp**2)
384 zzi=(vi**2+ai**2)/(16.*xw*(1.-xw))**2*sqm**2/
385 & ((sqm-sqmz)**2+gzmz**2)
386 zzpi=2.*(vi*vpi+ai*api)/(16.*xw*(1.-xw))**2*
387 & sqm**2*((sqm-sqmz)*(sqm-sqmzp)+gzmz*gzpmzp)/
388 & (((sqm-sqmz)**2+gzmz**2)*((sqm-sqmzp)**2+gzpmzp**2))
389 zpzpi=(vpi**2+api**2)/(16.*xw*(1.-xw))**2*sqm**2/
390 & ((sqm-sqmzp)**2+gzpmzp**2)
391 IF(
mstp(44).EQ.1)
THEN
398 ELSEIF(
mstp(44).EQ.2)
THEN
405 ELSEIF(
mstp(44).EQ.3)
THEN
412 ELSEIF(
mstp(44).EQ.4)
THEN
417 ELSEIF(
mstp(44).EQ.5)
THEN
422 ELSEIF(
mstp(44).EQ.6)
THEN
428 ELSEIF(
mint(61).EQ.2)
THEN
436 DO 180
i=1,mdcy(32,3)
438 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
439 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
440 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 180
448 IF(
mint(61).EQ.0)
THEN
449 wdtp(
i)=3.*(vpf**2*(1.+2.*rm1)+apf**2*(1.-4.*rm1))*
450 & sqrt(
max(0.,1.-4.*rm1))*radc
451 ELSEIF(
mint(61).EQ.1)
THEN
452 wdtp(
i)=3.*((ggi*ef**2+gzi*ef*vf+gzpi*ef*vpf+zzi*vf**2+
453 & zzpi*vf*vpf+zpzpi*vpf**2)*(1.+2.*rm1)+(zzi*af**2+
454 & zzpi*af*apf+zpzpi*apf**2)*(1.-4.*rm1))*
455 & sqrt(
max(0.,1.-4.*rm1))*radc
456 ELSEIF(
mint(61).EQ.2)
THEN
457 ggf=3.*ef**2*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
458 gzf=3.*ef*vf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
459 gzpf=3.*ef*vpf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))*radc
460 zzf=3.*(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
461 & sqrt(
max(0.,1.-4.*rm1))*radc
462 zzpf=3.*(vf*vpf*(1.+2.*rm1)+af*apf*(1.-4.*rm1))*
463 & sqrt(
max(0.,1.-4.*rm1))*radc
464 zpzpf=3.*(vpf**2*(1.+2.*rm1)+apf**2*(1.-4.*rm1))*
465 & sqrt(
max(0.,1.-4.*rm1))*radc
475 IF(
mint(61).EQ.0)
THEN
476 wdtp(
i)=(vpf**2*(1.+2.*rm1)+apf**2*(1.-4.*rm1))*
477 & sqrt(
max(0.,1.-4.*rm1))
478 ELSEIF(
mint(61).EQ.1)
THEN
479 wdtp(
i)=((ggi*ef**2+gzi*ef*vf+gzpi*ef*vpf+zzi*vf**2+
480 & zzpi*vf*vpf+zpzpi*vpf**2)*(1.+2.*rm1)+(zzi*af**2+
481 & zzpi*af*apf+zpzpi*apf**2)*(1.-4.*rm1))*
482 & sqrt(
max(0.,1.-4.*rm1))
483 ELSEIF(
mint(61).EQ.2)
THEN
484 ggf=ef**2*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
485 gzf=ef*vf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
486 gzpf=ef*vpf*(1.+2.*rm1)*sqrt(
max(0.,1.-4.*rm1))
487 zzf=(vf**2*(1.+2.*rm1)+af**2*(1.-4.*rm1))*
488 & sqrt(
max(0.,1.-4.*rm1))
489 zzpf=(vf*vpf*(1.+2.*rm1)+af*apf*(1.-4.*rm1))*
490 & sqrt(
max(0.,1.-4.*rm1))
491 zpzpf=(vpf**2*(1.+2.*rm1)+apf**2*(1.-4.*rm1))*
492 & sqrt(
max(0.,1.-4.*rm1))
496 wdtp(0)=wdtp(0)+wdtp(
i)
497 IF(mdme(idc,1).GT.0)
THEN
498 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
499 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
500 wdte(
i,0)=wdte(
i,mdme(idc,1))
501 wdte(0,0)=wdte(0,0)+wdte(
i,0)
510 IF(
mstp(44).EQ.1)
THEN
517 ELSEIF(
mstp(44).EQ.2)
THEN
524 ELSEIF(
mstp(44).EQ.3)
THEN
531 ELSEIF(
mstp(44).EQ.4)
THEN
536 ELSEIF(
mstp(44).EQ.5)
THEN
541 ELSEIF(
mstp(44).EQ.6)
THEN
548 ELSEIF(kfla.EQ.37)
THEN
550 DO 190
i=1,mdcy(37,3)
552 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
553 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
554 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 190
557 wdtp(
i)=3.*((rm1*paru(121)+rm2/paru(121))*
558 & (1.-rm1-rm2)-4.*rm1*rm2)*
559 & sqrt(
max(0.,(1.-rm1-rm2)**2-4.*rm1*rm2))*radc
563 wdtp(
i)=((rm1*paru(121)+rm2/paru(121))*
564 & (1.-rm1-rm2)-4.*rm1*rm2)*
565 & sqrt(
max(0.,(1.-rm1-rm2)**2-4.*rm1*rm2))
568 wdtp(0)=wdtp(0)+wdtp(
i)
569 IF(mdme(idc,1).GT.0)
THEN
570 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
571 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
572 wdte(
i,0)=wdte(
i,mdme(idc,1))
573 wdte(0,0)=wdte(0,0)+wdte(
i,0)
577 ELSEIF(kfla.EQ.40)
THEN
579 DO 200
i=1,mdcy(40,3)
581 rm1=(pmas(iabs(kfdp(idc,1)),1)/rmas)**2
582 rm2=(pmas(iabs(kfdp(idc,2)),1)/rmas)**2
583 IF(sqrt(rm1)+sqrt(rm2).GT.1..OR.mdme(idc,1).LT.0) goto 200
593 wdtp(0)=wdtp(0)+wdtp(
i)
594 IF(mdme(idc,1).GT.0)
THEN
595 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
596 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
597 wdte(
i,0)=wdte(
i,mdme(idc,1))
598 wdte(0,0)=wdte(0,0)+wdte(
i,0)