8 SUBROUTINE pywidx(KFLR,SH,WDTP,WDTE)
11 IMPLICIT DOUBLE PRECISION(a-
h, o-
z)
15 parameter(ksusy1=1000000,ksusy2=2000000,ktechn=3000000,
16 &kexcit=4000000,kdimen=5000000)
18 common/
pydat1/mstu(200),paru(200),mstj(200),parj(200)
19 common/
pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
20 common/
pydat3/mdcy(500,3),mdme(8000,2),brat(8000),kfdp(8000,5)
21 common/
pysubs/msel,mselpd,msub(500),kfin(2,-40:40),ckin(200)
24 common/
pyint4/mwid(500),wids(500,5)
25 common/
pymssm/imss(0:99),rmss(0:99)
26 common/pytcsm/itcm(0:99),rtcm(0:99)
30 dimension wdtp(0:400),wdte(0:400,0:5),mofsv(3,2),widwsv(3,2),
32 SAVE mofsv,widwsv,wid2sv
33 DATA mofsv/6*0/,widwsv/6*0d0/,wid2sv/6*0d0/
53 IF(
mstp(8).GE.2) xw=1d0-(pmas(24,1)/pmas(23,1))**2
56 IF(
mstp(8).GE.1) aem=sqrt(2d0)*paru(105)*pmas(24,1)**2*xw/paru(1)
68 IF(mdme(idc,1).LT.0) goto 130
69 rm1=pmas(iabs(kfdp(idc,1)),1)**2/sh
70 rm2=pmas(iabs(kfdp(idc,2)),1)**2/sh
71 IF(sqrt(rm1)+sqrt(rm2).GT.1d0) goto 130
79 IF(
i.GE.6.AND.
mstp(35).GE.1) fcof=fcof*
pyhfth(sh,sh*rm1,1d0)
80 IF(
i.EQ.6) wid2=wids(6,1)
81 IF((
i.EQ.7.OR.
i.EQ.8)) wid2=wids(
i,1)
88 IF((
i.EQ.15.OR.
i.EQ.16)) wid2=wids(2+
i,1)
90 be34=sqrt(
max(0d0,1d0-4d0*rm1))
91 wdtp(
i)=fac*fcof*(vf**2*(1d0+2d0*rm1)+af**2*(1d0-4d0*rm1))*
93 wdtp(0)=wdtp(0)+wdtp(
i)
94 IF(mdme(idc,1).GT.0)
THEN
95 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
96 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+
98 wdte(
i,0)=wdte(
i,mdme(idc,1))
99 wdte(0,0)=wdte(0,0)+wdte(
i,0)
104 ELSEIF(kfla.EQ.24)
THEN
106 fac=(aem/(24d0*xw))*shr
107 DO 140
i=1,mdcy(kc,3)
109 IF(mdme(idc,1).LT.0) goto 140
110 rm1=pmas(iabs(kfdp(idc,1)),1)**2/sh
111 rm2=pmas(iabs(kfdp(idc,2)),1)**2/sh
112 IF(sqrt(rm1)+sqrt(rm2).GT.1d0) goto 140
116 fcof=3d0*radc*vckm((
i-1)/4+1,mod(
i-1,4)+1)
118 IF(mod(
i,4).EQ.3) wid2=wids(6,2)
119 IF(mod(
i,4).EQ.0) wid2=wids(8,2)
120 IF(
i.GE.13) wid2=wid2*wids(7,3)
122 IF(mod(
i,4).EQ.3) wid2=wids(6,3)
123 IF(mod(
i,4).EQ.0) wid2=wids(8,3)
124 IF(
i.GE.13) wid2=wid2*wids(7,2)
130 IF(
i.EQ.20) wid2=wids(17,3)*wids(18,2)
132 IF(
i.EQ.20) wid2=wids(17,2)*wids(18,3)
135 wdtp(
i)=fac*fcof*(2d0-rm1-rm2-(rm1-rm2)**2)*
136 & sqrt(
max(0d0,(1d0-rm1-rm2)**2-4d0*rm1*rm2))
137 wdtp(0)=wdtp(0)+wdtp(
i)
138 IF(mdme(idc,1).GT.0)
THEN
139 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
140 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
141 wdte(
i,0)=wdte(
i,mdme(idc,1))
142 wdte(0,0)=wdte(0,0)+wdte(
i,0)
147 ELSEIF(kfla.EQ.ktechn+100021)
THEN
150 IF(itcm(2).EQ.0)
THEN
152 ELSEIF(itcm(2).EQ.1)
THEN
155 DO 150
i=1,mdcy(kc,3)
157 IF(mdme(idc,1).LT.0) goto 150
158 pm1=pmas(
pycomp(kfdp(idc,1)),1)
160 IF(rm1.GT.0.25d0) goto 150
162 IF(
i.EQ.5.OR.
i.EQ.6.OR.imdl.EQ.2)
THEN
167 wdtp(
i)=fac*(1d0+2d0*rm1)*sqrt(1d0-4d0*rm1)*fmix
168 IF(
i.EQ.6) wid2=wids(6,1)
169 wdtp(0)=wdtp(0)+wdtp(
i)
170 IF(mdme(idc,1).GT.0)
THEN
171 wdte(
i,mdme(idc,1))=wdtp(
i)*wid2
172 wdte(0,mdme(idc,1))=wdte(0,mdme(idc,1))+wdte(
i,mdme(idc,1))
173 wdte(
i,0)=wdte(
i,mdme(idc,1))
174 wdte(0,0)=wdte(0,0)+wdte(
i,0)