12 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
16 parameter(ksusy1=1000000,ksusy2=2000000,ktechn=3000000,
17 &kexcit=4000000,kdimen=5000000)
19 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
20 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
21 common/
pydat3/mdcy(500,3),mdme(8000,2),brat(8000),kfdp(8000,5)
24 common/
pyint2/iset(500),kfpr(500,2),coef(500,20),icol(40,4,2)
25 common/
pyint3/xsfx(2,-40:40),isig(1000,3),sigh(1000)
26 common/
pyint4/mwid(500),wids(500,5)
27 common/pytcsm/itcm(0:99),rtcm(0:99)
28 common/pysgcm/isub,isubsv,mmin1,mmax1,mmin2,mmax2,mmina,mmaxa,
29 &kfac(2,-40:40),comfac,fack,faca,sh,th,uh,sh2,th2,uh2,sqm3,sqm4,
30 &shr,sqpth,taup,be34,cth,
x(2),sqmz,sqmw,gmmz,gmmw,
31 &aem,as,xw,xw1,xwc,xwv,poll,polr,polll,polrr
35 dimension wdtp(0:400),wdte(0:400,0:5)
44 CALL
pywidt(32,sh,wdtp,wdte)
52 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 100
53 ei=kchg(iabs(
i),1)/3d0
59 vpi=paru(123-2*mod(iabs(
i),2))
60 api=paru(124-2*mod(iabs(
i),2))
62 vpi=parj(182-2*mod(iabs(
i),2))
63 api=parj(183-2*mod(iabs(
i),2))
65 vpi=parj(190-2*mod(iabs(
i),2))
66 api=parj(191-2*mod(iabs(
i),2))
70 vpi=paru(127-2*mod(iabs(
i),2))
71 api=paru(128-2*mod(iabs(
i),2))
73 vpi=parj(186-2*mod(iabs(
i),2))
74 api=parj(187-2*mod(iabs(
i),2))
76 vpi=parj(194-2*mod(iabs(
i),2))
77 api=parj(195-2*mod(iabs(
i),2))
81 IF(iabs(
i).LE.10) hi0=hi0*faca/3d0
83 IF(iabs(
i).LE.10) hi1=hi1*faca/3d0
85 IF(iabs(
i).LE.10) hi2=hi2*faca/3d0
90 sigh(nchn)=faczp*(
ei**2/sh2*hi0*hp0*
vint(111)+
ei*vi*
91 & (1d0-sqmz/sh)/((sh-sqmz)**2+hs**2)*(hi0*hp1+hi1*hp0)*
92 &
vint(112)+
ei*vpi*(1d0-sqmzp/sh)/((sh-sqmzp)**2+hsp**2)*
93 & (hi0*hp2+hi2*hp0)*
vint(113)+(vi**2+ai**2)/
94 & ((sh-sqmz)**2+hs**2)*hi1*hp1*
vint(114)+(vi*vpi+ai*api)*
95 & ((sh-sqmz)*(sh-sqmzp)+hs*hsp)/(((sh-sqmz)**2+hs**2)*
96 & ((sh-sqmzp)**2+hsp**2))*(hi1*hp2+hi2*hp1)*
vint(115)+
97 & (vpi**2+api**2)/((sh-sqmzp)**2+hsp**2)*hi2*hp2*
vint(116))
100 ELSEIF(isub.EQ.142)
THEN
103 CALL
pywidt(34,sh,wdtp,wdte)
105 facbw=4d0*comfac/((sh-sqmwp)**2+hs**2)*3d0
108 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 120
111 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 110
113 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 110
114 IF((ia.LE.10.AND.ja.GT.10).OR.(ia.GT.10.AND.ja.LE.10))
116 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
117 hi=hp*(paru(133)**2+paru(134)**2)
118 IF(ia.LE.10) hi=hp*(paru(131)**2+paru(132)**2)*
119 & vckm((ia+1)/2,(ja+1)/2)*faca/3d0
124 hf=shr*(wdte(0,1)+wdte(0,(5-kchw)/2)+wdte(0,4))
125 sigh(nchn)=hi*facbw*hf
129 ELSEIF(isub.EQ.144)
THEN
132 CALL
pywidt(41,sh,wdtp,wdte)
134 facbw=4d0*comfac/((sh-sqmr)**2+hs**2)*3d0
137 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 140
140 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 130
142 IF(
i*
j.GT.0.OR.iabs(ia-ja).NE.2) goto 130
144 IF(ia.LE.10) hi=hi*faca/3d0
145 hf=shr*(wdte(0,1)+wdte(0,(10-(
i+
j))/4)+wdte(0,4))
150 sigh(nchn)=hi*facbw*hf
154 ELSEIF(isub.EQ.145)
THEN
157 CALL
pywidt(42,sh,wdtp,wdte)
159 facbw=4d0*comfac/((sh-sqmlq)**2+hs**2)
160 IF(abs(shr-pmas(42,1)).GT.
parp(48)*pmas(42,2)) facbw=0d0
162 kflqq=kfdp(mdcy(42,2),1)
163 kflql=kfdp(mdcy(42,2),2)
165 IF(kfac(1,
i).EQ.0) goto 160
167 IF(ia.NE.kflqq.AND.ia.NE.iabs(kflql)) goto 160
169 IF(kfac(2,
j).EQ.0) goto 150
171 IF(ja.NE.kflqq.AND.ja.NE.iabs(kflql)) goto 150
172 IF(
i*
j.NE.kflqq*kflql) goto 150
173 IF(ja.EQ.ia) goto 150
174 IF(ia.EQ.kflqq) kchlq=isign(1,
i)
175 IF(ja.EQ.kflqq) kchlq=isign(1,
j)
177 hf=shr*(wdte(0,1)+wdte(0,(5-kchlq)/2)+wdte(0,4))
182 sigh(nchn)=hi*facbw*hf
186 ELSEIF(isub.EQ.146)
THEN
190 kfqexc=mod(kfqstr,kexcit)
191 CALL
pywidt(kfqstr,sh,wdtp,wdte)
193 facbw=comfac/((sh-pmas(kcqstr,1)**2)**2+hs**2)
194 qf=-rtcm(43)/2d0-rtcm(44)/2d0
195 facbw=facbw*aem*qf**2*sh/rtcm(41)**2
196 IF(abs(shr-pmas(kcqstr,1)).GT.
parp(48)*pmas(kcqstr,2))
199 DO 180
i=-kfqexc,kfqexc,2*kfqexc
201 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,22).EQ.0) goto 170
202 IF(isde.EQ.2.AND.kfac(1,22)*kfac(2,
i).EQ.0) goto 170
204 IF(
i.GT.0) hf=shr*(wdte(0,1)+wdte(0,2)+wdte(0,4))
205 IF(
i.LT.0) hf=shr*(wdte(0,1)+wdte(0,3)+wdte(0,4))
210 sigh(nchn)=hi*facbw*hf
214 ELSEIF(isub.EQ.147.OR.isub.EQ.148)
THEN
218 kfqexc=mod(kfqstr,kexcit)
219 CALL
pywidt(kfqstr,sh,wdtp,wdte)
221 facbw=comfac/((sh-pmas(kcqstr,1)**2)**2+hs**2)
222 facbw=facbw*as*rtcm(45)**2*sh/(3d0*rtcm(41)**2)
223 IF(abs(shr-pmas(kcqstr,1)).GT.
parp(48)*pmas(kcqstr,2))
226 DO 200
i=-kfqexc,kfqexc,2*kfqexc
228 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 190
229 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 190
231 IF(
i.GT.0) hf=shr*(wdte(0,1)+wdte(0,2)+wdte(0,4))
232 IF(
i.LT.0) hf=shr*(wdte(0,1)+wdte(0,3)+wdte(0,4))
237 sigh(nchn)=hi*facbw*hf
242 ELSEIF(isub.LE.190)
THEN
246 faclq=comfac*faca*paru(151)*(as*aem/6d0)*(-th/sh)*
247 & (uh2+sqmlq**2)/(uh-sqmlq)**2
248 kflqq=kfdp(mdcy(42,2),1)
250 IF(iabs(
i).NE.kflqq) goto 220
253 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 210
254 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 210
259 sigh(nchn)=faclq*wids(42,(5-kchlq)/2)
263 ELSEIF(isub.EQ.163)
THEN
266 faclq=comfac*faca*wids(42,1)*(as**2/2d0)*
267 & (7d0/48d0+3d0*(uh-th)**2/(16d0*sh2))*(1d0+2d0*sqmlq*th/
268 & (th-sqmlq)**2+2d0*sqmlq*uh/(uh-sqmlq)**2+4d0*sqmlq**2/
269 & ((th-sqmlq)*(uh-sqmlq)))
270 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 230
275 isig(nchn,3)=int(1.5d0+
pyr(0))
279 ELSEIF(isub.EQ.164)
THEN
281 delta=0.25d0*(sqm3-sqm4)**2/sh
282 sqmlq=0.5d0*(sqm3+sqm4)-delta
286 faclqa=comfac*wids(42,1)*(as**2/9d0)*
287 & (sh*(sh-4d0*sqmlq)-(uh-th)**2)/sh2
288 faclqs=comfac*wids(42,1)*((paru(151)**2*aem**2/8d0)*
289 & (-sh*th-(sqmlq-th)**2)/th2+(paru(151)*aem*as/18d0)*
290 & ((sqmlq-th)*(uh-th)+sh*(sqmlq+th))/(sh*th))
291 kflqq=kfdp(mdcy(42,2),1)
293 IF(
i.EQ.0.OR.iabs(
i).GT.
mstp(58).OR.
294 & kfac(1,
i)*kfac(2,-
i).EQ.0) goto 240
300 IF(iabs(
i).EQ.kflqq) sigh(nchn)=faclqa+faclqs
303 ELSEIF(isub.EQ.167.OR.isub.EQ.168)
THEN
307 kfqexc=mod(kfqstr,kexcit)
308 facqsa=comfac*(sh/rtcm(41)**2)**2*(1d0-sqm4/sh)
309 facqsb=comfac*0.25d0*(sh/rtcm(41)**2)**2*(1d0-sqm4/sh)*
310 & (1d0+sqm4/sh)*(1d0+cth)*(1d0+((sh-sqm4)/(sh+sqm4))*cth)
312 gmmq=pmas(kcqstr,1)*pmas(kcqstr,2)
313 hbw4=gmmq/((sqm4-pmas(kcqstr,1)**2)**2+gmmq**2)
314 CALL
pywidt(kfqstr,sqm4,wdtp,wdte)
315 gmmqc=sqrt(sqm4)*wdtp(0)
316 hbw4c=gmmqc/((sqm4-pmas(kcqstr,1)**2)**2+gmmqc**2)
317 facqsa=facqsa*hbw4c/hbw4
318 facqsb=facqsb*hbw4c/hbw4
320 brpos=(wdte(0,1)+wdte(0,2)+wdte(0,4))/wdtp(0)
321 brneg=(wdte(0,1)+wdte(0,3)+wdte(0,4))/wdtp(0)
324 IF(
i.EQ.0.OR.ia.GT.6.OR.kfac(1,
i).EQ.0) goto 260
327 IF(
j.EQ.0.OR.ja.GT.6.OR.kfac(2,
j).EQ.0) goto 250
328 IF(ia.EQ.kfqexc.AND.
i.EQ.
j)
THEN
333 IF(
i.GT.0) sigh(nchn)=(4d0/3d0)*facqsa*brpos
334 IF(
i.LT.0) sigh(nchn)=(4d0/3d0)*facqsa*brneg
339 IF(
j.GT.0) sigh(nchn)=(4d0/3d0)*facqsa*brpos
340 IF(
j.LT.0) sigh(nchn)=(4d0/3d0)*facqsa*brneg
341 ELSEIF((ia.EQ.kfqexc.OR.ja.EQ.kfqexc).AND.
i*
j.GT.0)
THEN
346 IF(ja.EQ.kfqexc) isig(nchn,3)=2
347 IF(isig(nchn,isig(nchn,3)).GT.0) sigh(nchn)=facqsa*brpos
348 IF(isig(nchn,isig(nchn,3)).LT.0) sigh(nchn)=facqsa*brneg
349 ELSEIF(ia.EQ.kfqexc.AND.
i.EQ.-
j)
THEN
354 IF(
i.GT.0) sigh(nchn)=(8d0/3d0)*facqsb*brpos
355 IF(
i.LT.0) sigh(nchn)=(8d0/3d0)*facqsb*brneg
360 IF(
j.GT.0) sigh(nchn)=(8d0/3d0)*facqsb*brpos
361 IF(
j.LT.0) sigh(nchn)=(8d0/3d0)*facqsb*brneg
367 IF(
i.GT.0) sigh(nchn)=facqsb*brpos
368 IF(
i.LT.0) sigh(nchn)=facqsb*brneg
373 IF(
j.GT.0) sigh(nchn)=facqsb*brpos
374 IF(
j.LT.0) sigh(nchn)=facqsb*brneg
375 ELSEIF(ia.EQ.kfqexc.OR.ja.EQ.kfqexc)
THEN
380 IF(ja.EQ.kfqexc) isig(nchn,3)=2
381 IF(isig(nchn,isig(nchn,3)).GT.0) sigh(nchn)=facqsb*brpos
382 IF(isig(nchn,isig(nchn,3)).LT.0) sigh(nchn)=facqsb*brneg
387 ELSEIF(isub.EQ.169)
THEN
391 kfqexc=mod(kfqstr,kexcit)
392 facqsb=(comfac/12d0)*(sh/rtcm(41)**2)**2*(1d0-sqm4/sh)*
393 & (1d0+sqm4/sh)*(1d0+cth)*(1d0+((sh-sqm4)/(sh+sqm4))*cth)
395 gmmq=pmas(kcqstr,1)*pmas(kcqstr,2)
396 hbw4=gmmq/((sqm4-pmas(kcqstr,1)**2)**2+gmmq**2)
397 CALL
pywidt(kfqstr,sqm4,wdtp,wdte)
398 gmmqc=sqrt(sqm4)*wdtp(0)
399 hbw4c=gmmqc/((sqm4-pmas(kcqstr,1)**2)**2+gmmqc**2)
400 facqsb=facqsb*hbw4c/hbw4
402 brpos=(wdte(0,1)+wdte(0,2)+wdte(0,4))/wdtp(0)
403 brneg=(wdte(0,1)+wdte(0,3)+wdte(0,4))/wdtp(0)
406 IF(
i.EQ.0.OR.ia.GT.6.OR.kfac(1,
i).EQ.0) goto 270
409 IF(
j.EQ.0.OR.ja.GT.6.OR.kfac(2,
j).EQ.0) goto 270
414 IF(
i.GT.0) sigh(nchn)=facqsb*brpos
415 IF(
i.LT.0) sigh(nchn)=facqsb*brneg
420 IF(
j.GT.0) sigh(nchn)=facqsb*brpos
421 IF(
j.LT.0) sigh(nchn)=facqsb*brneg
425 ELSEIF(isub.LE.360)
THEN
426 IF(isub.EQ.341.OR.isub.EQ.342)
THEN
430 CALL
pywidt(kfres,sh,wdtp,wdte)
432 facbw=8d0*comfac/((sh-pmas(kfrec,1)**2)**2+hs**2)
435 IF((ia.NE.11.AND.ia.NE.13.AND.ia.NE.15).OR.kfac(1,
i).EQ.0)
439 IF((ja.NE.11.AND.ja.NE.13.AND.ja.NE.15).OR.kfac(2,
j).EQ.0)
441 IF(
i*
j.LT.0) goto 280
442 kchh=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
447 hi=sh*
parp(181+3*((ia-11)/2)+(ja-11)/2)**2/(8d0*paru(1))
448 hf=shr*(wdte(0,1)+wdte(0,(5-kchh/2)/2)+wdte(0,4))
449 sigh(nchn)=hi*facbw*hf
453 ELSEIF(isub.GE.343.AND.isub.LE.348)
THEN
458 hbw3=pmas(kfrec,1)*pmas(kfrec,2)/((sqm3-pmas(kfrec,1)**2)**2+
459 & (pmas(kfrec,1)*pmas(kfrec,2))**2)
460 CALL
pywidt(kfres,sqm3,wdtp,wdte)
461 gmmc=sqrt(sqm3)*wdtp(0)
462 hbw3c=gmmc/((sqm3-pmas(kfrec,1)**2)**2+gmmc**2)
463 fhcc=comfac*aem*hbw3c/hbw3
466 IF(ia.NE.11.AND.ia.NE.13.AND.ia.NE.15) goto 310
468 j=isign(kfpr(isub,2),-
i)
469 kchh=isign(2,kchg(ia,1)*isign(1,
i))
470 widsc=(wdte(0,1)+wdte(0,(5-kchh/2)/2)+wdte(0,4))/wdtp(0)
471 smm1=8d0*(sh+th-sqm3)*(sh+th-2d0*sqm3-sqml-sqm4)/
473 smm2=2d0*((2d0*sqm3-3d0*sqml)*sqm4+(sqml-2d0*sqm4)*th-
474 & (th-sqm4)*sh)/(th-sqm4)**2
475 smm3=2d0*((2d0*sqm3-3d0*sqm4+th)*sqml-(2d0*sqml-sqm4+th)*
477 smm12=4d0*((2d0*sqml-sqm4-2d0*sqm3+th)*sh+(th-3d0*sqm3-
478 & 3d0*sqm4)*th+(2d0*sqm3-2d0*sqml+3d0*sqm4)*sqm3)/
479 & ((uh-sqm3)*(th-sqm4))
480 smm13=-4d0*((th+sqml-2d0*sqm4)*th-(sqm3+3d0*sqml-2d0*sqm4)*
481 & sqm3+(sqm3+3d0*sqml+th)*sh-(th-sqm3+sh)**2)/
482 & ((uh-sqm3)*(sh-sqml))
483 smm23=-4d0*((sqml-sqm4+sqm3)*th-sqm3**2+sqm3*(sqml+sqm4)-
484 & 3d0*sqml*sqm4-(sqml-sqm4-sqm3+th)*sh)/
485 & ((sh-sqml)*(th-sqm4))
486 smm=(sh/(sh-sqml))**2*(smm1+smm2+smm3+smm12+smm13+smm23)*
487 &
parp(181+3*((ia-11)/2)+(iabs(
j)-11)/2)**2/(4d0*paru(1))
489 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,22).EQ.0) goto 300
490 IF(isde.EQ.2.AND.kfac(1,22)*kfac(2,
i).EQ.0) goto 300
495 sigh(nchn)=fhcc*smm*widsc
499 ELSEIF(isub.EQ.349.OR.isub.EQ.350)
THEN
503 sqmh=pmas(kfrec,1)**2
504 gmmh=pmas(kfrec,1)*pmas(kfrec,2)
506 hbw3=gmmh/((sqm3-sqmh)**2+gmmh**2)
507 CALL
pywidt(kfres,sqm3,wdtp,wdte)
508 gmmh3=sqrt(sqm3)*wdtp(0)
509 hbw3c=gmmh3/((sqm3-sqmh)**2+gmmh3**2)
510 hbw4=gmmh/((sqm4-sqmh)**2+gmmh**2)
511 CALL
pywidt(kfres,sqm4,wdtp,wdte)
512 gmmh4=sqrt(sqm4)*wdtp(0)
513 hbw4c=gmmh4/((sqm4-sqmh)**2+gmmh4**2)
515 fachh=comfac*(hbw3c/hbw3)*(hbw4c/hbw4)*(th*uh-sqm3*sqm4)
516 xwhh=(1d0-2d0*xwv)/(8d0*xwv*(1d0-xwv))
519 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 320
520 ei=kchg(iabs(
i),1)/3d0
524 IF(iabs(
i).LE.10) fcoi=faca/3d0
526 hbwz=1d0/((sh-sqmz)**2+gmmz**2)
527 IF(iabs(
i).LT.10)
THEN
528 dsighh=8d0*aem**2*(
ei**2/sh2+
529 & 2d0*
ei*vi*xwhh*(sh-sqmz)*hbwz/sh+
530 & (vi**2+ai**2)*xwhh**2*hbwz)
532 iaoff=181+3*((iabs(
i)-11)/2)
533 hsum=(
parp(iaoff)**2+
parp(iaoff+1)**2+
parp(iaoff+2)**2)/
535 dsighh=8d0*aem**2*(
ei**2/sh2+
536 & 2d0*
ei*vi*xwhh*(sh-sqmz)*hbwz/sh+
537 & (vi**2+ai**2)*xwhh**2*hbwz)+
538 & 8d0*aem*(
ei*hsum/(sh*th)+
539 & (vi+ai)*xwhh*hsum*(sh-sqmz)*hbwz/th)+
543 IF(iabs(
i).LT.10)
THEN
544 dsighh=8d0*aem**2*
ei**2/sh2
546 iaoff=181+3*((iabs(
i)-11)/2)
547 hsum=(
parp(iaoff)**2+
parp(iaoff+1)**2+
parp(iaoff+2)**2)/
549 dsighh=8d0*aem**2*
ei**2/sh2+8d0*aem*
ei*hsum/(sh*th)+
557 sigh(nchn)=fachh*fcoi*dsighh
560 ELSEIF(isub.EQ.351.OR.isub.EQ.352)
THEN
564 sqmh=pmas(kfrec,1)**2
565 IF(isub.EQ.351) facnor=
parp(190)**8*
parp(192)**2
566 IF(isub.EQ.352) facnor=
parp(191)**6*2d0*
567 & pmas(
pycomp(9900024),1)**2
568 facww=comfac*facnor*taup*
vint(2)*
vint(219)
569 facprt=1d0/((
vint(204)**2-
vint(215))*
571 facpru=1d0/((
vint(204)**2+2d0*
vint(217))*
573 CALL
pywidt(kfres,sh,wdtp,wdte)
575 facbw=(1d0/paru(1))*
vint(2)/((sh-sqmh)**2+hs**2)
576 IF(abs(shr-pmas(kfrec,1)).GT.
parp(48)*pmas(kfrec,2))
579 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 340
580 IF(isub.EQ.352.AND.iabs(
i).GT.10) goto 340
581 kchwi=(1-2*mod(iabs(
i),2))*isign(1,
i)
583 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 330
584 IF(isub.EQ.352.AND.iabs(
j).GT.10) goto 330
585 kchwj=(1-2*mod(iabs(
j),2))*isign(1,
j)
587 IF(iabs(kchh).NE.2) goto 330
589 hf=shr*(wdte(0,1)+wdte(0,(5-kchh/2)/2)+wdte(0,4))
590 IF(
i.EQ.
j.AND.iabs(
i).GT.10)
THEN
591 facprp=0.5d0*(facprt+facpru)**2
599 sigh(nchn)=faclr*facww*facprp*facbw*hf
603 ELSEIF(isub.EQ.353)
THEN
605 sqmzr=pmas(
pycomp(kfpr(isub,1)),1)**2
606 CALL
pywidt(kfpr(isub,1),sh,wdtp,wdte)
608 facbw=4d0*comfac/((sh-sqmzr)**2+hs**2)*3d0
609 hf=shr*(wdte(0,1)+wdte(0,2)+wdte(0,4))
610 hp=(aem/(3d0*(1d0-2d0*xw)))*xwc*sh
612 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 350
613 IF(iabs(
i).LE.8)
THEN
614 ei=kchg(iabs(
i),1)/3d0
615 ai=
sign(1d0,
ei+0.1d0)*(1d0-2d0*xw)
622 IF(iabs(
i).LE.10) hi=hi*faca/3d0
627 sigh(nchn)=hi*facbw*hf
630 ELSEIF(isub.EQ.354)
THEN
632 sqmwr=pmas(
pycomp(kfpr(isub,1)),1)**2
633 CALL
pywidt(kfpr(isub,1),sh,wdtp,wdte)
635 facbw=4d0*comfac/((sh-sqmwr)**2+hs**2)*3d0
638 IF(
i.EQ.0.OR.kfac(1,
i).EQ.0) goto 370
641 IF(
j.EQ.0.OR.kfac(2,
j).EQ.0) goto 360
643 IF(
i*
j.GT.0.OR.mod(ia+ja,2).EQ.0) goto 360
644 IF((ia.LE.10.AND.ja.GT.10).OR.(ia.GT.10.AND.ja.LE.10))
646 kchw=(kchg(ia,1)*isign(1,
i)+kchg(ja,1)*isign(1,
j))/3
648 IF(ia.LE.10) hi=hi*vckm((ia+1)/2,(ja+1)/2)*faca/3d0
653 hf=shr*(wdte(0,1)+wdte(0,(5-kchw)/2)+wdte(0,4))
654 sigh(nchn)=hi*facbw*hf
659 ELSEIF(isub.LE.400)
THEN
664 CALL
pywidt(kfgstr,sh,wdtp,wdte)
666 hf=shr*(wdte(0,1)+wdte(0,2)+wdte(0,4))
667 facg=comfac*
parp(50)**2/(16d0*paru(1))*sh*hf/
668 & ((sh-pmas(kcgstr,1)**2)**2+hs**2)
670 facg = facg * sh**2 / pmas(kcgstr,1)**4
672 IF(
i.EQ.0.OR.kfac(1,
i)*kfac(2,-
i).EQ.0) goto 380
674 IF(iabs(
i).LE.10) hi=hi*faca/3d0
682 ELSEIF(isub.EQ.392)
THEN
686 CALL
pywidt(kfgstr,sh,wdtp,wdte)
688 hf=shr*(wdte(0,1)+wdte(0,2)+wdte(0,4))
689 facg=comfac*
parp(50)**2/(32d0*paru(1))*sh*hf/
690 & ((sh-pmas(kcgstr,1)**2)**2+hs**2)
692 facg = facg * sh**2 / pmas(kcgstr,1)**4
693 IF(kfac(1,21)*kfac(2,21).EQ.0) goto 390
701 ELSEIF(isub.EQ.393)
THEN
705 facg=comfac*
parp(50)**2*as*sh/(72d0*paru(1)*sqm4)*
706 & (4d0*(th2+uh2)/sh2+9d0*(th+uh)/sh+(th2/uh+uh2/th)/sh+
707 & 3d0*(4d0+th/uh+uh/th)+4d0*(sh/uh+sh/th)+
710 gmmg=pmas(kcgstr,1)*pmas(kcgstr,2)
711 hbw4=gmmg/((sqm4-pmas(kcgstr,1)**2)**2+gmmg**2)
712 CALL
pywidt(kfgstr,sqm4,wdtp,wdte)
713 hs=sqrt(sqm4)*wdtp(0)
714 hf=sqrt(sqm4)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
715 hbw4c=hf/((sqm4-pmas(kcgstr,1)**2)**2+hs**2)
718 IF(
i.EQ.0.OR.iabs(
i).GT.
mstp(58).OR.
719 & kfac(1,
i)*kfac(2,-
i).EQ.0) goto 400
727 ELSEIF(isub.EQ.394)
THEN
731 facg=-comfac*
parp(50)**2*as*sh/(192d0*paru(1)*sqm4)*
732 & (4d0*(sh2+uh2)/(th*sh)+9d0*(sh+uh)/sh+sh/uh+uh2/sh2+
733 & 3d0*th*(4d0+sh/uh+uh/sh)/sh+4d0*th2*(1d0/uh+1d0/sh)/sh+
734 & 2d0*th2*th/(uh*sh2))
736 gmmg=pmas(kcgstr,1)*pmas(kcgstr,2)
737 hbw4=gmmg/((sqm4-pmas(kcgstr,1)**2)**2+gmmg**2)
738 CALL
pywidt(kfgstr,sqm4,wdtp,wdte)
739 hs=sqrt(sqm4)*wdtp(0)
740 hf=sqrt(sqm4)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
741 hbw4c=hf/((sqm4-pmas(kcgstr,1)**2)**2+hs**2)
744 IF(
i.EQ.0.OR.iabs(
i).GT.
mstp(58)) goto 420
746 IF(isde.EQ.1.AND.kfac(1,
i)*kfac(2,21).EQ.0) goto 410
747 IF(isde.EQ.2.AND.kfac(1,21)*kfac(2,
i).EQ.0) goto 410
756 ELSEIF(isub.EQ.395)
THEN
760 facg=comfac*3d0*
parp(50)**2*as*sh/(32d0*paru(1)*sqm4)*
761 & ((th2+th*uh+uh2)**2/(sh2*th*uh)+2d0*(th2/uh+uh2/th)/sh+
762 & 3d0*(th/uh+uh/th)+2d0*(sh/uh+sh/th)+sh2/(th*uh))
764 gmmg=pmas(kcgstr,1)*pmas(kcgstr,2)
765 hbw4=gmmg/((sqm4-pmas(kcgstr,1)**2)**2+gmmg**2)
766 CALL
pywidt(kfgstr,sqm4,wdtp,wdte)
767 hs=sqrt(sqm4)*wdtp(0)
768 hf=sqrt(sqm4)*(wdte(0,1)+wdte(0,2)+wdte(0,4))
769 hbw4c=hf/((sqm4-pmas(kcgstr,1)**2)**2+hs**2)
771 IF(kfac(1,21)*kfac(2,21).NE.0)
THEN