16180 common/ludat1/mstu(200),paru(200),mstj(200),parj(200)
16182 common/ludat2/kchg(500,3),pmas(500,4),parf(2000),vckm(4,4)
16184 common/ludat3/mdcy(500,3),mdme(2000,2),brat(2000),kfdp(2000,5)
16186 common/pysubs/msel,msub(200),kfin(2,-40:40),ckin(200)
16188 common/pypars/mstp(200),parp(200),msti(200),pari(200)
16190 common/pyint1/mint(400),vint(400)
16192 common/pyint2/iset(200),kfpr(200,2),coef(200,20),icol(40,4,2)
16194 common/pyint3/xsfx(2,-40:40),isig(1000,3),sigh(1000)
16196 common/pyint4/widp(21:40,0:40),wide(21:40,0:40),wids(21:40,3)
16198 common/pyint5/ngen(0:200,3),xsec(0:200,3)
16200 dimension
x(2),xpq(-6:6),kfac(2,-40:40),wdtp(0:40),wdte(0:40,0:5)
16227 IF(iset(isub).LE.2.OR.iset(isub).EQ.5)
THEN 16228 x(1)=sqrt(tau)*exp(yst)
16229 x(2)=sqrt(tau)*exp(-yst)
16231 x(1)=sqrt(taup)*exp(yst)
16232 x(2)=sqrt(taup)*exp(-yst)
16234 IF(mint(43).EQ.4.AND.iset(isub).GE.1.AND.
16235 &(
x(1).GT.0.999.OR.
x(2).GT.0.999))
RETURN 16241 be34=sqrt((1.-
rm3-rm4)**2-4.*
rm3*rm4)
16242 rpts=4.*vint(71)**2/sh
16243 be34l=sqrt(
max(0.,(1.-
rm3-rm4)**2-4.*
rm3*rm4-rpts))
16246 rthm=(4.*
rm3*rm4+rpts)/(1.-
rm3-rm4+be34l)
16247 th=-0.5*sh*
max(rthm,1.-
rm3-rm4-be34*cth)
16248 uh=-0.5*sh*
max(rthm,1.-
rm3-rm4+be34*cth)
16249 sqpth=0.25*sh*be34**2*(1.-cth**2)
16255 IF(iset(isub).EQ.1.OR.iset(isub).EQ.3)
THEN 16257 ELSEIF(mod(iset(isub),2).EQ.0.OR.iset(isub).EQ.5)
THEN 16258 IF(mstp(32).EQ.1)
THEN 16259 q2=2.*sh*th*uh/(sh**2+th**2+uh**2)
16260 ELSEIF(mstp(32).EQ.2)
THEN 16261 q2=sqpth+0.5*(sqm3+sqm4)
16262 ELSEIF(mstp(32).EQ.3)
THEN 16264 ELSEIF(mstp(32).EQ.4)
THEN 16267 IF(iset(isub).EQ.5.AND.mstp(82).GE.2) q2=q2+parp(82)**2
16278 vint(47)=sqrt(sqpth)
16279 vint(50)=taup*vint(2)
16280 vint(49)=sqrt(
max(0.,vint(50)))
16285 IF(iset(isub).LE.0)
GOTO 145
16286 IF(mint(43).GE.2)
THEN 16288 IF(iset(isub).EQ.3.OR.iset(isub).EQ.4)
THEN 16290 IF(isub.EQ.8.OR.isub.EQ.76.OR.isub.EQ.77) q2sf=pmas(24,1)**2
16292 DO 100 i=3-mint(41),mint(42)
16294 IF(iset(isub).EQ.5) xsf=
x(i)/vint(142+i)
16295 CALL pystfu(mint(10+i),xsf,q2sf,xpq,i)
16297 100 xsfx(i,kfl)=xpq(kfl)
16301 IF(mstp(33).NE.3) as=
ulalps(q2)
16304 IF(mstp(33).EQ.1)
THEN 16306 ELSEIF(mstp(33).EQ.2)
THEN 16308 faca=parp(32)/parp(31)
16309 ELSEIF(mstp(33).EQ.3)
THEN 16311 IF(iset(isub).EQ.5.AND.mstp(82).GE.2) q2as=q2as+
16312 & paru(112)*parp(82)
16321 IF(mint(40+i).EQ.1)
THEN 16322 kfac(i,mint(10+i))=1
16325 kfac(i,j)=kfin(i,j)
16326 IF(abs(j).GT.mstp(54).AND.j.NE.21) kfac(i,j)=0
16327 IF(abs(j).LE.6)
THEN 16328 IF(xsfx(i,j).LT.1.
e-10) kfac(i,j)=0
16329 ELSEIF(j.EQ.21)
THEN 16330 IF(xsfx(i,0).LT.1.
e-10) kfac(i,21)=0
16342 IF(kfac(1,-j).EQ.1) min1=-j
16343 IF(kfac(1,j).EQ.1) max1=j
16344 IF(kfac(2,-j).EQ.1) min2=-j
16345 IF(kfac(2,j).EQ.1) max2=j
16347 mina=
min(min1,min2)
16348 maxa=
max(max1,max2)
16352 gmmz=pmas(23,1)*pmas(23,2)
16354 gmmw=pmas(24,1)*pmas(24,2)
16356 gmmh=pmas(25,1)*pmas(25,2)
16357 sqmzp=pmas(32,1)**2
16358 gmmzp=pmas(32,1)*pmas(32,2)
16359 sqmhc=pmas(37,1)**2
16360 gmmhc=pmas(37,1)*pmas(37,2)
16362 gmmr=pmas(40,1)*pmas(40,2)
16367 comfac=paru(1)*paru(5)/vint(2)
16368 IF(mint(43).EQ.4) comfac=comfac*fack
16369 IF((mint(43).GE.2.OR.iset(isub).EQ.3.OR.iset(isub).EQ.4).AND.
16370 &iset(isub).NE.5)
THEN 16371 atau0=log(taumax/taumin)
16372 atau1=(taumax-taumin)/(taumax*taumin)
16373 h1=coef(isub,1)+(atau0/atau1)*coef(isub,2)/tau
16374 IF(mint(72).GE.1)
THEN 16377 atau2=log(taumax/taumin*(taumin+taur1)/(taumax+taur1))/taur1
16378 atau3=(atan((taumax-taur1)/gamr1)-atan((taumin-taur1)/gamr1))/
16383 IF(mint(72).EQ.2)
THEN 16386 atau4=log(taumax/taumin*(taumin+taur2)/(taumax+taur2))/taur2
16387 atau5=(atan((taumax-taur2)/gamr2)-atan((taumin-taur2)/gamr2))/
16392 comfac=comfac*atau0/(tau*
h1)
16394 IF(mint(43).EQ.4.AND.iset(isub).NE.5)
THEN 16395 ayst0=ystmax-ystmin
16396 ayst1=0.5*(ystmax-ystmin)**2
16398 ayst3=2.*(atan(exp(ystmax))-atan(exp(ystmin)))
16399 h2=(ayst0/ayst1)*coef(isub,7)*(yst-ystmin)+(ayst0/ayst2)*
16400 & coef(isub,8)*(ystmax-yst)+(ayst0/ayst3)*coef(isub,9)/cosh(yst)
16401 comfac=comfac*ayst0/
h2 16406 acth0=ctnmax-ctnmin+ctpmax-ctpmin
16407 IF((iset(isub).EQ.1.OR.iset(isub).EQ.3).AND.
16408 &mdcy(kfpr(isub,1),1).EQ.1)
THEN 16409 IF(kfpr(isub,1).EQ.25.OR.kfpr(isub,1).EQ.37)
THEN 16410 comfac=comfac*0.5*acth0
16412 comfac=comfac*0.125*(3.*acth0+ctnmax**3-ctnmin**3+
16413 & ctpmax**3-ctpmin**3)
16417 ELSEIF(iset(isub).EQ.2.OR.iset(isub).EQ.4)
THEN 16418 acth1=log((
max(rm34,rsqm-ctnmin)*
max(rm34,rsqm-ctpmin))/
16419 & (
max(rm34,rsqm-ctnmax)*
max(rm34,rsqm-ctpmax)))
16420 acth2=log((
max(rm34,rsqm+ctnmax)*
max(rm34,rsqm+ctpmax))/
16421 & (
max(rm34,rsqm+ctnmin)*
max(rm34,rsqm+ctpmin)))
16422 acth3=1./
max(rm34,rsqm-ctnmax)-1./
max(rm34,rsqm-ctnmin)+
16423 & 1./
max(rm34,rsqm-ctpmax)-1./
max(rm34,rsqm-ctpmin)
16424 acth4=1./
max(rm34,rsqm+ctnmin)-1./
max(rm34,rsqm+ctnmax)+
16425 & 1./
max(rm34,rsqm+ctpmin)-1./
max(rm34,rsqm+ctpmax)
16427 & (acth0/acth1)*coef(isub,11)/
max(rm34,rsqm-cth)+
16428 & (acth0/acth2)*coef(isub,12)/
max(rm34,rsqm+cth)+
16429 & (acth0/acth3)*coef(isub,13)/
max(rm34,rsqm-cth)**2+
16430 & (acth0/acth4)*coef(isub,14)/
max(rm34,rsqm+cth)**2
16431 comfac=comfac*acth0*0.5*be34/
h3 16435 IF(mint(43).GE.2.AND.(iset(isub).EQ.3.OR.iset(isub).EQ.4))
THEN 16436 ataup0=log(taupmx/taupmn)
16437 ataup1=((1.-tau/taupmx)**4-(1.-tau/taupmn)**4)/(4.*tau)
16439 & ataup0/ataup1*coef(isub,16)/taup*(1.-tau/taup)**3
16440 IF(1.-tau/taup.GT.1.
e-4)
THEN 16441 fzw=(1.+tau/taup)*log(taup/tau)-2.*(1.-tau/taup)
16443 fzw=1./6.*(1.-tau/taup)**3*tau/taup
16445 comfac=comfac*ataup0*fzw/h4
16449 IF(iset(isub).EQ.5)
THEN 16450 comfac=paru(1)*paru(5)*fack*0.5*vint(2)/sh2
16451 atau0=log(2.*(1.+sqrt(1.-xt2))/xt2-1.)
16452 atau1=2.*atan(1./xt2-1.)/sqrt(xt2)
16453 h1=coef(isub,1)+(atau0/atau1)*coef(isub,2)/sqrt(tau)
16454 comfac=comfac*atau0/
h1 16455 ayst0=ystmax-ystmin
16456 ayst1=0.5*(ystmax-ystmin)**2
16457 ayst3=2.*(atan(exp(ystmax))-atan(exp(ystmin)))
16458 h2=(ayst0/ayst1)*coef(isub,7)*(yst-ystmin)+(ayst0/ayst1)*
16459 & coef(isub,8)*(ystmax-yst)+(ayst0/ayst3)*coef(isub,9)/cosh(yst)
16460 comfac=comfac*ayst0/
h2 16461 IF(mstp(82).LE.1) comfac=comfac*xt2**2*(1./vint(149)-1.)
16464 IF(mstp(82).GE.2) comfac=comfac*xt2**2/(vint(149)*
16470 145
IF(isub.LE.10)
THEN 16474 CALL pywidt(23,sqrt(sh),wdtp,wdte)
16475 facz=comfac*aem**2*4./3.
16477 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 150
16478 ei=kchg(iabs(i),1)/3.
16482 IF(iabs(i).LE.10) facf=faca/3.
16487 sigh(nchn)=facf*facz*(ei**2*vint(111)+ei*vi/(8.*xw*(1.-xw))*
16488 & sh*(sh-sqmz)/((sh-sqmz)**2+gmmz**2)*vint(112)+(vi**2+ai**2)/
16489 & (16.*xw*(1.-xw))**2*sh2/((sh-sqmz)**2+gmmz**2)*vint(114))
16492 ELSEIF(isub.EQ.2)
THEN 16494 CALL pywidt(24,sqrt(sh),wdtp,wdte)
16495 facw=comfac*(aem/xw)**2*1./24*sh2/((sh-sqmw)**2+gmmw**2)
16497 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 170
16500 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 160
16502 IF(i*j.GT.0.OR.mod(ia+ja,2).EQ.0)
GOTO 160
16503 IF((ia.LE.10.AND.ja.GT.10).OR.(ia.GT.10.AND.ja.LE.10))
GOTO 160
16504 kchw=(kchg(ia,1)*isign(1,i)+kchg(ja,1)*isign(1,j))/3
16506 IF(ia.LE.10) facf=vckm((ia+1)/2,(ja+1)/2)*faca/3.
16511 sigh(nchn)=facf*facw*(wdte(0,1)+wdte(0,(5-kchw)/2)+wdte(0,4))
16515 ELSEIF(isub.EQ.3)
THEN 16517 CALL pywidt(25,sqrt(sh),wdtp,wdte)
16518 fach=comfac*(aem/xw)**2*1./48.*(sh/sqmw)**2*
16519 & sh2/((sh-sqmh)**2+gmmh**2)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
16521 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 180
16522 rmq=pmas(iabs(i),1)**2/sh
16527 sigh(nchn)=fach*rmq*sqrt(
max(0.,1.-4.*rmq))
16530 ELSEIF(isub.EQ.4)
THEN 16533 ELSEIF(isub.EQ.5)
THEN 16535 CALL pywidt(25,sqrt(sh),wdtp,wdte)
16536 fach=comfac*1./(128.*paru(1)**2*16.*(1.-xw)**3)*(aem/xw)**4*
16537 & (sh/sqmw)**2*sh2/((sh-sqmh)**2+gmmh**2)*
16538 & (wdte(0,1)+wdte(0,2)+wdte(0,4))
16540 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 200
16542 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 190
16543 ei=kchg(iabs(i),1)/3.
16546 ej=kchg(iabs(j),1)/3.
16553 sigh(nchn)=fach*(vi**2+ai**2)*(vj**2+aj**2)
16557 ELSEIF(isub.EQ.6)
THEN 16560 ELSEIF(isub.EQ.7)
THEN 16563 ELSEIF(isub.EQ.8)
THEN 16565 CALL pywidt(25,sqrt(sh),wdtp,wdte)
16566 fach=comfac*1./(128*paru(1)**2)*(aem/xw)**4*(sh/sqmw)**2*
16567 & sh2/((sh-sqmh)**2+gmmh**2)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
16569 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 220
16570 ei=sign(1.,float(i))*kchg(iabs(i),1)
16572 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 210
16573 ej=sign(1.,float(j))*kchg(iabs(j),1)
16574 IF(ei*ej.GT.0.)
GOTO 210
16579 sigh(nchn)=fach*vint(180+i)*vint(180+j)
16586 ELSEIF(isub.LE.20)
THEN 16587 IF(isub.EQ.11)
THEN 16589 facqq1=comfac*as**2*4./9.*(sh2+uh2)/th2
16590 facqqb=comfac*as**2*4./9.*((sh2+uh2)/th2*faca-
16591 & mstp(34)*2./3.*uh2/(sh*th))
16592 facqq2=comfac*as**2*4./9.*((sh2+th2)/uh2-
16593 & mstp(34)*2./3.*sh2/(th*uh))
16595 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 240
16597 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 230
16603 IF(i.EQ.-j) sigh(nchn)=facqqb
16605 sigh(nchn)=0.5*sigh(nchn)
16610 sigh(nchn)=0.5*facqq2
16615 ELSEIF(isub.EQ.12)
THEN 16617 CALL pywidt(21,sqrt(sh),wdtp,wdte)
16618 facqqb=comfac*as**2*4./9.*(th2+uh2)/sh2*(wdte(0,1)+wdte(0,2)+
16619 & wdte(0,3)+wdte(0,4))
16621 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 250
16629 ELSEIF(isub.EQ.13)
THEN 16631 facgg1=comfac*as**2*32./27.*(uh/th-(2.+mstp(34)*1./4.)*uh2/sh2)
16632 facgg2=comfac*as**2*32./27.*(th/uh-(2.+mstp(34)*1./4.)*th2/sh2)
16634 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 260
16639 sigh(nchn)=0.5*facgg1
16644 sigh(nchn)=0.5*facgg2
16647 ELSEIF(isub.EQ.14)
THEN 16649 facgg=comfac*as*aem*8./9.*(th2+uh2)/(th*uh)
16651 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 270
16652 ei=kchg(iabs(i),1)/3.
16657 sigh(nchn)=facgg*ei**2
16660 ELSEIF(isub.EQ.15)
THEN 16662 faczg=comfac*as*aem/(xw*(1.-xw))*1./18.*
16663 & (th2+uh2+2.*sqm4*sh)/(th*uh)
16664 faczg=faczg*wids(23,2)
16666 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 280
16667 ei=kchg(iabs(i),1)/3.
16674 sigh(nchn)=faczg*(vi**2+ai**2)
16677 ELSEIF(isub.EQ.16)
THEN 16679 facwg=comfac*as*aem/xw*2./9.*(th2+uh2+2.*sqm4*sh)/(th*uh)
16681 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 300
16684 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 290
16686 IF(i*j.GT.0.OR.mod(ia+ja,2).EQ.0)
GOTO 290
16687 kchw=(kchg(ia,1)*isign(1,i)+kchg(ja,1)*isign(1,j))/3
16689 IF(mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
16694 sigh(nchn)=facwg*fckm*wids(24,(5-kchw)/2)
16698 ELSEIF(isub.EQ.17)
THEN 16701 ELSEIF(isub.EQ.18)
THEN 16703 facgg=comfac*faca*aem**2*1./3.*(th2+uh2)/(th*uh)
16705 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 310
16706 ei=kchg(iabs(i),1)/3.
16711 sigh(nchn)=facgg*ei**4
16714 ELSEIF(isub.EQ.19)
THEN 16716 facgz=comfac*faca*aem**2/(xw*(1.-xw))*1./24.*
16717 & (th2+uh2+2.*sqm4*sh)/(th*uh)
16718 facgz=facgz*wids(23,2)
16720 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 320
16721 ei=kchg(iabs(i),1)/3.
16728 sigh(nchn)=facgz*ei**2*(vi**2+ai**2)
16731 ELSEIF(isub.EQ.20)
THEN 16733 facgw=comfac*faca*aem**2/xw*1./6.*
16734 & ((2.*uh-th)/(3.*(sh-sqm4)))**2*(th2+uh2+2.*sqm4*sh)/(th*uh)
16736 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 340
16739 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 330
16741 IF(i*j.GT.0.OR.mod(ia+ja,2).EQ.0)
GOTO 330
16742 kchw=(kchg(ia,1)*isign(1,i)+kchg(ja,1)*isign(1,j))/3
16744 IF(mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
16749 sigh(nchn)=facgw*fckm*wids(24,(5-kchw)/2)
16754 ELSEIF(isub.LE.30)
THEN 16755 IF(isub.EQ.21)
THEN 16758 ELSEIF(isub.EQ.22)
THEN 16760 faczz=comfac*faca*(aem/(xw*(1.-xw)))**2*1./768.*
16761 & (uh/th+th/uh+2.*(sqm3+sqm4)*sh/(th*uh)-
16762 & sqm3*sqm4*(1./th2+1./uh2))
16763 faczz=faczz*wids(23,1)
16765 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 350
16766 ei=kchg(iabs(i),1)/3.
16773 sigh(nchn)=faczz*(vi**4+6.*vi**2*ai**2+ai**4)
16776 ELSEIF(isub.EQ.23)
THEN 16778 faczw=comfac*faca*(aem/xw)**2*1./6.
16779 faczw=faczw*wids(23,2)
16780 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
16782 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 370
16785 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 360
16787 IF(i*j.GT.0.OR.mod(ia+ja,2).EQ.0)
GOTO 360
16788 kchw=(kchg(ia,1)*isign(1,i)+kchg(ja,1)*isign(1,j))/3
16795 IF(vi+ai.GT.0)
THEN 16804 IF(mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
16809 sigh(nchn)=faczw*fckm*(1./(sh-sqmw)**2*
16810 & ((9.-8.*xw)/4.*thuh+(8.*xw-6.)/4.*sh*(sqm3+sqm4))+
16811 & (thuh-sh*(sqm3+sqm4))/(2.*(sh-sqmw))*((vj+aj)/th-(vi+ai)/uh)+
16812 & thuh/(16.*(1.-xw))*((vj+aj)**2/th2+(vi+ai)**2/uh2)+
16813 & sh*(sqm3+sqm4)/(8.*(1.-xw))*(vi+ai)*(vj+aj)/(th*uh))*
16814 & wids(24,(5-kchw)/2)
16818 ELSEIF(isub.EQ.24)
THEN 16820 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
16821 fachz=comfac*faca*(aem/(xw*(1.-xw)))**2*1./96.*
16822 & (thuh+2.*sh*sqmz)/(sh-sqmz)**2
16823 fachz=fachz*wids(23,2)*wids(25,2)
16825 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 380
16826 ei=kchg(iabs(i),1)/3.
16833 sigh(nchn)=fachz*(vi**2+ai**2)
16836 ELSEIF(isub.EQ.25)
THEN 16838 facww=comfac*faca*(aem/xw)**2*1./12.
16839 facww=facww*wids(24,1)
16840 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
16842 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 390
16843 ei=kchg(iabs(i),1)/3.
16846 dsigww=thuh/sh2*(3.-(sh-3.*(sqm3+sqm4))/(sh-sqmz)*
16847 & (vi+ai)/(2.*ai*(1.-xw))+(sh/(sh-sqmz))**2*
16848 & (1.-2.*(sqm3+sqm4)/sh+12.*sqm3*sqm4/sh2)*(vi**2+ai**2)/
16849 & (8.*(1.-xw)**2))-2.*sqmz/(sh-sqmz)*(vi+ai)/ai+
16850 & sqmz*sh/(sh-sqmz)**2*(1.-2.*(sqm3+sqm4)/sh)*(vi**2+ai**2)/
16852 IF(kchg(iabs(i),1).LT.0)
THEN 16853 dsigww=dsigww+2.*(1.+sqmz/(sh-sqmz)*(vi+ai)/(2.*ai))*
16854 & (thuh/(sh*th)-(sqm3+sqm4)/th)+thuh/th2
16856 dsigww=dsigww+2.*(1.+sqmz/(sh-sqmz)*(vi+ai)/(2.*ai))*
16857 & (thuh/(sh*uh)-(sqm3+sqm4)/uh)+thuh/uh2
16863 sigh(nchn)=facww*dsigww
16866 ELSEIF(isub.EQ.26)
THEN 16868 thuh=
max(th*uh-sqm3*sqm4,sh*ckin(3)**2)
16869 fachw=comfac*faca*(aem/xw)**2*1./24.*(thuh+2.*sh*sqmw)/
16871 fachw=fachw*wids(25,2)
16873 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 410
16876 IF(j.EQ.0.OR.kfac(1,j).EQ.0)
GOTO 400
16878 IF(i*j.GT.0.OR.mod(ia+ja,2).EQ.0)
GOTO 400
16879 kchw=(kchg(ia,1)*isign(1,i)+kchg(ja,1)*isign(1,j))/3
16881 IF(mint(43).EQ.4) fckm=vckm((ia+1)/2,(ja+1)/2)
16886 sigh(nchn)=fachw*fckm*wids(24,(5-kchw)/2)
16890 ELSEIF(isub.EQ.27)
THEN 16893 ELSEIF(isub.EQ.28)
THEN 16895 facqg1=comfac*as**2*4./9.*((2.+mstp(34)*1./4.)*uh2/th2-uh/sh)*
16897 facqg2=comfac*as**2*4./9.*((2.+mstp(34)*1./4.)*sh2/th2-sh/uh)
16899 IF(i.EQ.0)
GOTO 430
16901 IF(isde.EQ.1.AND.kfac(1,i)*kfac(2,21).EQ.0)
GOTO 420
16902 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,i).EQ.0)
GOTO 420
16905 isig(nchn,3-isde)=21
16910 isig(nchn,3-isde)=21
16916 ELSEIF(isub.EQ.29)
THEN 16918 fgq=comfac*faca*as*aem*1./3.*(sh2+uh2)/(-sh*uh)
16920 IF(i.EQ.0)
GOTO 450
16921 ei=kchg(iabs(i),1)/3.
16924 IF(isde.EQ.1.AND.kfac(1,i)*kfac(2,21).EQ.0)
GOTO 440
16925 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,i).EQ.0)
GOTO 440
16928 isig(nchn,3-isde)=21
16934 ELSEIF(isub.EQ.30)
THEN 16936 fzq=comfac*faca*as*aem/(xw*(1.-xw))*1./48.*
16937 & (sh2+uh2+2.*sqm4*th)/(-sh*uh)
16940 IF(i.EQ.0)
GOTO 470
16941 ei=kchg(iabs(i),1)/3.
16944 faczq=fzq*(vi**2+ai**2)
16946 IF(isde.EQ.1.AND.kfac(1,i)*kfac(2,21).EQ.0)
GOTO 460
16947 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,i).EQ.0)
GOTO 460
16950 isig(nchn,3-isde)=21
16957 ELSEIF(isub.LE.40)
THEN 16958 IF(isub.EQ.31)
THEN 16960 facwq=comfac*faca*as*aem/xw*1./12.*
16961 & (sh2+uh2+2.*sqm4*th)/(-sh*uh)
16963 IF(i.EQ.0)
GOTO 490
16965 kchw=isign(1,kchg(ia,1)*isign(1,i))
16967 IF(isde.EQ.1.AND.kfac(1,i)*kfac(2,21).EQ.0)
GOTO 480
16968 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,i).EQ.0)
GOTO 480
16971 isig(nchn,3-isde)=21
16973 sigh(nchn)=facwq*vint(180+i)*wids(24,(5-kchw)/2)
16977 ELSEIF(isub.EQ.32)
THEN 16980 ELSEIF(isub.EQ.33)
THEN 16983 ELSEIF(isub.EQ.34)
THEN 16986 ELSEIF(isub.EQ.35)
THEN 16989 ELSEIF(isub.EQ.36)
THEN 16992 ELSEIF(isub.EQ.37)
THEN 16995 ELSEIF(isub.EQ.38)
THEN 16998 ELSEIF(isub.EQ.39)
THEN 17001 ELSEIF(isub.EQ.40)
THEN 17005 ELSEIF(isub.LE.50)
THEN 17006 IF(isub.EQ.41)
THEN 17009 ELSEIF(isub.EQ.42)
THEN 17012 ELSEIF(isub.EQ.43)
THEN 17015 ELSEIF(isub.EQ.44)
THEN 17018 ELSEIF(isub.EQ.45)
THEN 17021 ELSEIF(isub.EQ.46)
THEN 17024 ELSEIF(isub.EQ.47)
THEN 17027 ELSEIF(isub.EQ.48)
THEN 17030 ELSEIF(isub.EQ.49)
THEN 17033 ELSEIF(isub.EQ.50)
THEN 17037 ELSEIF(isub.LE.60)
THEN 17038 IF(isub.EQ.51)
THEN 17041 ELSEIF(isub.EQ.52)
THEN 17044 ELSEIF(isub.EQ.53)
THEN 17046 CALL pywidt(21,sqrt(sh),wdtp,wdte)
17047 facqq1=comfac*as**2*1./6.*(uh/th-(2.+mstp(34)*1./4.)*uh2/sh2)*
17048 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
17049 facqq2=comfac*as**2*1./6.*(th/uh-(2.+mstp(34)*1./4.)*th2/sh2)*
17050 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
17051 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 500
17064 ELSEIF(isub.EQ.54)
THEN 17067 ELSEIF(isub.EQ.55)
THEN 17070 ELSEIF(isub.EQ.56)
THEN 17073 ELSEIF(isub.EQ.57)
THEN 17076 ELSEIF(isub.EQ.58)
THEN 17079 ELSEIF(isub.EQ.59)
THEN 17082 ELSEIF(isub.EQ.60)
THEN 17086 ELSEIF(isub.LE.70)
THEN 17087 IF(isub.EQ.61)
THEN 17090 ELSEIF(isub.EQ.62)
THEN 17093 ELSEIF(isub.EQ.63)
THEN 17096 ELSEIF(isub.EQ.64)
THEN 17099 ELSEIF(isub.EQ.65)
THEN 17102 ELSEIF(isub.EQ.66)
THEN 17105 ELSEIF(isub.EQ.67)
THEN 17108 ELSEIF(isub.EQ.68)
THEN 17110 facgg1=comfac*as**2*9./4.*(sh2/th2+2.*sh/th+3.+2.*th/sh+
17112 facgg2=comfac*as**2*9./4.*(uh2/sh2+2.*uh/sh+3.+2.*sh/uh+
17114 facgg3=comfac*as**2*9./4.*(th2/uh2+2.*th/uh+3+2.*uh/th+uh2/th2)
17115 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 510
17120 sigh(nchn)=0.5*facgg1
17125 sigh(nchn)=0.5*facgg2
17130 sigh(nchn)=0.5*facgg3
17133 ELSEIF(isub.EQ.69)
THEN 17136 ELSEIF(isub.EQ.70)
THEN 17140 ELSEIF(isub.LE.80)
THEN 17141 IF(isub.EQ.71)
THEN 17144 th=-0.5*sh*be2*(1.-cth)
17145 uh=-0.5*sh*be2*(1.+cth)
17146 shang=1./(1.-xw)*sqmw/sqmz*(1.+be2)**2
17147 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
17148 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
17149 thang=1./(1.-xw)*sqmw/sqmz*(be2-cth)**2
17150 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
17151 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
17152 uhang=1./(1.-xw)*sqmw/sqmz*(be2+cth)**2
17153 auhre=(uh-sqmh)/((uh-sqmh)**2+gmmh**2)*uhang
17154 auhim=-gmmh/((uh-sqmh)**2+gmmh**2)*uhang
17155 fach=0.5*comfac*1./(4096.*paru(1)**2*16.*(1.-xw)**2)*
17156 & (aem/xw)**4*(sh/sqmw)**2*((ashre+athre+auhre)**2+
17157 & (ashim+athim+auhim)**2)*sqmz/sqmw
17159 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 530
17160 ei=kchg(iabs(i),1)/3.
17165 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 520
17166 ej=kchg(iabs(j),1)/3.
17174 sigh(nchn)=fach*avi*avj
17178 ELSEIF(isub.EQ.72)
THEN 17180 be2=sqrt((1.-4.*sqmw/sh)*(1.-4.*sqmz/sh))
17182 th=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh-be2*cth)
17183 uh=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh+be2*cth)
17184 shang=4.*sqrt(sqmw/(sqmz*(1.-xw)))*(1.-2.*sqmw/sh)*
17186 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
17187 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
17188 atwre=(1.-xw)/sqmz*sh/(th-sqmw)*((cth-be2)**2*(3./2.+be2/2.*cth-
17204 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 550
17205 ei=kchg(iabs(i),1)/3.
17210 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 540
17211 ej=kchg(iabs(j),1)/3.
17219 sigh(nchn)=fach*avi*avj
17223 ELSEIF(isub.EQ.73)
THEN 17225 be2=1.-2.*(sqmz+sqmw)/sh+((sqmz-sqmw)/sh)**2
17226 ep1=1.+(sqmz-sqmw)/sh
17227 ep2=1.-(sqmz-sqmw)/sh
17228 th=-0.5*sh*be2*(1.-cth)
17229 uh=(sqmz-sqmw)**2/sh-0.5*sh*be2*(1.+cth)
17230 thang=sqrt(sqmw/(sqmz*(1.-xw)))*(be2-ep1*cth)*(be2-ep2*cth)
17231 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
17232 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
17233 aswre=(1.-xw)/sqmz*sh/(sh-sqmw)*(-be2*(ep1+ep2)**4*cth+
17234 & 1./4.*(be2+ep1*ep2)**2*((ep1-ep2)**2-4.*be2*cth)+
17235 & 2.*be2*(be2+ep1*ep2)*(ep1+ep2)**2*cth-
17236 & 1./16.*sh/sqmw*(ep1**2-ep2**2)**2*(be2+ep1*ep2)**2)
17238 auwre=(1.-xw)/sqmz*sh/(uh-sqmw)*(-be2*(ep2+ep1*cth)*
17239 & (ep1+ep2*cth)*(be2+ep1*ep2)+be2*(ep2+ep1*cth)*
17240 & (be2+ep1*ep2*cth)*(2.*ep2-ep2*cth+ep1)-be2*(ep2+ep1*cth)**2*
17241 & (be2-ep2**2*cth)-1./8.*(be2+ep1*ep2*cth)**2*((ep1+ep2)**2+
17242 & 2.*be2*(1.-cth))+1./32.*sh/sqmw*(be2+ep1*ep2*cth)**2*
17243 & (ep1**2-ep2**2)**2-be2*(ep1+ep2*cth)*(ep2+ep1*cth)*
17244 & (be2+ep1*ep2)+be2*(ep1+ep2*cth)*(be2+ep1*ep2*cth)*
17245 & (2.*ep1-ep1*cth+ep2)-be2*(ep1+ep2*cth)**2*(be2-ep1**2*cth)-
17246 & 1./8.*(be2+ep1*ep2*cth)**2*((ep1+ep2)**2+2.*be2*(1.-cth))+
17247 & 1./32.*sh/sqmw*(be2+ep1*ep2*cth)**2*(ep1**2-ep2**2)**2)
17249 a4re=(1.-xw)/sqmz*(ep1**2*ep2**2*(cth**2-1.)-
17250 & 2.*be2*(ep1**2+ep2**2+ep1*ep2)*cth-2.*be2*ep1*ep2)
17252 fach=comfac*1./(4096.*paru(1)**2*4.*(1.-xw))*(aem/xw)**4*
17253 & (sh/sqmw)**2*((athre+aswre+auwre+a4re)**2+
17254 & (athim+aswim+auwim+a4im)**2)*sqrt(sqmz/sqmw)
17256 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 570
17257 ei=kchg(iabs(i),1)/3.
17262 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 560
17263 ej=kchg(iabs(j),1)/3.
17271 sigh(nchn)=fach*(avi*vint(180+j)+vint(180+i)*avj)
17275 ELSEIF(isub.EQ.75)
THEN 17278 ELSEIF(isub.EQ.76)
THEN 17280 be2=sqrt((1.-4.*sqmw/sh)*(1.-4.*sqmz/sh))
17282 th=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh-be2*cth)
17283 uh=-0.5*sh*(1.-2.*(sqmw+sqmz)/sh+be2*cth)
17284 shang=4.*sqrt(sqmw/(sqmz*(1.-xw)))*(1.-2.*sqmw/sh)*
17286 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
17287 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
17288 atwre=(1.-xw)/sqmz*sh/(th-sqmw)*((cth-be2)**2*(3./2.+be2/2.*cth-
17303 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 590
17304 ei=sign(1.,float(i))*kchg(iabs(i),1)
17306 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 580
17307 ej=sign(1.,float(j))*kchg(iabs(j),1)
17308 IF(ei*ej.GT.0.)
GOTO 580
17313 sigh(nchn)=fach*vint(180+i)*vint(180+j)
17317 ELSEIF(isub.EQ.77)
THEN 17323 th=-0.5*sh*be2*(1.-cth)
17324 uh=-0.5*sh*be2*(1.+cth)
17326 ashre=(sh-sqmh)/((sh-sqmh)**2+gmmh**2)*shang
17327 ashim=-gmmh/((sh-sqmh)**2+gmmh**2)*shang
17329 athre=(th-sqmh)/((th-sqmh)**2+gmmh**2)*thang
17330 athim=-gmmh/((th-sqmh)**2+gmmh**2)*thang
17331 sgzang=1./sqmw*be2*(3.-be2)**2*cth
17334 aszre=(1.-xw)*sh/(sh-sqmz)*sgzang
17336 tgzang=1./sqmw*(be2*(4.-2.*be2+be4)+be2*(4.-10.*be2+be4)*cth+
17337 & (2.-11.*be2+10.*be4)*cth2+be2*cth3)
17338 atgre=0.5*xw*sh/th*tgzang
17340 atzre=0.5*(1.-xw)*sh/(th-sqmz)*tgzang
17342 a4re=1./sqmw*(1.+2.*be2-6.*be2*cth-cth2)
17344 fach=comfac*1./(4096.*paru(1)**2)*(aem/xw)**4*(sh/sqmw)**2*
17345 & ((ashre+athre+asgre+aszre+atgre+atzre+a4re)**2+
17346 & (ashim+athim+asgim+aszim+atgim+atzim+a4im)**2)
17348 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 610
17349 ei=sign(1.,float(i))*kchg(iabs(i),1)
17351 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 600
17352 ej=sign(1.,float(j))*kchg(iabs(j),1)
17353 IF(ei*ej.GT.0.)
GOTO 600
17358 sigh(nchn)=fach*vint(180+i)*vint(180+j)
17362 ELSEIF(isub.EQ.78)
THEN 17365 ELSEIF(isub.EQ.79)
THEN 17372 ELSEIF(isub.LE.90)
THEN 17373 IF(isub.EQ.81)
THEN 17375 facqqb=comfac*as**2*4./9.*(((th-sqm3)**2+
17376 & (uh-sqm3)**2)/sh2+2.*sqm3/sh)
17377 IF(mstp(35).GE.1)
THEN 17378 IF(mstp(35).EQ.1)
THEN 17383 q2bn=sqrt(sqm3*((sqrt(sh)-2.*sqrt(sqm3))**2+parp(36)**2))
17387 xrepu=paru(1)*alssg/(6.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
17388 frepu=xrepu/(exp(
min(100.,xrepu))-1.)
17390 facqqb=facqqb*frepu
17393 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 620
17401 ELSEIF(isub.EQ.82)
THEN 17403 facqq1=comfac*faca*as**2*1./6.*((uh-sqm3)/(th-sqm3)-
17404 & 2.*(uh-sqm3)**2/sh2+4.*sqm3/sh*(th*uh-sqm3**2)/(th-sqm3)**2)
17405 facqq2=comfac*faca*as**2*1./6.*((th-sqm3)/(uh-sqm3)-
17406 & 2.*(th-sqm3)**2/sh2+4.*sqm3/sh*(th*uh-sqm3**2)/(uh-sqm3)**2)
17407 IF(mstp(35).GE.1)
THEN 17408 IF(mstp(35).EQ.1)
THEN 17413 q2bn=sqrt(sqm3*((sqrt(sh)-2.*sqrt(sqm3))**2+parp(36)**2))
17417 xattr=4.*paru(1)*alssg/(3.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
17418 fattr=xattr/(1.-exp(-
min(100.,xattr)))
17419 xrepu=paru(1)*alssg/(6.*sqrt(
max(1
e-20,1.-4.*sqm3/sh)))
17420 frepu=xrepu/(exp(
min(100.,xrepu))-1.)
17421 fatre=(2.*fattr+5.*frepu)/7.
17423 facqq1=facqq1*fatre
17424 facqq2=facqq2*fatre
17426 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 630
17443 ELSEIF(isub.LE.100)
THEN 17444 IF(isub.EQ.91)
THEN 17448 ELSEIF(isub.EQ.92)
THEN 17452 ELSEIF(isub.EQ.93)
THEN 17456 ELSEIF(isub.EQ.94)
THEN 17460 ELSEIF(isub.EQ.95)
THEN 17464 ELSEIF(isub.EQ.96)
THEN 17466 CALL pywidt(21,sqrt(sh),wdtp,wdte)
17469 facqq1=comfac*as**2*4./9.*(sh2+uh2)/th2
17470 facqqb=comfac*as**2*4./9.*((sh2+uh2)/th2*faca-
17471 & mstp(34)*2./3.*uh2/(sh*th))
17472 facqq2=comfac*as**2*4./9.*((sh2+th2)/uh2-
17473 & mstp(34)*2./3.*sh2/(th*uh))
17475 IF(i.EQ.0)
GOTO 650
17477 IF(j.EQ.0)
GOTO 640
17483 IF(i.EQ.-j) sigh(nchn)=facqqb
17485 sigh(nchn)=0.5*sigh(nchn)
17490 sigh(nchn)=0.5*facqq2
17496 facqqb=comfac*as**2*4./9.*(th2+uh2)/sh2*(wdte(0,1)+wdte(0,2)+
17497 & wdte(0,3)+wdte(0,4))
17498 facgg1=comfac*as**2*32./27.*(uh/th-(2.+mstp(34)*1./4.)*uh2/sh2)
17499 facgg2=comfac*as**2*32./27.*(th/uh-(2.+mstp(34)*1./4.)*th2/sh2)
17501 IF(i.EQ.0)
GOTO 660
17511 sigh(nchn)=0.5*facgg1
17516 sigh(nchn)=0.5*facgg2
17520 facqg1=comfac*as**2*4./9.*((2.+mstp(34)*1./4.)*uh2/th2-uh/sh)*
17522 facqg2=comfac*as**2*4./9.*((2.+mstp(34)*1./4.)*sh2/th2-sh/uh)
17524 IF(i.EQ.0)
GOTO 680
17528 isig(nchn,3-isde)=21
17533 isig(nchn,3-isde)=21
17540 facqq1=comfac*as**2*1./6.*(uh/th-(2.+mstp(34)*1./4.)*uh2/sh2)*
17541 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
17542 facqq2=comfac*as**2*1./6.*(th/uh-(2.+mstp(34)*1./4.)*th2/sh2)*
17543 & (wdte(0,1)+wdte(0,2)+wdte(0,3)+wdte(0,4))*faca
17544 facgg1=comfac*as**2*9./4.*(sh2/th2+2.*sh/th+3.+2.*th/sh+
17546 facgg2=comfac*as**2*9./4.*(uh2/sh2+2.*uh/sh+3.+2.*sh/uh+
17548 facgg3=comfac*as**2*9./4.*(th2/uh2+2.*th/uh+3+2.*uh/th+uh2/th2)
17563 sigh(nchn)=0.5*facgg1
17568 sigh(nchn)=0.5*facgg2
17573 sigh(nchn)=0.5*facgg3
17578 ELSEIF(isub.LE.110)
THEN 17579 IF(isub.EQ.101)
THEN 17582 ELSEIF(isub.EQ.102)
THEN 17584 CALL pywidt(25,sqrt(sh),wdtp,wdte)
17587 DO 690 i=1,2*mstp(1)
17588 eps=4.*pmas(i,1)**2/sh
17590 IF(
eps.GT.1.
e-4)
THEN 17592 rln=log((1.+root)/(1.-root))
17596 phire=0.25*(rln**2-paru(1)**2)
17597 phiim=0.5*paru(1)*rln
17599 phire=-(asin(1./sqrt(
eps)))**2
17602 etare=etare+0.5*
eps*(1.+(
eps-1.)*phire)
17603 etaim=etaim+0.5*
eps*(
eps-1.)*phiim
17605 eta2=etare**2+etaim**2
17606 fach=comfac*faca*(as/paru(1)*aem/xw)**2*1./512.*
17607 & (sh/sqmw)**2*eta2*sh2/((sh-sqmh)**2+gmmh**2)*
17608 & (wdte(0,1)+wdte(0,2)+wdte(0,4))
17609 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 700
17621 ELSEIF(isub.LE.120)
THEN 17622 IF(isub.EQ.111)
THEN 17626 DO 710 i=1,2*mstp(1)
17630 a5stur=a5stur+sqmq/sqmh*(4.+4.*sh/(th+uh)*(
pyw1au(epss,1)-
17631 &
pyw1au(epsh,1))+(1.-4.*sqmq/(th+uh))*(
pyw2au(epss,1)-
17633 a5stui=a5stui+sqmq/sqmh*(4.*sh/(th+uh)*(
pyw1au(epss,2)-
17634 &
pyw1au(epsh,2))+(1.-4.*sqmq/(th+uh))*(
pyw2au(epss,2)-
17637 facgh=comfac*faca/(144.*paru(1)**2)*aem/xw*as**3*sqmh/sqmw*
17638 & sqmh/sh*(uh**2+th**2)/(uh+th)**2*(a5stur**2+a5stui**2)
17639 facgh=facgh*wids(25,2)
17641 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 720
17649 ELSEIF(isub.EQ.112)
THEN 17653 DO 730 i=1,2*mstp(1)
17657 a5tsur=a5tsur+sqmq/sqmh*(4.+4.*th/(sh+uh)*(
pyw1au(epst,1)-
17658 &
pyw1au(epsh,1))+(1.-4.*sqmq/(sh+uh))*(
pyw2au(epst,1)-
17660 a5tsui=a5tsui+sqmq/sqmh*(4.*th/(sh+uh)*(
pyw1au(epst,2)-
17661 &
pyw1au(epsh,2))+(1.-4.*sqmq/(sh+uh))*(
pyw2au(epst,2)-
17664 facqh=comfac*faca/(384.*paru(1)**2)*aem/xw*as**3*sqmh/sqmw*
17665 & sqmh/(-th)*(uh**2+sh**2)/(uh+sh)**2*(a5tsur**2+a5tsui**2)
17666 facqh=facqh*wids(25,2)
17668 IF(i.EQ.0)
GOTO 750
17670 IF(isde.EQ.1.AND.kfac(1,i)*kfac(2,21).EQ.0)
GOTO 740
17671 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,i).EQ.0)
GOTO 740
17674 isig(nchn,3-isde)=21
17680 ELSEIF(isub.EQ.113)
THEN 17690 DO 760 i=6,2*mstp(1)
17697 IF(epsh.LT.1.
e-6)
GOTO 760
17698 bestu=0.5*(1.+sqrt(1.+epss*th/uh))
17699 beust=0.5*(1.+sqrt(1.+epsu*sh/th))
17700 betus=0.5*(1.+sqrt(1.+epst*uh/sh))
17728 b2stur=sqmq/sqmh**2*(sh*(uh-sh)/(sh+uh)+2.*th*uh*(uh+2.*sh)/
17729 & (sh+uh)**2*(
pyw1au(epst,1)-
pyw1au(epsh,1))+(sqmq-sh/4.)*
17731 & sh**2*(2.*sqmq/(sh+uh)**2-0.5/(sh+uh))*(
pyw2au(epst,1)-
17821 facgh=comfac*faca*3./(128.*paru(1)**2)*aem/xw*as**3*
17822 & sqmh/sqmw*sqmh**3/(sh*th*uh)*(a2stur**2+a2stui**2+a2ustr**2+
17823 & a2usti**2+a2tusr**2+a2tusi**2+a4stur**2+a4stui**2)
17824 facgh=facgh*wids(25,2)
17825 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 770
17833 ELSEIF(isub.EQ.114)
THEN 17837 DO 780 i=1,2*mstp(1)
17838 ei=kchg(iabs(i),1)/3.
17843 IF(epss+abs(epst)+abs(epsu).LT.3.
e-6)
THEN 17844 a0stur=1.+(th-uh)/sh*log(th/uh)+0.5*(th2+uh2)/sh2*
17845 & (log(th/uh)**2+paru(1)**2)
17847 a0tsur=1.+(sh-uh)/th*log(-sh/uh)+0.5*(sh2+uh2)/th2*
17849 a0tsui=-paru(1)*((sh-uh)/th+(sh2+uh2)/th2*log(-sh/uh))
17850 a0utsr=1.+(th-sh)/uh*log(-th/sh)+0.5*(th2+sh2)/uh2*
17852 a0utsi=paru(1)*((th-sh)/uh+(th2+sh2)/uh2*log(-th/sh))
17858 bestu=0.5*(1.+sqrt(1.+epss*th/uh))
17859 beust=0.5*(1.+sqrt(1.+epsu*sh/th))
17860 betus=0.5*(1.+sqrt(1.+epst*uh/sh))
17864 a0stur=1.+(1.+2.*th/sh)*
pyw1au(epst,1)+(1.+2.*uh/sh)*
17865 &
pyw1au(epsu,1)+0.5*((th2+uh2)/sh2-epss)*(
pyw2au(epst,1)+
17866 &
pyw2au(epsu,1))-0.25*epst*(1.-0.5*epss)*(
pyi3au(besut,epss,1)+
17927 asre=asre+ei**2*(a0stur+a0tsur+a0utsr+4.*a1stur+a2stur)
17928 asim=asim+ei**2*(a0stui+a0tsui+a0utsi+4.*a1stui+a2stui)
17930 facgg=comfac*faca/(8.*paru(1)**2)*as**2*aem**2*(asre**2+asim**2)
17931 IF(kfac(1,21)*kfac(2,21).EQ.0)
GOTO 790
17939 ELSEIF(isub.EQ.115)
THEN 17942 ELSEIF(isub.EQ.116)
THEN 17945 ELSEIF(isub.EQ.117)
THEN 17952 ELSEIF(isub.LE.140)
THEN 17953 IF(isub.EQ.121)
THEN 17960 ELSEIF(isub.LE.160)
THEN 17961 IF(isub.EQ.141)
THEN 17964 CALL pywidt(32,sqrt(sh),wdtp,wdte)
17965 faczp=comfac*aem**2*4./9.
17967 IF(i.EQ.0.OR.kfac(1,i)*kfac(2,-i).EQ.0)
GOTO 800
17968 ei=kchg(iabs(i),1)/3.
17977 sigh(nchn)=faczp*(ei**2*vint(111)+ei*vi/(8.*xw*(1.-xw))*
17978 & sh*(sh-sqmz)/((sh-sqmz)**2+gmmz**2)*vint(112)+ei*vpi/(8.*xw*
17979 & (1.-xw))*sh*(sh-sqmzp)/((sh-sqmzp)**2+gmmzp**2)*vint(113)+
17980 & (vi**2+ai**2)/(16.*xw*(1.-xw))**2*sh2/((sh-sqmz)**2+gmmz**2)*
17981 & vint(114)+2.*(vi*vpi+ai*api)/(16.*xw*(1.-xw))**2*sh2*
17982 & ((sh-sqmz)*(sh-sqmzp)+gmmz*gmmzp)/(((sh-sqmz)**2+gmmz**2)*
17983 & ((sh-sqmzp)**2+gmmzp**2))*vint(115)+(vpi**2+api**2)/
17984 & (16.*xw*(1.-xw))**2*sh2/((sh-sqmzp)**2+gmmzp**2)*vint(116))
17987 ELSEIF(isub.EQ.142)
THEN 17989 CALL pywidt(37,sqrt(sh),wdtp,wdte)
17990 fhc=comfac*(aem/xw)**2*1./48.*(sh/sqmw)**2*sh2/
17991 & ((sh-sqmhc)**2+gmmhc**2)
17993 DO 840 i=1,mstp(54)/2
17996 rmql=pmas(il,1)**2/sh
17997 rmqu=pmas(iu,1)**2/sh
17998 fachc=fhc*((rmql*paru(121)+rmqu/paru(121))*(1.-rmql-rmqu)-
17999 & 4.*rmql*rmqu)/sqrt(
max(0.,(1.-rmql-rmqu)**2-4.*rmql*rmqu))
18000 IF(kfac(1,il)*kfac(2,-iu).EQ.0)
GOTO 810
18001 kchhc=(kchg(il,1)-kchg(iu,1))/3
18006 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18007 810
IF(kfac(1,-il)*kfac(2,iu).EQ.0)
GOTO 820
18008 kchhc=(-kchg(il,1)+kchg(iu,1))/3
18013 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18014 820
IF(kfac(1,iu)*kfac(2,-il).EQ.0)
GOTO 830
18015 kchhc=(kchg(iu,1)-kchg(il,1))/3
18020 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18021 830
IF(kfac(1,-iu)*kfac(2,il).EQ.0)
GOTO 840
18022 kchhc=(-kchg(iu,1)+kchg(il,1))/3
18027 sigh(nchn)=fachc*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18030 ELSEIF(isub.EQ.143)
THEN 18032 CALL pywidt(40,sqrt(sh),wdtp,wdte)
18033 facr=comfac*(aem/xw)**2*1./9.*sh2/((sh-sqmr)**2+gmmr**2)
18035 IF(i.EQ.0.OR.kfac(1,i).EQ.0)
GOTO 860
18038 IF(j.EQ.0.OR.kfac(2,j).EQ.0)
GOTO 850
18040 IF(i*j.GT.0.OR.iabs(ia-ja).NE.2)
GOTO 850
18045 sigh(nchn)=facr*(wdte(0,1)+wdte(0,(10-(i+j))/4)+wdte(0,4))
18054 IF(isub.EQ.161)
THEN 18056 fhcq=comfac*faca*as*aem/xw*1./24
18057 DO 900 i=1,mstp(54)
18060 fachcq=fhcq/paru(121)*sqmq/sqmw*(sh/(sqmq-uh)+
18061 & 2.*sqmq*(sqmhc-uh)/(sqmq-uh)**2+(sqmq-uh)/sh+
18062 & 2.*sqmq/(sqmq-uh)+2.*(sqmhc-uh)/(sqmq-uh)*(sqmhc-sqmq-sh)/sh)
18063 IF(kfac(1,-i)*kfac(2,21).EQ.0)
GOTO 870
18064 kchhc=isign(1,-kchg(i,1))
18069 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18070 870
IF(kfac(1,i)*kfac(2,21).EQ.0)
GOTO 880
18071 kchhc=isign(1,kchg(i,1))
18076 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18077 880
IF(kfac(1,21)*kfac(2,-i).EQ.0)
GOTO 890
18078 kchhc=isign(1,-kchg(i,1))
18083 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18084 890
IF(kfac(1,21)*kfac(2,i).EQ.0)
GOTO 900
18085 kchhc=isign(1,kchg(i,1))
18090 sigh(nchn)=fachcq*(wdte(0,1)+wdte(0,(5-kchhc)/2)+wdte(0,4))
18097 IF(isub.LE.90.OR.isub.GE.96)
THEN 18099 IF(mint(41).EQ.2)
THEN 18101 IF(kfl1.EQ.21) kfl1=0
18102 sigh(ichn)=sigh(ichn)*xsfx(1,kfl1)
18104 IF(mint(42).EQ.2)
THEN 18106 IF(kfl2.EQ.21) kfl2=0
18107 sigh(ichn)=sigh(ichn)*xsfx(2,kfl2)
18109 910 sigs=sigs+sigh(ichn)
function pyw1au(EPS, IREIM)
subroutine pystfu(KF, X, Q2, XPQ, JBT)
static const G4double eps
static int FASTCALL common(PROLOG_STATE *state, int tok)
function pyw2au(EPS, IREIM)
function pyi3au(BE, EPS, IREIM)
subroutine pywidt(KFLR, RMAS, WDTP, WDTE)