15 common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
17 common/ludat2/kchg(500,3),pmas(500,4),parf(2000),vckm(4,4)
19 common/ludat3/mdcy(500,3),mdme(2000,2),brat(2000),kfdp(2000,5)
21 common/pyhisubs/msel,msub(200),kfin(2,-40:40),ckin(200)
27 common/pyhiint2/iset(200),kfpr(200,2),coef(200,20),icol(40,4,2)
29 common/pyhiint3/xsfx(2,-40:40),isig(1000,3),sigh(1000)
31 common/pyhiint4/widp(21:40,0:40),wide(21:40,0:40),wids(21:40,3)
33 common/pyhiint5/
ngen(0:200,3),
xsec(0:200,3)
35 dimension
x(2),xpq(-6:6),kfac(2,-40:40),wdtp(0:40),wdte(0:40,0:5)
62 IF(iset(isub).LE.2.OR.iset(isub).EQ.5)
THEN
63 x(1)=sqrt(
tau)*exp(yst)
64 x(2)=sqrt(
tau)*exp(-yst)
66 x(1)=sqrt(taup)*exp(yst)
67 x(2)=sqrt(taup)*exp(-yst)
69 IF(
mint(43).EQ.4.AND.iset(isub).GE.1.AND.
70 &(
x(1).GT.0.999.OR.
x(2).GT.0.999))
RETURN
76 be34=sqrt((1.-rm3-rm4)**2-4.*rm3*rm4)
77 rpts=4.*
vint(71)**2/sh
78 be34l=sqrt(
max(0.,(1.-rm3-rm4)**2-4.*rm3*rm4-rpts))
81 rthm=(4.*rm3*rm4+rpts)/(1.-rm3-rm4+be34l)
82 th=-0.5*sh*
max(rthm,1.-rm3-rm4-be34*cth)
83 uh=-0.5*sh*
max(rthm,1.-rm3-rm4+be34*cth)
84 sqpth=0.25*sh*be34**2*(1.-cth**2)
90 IF(iset(isub).EQ.1.OR.iset(isub).EQ.3)
THEN
92 ELSEIF(mod(iset(isub),2).EQ.0.OR.iset(isub).EQ.5)
THEN
93 IF(
mstp(32).EQ.1)
THEN
94 q2=2.*sh*th*uh/(sh**2+th**2+uh**2)
95 ELSEIF(
mstp(32).EQ.2)
THEN
96 q2=sqpth+0.5*(sqm3+sqm4)
97 ELSEIF(
mstp(32).EQ.3)
THEN
99 ELSEIF(
mstp(32).EQ.4)
THEN
102 IF(iset(isub).EQ.5.AND.
mstp(82).GE.2) q2=q2+
parp(82)**2
120 IF(iset(isub).LE.0) goto 145
121 IF(
mint(43).GE.2)
THEN
123 IF(iset(isub).EQ.3.OR.iset(isub).EQ.4)
THEN
125 IF(isub.EQ.8.OR.isub.EQ.76.OR.isub.EQ.77) q2sf=pmas(24,1)**2
129 IF(iset(isub).EQ.5) xsf=
x(
i)/
vint(142+
i)
132 100 xsfx(
i,kfl)=xpq(kfl)
139 IF(
mstp(33).EQ.1)
THEN
141 ELSEIF(
mstp(33).EQ.2)
THEN
144 ELSEIF(
mstp(33).EQ.3)
THEN
146 IF(iset(isub).EQ.5.AND.
mstp(82).GE.2) q2as=q2as+
156 IF(
mint(40+
i).EQ.1)
THEN
161 IF(abs(
j).GT.
mstp(54).AND.
j.NE.21) kfac(
i,
j)=0
163 IF(xsfx(
i,
j).LT.1.
e-10) kfac(
i,
j)=0
165 IF(xsfx(
i,0).LT.1.
e-10) kfac(
i,21)=0
177 IF(kfac(1,-
j).EQ.1) min1=-
j
178 IF(kfac(1,
j).EQ.1) max1=
j
179 IF(kfac(2,-
j).EQ.1) min2=-
j
180 IF(kfac(2,
j).EQ.1) max2=
j
187 gmmz=pmas(23,1)*pmas(23,2)
189 gmmw=pmas(24,1)*pmas(24,2)
191 gmmh=pmas(25,1)*pmas(25,2)
193 gmmzp=pmas(32,1)*pmas(32,2)
195 gmmhc=pmas(37,1)*pmas(37,2)
197 gmmr=pmas(40,1)*pmas(40,2)
202 comfac=paru(1)*paru(5)/
vint(2)
203 IF(
mint(43).EQ.4) comfac=comfac*fack
204 IF((
mint(43).GE.2.OR.iset(isub).EQ.3.OR.iset(isub).EQ.4).AND.
205 &iset(isub).NE.5)
THEN
206 atau0=
log(taumax/taumin)
207 atau1=(taumax-taumin)/(taumax*taumin)
208 h1=coef(isub,1)+(atau0/atau1)*coef(isub,2)/
tau
209 IF(
mint(72).GE.1)
THEN
212 atau2=
log(taumax/taumin*(taumin+taur1)/(taumax+taur1))/taur1
213 atau3=(atan((taumax-taur1)/gamr1)-atan((taumin-taur1)/gamr1))/
215 h1=
h1+(atau0/atau2)*coef(isub,3)/(
tau+taur1)+
216 & (atau0/atau3)*coef(isub,4)*
tau/((
tau-taur1)**2+gamr1**2)
218 IF(
mint(72).EQ.2)
THEN
221 atau4=
log(taumax/taumin*(taumin+taur2)/(taumax+taur2))/taur2
222 atau5=(atan((taumax-taur2)/gamr2)-atan((taumin-taur2)/gamr2))/
224 h1=
h1+(atau0/atau4)*coef(isub,5)/(
tau+taur2)+
225 & (atau0/atau5)*coef(isub,6)*
tau/((
tau-taur2)**2+gamr2**2)
227 comfac=comfac*atau0/(
tau*
h1)
229 IF(
mint(43).EQ.4.AND.iset(isub).NE.5)
THEN
231 ayst1=0.5*(ystmax-ystmin)**2
233 ayst3=2.*(atan(exp(ystmax))-atan(exp(ystmin)))
234 h2=(ayst0/ayst1)*coef(isub,7)*(yst-ystmin)+(ayst0/ayst2)*
235 & coef(isub,8)*(ystmax-yst)+(ayst0/ayst3)*coef(isub,9)/cosh(yst)
236 comfac=comfac*ayst0/
h2
241 acth0=ctnmax-ctnmin+ctpmax-ctpmin
242 IF((iset(isub).EQ.1.OR.iset(isub).EQ.3).AND.
243 &mdcy(kfpr(isub,1),1).EQ.1)
THEN
244 IF(kfpr(isub,1).EQ.25.OR.kfpr(isub,1).EQ.37)
THEN
245 comfac=comfac*0.5*acth0
247 comfac=comfac*0.125*(3.*acth0+ctnmax**3-ctnmin**3+
248 & ctpmax**3-ctpmin**3)
252 ELSEIF(iset(isub).EQ.2.OR.iset(isub).EQ.4)
THEN
253 acth1=
log((
max(rm34,rsqm-ctnmin)*
max(rm34,rsqm-ctpmin))/
254 & (
max(rm34,rsqm-ctnmax)*
max(rm34,rsqm-ctpmax)))
255 acth2=
log((
max(rm34,rsqm+ctnmax)*
max(rm34,rsqm+ctpmax))/
256 & (
max(rm34,rsqm+ctnmin)*
max(rm34,rsqm+ctpmin)))
257 acth3=1./
max(rm34,rsqm-ctnmax)-1./
max(rm34,rsqm-ctnmin)+
258 & 1./
max(rm34,rsqm-ctpmax)-1./
max(rm34,rsqm-ctpmin)
259 acth4=1./
max(rm34,rsqm+ctnmin)-1./
max(rm34,rsqm+ctnmax)+
260 & 1./
max(rm34,rsqm+ctpmin)-1./
max(rm34,rsqm+ctpmax)
262 & (acth0/acth1)*coef(isub,11)/
max(rm34,rsqm-cth)+
263 & (acth0/acth2)*coef(isub,12)/
max(rm34,rsqm+cth)+
264 & (acth0/acth3)*coef(isub,13)/
max(rm34,rsqm-cth)**2+
265 & (acth0/acth4)*coef(isub,14)/
max(rm34,rsqm+cth)**2
266 comfac=comfac*acth0*0.5*be34/h3
270 IF(
mint(43).GE.2.AND.(iset(isub).EQ.3.OR.iset(isub).EQ.4))
THEN
271 ataup0=
log(taupmx/taupmn)
272 ataup1=((1.-
tau/taupmx)**4-(1.-
tau/taupmn)**4)/(4.*
tau)
274 & ataup0/ataup1*coef(isub,16)/taup*(1.-
tau/taup)**3
275 IF(1.-
tau/taup.GT.1.
e-4)
THEN
278 fzw=1./6.*(1.-
tau/taup)**3*
tau/taup
280 comfac=comfac*ataup0*fzw/h4
284 IF(iset(isub).EQ.5)
THEN
285 comfac=paru(1)*paru(5)*fack*0.5*
vint(2)/sh2
286 atau0=
log(2.*(1.+sqrt(1.-xt2))/xt2-1.)
287 atau1=2.*atan(1./xt2-1.)/sqrt(xt2)
288 h1=coef(isub,1)+(atau0/atau1)*coef(isub,2)/sqrt(
tau)
289 comfac=comfac*atau0/
h1
291 ayst1=0.5*(ystmax-ystmin)**2
292 ayst3=2.*(atan(exp(ystmax))-atan(exp(ystmin)))
293 h2=(ayst0/ayst1)*coef(isub,7)*(yst-ystmin)+(ayst0/ayst1)*
294 & coef(isub,8)*(ystmax-yst)+(ayst0/ayst3)*coef(isub,9)/cosh(yst)
295 comfac=comfac*ayst0/
h2
296 IF(
mstp(82).LE.1) comfac=comfac*xt2**2*(1./
vint(149)-1.)
299 IF(
mstp(82).GE.2) comfac=comfac*xt2**2/(
vint(149)*
305 145
IF(isub.LE.10)
THEN
309 CALL
pyhiwidt(23,sqrt(sh),wdtp,wdte)
310 facz=comfac*aem**2*4./3.
312 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 150
313 ei=kchg(iabs(
i),1)/3.
317 IF(iabs(
i).LE.10) facf=faca/3.
322 sigh(nchn)=facf*facz*(
ei**2*
vint(111)+
ei*vi/(8.*xw*(1.-xw))*
323 & sh*(sh-sqmz)/((sh-sqmz)**2+gmmz**2)*
vint(112)+(vi**2+ai**2)/
324 & (16.*xw*(1.-xw))**2*sh2/((sh-sqmz)**2+gmmz**2)*
vint(114))
327 ELSEIF(isub.EQ.2)
THEN
329 CALL
pyhiwidt(24,sqrt(sh),wdtp,wdte)
330 facw=comfac*(aem/xw)**2*1./24*sh2/((sh-sqmw)**2+gmmw**2)
332 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 170
335 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 160
337 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 160
338 IF((ia.LE.10.AND.ja.GT.10).OR.(ia.GT.10.AND.ja.LE.10)) goto 160
339 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
341 IF(ia.LE.10) facf=vckm((ia+1)/2,(ja+1)/2)*faca/3.
346 sigh(nchn)=facf*facw*(wdte(0,1)+wdte(0,(5-kchw)/2)+wdte(0,4))
350 ELSEIF(isub.EQ.3)
THEN
352 CALL
pyhiwidt(25,sqrt(sh),wdtp,wdte)
353 fach=comfac*(aem/xw)**2*1./48.*(sh/sqmw)**2*
354 & sh2/((sh-sqmh)**2+gmmh**2)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
356 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 180
357 rmq=pmas(iabs(
i),1)**2/sh
362 sigh(nchn)=fach*rmq*sqrt(
max(0.,1.-4.*rmq))
365 ELSEIF(isub.EQ.4)
THEN
368 ELSEIF(isub.EQ.5)
THEN
370 CALL
pyhiwidt(25,sqrt(sh),wdtp,wdte)
371 fach=comfac*1./(128.*paru(1)**2*16.*(1.-xw)**3)*(aem/xw)**4*
372 & (sh/sqmw)**2*sh2/((sh-sqmh)**2+gmmh**2)*
373 & (wdte(0,1)+wdte(0,2)+wdte(0,4))
375 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 200
377 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 190
378 ei=kchg(iabs(
i),1)/3.
381 ej=kchg(iabs(
j),1)/3.
388 sigh(nchn)=fach*(vi**2+ai**2)*(vj**2+aj**2)
392 ELSEIF(isub.EQ.6)
THEN
395 ELSEIF(isub.EQ.7)
THEN
398 ELSEIF(isub.EQ.8)
THEN
400 CALL
pyhiwidt(25,sqrt(sh),wdtp,wdte)
401 fach=comfac*1./(128*paru(1)**2)*(aem/xw)**4*(sh/sqmw)**2*
402 & sh2/((sh-sqmh)**2+gmmh**2)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
404 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 220
405 ei=
sign(1.,float(
i))*kchg(iabs(
i),1)
407 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 210
408 ej=
sign(1.,float(
j))*kchg(iabs(
j),1)
409 IF(
ei*ej.GT.0.) goto 210
421 ELSEIF(isub.LE.20)
THEN
424 facqq1=comfac*as**2*4./9.*(sh2+uh2)/th2
425 facqqb=comfac*as**2*4./9.*((sh2+uh2)/th2*faca-
426 &
mstp(34)*2./3.*uh2/(sh*th))
427 facqq2=comfac*as**2*4./9.*((sh2+th2)/uh2-
428 &
mstp(34)*2./3.*sh2/(th*uh))
430 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 240
432 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 230
438 IF(
i.EQ.-
j) sigh(nchn)=facqqb
440 sigh(nchn)=0.5*sigh(nchn)
445 sigh(nchn)=0.5*facqq2
450 ELSEIF(isub.EQ.12)
THEN
452 CALL
pyhiwidt(21,sqrt(sh),wdtp,wdte)
453 facqqb=comfac*as**2*4./9.*(th2+uh2)/sh2*(wdte(0,1)+wdte(0,2)+
454 & wdte(0,3)+wdte(0,4))
456 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 250
464 ELSEIF(isub.EQ.13)
THEN
466 facgg1=comfac*as**2*32./27.*(uh/th-(2.+
mstp(34)*1./4.)*uh2/sh2)
467 facgg2=comfac*as**2*32./27.*(th/uh-(2.+
mstp(34)*1./4.)*th2/sh2)
469 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 260
474 sigh(nchn)=0.5*facgg1
479 sigh(nchn)=0.5*facgg2
482 ELSEIF(isub.EQ.14)
THEN
484 facgg=comfac*as*aem*8./9.*(th2+uh2)/(th*uh)
486 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 270
487 ei=kchg(iabs(
i),1)/3.
492 sigh(nchn)=facgg*
ei**2
495 ELSEIF(isub.EQ.15)
THEN
497 faczg=comfac*as*aem/(xw*(1.-xw))*1./18.*
498 & (th2+uh2+2.*sqm4*sh)/(th*uh)
499 faczg=faczg*wids(23,2)
501 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 280
502 ei=kchg(iabs(
i),1)/3.
509 sigh(nchn)=faczg*(vi**2+ai**2)
512 ELSEIF(isub.EQ.16)
THEN
514 facwg=comfac*as*aem/xw*2./9.*(th2+uh2+2.*sqm4*sh)/(th*uh)
516 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 300
519 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 290
521 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 290
522 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
524 IF(
mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
529 sigh(nchn)=facwg*fckm*wids(24,(5-kchw)/2)
533 ELSEIF(isub.EQ.17)
THEN
536 ELSEIF(isub.EQ.18)
THEN
538 facgg=comfac*faca*aem**2*1./3.*(th2+uh2)/(th*uh)
540 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 310
541 ei=kchg(iabs(
i),1)/3.
546 sigh(nchn)=facgg*
ei**4
549 ELSEIF(isub.EQ.19)
THEN
551 facgz=comfac*faca*aem**2/(xw*(1.-xw))*1./24.*
552 & (th2+uh2+2.*sqm4*sh)/(th*uh)
553 facgz=facgz*wids(23,2)
555 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 320
556 ei=kchg(iabs(
i),1)/3.
563 sigh(nchn)=facgz*
ei**2*(vi**2+ai**2)
566 ELSEIF(isub.EQ.20)
THEN
568 facgw=comfac*faca*aem**2/xw*1./6.*
569 & ((2.*uh-th)/(3.*(sh-sqm4)))**2*(th2+uh2+2.*sqm4*sh)/(th*uh)
571 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 340
574 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 330
576 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 330
577 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
579 IF(
mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
584 sigh(nchn)=facgw*fckm*wids(24,(5-kchw)/2)
589 ELSEIF(isub.LE.30)
THEN
593 ELSEIF(isub.EQ.22)
THEN
595 faczz=comfac*faca*(aem/(xw*(1.-xw)))**2*1./768.*
596 & (uh/th+th/uh+2.*(sqm3+sqm4)*sh/(th*uh)-
597 & sqm3*sqm4*(1./th2+1./uh2))
598 faczz=faczz*wids(23,1)
600 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 350
601 ei=kchg(iabs(
i),1)/3.
608 sigh(nchn)=faczz*(vi**4+6.*vi**2*ai**2+ai**4)
611 ELSEIF(isub.EQ.23)
THEN
613 faczw=comfac*faca*(aem/xw)**2*1./6.
614 faczw=faczw*wids(23,2)
615 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
617 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 370
620 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 360
622 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 360
623 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
639 IF(
mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
644 sigh(nchn)=faczw*fckm*(1./(sh-sqmw)**2*
645 & ((9.-8.*xw)/4.*thuh+(8.*xw-6.)/4.*sh*(sqm3+sqm4))+
646 & (thuh-sh*(sqm3+sqm4))/(2.*(sh-sqmw))*((vj+aj)/th-(vi+ai)/uh)+
647 & thuh/(16.*(1.-xw))*((vj+aj)**2/th2+(vi+ai)**2/uh2)+
648 & sh*(sqm3+sqm4)/(8.*(1.-xw))*(vi+ai)*(vj+aj)/(th*uh))*
649 & wids(24,(5-kchw)/2)
653 ELSEIF(isub.EQ.24)
THEN
655 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
656 fachz=comfac*faca*(aem/(xw*(1.-xw)))**2*1./96.*
657 & (thuh+2.*sh*sqmz)/(sh-sqmz)**2
658 fachz=fachz*wids(23,2)*wids(25,2)
660 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 380
661 ei=kchg(iabs(
i),1)/3.
668 sigh(nchn)=fachz*(vi**2+ai**2)
671 ELSEIF(isub.EQ.25)
THEN
673 facww=comfac*faca*(aem/xw)**2*1./12.
674 facww=facww*wids(24,1)
675 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
677 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 390
678 ei=kchg(iabs(
i),1)/3.
681 dsigww=thuh/sh2*(3.-(sh-3.*(sqm3+sqm4))/(sh-sqmz)*
682 & (vi+ai)/(2.*ai*(1.-xw))+(sh/(sh-sqmz))**2*
683 & (1.-2.*(sqm3+sqm4)/sh+12.*sqm3*sqm4/sh2)*(vi**2+ai**2)/
684 & (8.*(1.-xw)**2))-2.*sqmz/(sh-sqmz)*(vi+ai)/ai+
685 & sqmz*sh/(sh-sqmz)**2*(1.-2.*(sqm3+sqm4)/sh)*(vi**2+ai**2)/
687 IF(kchg(iabs(
i),1).LT.0)
THEN
688 dsigww=dsigww+2.*(1.+sqmz/(sh-sqmz)*(vi+ai)/(2.*ai))*
689 & (thuh/(sh*th)-(sqm3+sqm4)/th)+thuh/th2
691 dsigww=dsigww+2.*(1.+sqmz/(sh-sqmz)*(vi+ai)/(2.*ai))*
692 & (thuh/(sh*uh)-(sqm3+sqm4)/uh)+thuh/uh2
698 sigh(nchn)=facww*dsigww
701 ELSEIF(isub.EQ.26)
THEN
703 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
704 fachw=comfac*faca*(aem/xw)**2*1./24.*(thuh+2.*sh*sqmw)/
706 fachw=fachw*wids(25,2)
708 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 410
711 IF(
j.EQ.0.OR.kfac(1,
j).EQ.0) goto 400
713 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 400
714 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
716 IF(
mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
721 sigh(nchn)=fachw*fckm*wids(24,(5-kchw)/2)
725 ELSEIF(isub.EQ.27)
THEN
728 ELSEIF(isub.EQ.28)
THEN
730 facqg1=comfac*as**2*4./9.*((2.+
mstp(34)*1./4.)*uh2/th2-uh/sh)*
732 facqg2=comfac*as**2*4./9.*((2.+
mstp(34)*1./4.)*sh2/th2-sh/uh)
736 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 420
737 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 420
751 ELSEIF(isub.EQ.29)
THEN
753 fgq=comfac*faca*as*aem*1./3.*(sh2+uh2)/(-sh*uh)
756 ei=kchg(iabs(
i),1)/3.
759 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 440
760 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 440
769 ELSEIF(isub.EQ.30)
THEN
771 fzq=comfac*faca*as*aem/(xw*(1.-xw))*1./48.*
772 & (sh2+uh2+2.*sqm4*th)/(-sh*uh)
776 ei=kchg(iabs(
i),1)/3.
779 faczq=fzq*(vi**2+ai**2)
781 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 460
782 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 460
792 ELSEIF(isub.LE.40)
THEN
795 facwq=comfac*faca*as*aem/xw*1./12.*
796 & (sh2+uh2+2.*sqm4*th)/(-sh*uh)
800 kchw=isign(1,kchg(ia,1)*isign(1,
i))
802 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 480
803 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 480
808 sigh(nchn)=facwq*
vint(180+
i)*wids(24,(5-kchw)/2)
812 ELSEIF(isub.EQ.32)
THEN
815 ELSEIF(isub.EQ.33)
THEN
818 ELSEIF(isub.EQ.34)
THEN
821 ELSEIF(isub.EQ.35)
THEN
824 ELSEIF(isub.EQ.36)
THEN
827 ELSEIF(isub.EQ.37)
THEN
830 ELSEIF(isub.EQ.38)
THEN
833 ELSEIF(isub.EQ.39)
THEN
836 ELSEIF(isub.EQ.40)
THEN
840 ELSEIF(isub.LE.50)
THEN
844 ELSEIF(isub.EQ.42)
THEN
847 ELSEIF(isub.EQ.43)
THEN
850 ELSEIF(isub.EQ.44)
THEN
853 ELSEIF(isub.EQ.45)
THEN
856 ELSEIF(isub.EQ.46)
THEN
859 ELSEIF(isub.EQ.47)
THEN
862 ELSEIF(isub.EQ.48)
THEN
865 ELSEIF(isub.EQ.49)
THEN
868 ELSEIF(isub.EQ.50)
THEN
872 ELSEIF(isub.LE.60)
THEN
876 ELSEIF(isub.EQ.52)
THEN
879 ELSEIF(isub.EQ.53)
THEN
881 CALL
pyhiwidt(21,sqrt(sh),wdtp,wdte)
882 facqq1=comfac*as**2*1./6.*(uh/th-(2.+
mstp(34)*1./4.)*uh2/sh2)*
883 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
884 facqq2=comfac*as**2*1./6.*(th/uh-(2.+
mstp(34)*1./4.)*th2/sh2)*
885 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
886 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 500
899 ELSEIF(isub.EQ.54)
THEN
902 ELSEIF(isub.EQ.55)
THEN
905 ELSEIF(isub.EQ.56)
THEN
908 ELSEIF(isub.EQ.57)
THEN
911 ELSEIF(isub.EQ.58)
THEN
914 ELSEIF(isub.EQ.59)
THEN
917 ELSEIF(isub.EQ.60)
THEN
921 ELSEIF(isub.LE.70)
THEN
925 ELSEIF(isub.EQ.62)
THEN
928 ELSEIF(isub.EQ.63)
THEN
931 ELSEIF(isub.EQ.64)
THEN
934 ELSEIF(isub.EQ.65)
THEN
937 ELSEIF(isub.EQ.66)
THEN
940 ELSEIF(isub.EQ.67)
THEN
943 ELSEIF(isub.EQ.68)
THEN
945 facgg1=comfac*as**2*9./4.*(sh2/th2+2.*sh/th+3.+2.*th/sh+
947 facgg2=comfac*as**2*9./4.*(uh2/sh2+2.*uh/sh+3.+2.*sh/uh+
949 facgg3=comfac*as**2*9./4.*(th2/uh2+2.*th/uh+3+2.*uh/th+uh2/th2)
950 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 510
955 sigh(nchn)=0.5*facgg1
960 sigh(nchn)=0.5*facgg2
965 sigh(nchn)=0.5*facgg3
968 ELSEIF(isub.EQ.69)
THEN
971 ELSEIF(isub.EQ.70)
THEN
975 ELSEIF(isub.LE.80)
THEN
979 th=-0.5*sh*be2*(1.-cth)
980 uh=-0.5*sh*be2*(1.+cth)
981 shang=1./(1.-xw)*sqmw/sqmz*(1.+be2)**2
982 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
983 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
984 thang=1./(1.-xw)*sqmw/sqmz*(be2-cth)**2
985 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
986 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
987 uhang=1./(1.-xw)*sqmw/sqmz*(be2+cth)**2
988 auhre=(uh-sqmh)/((uh-sqmh)**2+gmmh**2)*uhang
989 auhim=-gmmh/((uh-sqmh)**2+gmmh**2)*uhang
990 fach=0.5*comfac*1./(4096.*paru(1)**2*16.*(1.-xw)**2)*
991 & (aem/xw)**4*(sh/sqmw)**2*((ashre+athre+auhre)**2+
992 & (ashim+athim+auhim)**2)*sqmz/sqmw
994 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 530
995 ei=kchg(iabs(
i),1)/3.
1000 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 520
1001 ej=kchg(iabs(
j),1)/3.
1009 sigh(nchn)=fach*avi*avj
1013 ELSEIF(isub.EQ.72)
THEN
1015 be2=sqrt((1.-4.*sqmw/sh)*(1.-4.*sqmz/sh))
1017 th=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh-be2*cth)
1018 uh=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh+be2*cth)
1019 shang=4.*sqrt(sqmw/(sqmz*(1.-xw)))*(1.-2.*sqmw/sh)*
1021 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
1022 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
1023 atwre=(1.-xw)/sqmz*sh/(th-sqmw)*((cth-be2)**2*(3./2.+be2/2.*cth-
1024 & (sqmw+sqmz)/sh+(sqmw-sqmz)**2/(sh*sqmw))+4.*((sqmw+sqmz)/sh*
1025 & (1.-3.*cth2)+8.*sqmw*sqmz/sh2*(2.*cth2-1.)+
1026 & 4.*(sqmw**2+sqmz**2)/sh2*cth2+2.*(sqmw+sqmz)/sh*be2*cth))
1028 auwre=(1.-xw)/sqmz*sh/(uh-sqmw)*((cth+be2)**2*(3./2.-be2/2.*cth-
1029 & (sqmw+sqmz)/sh+(sqmw-sqmz)**2/(sh*sqmw))+4.*((sqmw+sqmz)/sh*
1030 & (1.-3.*cth2)+8.*sqmw*sqmz/sh2*(2.*cth2-1.)+
1031 & 4.*(sqmw**2+sqmz**2)/sh2*cth2-2.*(sqmw+sqmz)/sh*be2*cth))
1033 a4re=2.*(1.-xw)/sqmz*(3.-cth2-4.*(sqmw+sqmz)/sh)
1035 fach=comfac*1./(4096.*paru(1)**2*16.*(1.-xw)**2)*(aem/xw)**4*
1036 & (sh/sqmw)**2*((ashre+atwre+auwre+a4re)**2+
1037 & (ashim+atwim+auwim+a4im)**2)*sqmz/sqmw
1039 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 550
1040 ei=kchg(iabs(
i),1)/3.
1045 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 540
1046 ej=kchg(iabs(
j),1)/3.
1054 sigh(nchn)=fach*avi*avj
1058 ELSEIF(isub.EQ.73)
THEN
1060 be2=1.-2.*(sqmz+sqmw)/sh+((sqmz-sqmw)/sh)**2
1061 ep1=1.+(sqmz-sqmw)/sh
1062 ep2=1.-(sqmz-sqmw)/sh
1063 th=-0.5*sh*be2*(1.-cth)
1064 uh=(sqmz-sqmw)**2/sh-0.5*sh*be2*(1.+cth)
1065 thang=sqrt(sqmw/(sqmz*(1.-xw)))*(be2-ep1*cth)*(be2-ep2*cth)
1066 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
1067 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
1068 aswre=(1.-xw)/sqmz*sh/(sh-sqmw)*(-be2*(ep1+ep2)**4*cth+
1069 & 1./4.*(be2+ep1*ep2)**2*((ep1-ep2)**2-4.*be2*cth)+
1070 & 2.*be2*(be2+ep1*ep2)*(ep1+ep2)**2*cth-
1071 & 1./16.*sh/sqmw*(ep1**2-ep2**2)**2*(be2+ep1*ep2)**2)
1073 auwre=(1.-xw)/sqmz*sh/(uh-sqmw)*(-be2*(ep2+ep1*cth)*
1074 & (ep1+ep2*cth)*(be2+ep1*ep2)+be2*(ep2+ep1*cth)*
1075 & (be2+ep1*ep2*cth)*(2.*ep2-ep2*cth+ep1)-be2*(ep2+ep1*cth)**2*
1076 & (be2-ep2**2*cth)-1./8.*(be2+ep1*ep2*cth)**2*((ep1+ep2)**2+
1077 & 2.*be2*(1.-cth))+1./32.*sh/sqmw*(be2+ep1*ep2*cth)**2*
1078 & (ep1**2-ep2**2)**2-be2*(ep1+ep2*cth)*(ep2+ep1*cth)*
1079 & (be2+ep1*ep2)+be2*(ep1+ep2*cth)*(be2+ep1*ep2*cth)*
1080 & (2.*ep1-ep1*cth+ep2)-be2*(ep1+ep2*cth)**2*(be2-ep1**2*cth)-
1081 & 1./8.*(be2+ep1*ep2*cth)**2*((ep1+ep2)**2+2.*be2*(1.-cth))+
1082 & 1./32.*sh/sqmw*(be2+ep1*ep2*cth)**2*(ep1**2-ep2**2)**2)
1084 a4re=(1.-xw)/sqmz*(ep1**2*ep2**2*(cth**2-1.)-
1085 & 2.*be2*(ep1**2+ep2**2+ep1*ep2)*cth-2.*be2*ep1*ep2)
1087 fach=comfac*1./(4096.*paru(1)**2*4.*(1.-xw))*(aem/xw)**4*
1088 & (sh/sqmw)**2*((athre+aswre+auwre+a4re)**2+
1089 & (athim+aswim+auwim+a4im)**2)*sqrt(sqmz/sqmw)
1091 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 570
1092 ei=kchg(iabs(
i),1)/3.
1097 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 560
1098 ej=kchg(iabs(
j),1)/3.
1106 sigh(nchn)=fach*(avi*
vint(180+
j)+
vint(180+
i)*avj)
1110 ELSEIF(isub.EQ.75)
THEN
1113 ELSEIF(isub.EQ.76)
THEN
1115 be2=sqrt((1.-4.*sqmw/sh)*(1.-4.*sqmz/sh))
1117 th=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh-be2*cth)
1118 uh=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh+be2*cth)
1119 shang=4.*sqrt(sqmw/(sqmz*(1.-xw)))*(1.-2.*sqmw/sh)*
1121 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
1122 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
1123 atwre=(1.-xw)/sqmz*sh/(th-sqmw)*((cth-be2)**2*(3./2.+be2/2.*cth-
1124 & (sqmw+sqmz)/sh+(sqmw-sqmz)**2/(sh*sqmw))+4.*((sqmw+sqmz)/sh*
1125 & (1.-3.*cth2)+8.*sqmw*sqmz/sh2*(2.*cth2-1.)+
1126 & 4.*(sqmw**2+sqmz**2)/sh2*cth2+2.*(sqmw+sqmz)/sh*be2*cth))
1128 auwre=(1.-xw)/sqmz*sh/(uh-sqmw)*((cth+be2)**2*(3./2.-be2/2.*cth-
1129 & (sqmw+sqmz)/sh+(sqmw-sqmz)**2/(sh*sqmw))+4.*((sqmw+sqmz)/sh*
1130 & (1.-3.*cth2)+8.*sqmw*sqmz/sh2*(2.*cth2-1.)+
1131 & 4.*(sqmw**2+sqmz**2)/sh2*cth2-2.*(sqmw+sqmz)/sh*be2*cth))
1133 a4re=2.*(1.-xw)/sqmz*(3.-cth2-4.*(sqmw+sqmz)/sh)
1135 fach=0.5*comfac*1./(4096.*paru(1)**2)*(aem/xw)**4*(sh/sqmw)**2*
1136 & ((ashre+atwre+auwre+a4re)**2+(ashim+atwim+auwim+a4im)**2)
1138 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 590
1139 ei=
sign(1.,float(
i))*kchg(iabs(
i),1)
1141 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 580
1142 ej=
sign(1.,float(
j))*kchg(iabs(
j),1)
1143 IF(
ei*ej.GT.0.) goto 580
1152 ELSEIF(isub.EQ.77)
THEN
1158 th=-0.5*sh*be2*(1.-cth)
1159 uh=-0.5*sh*be2*(1.+cth)
1161 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
1162 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
1164 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
1165 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
1166 sgzang=1./sqmw*be2*(3.-be2)**2*cth
1169 aszre=(1.-xw)*sh/(sh-sqmz)*sgzang
1171 tgzang=1./sqmw*(be2*(4.-2.*be2+be4)+be2*(4.-10.*be2+be4)*cth+
1172 & (2.-11.*be2+10.*be4)*cth2+be2*cth3)
1173 atgre=0.5*xw*sh/th*tgzang
1175 atzre=0.5*(1.-xw)*sh/(th-sqmz)*tgzang
1177 a4re=1./sqmw*(1.+2.*be2-6.*be2*cth-cth2)
1179 fach=comfac*1./(4096.*paru(1)**2)*(aem/xw)**4*(sh/sqmw)**2*
1180 & ((ashre+athre+asgre+aszre+atgre+atzre+a4re)**2+
1181 & (ashim+athim+asgim+aszim+atgim+atzim+a4im)**2)
1183 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 610
1184 ei=
sign(1.,float(
i))*kchg(iabs(
i),1)
1186 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 600
1187 ej=
sign(1.,float(
j))*kchg(iabs(
j),1)
1188 IF(
ei*ej.GT.0.) goto 600
1197 ELSEIF(isub.EQ.78)
THEN
1200 ELSEIF(isub.EQ.79)
THEN
1207 ELSEIF(isub.LE.90)
THEN
1210 facqqb=comfac*as**2*4./9.*(((th-sqm3)**2+
1211 & (uh-sqm3)**2)/sh2+2.*sqm3/sh)
1212 IF(
mstp(35).GE.1)
THEN
1213 IF(
mstp(35).EQ.1)
THEN
1218 q2bn=sqrt(sqm3*((sqrt(sh)-2.*sqrt(sqm3))**2+
parp(36)**2))
1222 xrepu=paru(1)*alssg/(6.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
1223 frepu=xrepu/(exp(min(100.,xrepu))-1.)
1228 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 620
1236 ELSEIF(isub.EQ.82)
THEN
1238 facqq1=comfac*faca*as**2*1./6.*((uh-sqm3)/(th-sqm3)-
1239 & 2.*(uh-sqm3)**2/sh2+4.*sqm3/sh*(th*uh-sqm3**2)/(th-sqm3)**2)
1240 facqq2=comfac*faca*as**2*1./6.*((th-sqm3)/(uh-sqm3)-
1241 & 2.*(th-sqm3)**2/sh2+4.*sqm3/sh*(th*uh-sqm3**2)/(uh-sqm3)**2)
1242 IF(
mstp(35).GE.1)
THEN
1243 IF(
mstp(35).EQ.1)
THEN
1248 q2bn=sqrt(sqm3*((sqrt(sh)-2.*sqrt(sqm3))**2+
parp(36)**2))
1252 xattr=4.*paru(1)*alssg/(3.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
1253 fattr=xattr/(1.-exp(-min(100.,xattr)))
1254 xrepu=paru(1)*alssg/(6.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
1255 frepu=xrepu/(exp(min(100.,xrepu))-1.)
1256 fatre=(2.*fattr+5.*frepu)/7.
1261 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 630
1278 ELSEIF(isub.LE.100)
THEN
1283 ELSEIF(isub.EQ.92)
THEN
1287 ELSEIF(isub.EQ.93)
THEN
1291 ELSEIF(isub.EQ.94)
THEN
1295 ELSEIF(isub.EQ.95)
THEN
1299 ELSEIF(isub.EQ.96)
THEN
1301 CALL
pyhiwidt(21,sqrt(sh),wdtp,wdte)
1304 facqq1=comfac*as**2*4./9.*(sh2+uh2)/th2
1305 facqqb=comfac*as**2*4./9.*((sh2+uh2)/th2*faca-
1306 &
mstp(34)*2./3.*uh2/(sh*th))
1307 facqq2=comfac*as**2*4./9.*((sh2+th2)/uh2-
1308 &
mstp(34)*2./3.*sh2/(th*uh))
1318 IF(
i.EQ.-
j) sigh(nchn)=facqqb
1320 sigh(nchn)=0.5*sigh(nchn)
1325 sigh(nchn)=0.5*facqq2
1331 facqqb=comfac*as**2*4./9.*(th2+uh2)/sh2*(wdte(0,1)+wdte(0,2)+
1332 & wdte(0,3)+wdte(0,4))
1333 facgg1=comfac*as**2*32./27.*(uh/th-(2.+
mstp(34)*1./4.)*uh2/sh2)
1334 facgg2=comfac*as**2*32./27.*(th/uh-(2.+
mstp(34)*1./4.)*th2/sh2)
1346 sigh(nchn)=0.5*facgg1
1351 sigh(nchn)=0.5*facgg2
1355 facqg1=comfac*as**2*4./9.*((2.+
mstp(34)*1./4.)*uh2/th2-uh/sh)*
1357 facqg2=comfac*as**2*4./9.*((2.+
mstp(34)*1./4.)*sh2/th2-sh/uh)
1363 isig(nchn,3-isde)=21
1368 isig(nchn,3-isde)=21
1375 facqq1=comfac*as**2*1./6.*(uh/th-(2.+
mstp(34)*1./4.)*uh2/sh2)*
1376 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
1377 facqq2=comfac*as**2*1./6.*(th/uh-(2.+
mstp(34)*1./4.)*th2/sh2)*
1378 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
1379 facgg1=comfac*as**2*9./4.*(sh2/th2+2.*sh/th+3.+2.*th/sh+
1381 facgg2=comfac*as**2*9./4.*(uh2/sh2+2.*uh/sh+3.+2.*sh/uh+
1383 facgg3=comfac*as**2*9./4.*(th2/uh2+2.*th/uh+3+2.*uh/th+uh2/th2)
1398 sigh(nchn)=0.5*facgg1
1403 sigh(nchn)=0.5*facgg2
1408 sigh(nchn)=0.5*facgg3
1413 ELSEIF(isub.LE.110)
THEN
1414 IF(isub.EQ.101)
THEN
1417 ELSEIF(isub.EQ.102)
THEN
1419 CALL
pyhiwidt(25,sqrt(sh),wdtp,wdte)
1422 DO 690
i=1,2*
mstp(1)
1423 eps=4.*pmas(
i,1)**2/sh
1425 IF(
eps.GT.1.
e-4)
THEN
1427 rln=
log((1.+root)/(1.-root))
1431 phire=0.25*(rln**2-paru(1)**2)
1432 phiim=0.5*paru(1)*rln
1434 phire=-(asin(1./sqrt(
eps)))**2
1437 etare=etare+0.5*
eps*(1.+(
eps-1.)*phire)
1438 etaim=etaim+0.5*
eps*(
eps-1.)*phiim
1440 eta2=etare**2+etaim**2
1441 fach=comfac*faca*(as/paru(1)*aem/xw)**2*1./512.*
1442 & (sh/sqmw)**2*eta2*sh2/((sh-sqmh)**2+gmmh**2)*
1443 & (wdte(0,1)+wdte(0,2)+wdte(0,4))
1444 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 700
1456 ELSEIF(isub.LE.120)
THEN
1457 IF(isub.EQ.111)
THEN
1461 DO 710
i=1,2*
mstp(1)
1465 a5stur=a5stur+sqmq/sqmh*(4.+4.*sh/(th+uh)*(
pyhiw1au(epss,1)-
1468 a5stui=a5stui+sqmq/sqmh*(4.*sh/(th+uh)*(
pyhiw1au(epss,2)-
1472 facgh=comfac*faca/(144.*paru(1)**2)*aem/xw*as**3*sqmh/sqmw*
1473 & sqmh/sh*(uh**2+th**2)/(uh+th)**2*(a5stur**2+a5stui**2)
1474 facgh=facgh*wids(25,2)
1476 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 720
1484 ELSEIF(isub.EQ.112)
THEN
1488 DO 730
i=1,2*
mstp(1)
1492 a5tsur=a5tsur+sqmq/sqmh*(4.+4.*th/(sh+uh)*(
pyhiw1au(epst,1)-
1495 a5tsui=a5tsui+sqmq/sqmh*(4.*th/(sh+uh)*(
pyhiw1au(epst,2)-
1499 facqh=comfac*faca/(384.*paru(1)**2)*aem/xw*as**3*sqmh/sqmw*
1500 & sqmh/(-th)*(uh**2+sh**2)/(uh+sh)**2*(a5tsur**2+a5tsui**2)
1501 facqh=facqh*wids(25,2)
1505 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 740
1506 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 740
1509 isig(nchn,3-isde)=21
1515 ELSEIF(isub.EQ.113)
THEN
1525 DO 760
i=6,2*
mstp(1)
1532 IF(epsh.LT.1.
e-6) goto 760
1533 bestu=0.5*(1.+sqrt(1.+epss*th/uh))
1534 beust=0.5*(1.+sqrt(1.+epsu*sh/th))
1535 betus=0.5*(1.+sqrt(1.+epst*uh/sh))
1563 b2stur=sqmq/sqmh**2*(sh*(uh-sh)/(sh+uh)+2.*th*uh*(uh+2.*sh)/
1567 & sh**2*(2.*sqmq/(sh+uh)**2-0.5/(sh+uh))*(
pyhiw2au(epst,1)-
1570 & 0.125*(sh-12.*sqmq-4.*th*uh/sh)*w3tsur)
1571 b2stui=sqmq/sqmh**2*(2.*th*uh*(uh+2.*sh)/(sh+uh)**2*
1575 & sh**2*(2.*sqmq/(sh+uh)**2-0.5/(sh+uh))*(
pyhiw2au(epst,2)-
1578 & 0.125*(sh-12.*sqmq-4.*th*uh/sh)*w3tsui)
1579 b2sutr=sqmq/sqmh**2*(sh*(th-sh)/(sh+th)+2.*uh*th*(th+2.*sh)/
1583 & sh**2*(2.*sqmq/(sh+th)**2-0.5/(sh+th))*(
pyhiw2au(epsu,1)-
1586 & 0.125*(sh-12.*sqmq-4.*uh*th/sh)*w3ustr)
1587 b2suti=sqmq/sqmh**2*(2.*uh*th*(th+2.*sh)/(sh+th)**2*
1591 & sh**2*(2.*sqmq/(sh+th)**2-0.5/(sh+th))*(
pyhiw2au(epsu,2)-
1594 & 0.125*(sh-12.*sqmq-4.*uh*th/sh)*w3usti)
1595 b2tsur=sqmq/sqmh**2*(th*(uh-th)/(th+uh)+2.*sh*uh*(uh+2.*th)/
1599 & th**2*(2.*sqmq/(th+uh)**2-0.5/(th+uh))*(
pyhiw2au(epss,1)-
1602 & 0.125*(th-12.*sqmq-4.*sh*uh/th)*w3stur)
1603 b2tsui=sqmq/sqmh**2*(2.*sh*uh*(uh+2.*th)/(th+uh)**2*
1607 & th**2*(2.*sqmq/(th+uh)**2-0.5/(th+uh))*(
pyhiw2au(epss,2)-
1610 & 0.125*(th-12.*sqmq-4.*sh*uh/th)*w3stui)
1611 b2tusr=sqmq/sqmh**2*(th*(sh-th)/(th+sh)+2.*uh*sh*(sh+2.*th)/
1615 & th**2*(2.*sqmq/(th+sh)**2-0.5/(th+sh))*(
pyhiw2au(epsu,1)-
1618 & 0.125*(th-12.*sqmq-4.*uh*sh/th)*w3utsr)
1619 b2tusi=sqmq/sqmh**2*(2.*uh*sh*(sh+2.*th)/(th+sh)**2*
1623 & th**2*(2.*sqmq/(th+sh)**2-0.5/(th+sh))*(
pyhiw2au(epsu,2)-
1626 & 0.125*(th-12.*sqmq-4.*uh*sh/th)*w3utsi)
1627 b2ustr=sqmq/sqmh**2*(uh*(th-uh)/(uh+th)+2.*sh*th*(th+2.*uh)/
1631 & uh**2*(2.*sqmq/(uh+th)**2-0.5/(uh+th))*(
pyhiw2au(epss,1)-
1634 & 0.125*(uh-12.*sqmq-4.*sh*th/uh)*w3sutr)
1635 b2usti=sqmq/sqmh**2*(2.*sh*th*(th+2.*uh)/(uh+th)**2*
1639 & uh**2*(2.*sqmq/(uh+th)**2-0.5/(uh+th))*(
pyhiw2au(epss,2)-
1642 & 0.125*(uh-12.*sqmq-4.*sh*th/uh)*w3suti)
1643 b2utsr=sqmq/sqmh**2*(uh*(sh-uh)/(uh+sh)+2.*th*sh*(sh+2.*uh)/
1647 & uh**2*(2.*sqmq/(uh+sh)**2-0.5/(uh+sh))*(
pyhiw2au(epst,1)-
1650 & 0.125*(uh-12.*sqmq-4.*th*sh/uh)*w3tusr)
1651 b2utsi=sqmq/sqmh**2*(2.*th*sh*(sh+2.*uh)/(uh+sh)**2*
1655 & uh**2*(2.*sqmq/(uh+sh)**2-0.5/(uh+sh))*(
pyhiw2au(epst,2)-
1658 & 0.125*(uh-12.*sqmq-4.*th*sh/uh)*w3tusi)
1659 b4stur=sqmq/sqmh*(-2./3.+(sqmq/sqmh-1./4.)*(
pyhiw2au(epss,1)-
1661 b4stui=sqmq/sqmh*(sqmq/sqmh-1./4.)*(
pyhiw2au(epss,2)-
1663 b4tusr=sqmq/sqmh*(-2./3.+(sqmq/sqmh-1./4.)*(
pyhiw2au(epst,1)-
1665 b4tusi=sqmq/sqmh*(sqmq/sqmh-1./4.)*(
pyhiw2au(epst,2)-
1667 b4ustr=sqmq/sqmh*(-2./3.+(sqmq/sqmh-1./4.)*(
pyhiw2au(epsu,1)-
1669 b4usti=sqmq/sqmh*(sqmq/sqmh-1./4.)*(
pyhiw2au(epsu,2)-
1671 a2stur=a2stur+b2stur+b2sutr
1672 a2stui=a2stui+b2stui+b2suti
1673 a2ustr=a2ustr+b2ustr+b2utsr
1674 a2usti=a2usti+b2usti+b2utsi
1675 a2tusr=a2tusr+b2tusr+b2tsur
1676 a2tusi=a2tusi+b2tusi+b2tsui
1677 a4stur=a4stur+b4stur+b4ustr+b4tusr
1678 a4stui=a4stui+b4stui+b4usti+b4tusi
1680 facgh=comfac*faca*3./(128.*paru(1)**2)*aem/xw*as**3*
1681 & sqmh/sqmw*sqmh**3/(sh*th*uh)*(a2stur**2+a2stui**2+a2ustr**2+
1682 & a2usti**2+a2tusr**2+a2tusi**2+a4stur**2+a4stui**2)
1683 facgh=facgh*wids(25,2)
1684 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 770
1692 ELSEIF(isub.EQ.114)
THEN
1696 DO 780
i=1,2*
mstp(1)
1697 ei=kchg(iabs(
i),1)/3.
1702 IF(epss+abs(epst)+abs(epsu).LT.3.
e-6)
THEN
1703 a0stur=1.+(th-uh)/sh*
log(th/uh)+0.5*(th2+uh2)/sh2*
1704 & (
log(th/uh)**2+paru(1)**2)
1706 a0tsur=1.+(sh-uh)/th*
log(-sh/uh)+0.5*(sh2+uh2)/th2*
1708 a0tsui=-paru(1)*((sh-uh)/th+(sh2+uh2)/th2*
log(-sh/uh))
1709 a0utsr=1.+(th-sh)/uh*
log(-th/sh)+0.5*(th2+sh2)/uh2*
1711 a0utsi=paru(1)*((th-sh)/uh+(th2+sh2)/uh2*
log(-th/sh))
1717 bestu=0.5*(1.+sqrt(1.+epss*th/uh))
1718 beust=0.5*(1.+sqrt(1.+epsu*sh/th))
1719 betus=0.5*(1.+sqrt(1.+epst*uh/sh))
1723 a0stur=1.+(1.+2.*th/sh)*
pyhiw1au(epst,1)+(1.+2.*uh/sh)*
1726 & 0.25*epst*(1.-0.5*epss)*(
pyhii3au(besut,epss,1)+
1727 &
pyhii3au(besut,epst,1))-0.25*epsu*(1.-0.5*epss)*
1729 & 0.25*(-2.*(th2+uh2)/sh2+4.*epss+epst+epsu+0.5*epst*epsu)*
1731 a0stui=(1.+2.*th/sh)*
pyhiw1au(epst,2)+(1.+2.*uh/sh)*
1734 & 0.25*epst*(1.-0.5*epss)*(
pyhii3au(besut,epss,2)+
1735 &
pyhii3au(besut,epst,2))-0.25*epsu*(1.-0.5*epss)*
1737 & 0.25*(-2.*(th2+uh2)/sh2+4.*epss+epst+epsu+0.5*epst*epsu)*
1739 a0tsur=1.+(1.+2.*sh/th)*
pyhiw1au(epss,1)+(1.+2.*uh/th)*
1742 & 0.25*epss*(1.-0.5*epst)*(
pyhii3au(betus,epst,1)+
1743 &
pyhii3au(betus,epss,1))-0.25*epsu*(1.-0.5*epst)*
1745 & 0.25*(-2.*(sh2+uh2)/th2+4.*epst+epss+epsu+0.5*epss*epsu)*
1747 a0tsui=(1.+2.*sh/th)*
pyhiw1au(epss,2)+(1.+2.*uh/th)*
1750 & 0.25*epss*(1.-0.5*epst)*(
pyhii3au(betus,epst,2)+
1751 &
pyhii3au(betus,epss,2))-0.25*epsu*(1.-0.5*epst)*
1753 & 0.25*(-2.*(sh2+uh2)/th2+4.*epst+epss+epsu+0.5*epss*epsu)*
1755 a0utsr=1.+(1.+2.*th/uh)*
pyhiw1au(epst,1)+(1.+2.*sh/uh)*
1758 & 0.25*epst*(1.-0.5*epsu)*(
pyhii3au(beust,epsu,1)+
1759 &
pyhii3au(beust,epst,1))-0.25*epss*(1.-0.5*epsu)*
1761 & 0.25*(-2.*(th2+sh2)/uh2+4.*epsu+epst+epss+0.5*epst*epss)*
1763 a0utsi=(1.+2.*th/uh)*
pyhiw1au(epst,2)+(1.+2.*sh/uh)*
1766 & 0.25*epst*(1.-0.5*epsu)*(
pyhii3au(beust,epsu,2)+
1767 &
pyhii3au(beust,epst,2))-0.25*epss*(1.-0.5*epsu)*
1769 & 0.25*(-2.*(th2+sh2)/uh2+4.*epsu+epst+epss+0.5*epst*epss)*
1771 a1stur=-1.-0.25*(epss+epst+epsu)*(
pyhiw2au(epss,1)+
1774 & 0.25*(epst+0.5*epss*epsu)*(
pyhii3au(bestu,epss,1)+
1775 &
pyhii3au(bestu,epsu,1))+0.25*(epss+0.5*epst*epsu)*
1777 a1stui=-0.25*(epss+epst+epsu)*(
pyhiw2au(epss,2)+
1779 &
pyhiw2au(epsu,2))+0.25*(epsu+0.5*epss*epst)*
1781 & 0.25*(epst+0.5*epss*epsu)*(
pyhii3au(bestu,epss,2)+
1782 &
pyhii3au(bestu,epsu,2))+0.25*(epss+0.5*epst*epsu)*
1784 a2stur=-1.+0.125*epss*epst*(
pyhii3au(besut,epss,1)+
1786 & 0.125*epss*epsu*(
pyhii3au(bestu,epss,1)+
1788 & 0.125*epst*epsu*(
pyhii3au(betsu,epst,1)+
1790 a2stui=0.125*epss*epst*(
pyhii3au(besut,epss,2)+
1792 & 0.125*epss*epsu*(
pyhii3au(bestu,epss,2)+
1794 & 0.125*epst*epsu*(
pyhii3au(betsu,epst,2)+
1797 asre=asre+
ei**2*(a0stur+a0tsur+a0utsr+4.*a1stur+a2stur)
1798 asim=asim+
ei**2*(a0stui+a0tsui+a0utsi+4.*a1stui+a2stui)
1800 facgg=comfac*faca/(8.*paru(1)**2)*as**2*aem**2*(asre**2+asim**2)
1801 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 790
1809 ELSEIF(isub.EQ.115)
THEN
1812 ELSEIF(isub.EQ.116)
THEN
1815 ELSEIF(isub.EQ.117)
THEN
1822 ELSEIF(isub.LE.140)
THEN
1823 IF(isub.EQ.121)
THEN
1830 ELSEIF(isub.LE.160)
THEN
1831 IF(isub.EQ.141)
THEN
1834 CALL
pyhiwidt(32,sqrt(sh),wdtp,wdte)
1835 faczp=comfac*aem**2*4./9.
1837 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 800
1838 ei=kchg(iabs(
i),1)/3.
1847 sigh(nchn)=faczp*(
ei**2*
vint(111)+
ei*vi/(8.*xw*(1.-xw))*
1848 & sh*(sh-sqmz)/((sh-sqmz)**2+gmmz**2)*
vint(112)+
ei*vpi/(8.*xw*
1849 & (1.-xw))*sh*(sh-sqmzp)/((sh-sqmzp)**2+gmmzp**2)*
vint(113)+
1850 & (vi**2+ai**2)/(16.*xw*(1.-xw))**2*sh2/((sh-sqmz)**2+gmmz**2)*
1851 &
vint(114)+2.*(vi*vpi+ai*api)/(16.*xw*(1.-xw))**2*sh2*
1852 & ((sh-sqmz)*(sh-sqmzp)+gmmz*gmmzp)/(((sh-sqmz)**2+gmmz**2)*
1853 & ((sh-sqmzp)**2+gmmzp**2))*
vint(115)+(vpi**2+api**2)/
1854 & (16.*xw*(1.-xw))**2*sh2/((sh-sqmzp)**2+gmmzp**2)*
vint(116))
1857 ELSEIF(isub.EQ.142)
THEN
1859 CALL
pyhiwidt(37,sqrt(sh),wdtp,wdte)
1860 fhc=comfac*(aem/xw)**2*1./48.*(sh/sqmw)**2*sh2/
1861 & ((sh-sqmhc)**2+gmmhc**2)
1863 DO 840
i=1,
mstp(54)/2
1866 rmql=pmas(il,1)**2/sh
1867 rmqu=pmas(iu,1)**2/sh
1868 fachc=fhc*((rmql*paru(121)+rmqu/paru(121))*(1.-rmql-rmqu)-
1869 & 4.*rmql*rmqu)/sqrt(
max(0.,(1.-rmql-rmqu)**2-4.*rmql*rmqu))
1870 IF(kfac(1,il)*kfac(2,-iu).EQ.0) goto 810
1871 kchhc=(kchg(il,1)-kchg(iu,1))/3
1876 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1877 810
IF(kfac(1,-il)*kfac(2,iu).EQ.0) goto 820
1878 kchhc=(-kchg(il,1)+kchg(iu,1))/3
1883 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1884 820
IF(kfac(1,iu)*kfac(2,-il).EQ.0) goto 830
1885 kchhc=(kchg(iu,1)-kchg(il,1))/3
1890 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1891 830
IF(kfac(1,-iu)*kfac(2,il).EQ.0) goto 840
1892 kchhc=(-kchg(iu,1)+kchg(il,1))/3
1897 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1900 ELSEIF(isub.EQ.143)
THEN
1902 CALL
pyhiwidt(40,sqrt(sh),wdtp,wdte)
1903 facr=comfac*(aem/xw)**2*1./9.*sh2/((sh-sqmr)**2+gmmr**2)
1905 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 860
1908 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 850
1910 IF(
i*
j.GT.0.OR.iabs(ia-ja).NE.2) goto 850
1915 sigh(nchn)=facr*(wdte(0,1)+wdte(0,(10-(
i+
j))/4)+wdte(0,4))
1924 IF(isub.EQ.161)
THEN
1926 fhcq=comfac*faca*as*aem/xw*1./24
1930 fachcq=fhcq/paru(121)*sqmq/sqmw*(sh/(sqmq-uh)+
1931 & 2.*sqmq*(sqmhc-uh)/(sqmq-uh)**2+(sqmq-uh)/sh+
1932 & 2.*sqmq/(sqmq-uh)+2.*(sqmhc-uh)/(sqmq-uh)*(sqmhc-sqmq-sh)/sh)
1933 IF(kfac(1,-
i)*kfac(2,21).EQ.0) goto 870
1934 kchhc=isign(1,-kchg(
i,1))
1939 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1940 870
IF(kfac(1,
i)*kfac(2,21).EQ.0) goto 880
1941 kchhc=isign(1,kchg(
i,1))
1946 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1947 880
IF(kfac(1,21)*kfac(2,-
i).EQ.0) goto 890
1948 kchhc=isign(1,-kchg(
i,1))
1953 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1954 890
IF(kfac(1,21)*kfac(2,
i).EQ.0) goto 900
1955 kchhc=isign(1,kchg(
i,1))
1960 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
1967 IF(isub.LE.90.OR.isub.GE.96)
THEN
1969 IF(
mint(41).EQ.2)
THEN
1971 IF(kfl1.EQ.21) kfl1=0
1972 sigh(ichn)=sigh(ichn)*xsfx(1,kfl1)
1974 IF(
mint(42).EQ.2)
THEN
1976 IF(kfl2.EQ.21) kfl2=0
1977 sigh(ichn)=sigh(ichn)*xsfx(2,kfl2)
1979 910 sigs=sigs+sigh(ichn)