23 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
27 parameter(ksusy1=1000000,ksusy2=2000000,ktechn=3000000,
28 &kexcit=4000000,kdimen=5000000)
31 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
32 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
33 common/
pydat3/mdcy(500,3),mdme(8000,2),brat(8000),kfdp(8000,5)
34 common/
pysubs/msel,mselpd,msub(500),kfin(2,-40:40),ckin(200)
37 common/
pyint2/iset(500),kfpr(500,2),coef(500,20),icol(40,4,2)
38 common/
pyint3/xsfx(2,-40:40),isig(1000,3),sigh(1000)
39 common/
pyint4/mwid(500),wids(500,5)
41 common/
pyint7/sigt(0:6,0:6,0:5)
42 common/
pymssm/imss(0:99),rmss(0:99)
43 common/
pyssmt/zmix(4,4),umix(2,2),vmix(2,2),smz(4),smw(2),
44 &sfmix(16,4),zmixi(4,4),umixi(2,2),vmixi(2,2)
45 common/pytcsm/itcm(0:99),rtcm(0:99)
46 common/pysgcm/isub,isubsv,mmin1,mmax1,mmin2,mmax2,mmina,mmaxa,
47 &kfac(2,-40:40),comfac,fack,faca,sh,th,uh,sh2,th2,uh2,sqm3,sqm4,
48 &shr,sqpth,taup,be34,cth,
x(2),sqmz,sqmw,gmmz,gmmw,
49 &aem,as,xw,xw1,xwc,xwv,poll,polr,polll,polrr
68 DATA (mappr(
i),
i=1,180)/
69 & 3, 3, 4, 0, 4, 0, 0, 4, 0, 1,
70 1 1, 1, 1, 1, 3, 3, 0, 1, 3, 3,
71 2 0, 3, 3, 4, 3, 4, 0, 1, 1, 3,
72 3 3, 4, 1, 1, 3, 3, 0, 0, 0, 0,
73 4 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
74 5 0, 0, 1, 1, 0, 0, 0, 1, 0, 0,
75 6 0, 0, 0, 0, 0, 0, 0, 1, 3, 3,
76 7 4, 4, 4, 0, 0, 4, 4, 0, 0, 1,
77 8 2, 2, 2, 2, 2, 2, 2, 2, 2, 0,
78 9 1, 1, 1, 1, 1, 1, 0, 0, 1, 0,
79 & 0, 4, 4, 2, 2, 2, 2, 2, 0, 4,
80 1 4, 4, 4, 1, 1, 0, 0, 0, 0, 0,
81 2 4, 4, 4, 4, 0, 0, 0, 0, 0, 0,
82 3 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
83 4 7, 7, 4, 7, 7, 7, 7, 7, 6, 0,
84 5 4, 4, 4, 0, 0, 4, 4, 4, 0, 0,
85 6 4, 7, 7, 7, 6, 6, 7, 7, 7, 0,
86 7 4, 4, 4, 4, 0, 4, 4, 4, 4, 0/
87 DATA (mappr(
i),
i=181,500)/
88 8 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
89 9 6, 6, 6, 6, 6, 0, 0, 0, 0, 0,
91 & 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93 4 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
94 5 7, 7, 7, 7, 0, 0, 0, 0, 0, 0,
95 6 6, 6, 6, 6, 6, 6, 6, 6, 0, 6,
96 7 6, 6, 6, 6, 6, 6, 6, 0, 0, 0,
97 8 6, 6, 6, 6, 6, 6, 6, 6, 0, 0,
98 9 7, 7, 7, 7, 7, 0, 0, 0, 0, 0,
100 2 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
101 3 2, 2, 2, 2, 2, 2, 2, 2, 2, 0,
103 6 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
104 7 2, 2, 2, 2, 2, 2, 2, 2, 2, 0,
136 IF(istsb.GE.3.AND.istsb.LE.5) taue=taup
137 x(1)=sqrt(taue)*exp(yst)
138 x(2)=sqrt(taue)*exp(-yst)
139 IF(
mint(45).EQ.2.AND.istsb.GE.1)
THEN
140 IF(
x(1).GT.1d0-1d-7)
RETURN
141 ELSEIF(
mint(45).EQ.3)
THEN
142 x(1)=min(1d0-1.1d-10,
x(1))
144 IF(
mint(46).EQ.2.AND.istsb.GE.1)
THEN
145 IF(
x(2).GT.1d0-1d-7)
RETURN
146 ELSEIF(
mint(46).EQ.3)
THEN
147 x(2)=min(1d0-1.1d-10,
x(2))
154 be34=sqrt(
max(0d0,(1d0-rm3-rm4)**2-4d0*rm3*rm4))
155 rpts=4d0*
vint(71)**2/sh
156 be34l=sqrt(
max(0d0,(1d0-rm3-rm4)**2-4d0*rm3*rm4-rpts))
157 rm34=
max(1d-20,2d0*rm3*rm4)
161 rthm=(4d0*rm3*rm4+rpts)/(1d0-rm3-rm4+be34l)
164 uh=-0.5d0*sh*
max(rthm,1d0-rm3-rm4+be34*cth)
165 sqpth=
max(
vint(71)**2,0.25d0*sh*be34**2*
vint(59)**2)
170 IF(
mint(15).EQ.22.AND.
vint(3).LT.0d0) rm1=-
vint(3)**2/sh
172 IF(
mint(16).EQ.22.AND.
vint(4).LT.0d0) rm2=-
vint(4)**2/sh
177 be12=sqrt(
max(0d0,(1d0-rm1-rm2)**2-4d0*rm1*rm2))
178 tucom=(1d0-rm1-rm2)*(1d0-rm3-rm4)
179 th=-0.5d0*sh*
max(rthm,tucom-2d0*rm1*rm4-2d0*rm2*rm3-
181 uh=-0.5d0*sh*
max(rthm,tucom-2d0*rm1*rm3-2d0*rm2*rm4+
183 sqpth=
max(
vint(71)**2,0.25d0*sh*be34**2*(1d0-cth**2))
191 IF(istsb.EQ.1.OR.istsb.EQ.3.OR.istsb.EQ.5)
THEN
193 ELSEIF(istsb.EQ.8)
THEN
196 ELSEIF(mod(istsb,2).EQ.0.OR.istsb.EQ.9)
THEN
201 IF(
mstp(32).EQ.1)
THEN
202 q2=2d0*sh*th*uh/(sh**2+th**2+uh**2)
203 ELSEIF(
mstp(32).EQ.2)
THEN
204 q2=sqpth+0.5d0*(sqm3+sqm4)
205 ELSEIF(
mstp(32).EQ.3)
THEN
207 ELSEIF(
mstp(32).EQ.4)
THEN
209 ELSEIF(
mstp(32).EQ.5)
THEN
211 ELSEIF(
mstp(32).EQ.6)
THEN
213 IF(istsb.EQ.9) xsf1=
x(1)/
vint(143)
215 IF(istsb.EQ.9) xsf2=
x(2)/
vint(144)
216 q2=(1d0+xsf1*q2in1/sh+xsf2*q2in2/sh)*
217 & (sqpth+0.5d0*(sqm3+sqm4))
218 ELSEIF(
mstp(32).EQ.7)
THEN
219 q2=(1d0+q2in1/sh+q2in2/sh)*(sqpth+0.5d0*(sqm3+sqm4))
220 ELSEIF(
mstp(32).EQ.8)
THEN
221 q2=sqpth+0.5d0*(q2in1+q2in2+sqm3+sqm4)
222 ELSEIF(
mstp(32).EQ.9)
THEN
223 q2=sqpth+q2in1+q2in2+sqm3+sqm4
224 ELSEIF(
mstp(32).EQ.10)
THEN
227 ELSEIF(
mstp(32).EQ.11)
THEN
228 q2=0.25*(sqm3+sqm4+2*sqrt(sqm3*sqm4))
229 ELSEIF(
mstp(32).EQ.12)
THEN
232 ELSEIF(
mstp(32).EQ.13)
THEN
235 IF(
mint(35).LE.2.AND.istsb.EQ.9) q2=sqpth
236 IF(istsb.EQ.9.AND.
mstp(82).GE.2) q2=q2+
243 IF(
mstp(32).EQ.12.AND.(mod(istsb,2).EQ.0.OR.istsb.EQ.9)
244 & .OR.
mstp(39).EQ.8.AND.(istsb.GE.3.AND.istsb.LE.5))
247 IF(istsb.GE.3.AND.istsb.LE.5)
THEN
249 IF(isub.EQ.8.OR.isub.EQ.76.OR.isub.EQ.77.OR.isub.EQ.124.OR.
250 & isub.EQ.174.OR.isub.EQ.179.OR.isub.EQ.351) q2sf=pmas(24,1)**2
251 IF(isub.EQ.352) q2sf=pmas(
pycomp(9900024),1)**2
252 IF(isub.EQ.121.OR.isub.EQ.122.OR.isub.EQ.181.OR.isub.EQ.182.OR.
253 & isub.EQ.186.OR.isub.EQ.187.OR.isub.EQ.401.OR.isub.EQ.402)
THEN
254 q2sf=pmas(
pycomp(kfpr(isubsv,2)),1)**2
255 IF(
mstp(39).EQ.2) q2sf=
257 IF(
mstp(39).EQ.3) q2sf=sh
259 IF(
mstp(39).EQ.5) q2sf=pmas(
pycomp(kfpr(isubsv,1)),1)**2
261 IF(
mstp(39).EQ.6) q2sf=0.25*(
vint(201)+sqrt(sh))**2
262 IF(
mstp(39).EQ.7) q2sf=
268 IF(
mint(35).GE.3.AND.istsb.EQ.9) q2sf=sqpth
279 IF (isubsv.EQ.1.OR.isubsv.EQ.2.OR.isubsv.EQ.3.OR.
280 & isubsv.EQ.102.OR.isubsv.EQ.141.OR.isubsv.EQ.142.OR.
281 & isubsv.EQ.144.OR.isubsv.EQ.151.OR.isubsv.EQ.152.OR.
282 & isubsv.EQ.156.OR.isubsv.EQ.157) ismecr=1
283 IF (isubsv.EQ.11.OR.isubsv.EQ.12.OR.isubsv.EQ.13.OR.
284 & isubsv.EQ.28.OR.isubsv.EQ.53.OR.isubsv.EQ.68) isqcd=1
285 IF ((isubsv.EQ.81.OR.isubsv.EQ.82).AND.
mint(55).LE.5) isqcd=1
286 IF (isubsv.GE.381.AND.isubsv.LE.386) isqcd=1
287 IF ((isubsv.EQ.387.OR.isubsv.EQ.388).AND.
mint(55).LE.5) isqcd=1
288 IF (istsb.EQ.9) isqcd=1
289 IF ((isubsv.GE.86.AND.isubsv.LE.89).OR.isubsv.EQ.107.OR.
290 & (isubsv.GE.14.AND.isubsv.LE.16).OR.(isubsv.GE.29.AND.
291 & isubsv.LE.32).OR.(isubsv.GE.111.AND.isubsv.LE.113).OR.
292 & isubsv.EQ.115.OR.(isubsv.GE.183.AND.isubsv.LE.185).OR.
293 & (isubsv.GE.188.AND.isubsv.LE.190).OR.isubsv.EQ.161.OR.
294 & isubsv.EQ.167.OR.isubsv.EQ.168.OR.(isubsv.GE.393.AND.
295 & isubsv.LE.395).OR.(isubsv.GE.421.AND.isubsv.LE.439).OR.
296 & (isubsv.GE.461.AND.isubsv.LE.479)) isjets=1
298 IF (isubsv.EQ.5.OR.isubsv.EQ.8.OR.
299 & (isubsv.GE.71.AND.isubsv.LE.73).OR.
300 & isubsv.EQ.76.OR.isubsv.EQ.77.OR.
301 & (isubsv.GE.121.AND.isubsv.LE.124).OR.
302 & isubsv.EQ.173.OR.isubsv.EQ.174.OR.
303 & isubsv.EQ.178.OR.isubsv.EQ.179.OR.
304 & isubsv.EQ.181.OR.isubsv.EQ.182.OR.
305 & isubsv.EQ.186.OR.isubsv.EQ.187.OR.
306 & isubsv.EQ.351.OR.isubsv.EQ.352) isjets=2
308 IF (isubsv.EQ.10.OR.(isubsv.GE.18.AND.isubsv.LE.20).OR.
309 & (isubsv.GE.33.AND.isubsv.LE.36).OR.isubsv.EQ.54.OR.
310 & isubsv.EQ.58.OR.isubsv.EQ.69.OR.isubsv.EQ.70.OR.
311 & isubsv.EQ.80.OR.(isubsv.GE.83.AND.isubsv.LE.85).OR.
312 & (isubsv.GE.106.AND.isubsv.LE.110).OR.isubsv.EQ.114.OR.
313 & (isubsv.GE.131.AND.isubsv.LE.140)) isjets=3
316 IF(
mstp(22).GE.1.AND.(isub.EQ.10.OR.isub.EQ.83).AND.
317 &(
mint(43).EQ.2.OR.
mint(43).EQ.3))
THEN
319 IF(
mint(43).EQ.3) xbj=
x(1)
320 IF(
mstp(22).EQ.1)
THEN
322 ELSEIF(
mstp(22).EQ.2)
THEN
323 q2ps=((1d0-xbj)/xbj)*(-th)
324 ELSEIF(
mstp(22).EQ.3)
THEN
325 q2ps=sqrt((1d0-xbj)/xbj)*(-th)
327 q2ps=(1d0-xbj)*
max(1d0,-
log(xbj))*(-th)
332 IF (isjets.EQ.1.OR.isqcd.EQ.1.AND.istsb.NE.9) q2ps=sqpth
333 IF((
mstp(68).EQ.1.OR.
mstp(68).EQ.3).AND.ismecr.EQ.1)
THEN
337 IF (
mint(35).GE.3) q2ps=q2ps*0.25d0
338 ELSEIF(
mstp(68).GE.2.AND.isqcd.EQ.0.AND.isjets.EQ.0)
THEN
342 IF (
mint(35).GE.3) q2ps=q2ps*0.25d0
344 IF(
mint(35).EQ.2.AND.istsb.EQ.9) q2ps=sqpth
347 IF(isubsv.GE.91.AND.isubsv.LE.94)
THEN
359 IF(istsb.NE.8)
vint(48)=sqpth
360 IF(istsb.NE.8)
vint(47)=sqrt(sqpth)
371 IF (isubsv.EQ.95)
THEN
373 ELSEIF(
mstp(86).EQ.3.OR.(
mstp(86).EQ.2.AND.isubsv.NE.11.AND.
374 & isubsv.NE.12.AND.isubsv.NE.13.AND.isubsv.NE.28.AND.
375 & isubsv.NE.53.AND.isubsv.NE.68.AND.isubsv.NE.95.AND.
376 & isubsv.NE.96))
THEN
378 xt2gmx=(1d0-
vint(41))*(1d0-
vint(42))
385 IF(istsb.EQ.1) xt2gmx=
vint(21)
388 IF(istsb.GE.3.AND.istsb.LE.5) xt2gmx=
vint(26)
394 IF(istsb.LE.0) goto 160
395 IF(
mint(47).GE.2)
THEN
396 DO 110
i=3-min(2,
mint(45)),min(2,
mint(46))
398 IF(istsb.EQ.9) xsf=
x(
i)/
vint(142+
i)
400 IF(
mint(140+
i).EQ.0)
THEN
411 IF(
mstp(57).LE.1)
THEN
418 IF(q2sf.LT.1.1*pmas(4,1)**2)
THEN
422 IF(q2sf.LT.1.1*pmas(5,1)**2)
THEN
435 IF(
mstp(8).GE.2.OR.(isub.GE.71.AND.isub.LE.77)) xw=
436 &1d0-(pmas(24,1)/pmas(23,1))**2
438 xwc=1d0/(16d0*xw*xw1)
440 IF(
mstp(8).GE.1) aem=sqrt(2d0)*paru(105)*pmas(24,1)**2*xw/paru(1)
444 IF(
mstp(33).EQ.1)
THEN
446 ELSEIF(
mstp(33).EQ.2)
THEN
449 ELSEIF(
mstp(33).EQ.3)
THEN
451 IF(istsb.EQ.9.AND.
mstp(82).GE.2) q2as=q2as+
464 IF(
mint(44+
i).EQ.1)
THEN
466 ELSEIF(
mint(40+
i).EQ.1.AND.
mstp(12).EQ.0)
THEN
474 IF(iabs(
j).GT.
mstp(58).AND.iabs(
j).LE.10) kfac(
i,
j)=0
475 IF(xsfx(
i,
j).LT.1d-10) kfac(
i,
j)=0
486 IF(kfac(1,-
j).EQ.1) mmin1=-
j
487 IF(kfac(1,
j).EQ.1) mmax1=
j
488 IF(kfac(2,-
j).EQ.1) mmin2=-
j
489 IF(kfac(2,
j).EQ.1) mmax2=
j
491 mmina=min(mmin1,mmin2)
492 mmaxa=
max(mmax1,mmax2)
497 gmmz=pmas(23,1)*pmas(23,2)
498 gmmw=pmas(24,1)*pmas(24,2)
501 polr=(1d0+parj(132))*(1d0-parj(131))
502 poll=(1d0-parj(132))*(1d0+parj(131))
503 polrr=(1d0+parj(132))*(1d0+parj(131))
504 polll=(1d0-parj(132))*(1d0-parj(131))
507 comfac=paru(1)*paru(5)/
vint(2)
508 IF(
mint(41).EQ.2.AND.
mint(42).EQ.2) comfac=comfac*fack
509 IF((
mint(47).GE.2.OR.(istsb.GE.3.AND.istsb.LE.5)).AND.
510 &istsb.NE.8.AND.istsb.NE.9)
THEN
511 atau1=
log(taumax/taumin)
512 atau2=(taumax-taumin)/(taumax*taumin)
513 h1=coef(isubsv,1)+(atau1/atau2)*coef(isubsv,2)/
tau
514 IF(
mint(72).GE.1)
THEN
517 ataud=
log(taumax/taumin*(taumin+taur1)/(taumax+taur1))
519 IF(ataud.GT.1d-10)
h1=
h1+
520 & (atau1/atau3)*coef(isubsv,3)/(
tau+taur1)
521 ataud=atan((taumax-taur1)/gamr1)-atan((taumin-taur1)/gamr1)
523 IF(ataud.GT.1d-10)
h1=
h1+
524 & (atau1/atau4)*coef(isubsv,4)*
tau/((
tau-taur1)**2+gamr1**2)
526 IF(
mint(72).EQ.2)
THEN
529 ataud=
log(taumax/taumin*(taumin+taur2)/(taumax+taur2))
531 IF(ataud.GT.1d-10)
h1=
h1+
532 & (atau1/atau5)*coef(isubsv,5)/(
tau+taur2)
533 ataud=atan((taumax-taur2)/gamr2)-atan((taumin-taur2)/gamr2)
535 IF(ataud.GT.1d-10)
h1=
h1+
536 & (atau1/atau6)*coef(isubsv,6)*
tau/((
tau-taur2)**2+gamr2**2)
538 IF(
mint(47).EQ.5.AND.(istsb.LE.2.OR.istsb.GE.5))
THEN
539 atau7=
log(
max(2d-10,1d0-taumin)/
max(2d-10,1d0-taumax))
540 IF(atau7.GT.1d-10)
h1=
h1+(atau1/atau7)*coef(isubsv,7)*
tau/
542 ELSEIF(
mint(47).GE.6.AND.(istsb.LE.2.OR.istsb.GE.5))
THEN
543 atau7=
log(
max(1d-10,1d0-taumin)/
max(1d-10,1d0-taumax))
544 IF(atau7.GT.1d-10)
h1=
h1+(atau1/atau7)*coef(isubsv,7)*
tau/
547 comfac=comfac*atau1/(
tau*
h1)
551 IF((
mint(47).EQ.4.OR.
mint(47).EQ.5).AND.istsb.NE.8.AND.istsb.NE.9)
554 IF(ayst0.LT.1d-10)
THEN
557 ayst1=0.5d0*(ystmax-ystmin)**2
559 ayst3=2d0*(atan(exp(ystmax))-atan(exp(ystmin)))
560 h2=(ayst0/ayst1)*coef(isubsv,8)*(yst-ystmin)+
561 & (ayst0/ayst2)*coef(isubsv,9)*(ystmax-yst)+
562 & (ayst0/ayst3)*coef(isubsv,10)/cosh(yst)
563 IF(
mint(45).EQ.3)
THEN
564 yst0=-0.5d0*
log(taue)
565 ayst4=
log(
max(1d-10,exp(yst0-ystmin)-1d0)/
566 &
max(1d-10,exp(yst0-ystmax)-1d0))
567 IF(ayst4.GT.1d-10)
h2=
h2+(ayst0/ayst4)*coef(isubsv,11)/
568 &
max(1d-10,1d0-exp(yst-yst0))
570 IF(
mint(46).EQ.3)
THEN
571 yst0=-0.5d0*
log(taue)
572 ayst5=
log(
max(1d-10,exp(yst0+ystmax)-1d0)/
573 &
max(1d-10,exp(yst0+ystmin)-1d0))
574 IF(ayst5.GT.1d-10)
h2=
h2+(ayst0/ayst5)*coef(isubsv,12)/
575 &
max(1d-10,1d0-exp(-yst-yst0))
577 comfac=comfac*ayst0/
h2
583 acth0=ctnmax-ctnmin+ctpmax-ctpmin
584 IF((istsb.EQ.1.OR.istsb.EQ.3.OR.istsb.EQ.5))
THEN
585 IF(mdcy(
pycomp(kfpr(isubsv,1)),1).EQ.1)
THEN
586 IF(kfpr(isub,1).EQ.25.OR.kfpr(isub,1).EQ.37.OR.
587 & kfpr(isub,1).EQ.39)
THEN
588 comfac=comfac*0.5d0*acth0
590 comfac=comfac*0.125d0*(3d0*acth0+ctnmax**3-ctnmin**3+
591 & ctpmax**3-ctpmin**3)
596 ELSEIF(istsb.EQ.2.OR.istsb.EQ.4)
THEN
597 acth1=
log((
max(rm34,rsqm-ctnmin)*
max(rm34,rsqm-ctpmin))/
598 & (
max(rm34,rsqm-ctnmax)*
max(rm34,rsqm-ctpmax)))
599 acth2=
log((
max(rm34,rsqm+ctnmax)*
max(rm34,rsqm+ctpmax))/
600 & (
max(rm34,rsqm+ctnmin)*
max(rm34,rsqm+ctpmin)))
601 acth3=1d0/
max(rm34,rsqm-ctnmax)-1d0/
max(rm34,rsqm-ctnmin)+
602 & 1d0/
max(rm34,rsqm-ctpmax)-1d0/
max(rm34,rsqm-ctpmin)
603 acth4=1d0/
max(rm34,rsqm+ctnmin)-1d0/
max(rm34,rsqm+ctnmax)+
604 & 1d0/
max(rm34,rsqm+ctpmin)-1d0/
max(rm34,rsqm+ctpmax)
606 & (acth0/acth1)*coef(isubsv,14)/
max(rm34,rsqm-cth)+
607 & (acth0/acth2)*coef(isubsv,15)/
max(rm34,rsqm+cth)+
608 & (acth0/acth3)*coef(isubsv,16)/
max(rm34,rsqm-cth)**2+
609 & (acth0/acth4)*coef(isubsv,17)/
max(rm34,rsqm+cth)**2
610 comfac=comfac*acth0*0.5d0*be34/h3
613 comfac=comfac*
vint(80)
617 IF(
mint(47).GE.2.AND.istsb.GE.3.AND.istsb.LE.5)
THEN
618 ataup1=
log(taupmx/taupmn)
619 ataup2=((1d0-
tau/taupmx)**4-(1d0-
tau/taupmn)**4)/(4d0*
tau)
621 & (ataup1/ataup2)*coef(isubsv,19)*(1d0-
tau/taup)**3/taup
622 IF(
mint(47).EQ.5)
THEN
623 ataup3=
log(
max(2d-10,1d0-taupmn)/
max(2d-10,1d0-taupmx))
624 h4=h4+(ataup1/ataup3)*coef(isubsv,20)*taup/
max(2d-10,1d0-taup)
625 ELSEIF(
mint(47).GE.6)
THEN
626 ataup3=
log(
max(1d-10,1d0-taupmn)/
max(1d-10,1d0-taupmx))
627 h4=h4+(ataup1/ataup3)*coef(isubsv,20)*taup/
max(1d-10,1d0-taup)
629 comfac=comfac*ataup1/h4
633 IF(istsb.EQ.3.OR.istsb.EQ.4)
THEN
634 IF(1d0-
tau/taup.GT.1d-4)
THEN
637 fzw=1d0/6d0*(1d0-
tau/taup)**3*
tau/taup
645 & (128d0*paru(1)**4*
vint(220))*(
tau**2/taup)
650 comfac=paru(1)*paru(5)*fack*0.5d0*
vint(2)/sh2
651 atau1=
log(2d0*(1d0+sqrt(1d0-xt2))/xt2-1d0)
652 atau2=2d0*atan(1d0/xt2-1d0)/sqrt(xt2)
653 h1=coef(isubsv,1)+(atau1/atau2)*coef(isubsv,2)/sqrt(
tau)
654 comfac=comfac*atau1/
h1
656 ayst1=0.5d0*(ystmax-ystmin)**2
657 ayst3=2d0*(atan(exp(ystmax))-atan(exp(ystmin)))
658 h2=(ayst0/ayst1)*coef(isubsv,8)*(yst-ystmin)+
659 & (ayst0/ayst1)*coef(isubsv,9)*(ystmax-yst)+
660 & (ayst0/ayst3)*coef(isubsv,10)/cosh(yst)
661 comfac=comfac*ayst0/
h2
662 IF(
mstp(82).LE.1) comfac=comfac*xt2**2*(1d0/
vint(149)-1d0)
665 IF(
mstp(82).GE.2) comfac=comfac*xt2**2/(
vint(149)*
670 160
IF(
mint(11).EQ.22.AND.
mint(12).EQ.22.AND.
mint(123).GE.4.AND.
671 &
mstp(14).LE.10) comfac=2d0*comfac
676 IF(
mint(10+isde).EQ.22.AND.
mint(106+isde).GE.1.AND.
677 &
mint(106+isde).LE.3)
THEN
680 IF(
mstp(16).EQ.0)
THEN
681 IF(
vint(304+isde).GT.0d0.AND.
vint(304+isde).LT.1d0)
684 IF(
vint(308+isde).GT.0d0.AND.
vint(308+isde).LT.1d0)
688 IF(
mstp(17).GT.0.AND.xy.GT.0d0.AND.xy.LT.1d0.AND.
691 IF(
mstp(17).EQ.1)
THEN
692 reduce=4d0*q2*q2ga/(q2+q2ga)**2
693 ELSEIF(
mstp(17).EQ.2)
THEN
695 ELSEIF(
mstp(17).EQ.3)
THEN
696 pmvirt=pmas(
pycomp(113),1)
697 reduce=4d0*q2ga/(pmvirt**2+q2ga)
698 ELSEIF(
mstp(17).EQ.4.AND.
mint(106+isde).EQ.1)
THEN
699 pmvirt=pmas(
pycomp(113),1)
700 reduce=4d0*pmvirt**2*q2ga/(pmvirt**2+q2ga)**2
701 ELSEIF(
mstp(17).EQ.4.AND.
mint(106+isde).EQ.2)
THEN
702 pmvirt=pmas(
pycomp(113),1)
703 reduce=4d0*pmvirt**2*q2ga/(pmvirt**2+q2ga)**2
704 ELSEIF(
mstp(17).EQ.4.AND.
mint(106+isde).EQ.3)
THEN
705 pmvsmn=4d0*
parp(15)**2
706 pmvsmx=4d0*
vint(154)**2
707 redtra=1d0/(pmvsmn+q2ga)-1d0/(pmvsmx+q2ga)
708 redlon=(3d0*pmvsmn+q2ga)/(pmvsmn+q2ga)**3-
709 & (3d0*pmvsmx+q2ga)/(pmvsmx+q2ga)**3
710 reduce=4d0*(q2ga/6d0)*redlon/redtra
711 ELSEIF(
mstp(17).EQ.5.AND.
mint(106+isde).EQ.1)
THEN
712 pmvirt=pmas(
pycomp(113),1)
713 reduce=4d0*q2ga/(pmvirt**2+q2ga)
714 ELSEIF(
mstp(17).EQ.5.AND.
mint(106+isde).EQ.2)
THEN
715 pmvirt=pmas(
pycomp(113),1)
716 reduce=4d0*q2ga/(pmvirt**2+q2ga)
717 ELSEIF(
mstp(17).EQ.5.AND.
mint(106+isde).EQ.3)
THEN
718 pmvsmn=4d0*
parp(15)**2
719 pmvsmx=4d0*
vint(154)**2
720 redtra=1d0/(pmvsmn+q2ga)-1d0/(pmvsmx+q2ga)
721 redlon=1d0/(pmvsmn+q2ga)**2-1d0/(pmvsmx+q2ga)**2
722 reduce=4d0*(q2ga/2d0)*redlon/redtra
725 ELSEIF(
mstp(17).EQ.6.AND.
mint(106+isde).EQ.2)
THEN
726 IF ((
mint(1).le.94).and.(
mint(1).gt.90))
then
727 if (
vint(67).gt.0.0)
then
734 pmvirt=pmas(
pycomp(113),1)
740 IF(
vint(302+isde).GT.0d0) beamas=
vint(302+isde)
741 IF((
mint(11).EQ.22).and.
742 & (
mint(12).EQ.2212.or.
mint(12).EQ.2112))
THEN
743 fraclt=1d0/(1d0+(xy**2*(1d0-2d0*beamas**2/q2ga))/
744 & (2d0/(1d0+q2ga/xy**2/ebeamenucl**2)*(1d0-xy-
745 & (q2ga/4d0/ebeamenucl**2))))
747 fraclt=1d0/(1d0+xy**2/2d0/(1d0-xy)*
748 & (1d0-2d0*beamas**2/q2ga))
755 comfac=comfac*
vint(314+isde)
763 ELSEIF(map.EQ.2)
THEN
766 ELSEIF(map.EQ.3)
THEN
769 ELSEIF(map.EQ.4)
THEN
772 ELSEIF(map.EQ.5)
THEN
775 ELSEIF(map.EQ.6)
THEN
778 ELSEIF(map.EQ.7)
THEN
784 IF(isub.LE.90.OR.isub.GE.96)
THEN
786 IF(
mint(45).GE.2)
THEN
788 sigh(ichn)=sigh(ichn)*xsfx(1,kfl1)
790 IF(
mint(46).GE.2)
THEN
792 sigh(ichn)=sigh(ichn)*xsfx(2,kfl2)