File indexing completed on 2025-08-05 08:21:16
0001
0002
0003
0004
0005
0006
0007
0008
0009 SUBROUTINE PYSGHG(NCHN,SIGS)
0010
0011
0012 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0013 IMPLICIT INTEGER(I-N)
0014 INTEGER PYK,PYCHGE,PYCOMP
0015
0016 PARAMETER (KSUSY1=1000000,KSUSY2=2000000,KTECHN=3000000,
0017 &KEXCIT=4000000,KDIMEN=5000000)
0018
0019 COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0020 COMMON/PYDAT2/KCHG(500,4),PMAS(500,4),PARF(2000),VCKM(4,4)
0021 COMMON/PYDAT3/MDCY(500,3),MDME(8000,2),BRAT(8000),KFDP(8000,5)
0022 COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
0023 COMMON/PYINT1/MINT(400),VINT(400)
0024 COMMON/PYINT2/ISET(500),KFPR(500,2),COEF(500,20),ICOL(40,4,2)
0025 COMMON/PYINT3/XSFX(2,-40:40),ISIG(1000,3),SIGH(1000)
0026 COMMON/PYINT4/MWID(500),WIDS(500,5)
0027 COMMON/PYSUBS/MSEL,MSELPD,MSUB(500),KFIN(2,-40:40),CKIN(200)
0028 COMMON/PYMSSM/IMSS(0:99),RMSS(0:99)
0029 COMMON/PYSGCM/ISUB,ISUBSV,MMIN1,MMAX1,MMIN2,MMAX2,MMINA,MMAXA,
0030 &KFAC(2,-40:40),COMFAC,FACK,FACA,SH,TH,UH,SH2,TH2,UH2,SQM3,SQM4,
0031 &SHR,SQPTH,TAUP,BE34,CTH,X(2),SQMZ,SQMW,GMMZ,GMMW,
0032 &AEM,AS,XW,XW1,XWC,XWV,POLL,POLR,POLLL,POLRR
0033 SAVE /PYDAT1/,/PYDAT2/,/PYDAT3/,/PYPARS/,/PYINT1/,/PYINT2/,
0034 &/PYINT3/,/PYINT4/,/PYSUBS/,/PYMSSM/,/PYSGCM/
0035
0036 DIMENSION WDTP(0:400),WDTE(0:400,0:5)
0037 COMPLEX*16 A004,A204,A114,A00U,A20U,A11U
0038 COMPLEX*16 CIGTOT,CIZTOT,F0ALP,F1ALP,F2ALP,F0BET,F1BET,F2BET,FIF
0039
0040
0041 IHIGG=1
0042 KFHIGG=25
0043 IF(ISUB.EQ.401.OR.ISUB.EQ.402) THEN
0044 KFHIGG=KFPR(ISUB,1)
0045 END IF
0046 IF((ISUB.GE.151.AND.ISUB.LE.160).OR.(ISUB.GE.171.AND.
0047 &ISUB.LE.190)) THEN
0048 IHIGG=2
0049 IF(MOD(ISUB-1,10).GE.5) IHIGG=3
0050 KFHIGG=33+IHIGG
0051 IF(ISUB.EQ.151.OR.ISUB.EQ.156) ISUB=3
0052 IF(ISUB.EQ.152.OR.ISUB.EQ.157) ISUB=102
0053 IF(ISUB.EQ.153.OR.ISUB.EQ.158) ISUB=103
0054 IF(ISUB.EQ.171.OR.ISUB.EQ.176) ISUB=24
0055 IF(ISUB.EQ.172.OR.ISUB.EQ.177) ISUB=26
0056 IF(ISUB.EQ.173.OR.ISUB.EQ.178) ISUB=123
0057 IF(ISUB.EQ.174.OR.ISUB.EQ.179) ISUB=124
0058 IF(ISUB.EQ.181.OR.ISUB.EQ.186) ISUB=121
0059 IF(ISUB.EQ.182.OR.ISUB.EQ.187) ISUB=122
0060 IF(ISUB.EQ.183.OR.ISUB.EQ.188) ISUB=111
0061 IF(ISUB.EQ.184.OR.ISUB.EQ.189) ISUB=112
0062 IF(ISUB.EQ.185.OR.ISUB.EQ.190) ISUB=113
0063 ENDIF
0064 SQMH=PMAS(KFHIGG,1)**2
0065 GMMH=PMAS(KFHIGG,1)*PMAS(KFHIGG,2)
0066
0067
0068 IF((MSTP(46).GE.3.AND.MSTP(46).LE.6).AND.(ISUB.EQ.71.OR.ISUB.EQ.
0069 &72.OR.ISUB.EQ.73.OR.ISUB.EQ.76.OR.ISUB.EQ.77)) THEN
0070
0071 IF(MSTP(46).LE.4) THEN
0072 HDTLH=LOG(PMAS(25,1)/PARP(44))
0073 HDTMR=(4.5D0*PARU(1)/SQRT(3D0)-74D0/9D0)/8D0+HDTLH/12D0
0074 HDTNR=-1D0/18D0+HDTLH/6D0
0075 ELSE
0076 HDTNM=0.125D0*(1D0/(288D0*PARU(1)**2)+(PARP(47)/PARP(45))**2)
0077 HDTLQ=LOG(PARP(45)/PARP(44))
0078 HDTMR=-(4D0*PARU(1))**2*0.5D0*HDTNM+HDTLQ/12D0
0079 HDTNR=(4D0*PARU(1))**2*HDTNM+HDTLQ/6D0
0080 ENDIF
0081
0082
0083 HDTV=1D0/(16D0*PARU(1)*PARP(47)**2)
0084 A00L=DBLE(HDTV*SH)
0085 A20L=-0.5D0*A00L
0086 A11L=A00L/6D0
0087 HDTLS=LOG(SH/PARP(44)**2)
0088 A004=DBLE((HDTV*SH)**2/(4D0*PARU(1)))*
0089 & CMPLX(DBLE((176D0*HDTMR+112D0*HDTNR)/3D0+11D0/27D0-
0090 & (50D0/9D0)*HDTLS),DBLE(4D0*PARU(1)))
0091 A204=DBLE((HDTV*SH)**2/(4D0*PARU(1)))*
0092 & CMPLX(DBLE(32D0*(HDTMR+2D0*HDTNR)/3D0+25D0/54D0-
0093 & (20D0/9D0)*HDTLS),DBLE(PARU(1)))
0094 A114=DBLE((HDTV*SH)**2/(6D0*PARU(1)))*
0095 & CMPLX(DBLE(4D0*(-2D0*HDTMR+HDTNR)-1D0/18D0),DBLE(PARU(1)/6D0))
0096
0097
0098 IF(MSTP(46).EQ.3.OR.MSTP(46).EQ.5) THEN
0099 A00U=A00L/(1D0-A004/A00L)
0100 A20U=A20L/(1D0-A204/A20L)
0101 A11U=A11L/(1D0-A114/A11L)
0102 ELSE
0103 A00U=(A00L+DBLE(A004))/(1D0-DCMPLX(0.D0,A00L+DBLE(A004)))
0104 A20U=(A20L+DBLE(A204))/(1D0-DCMPLX(0.D0,A20L+DBLE(A204)))
0105 A11U=(A11L+DBLE(A114))/(1D0-DCMPLX(0.D0,A11L+DBLE(A114)))
0106 ENDIF
0107 ENDIF
0108
0109
0110
0111 IF(ISUB.LE.60) THEN
0112 IF(ISUB.EQ.3) THEN
0113
0114 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
0115 HS=SHR*WDTP(0)
0116 FACBW=4D0*COMFAC/((SH-SQMH)**2+HS**2)
0117 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
0118 & FACBW=0D0
0119 HP=AEM/(8D0*XW)*SH/SQMW*SH
0120 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
0121 DO 100 I=MMINA,MMAXA
0122 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 100
0123 IA=IABS(I)
0124 RMQ=PYMRUN(IA,SH)**2/SH
0125 HI=HP*RMQ
0126 IF(IA.LE.10) HI=HP*RMQ*FACA/3D0
0127 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) THEN
0128 IKFI=1
0129 IF(IA.LE.10.AND.MOD(IA,2).EQ.0) IKFI=2
0130 IF(IA.GT.10) IKFI=3
0131 HI=HI*PARU(150+10*IHIGG+IKFI)**2
0132 IF(IMSS(1).NE.0.AND.IA.EQ.5) THEN
0133 HI=HI/(1D0+RMSS(41))**2
0134 IF(IHIGG.NE.3) THEN
0135 HI=HI*(1D0+RMSS(41)*PARU(152+10*IHIGG)/
0136 & PARU(151+10*IHIGG))**2
0137 ENDIF
0138 ENDIF
0139 ENDIF
0140 NCHN=NCHN+1
0141 ISIG(NCHN,1)=I
0142 ISIG(NCHN,2)=-I
0143 ISIG(NCHN,3)=1
0144 SIGH(NCHN)=HI*FACBW*HF
0145 100 CONTINUE
0146
0147 ELSEIF(ISUB.EQ.5) THEN
0148
0149 CALL PYWIDT(25,SH,WDTP,WDTE)
0150 HS=SHR*WDTP(0)
0151 FACBW=4D0*COMFAC/((SH-SQMH)**2+HS**2)
0152 IF(ABS(SHR-PMAS(25,1)).GT.PARP(48)*PMAS(25,2)) FACBW=0D0
0153 HP=AEM/(8D0*XW)*SH/SQMW*SH
0154 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
0155 HI=HP/4D0
0156 FACI=8D0/(PARU(1)**2*XW1)*(AEM*XWC)**2
0157 DO 120 I=MMIN1,MMAX1
0158 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 120
0159 DO 110 J=MMIN2,MMAX2
0160 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 110
0161 EI=KCHG(IABS(I),1)/3D0
0162 AI=SIGN(1D0,EI)
0163 VI=AI-4D0*EI*XWV
0164 EJ=KCHG(IABS(J),1)/3D0
0165 AJ=SIGN(1D0,EJ)
0166 VJ=AJ-4D0*EJ*XWV
0167 NCHN=NCHN+1
0168 ISIG(NCHN,1)=I
0169 ISIG(NCHN,2)=J
0170 ISIG(NCHN,3)=1
0171 SIGH(NCHN)=FACI*(VI**2+AI**2)*(VJ**2+AJ**2)*HI*FACBW*HF
0172 110 CONTINUE
0173 120 CONTINUE
0174
0175 ELSEIF(ISUB.EQ.8) THEN
0176
0177 CALL PYWIDT(25,SH,WDTP,WDTE)
0178 HS=SHR*WDTP(0)
0179 FACBW=4D0*COMFAC/((SH-SQMH)**2+HS**2)
0180 IF(ABS(SHR-PMAS(25,1)).GT.PARP(48)*PMAS(25,2)) FACBW=0D0
0181 HP=AEM/(8D0*XW)*SH/SQMW*SH
0182 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
0183 HI=HP/2D0
0184 FACI=1D0/(4D0*PARU(1)**2)*(AEM/XW)**2
0185 DO 140 I=MMIN1,MMAX1
0186 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 140
0187 EI=SIGN(1D0,DBLE(I))*KCHG(IABS(I),1)
0188 DO 130 J=MMIN2,MMAX2
0189 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 130
0190 EJ=SIGN(1D0,DBLE(J))*KCHG(IABS(J),1)
0191 IF(EI*EJ.GT.0D0) GOTO 130
0192 NCHN=NCHN+1
0193 ISIG(NCHN,1)=I
0194 ISIG(NCHN,2)=J
0195 ISIG(NCHN,3)=1
0196 SIGH(NCHN)=FACI*VINT(180+I)*VINT(180+J)*HI*FACBW*HF
0197 130 CONTINUE
0198 140 CONTINUE
0199
0200 ELSEIF(ISUB.EQ.24) THEN
0201
0202
0203 HBW3=GMMZ/((SQM3-SQMZ)**2+GMMZ**2)
0204 CALL PYWIDT(23,SQM3,WDTP,WDTE)
0205 GMMZ3=SQRT(SQM3)*WDTP(0)
0206 HBW3C=GMMZ3/((SQM3-SQMZ)**2+GMMZ3**2)
0207 HBW4=GMMH/((SQM4-SQMH)**2+GMMH**2)
0208 CALL PYWIDT(KFHIGG,SQM4,WDTP,WDTE)
0209 GMMH4=SQRT(SQM4)*WDTP(0)
0210 HBW4C=GMMH4/((SQM4-SQMH)**2+GMMH4**2)
0211 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
0212 FACHZ=COMFAC*(HBW3C/HBW3)*(HBW4C/HBW4)*8D0*(AEM*XWC)**2*
0213 & (THUH+2D0*SH*SQM3)/((SH-SQMZ)**2+GMMZ**2)
0214 FACHZ=FACHZ*WIDS(23,2)*WIDS(KFHIGG,2)
0215 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) FACHZ=FACHZ*
0216 & PARU(154+10*IHIGG)**2
0217 DO 150 I=MMINA,MMAXA
0218 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 150
0219 EI=KCHG(IABS(I),1)/3D0
0220 AI=SIGN(1D0,EI)
0221 VI=AI-4D0*EI*XWV
0222 FCOI=1D0
0223 IF(IABS(I).LE.10) FCOI=FACA/3D0
0224 NCHN=NCHN+1
0225 ISIG(NCHN,1)=I
0226 ISIG(NCHN,2)=-I
0227 ISIG(NCHN,3)=1
0228 SIGH(NCHN)=FACHZ*FCOI*(VI**2+AI**2)
0229 150 CONTINUE
0230
0231 ELSEIF(ISUB.EQ.26) THEN
0232
0233
0234 HBW3=GMMW/((SQM3-SQMW)**2+GMMW**2)
0235 CALL PYWIDT(24,SQM3,WDTP,WDTE)
0236 GMMW3=SQRT(SQM3)*WDTP(0)
0237 HBW3C=GMMW3/((SQM3-SQMW)**2+GMMW3**2)
0238 HBW4=GMMH/((SQM4-SQMH)**2+GMMH**2)
0239 CALL PYWIDT(KFHIGG,SQM4,WDTP,WDTE)
0240 GMMH4=SQRT(SQM4)*WDTP(0)
0241 HBW4C=GMMH4/((SQM4-SQMH)**2+GMMH4**2)
0242 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
0243 FACHW=COMFAC*0.125D0*(AEM/XW)**2*(THUH+2D0*SH*SQM3)/
0244 & ((SH-SQMW)**2+GMMW**2)*(HBW3C/HBW3)*(HBW4C/HBW4)
0245 FACHW=FACHW*WIDS(KFHIGG,2)
0246 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) FACHW=FACHW*
0247 & PARU(155+10*IHIGG)**2
0248 DO 170 I=MMIN1,MMAX1
0249 IA=IABS(I)
0250 IF(I.EQ.0.OR.IA.GT.20.OR.KFAC(1,I).EQ.0) GOTO 170
0251 DO 160 J=MMIN2,MMAX2
0252 JA=IABS(J)
0253 IF(J.EQ.0.OR.JA.GT.20.OR.KFAC(1,J).EQ.0) GOTO 160
0254 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 160
0255 IF((IA.LE.10.AND.JA.GT.10).OR.(IA.GT.10.AND.JA.LE.10))
0256 & GOTO 160
0257 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
0258 FCKM=1D0
0259 IF(IA.LE.10) FCKM=VCKM((IA+1)/2,(JA+1)/2)
0260 FCOI=1D0
0261 IF(IA.LE.10) FCOI=FACA/3D0
0262 NCHN=NCHN+1
0263 ISIG(NCHN,1)=I
0264 ISIG(NCHN,2)=J
0265 ISIG(NCHN,3)=1
0266 SIGH(NCHN)=FACHW*FCOI*FCKM*WIDS(24,(5-KCHW)/2)
0267 160 CONTINUE
0268 170 CONTINUE
0269
0270 ELSEIF(ISUB.EQ.32) THEN
0271
0272 FHCQ=COMFAC*FACA*AS*AEM/XW*1D0/24D0
0273
0274 SQMHC=PMAS(25,1)**2
0275 GMMHC=PMAS(25,1)*PMAS(25,2)
0276 HBW4=GMMHC/((SQM4-SQMHC)**2+GMMHC**2)
0277 CALL PYWIDT(25,SQM4,WDTP,WDTE)
0278 GMMHCC=SQRT(SQM4)*WDTP(0)
0279 HBW4C=GMMHCC/((SQM4-SQMHC)**2+GMMHCC**2)
0280 FHCQ=FHCQ*HBW4C/HBW4
0281 DO 190 I=MMINA,MMAXA
0282 IA=IABS(I)
0283 IF(IA.NE.5) GOTO 190
0284 SQML=PYMRUN(IA,SH)**2
0285 SQMQ=PMAS(IA,1)**2
0286 FACHCQ=FHCQ*SQML/SQMW*
0287 & (SH/(SQMQ-UH)+2D0*SQMQ*(SQM4-UH)/(SQMQ-UH)**2+(SQMQ-UH)/SH-
0288 & 2D0*SQMQ/(SQMQ-UH)+2D0*(SQM4-UH)/(SQMQ-UH)*
0289 & (SQM4-SQMQ-SH)/SH)
0290 DO 180 ISDE=1,2
0291 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 180
0292 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 180
0293 NCHN=NCHN+1
0294 ISIG(NCHN,ISDE)=I
0295 ISIG(NCHN,3-ISDE)=21
0296 ISIG(NCHN,3)=1
0297 SIGH(NCHN)=FACHCQ*WIDS(25,2)
0298 180 CONTINUE
0299 190 CONTINUE
0300 ENDIF
0301
0302 ELSEIF(ISUB.LE.80) THEN
0303 IF(ISUB.EQ.71) THEN
0304
0305 IF(SH.LE.4.01D0*SQMZ) GOTO 220
0306
0307 IF(MSTP(46).LE.2) THEN
0308
0309 BE2=1D0-4D0*SQMZ/SH
0310 TH=-0.5D0*SH*BE2*(1D0-CTH)
0311 UH=-0.5D0*SH*BE2*(1D0+CTH)
0312 IF(MAX(TH,UH).GT.-1D0) GOTO 220
0313 SHANG=1D0/XW1*SQMW/SQMZ*(1D0+BE2)**2
0314 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
0315 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
0316 THANG=1D0/XW1*SQMW/SQMZ*(BE2-CTH)**2
0317 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
0318 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
0319 UHANG=1D0/XW1*SQMW/SQMZ*(BE2+CTH)**2
0320 AUHRE=(UH-SQMH)/((UH-SQMH)**2+GMMH**2)*UHANG
0321 AUHIM=-GMMH/((UH-SQMH)**2+GMMH**2)*UHANG
0322 FACZZ=COMFAC*1D0/(4096D0*PARU(1)**2*16D0*XW1**2)*
0323 & (AEM/XW)**4*(SH/SQMW)**2*(SQMZ/SQMW)*SH2
0324 IF(MSTP(46).LE.0) FACZZ=FACZZ*(ASHRE**2+ASHIM**2)
0325 IF(MSTP(46).EQ.1) FACZZ=FACZZ*((ASHRE+ATHRE+AUHRE)**2+
0326 & (ASHIM+ATHIM+AUHIM)**2)
0327 IF(MSTP(46).EQ.2) FACZZ=0D0
0328
0329 ELSE
0330
0331 FACZZ=COMFAC*(AEM/(16D0*PARU(1)*XW*XW1))**2*(64D0/9D0)*
0332 & ABS(A00U+2D0*A20U)**2
0333 ENDIF
0334 FACZZ=FACZZ*WIDS(23,1)
0335
0336 DO 210 I=MMIN1,MMAX1
0337 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 210
0338 EI=KCHG(IABS(I),1)/3D0
0339 AI=SIGN(1D0,EI)
0340 VI=AI-4D0*EI*XWV
0341 AVI=AI**2+VI**2
0342 DO 200 J=MMIN2,MMAX2
0343 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 200
0344 EJ=KCHG(IABS(J),1)/3D0
0345 AJ=SIGN(1D0,EJ)
0346 VJ=AJ-4D0*EJ*XWV
0347 AVJ=AJ**2+VJ**2
0348 NCHN=NCHN+1
0349 ISIG(NCHN,1)=I
0350 ISIG(NCHN,2)=J
0351 ISIG(NCHN,3)=1
0352 SIGH(NCHN)=0.5D0*FACZZ*AVI*AVJ
0353 200 CONTINUE
0354 210 CONTINUE
0355 220 CONTINUE
0356
0357 ELSEIF(ISUB.EQ.72) THEN
0358
0359 IF(SH.LE.4.01D0*SQMZ) GOTO 250
0360
0361 IF(MSTP(46).LE.2) THEN
0362
0363 BE2=SQRT((1D0-4D0*SQMW/SH)*(1D0-4D0*SQMZ/SH))
0364 CTH2=CTH**2
0365 TH=-0.5D0*SH*(1D0-2D0*(SQMW+SQMZ)/SH-BE2*CTH)
0366 UH=-0.5D0*SH*(1D0-2D0*(SQMW+SQMZ)/SH+BE2*CTH)
0367 IF(MAX(TH,UH).GT.-1D0) GOTO 250
0368 SHANG=4D0*SQRT(SQMW/(SQMZ*XW1))*(1D0-2D0*SQMW/SH)*
0369 & (1D0-2D0*SQMZ/SH)
0370 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
0371 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
0372 ATWRE=XW1/SQMZ*SH/(TH-SQMW)*((CTH-BE2)**2*(3D0/2D0+BE2/2D0*
0373 & CTH-(SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4D0*
0374 & ((SQMW+SQMZ)/SH*(1D0-3D0*CTH2)+8D0*SQMW*SQMZ/SH2*
0375 & (2D0*CTH2-1D0)+4D0*(SQMW**2+SQMZ**2)/SH2*CTH2+
0376 & 2D0*(SQMW+SQMZ)/SH*BE2*CTH))
0377 ATWIM=0D0
0378 AUWRE=XW1/SQMZ*SH/(UH-SQMW)*((CTH+BE2)**2*(3D0/2D0-BE2/2D0*
0379 & CTH-(SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4D0*
0380 & ((SQMW+SQMZ)/SH*(1D0-3D0*CTH2)+8D0*SQMW*SQMZ/SH2*
0381 & (2D0*CTH2-1D0)+4D0*(SQMW**2+SQMZ**2)/SH2*CTH2-
0382 & 2D0*(SQMW+SQMZ)/SH*BE2*CTH))
0383 AUWIM=0D0
0384 A4RE=2D0*XW1/SQMZ*(3D0-CTH2-4D0*(SQMW+SQMZ)/SH)
0385 A4IM=0D0
0386 FACWW=COMFAC*1D0/(4096D0*PARU(1)**2*16D0*XW1**2)*
0387 & (AEM/XW)**4*(SH/SQMW)**2*(SQMZ/SQMW)*SH2
0388 IF(MSTP(46).LE.0) FACWW=FACWW*(ASHRE**2+ASHIM**2)
0389 IF(MSTP(46).EQ.1) FACWW=FACWW*((ASHRE+ATWRE+AUWRE+A4RE)**2+
0390 & (ASHIM+ATWIM+AUWIM+A4IM)**2)
0391 IF(MSTP(46).EQ.2) FACWW=FACWW*((ATWRE+AUWRE+A4RE)**2+
0392 & (ATWIM+AUWIM+A4IM)**2)
0393
0394 ELSE
0395
0396 FACWW=COMFAC*(AEM/(16D0*PARU(1)*XW*XW1))**2*(64D0/9D0)*
0397 & ABS(A00U-A20U)**2
0398 ENDIF
0399 FACWW=FACWW*WIDS(24,1)
0400
0401 DO 240 I=MMIN1,MMAX1
0402 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 240
0403 EI=KCHG(IABS(I),1)/3D0
0404 AI=SIGN(1D0,EI)
0405 VI=AI-4D0*EI*XWV
0406 AVI=AI**2+VI**2
0407 DO 230 J=MMIN2,MMAX2
0408 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 230
0409 EJ=KCHG(IABS(J),1)/3D0
0410 AJ=SIGN(1D0,EJ)
0411 VJ=AJ-4D0*EJ*XWV
0412 AVJ=AJ**2+VJ**2
0413 NCHN=NCHN+1
0414 ISIG(NCHN,1)=I
0415 ISIG(NCHN,2)=J
0416 ISIG(NCHN,3)=1
0417 SIGH(NCHN)=FACWW*AVI*AVJ
0418 230 CONTINUE
0419 240 CONTINUE
0420 250 CONTINUE
0421
0422 ELSEIF(ISUB.EQ.73) THEN
0423
0424 IF(SH.LE.2D0*SQMZ+2D0*SQMW) GOTO 280
0425
0426 IF(MSTP(46).LE.2) THEN
0427
0428 BE2=1D0-2D0*(SQMZ+SQMW)/SH+((SQMZ-SQMW)/SH)**2
0429 EP1=1D0-(SQMZ-SQMW)/SH
0430 EP2=1D0+(SQMZ-SQMW)/SH
0431 TH=-0.5D0*SH*BE2*(1D0-CTH)
0432 UH=(SQMZ-SQMW)**2/SH-0.5D0*SH*BE2*(1D0+CTH)
0433 IF(MAX(TH,UH).GT.-1D0) GOTO 280
0434 THANG=(BE2-EP1*CTH)*(BE2-EP2*CTH)
0435 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
0436 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
0437 ASWRE=-XW1/SQMZ*SH/(SH-SQMW)*(-BE2*(EP1+EP2)**4*CTH+
0438 & 1D0/4D0*(BE2+EP1*EP2)**2*((EP1-EP2)**2-4D0*BE2*CTH)+
0439 & 2D0*BE2*(BE2+EP1*EP2)*(EP1+EP2)**2*CTH-
0440 & 1D0/16D0*SH/SQMW*(EP1**2-EP2**2)**2*(BE2+EP1*EP2)**2)
0441 ASWIM=0D0
0442 AUWRE=XW1/SQMZ*SH/(UH-SQMW)*(-BE2*(EP2+EP1*CTH)*
0443 & (EP1+EP2*CTH)*(BE2+EP1*EP2)+BE2*(EP2+EP1*CTH)*
0444 & (BE2+EP1*EP2*CTH)*(2D0*EP2-EP2*CTH+EP1)-
0445 & BE2*(EP2+EP1*CTH)**2*(BE2-EP2**2*CTH)-1D0/8D0*
0446 & (BE2+EP1*EP2*CTH)**2*((EP1+EP2)**2+2D0*BE2*(1D0-CTH))+
0447 & 1D0/32D0*SH/SQMW*(BE2+EP1*EP2*CTH)**2*
0448 & (EP1**2-EP2**2)**2-BE2*(EP1+EP2*CTH)*(EP2+EP1*CTH)*
0449 & (BE2+EP1*EP2)+BE2*(EP1+EP2*CTH)*(BE2+EP1*EP2*CTH)*
0450 & (2D0*EP1-EP1*CTH+EP2)-BE2*(EP1+EP2*CTH)**2*
0451 & (BE2-EP1**2*CTH)-1D0/8D0*(BE2+EP1*EP2*CTH)**2*
0452 & ((EP1+EP2)**2+2D0*BE2*(1D0-CTH))+1D0/32D0*SH/SQMW*
0453 & (BE2+EP1*EP2*CTH)**2*(EP1**2-EP2**2)**2)
0454 AUWIM=0D0
0455 A4RE=XW1/SQMZ*(EP1**2*EP2**2*(CTH**2-1D0)-
0456 & 2D0*BE2*(EP1**2+EP2**2+EP1*EP2)*CTH-2D0*BE2*EP1*EP2)
0457 A4IM=0D0
0458 FACZW=COMFAC*1D0/(4096D0*PARU(1)**2*4D0*XW1)*(AEM/XW)**4*
0459 & (SH/SQMW)**2*SQRT(SQMZ/SQMW)*SH2
0460 IF(MSTP(46).LE.0) FACZW=0D0
0461 IF(MSTP(46).EQ.1) FACZW=FACZW*((ATHRE+ASWRE+AUWRE+A4RE)**2+
0462 & (ATHIM+ASWIM+AUWIM+A4IM)**2)
0463 IF(MSTP(46).EQ.2) FACZW=FACZW*((ASWRE+AUWRE+A4RE)**2+
0464 & (ASWIM+AUWIM+A4IM)**2)
0465
0466 ELSE
0467
0468 FACZW=COMFAC*AEM**2/(64D0*PARU(1)**2*XW**2*XW1)*16D0*
0469 & ABS(A20U+3D0*A11U*DBLE(CTH))**2
0470 ENDIF
0471 FACZW=FACZW*WIDS(23,2)
0472
0473 DO 270 I=MMIN1,MMAX1
0474 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 270
0475 EI=KCHG(IABS(I),1)/3D0
0476 AI=SIGN(1D0,EI)
0477 VI=AI-4D0*EI*XWV
0478 AVI=AI**2+VI**2
0479 KCHWI=ISIGN(1,KCHG(IABS(I),1)*ISIGN(1,I))
0480 DO 260 J=MMIN2,MMAX2
0481 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 260
0482 EJ=KCHG(IABS(J),1)/3D0
0483 AJ=SIGN(1D0,EJ)
0484 VJ=AI-4D0*EJ*XWV
0485 AVJ=AJ**2+VJ**2
0486 KCHWJ=ISIGN(1,KCHG(IABS(J),1)*ISIGN(1,J))
0487 NCHN=NCHN+1
0488 ISIG(NCHN,1)=I
0489 ISIG(NCHN,2)=J
0490 ISIG(NCHN,3)=1
0491 SIGH(NCHN)=FACZW*AVI*VINT(180+J)*WIDS(24,(5-KCHWJ)/2)
0492 NCHN=NCHN+1
0493 ISIG(NCHN,1)=I
0494 ISIG(NCHN,2)=J
0495 ISIG(NCHN,3)=2
0496 SIGH(NCHN)=FACZW*VINT(180+I)*WIDS(24,(5-KCHWI)/2)*AVJ
0497 260 CONTINUE
0498 270 CONTINUE
0499 280 CONTINUE
0500
0501 ELSEIF(ISUB.EQ.75) THEN
0502
0503
0504 ELSEIF(ISUB.EQ.76) THEN
0505
0506 IF(SH.LE.4.01D0*SQMZ) GOTO 310
0507
0508 IF(MSTP(46).LE.2) THEN
0509
0510 BE2=SQRT((1D0-4D0*SQMW/SH)*(1D0-4D0*SQMZ/SH))
0511 CTH2=CTH**2
0512 TH=-0.5D0*SH*(1D0-2D0*(SQMW+SQMZ)/SH-BE2*CTH)
0513 UH=-0.5D0*SH*(1D0-2D0*(SQMW+SQMZ)/SH+BE2*CTH)
0514 IF(MAX(TH,UH).GT.-1D0) GOTO 310
0515 SHANG=4D0*SQRT(SQMW/(SQMZ*XW1))*(1D0-2D0*SQMW/SH)*
0516 & (1D0-2D0*SQMZ/SH)
0517 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
0518 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
0519 ATWRE=XW1/SQMZ*SH/(TH-SQMW)*((CTH-BE2)**2*(3D0/2D0+BE2/2D0*
0520 & CTH-(SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4D0*
0521 & ((SQMW+SQMZ)/SH*(1D0-3D0*CTH2)+8D0*SQMW*SQMZ/SH2*
0522 & (2D0*CTH2-1D0)+4D0*(SQMW**2+SQMZ**2)/SH2*CTH2+
0523 & 2D0*(SQMW+SQMZ)/SH*BE2*CTH))
0524 ATWIM=0D0
0525 AUWRE=XW1/SQMZ*SH/(UH-SQMW)*((CTH+BE2)**2*(3D0/2D0-BE2/2D0*
0526 & CTH-(SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4D0*
0527 & ((SQMW+SQMZ)/SH*(1D0-3D0*CTH2)+8D0*SQMW*SQMZ/SH2*
0528 & (2D0*CTH2-1D0)+4D0*(SQMW**2+SQMZ**2)/SH2*CTH2-
0529 & 2D0*(SQMW+SQMZ)/SH*BE2*CTH))
0530 AUWIM=0D0
0531 A4RE=2D0*XW1/SQMZ*(3D0-CTH2-4D0*(SQMW+SQMZ)/SH)
0532 A4IM=0D0
0533 FACZZ=COMFAC*1D0/(4096D0*PARU(1)**2)*(AEM/XW)**4*
0534 & (SH/SQMW)**2*SH2
0535 IF(MSTP(46).LE.0) FACZZ=FACZZ*(ASHRE**2+ASHIM**2)
0536 IF(MSTP(46).EQ.1) FACZZ=FACZZ*((ASHRE+ATWRE+AUWRE+A4RE)**2+
0537 & (ASHIM+ATWIM+AUWIM+A4IM)**2)
0538 IF(MSTP(46).EQ.2) FACZZ=FACZZ*((ATWRE+AUWRE+A4RE)**2+
0539 & (ATWIM+AUWIM+A4IM)**2)
0540
0541 ELSE
0542
0543 FACZZ=COMFAC*(AEM/(4D0*PARU(1)*XW))**2*(64D0/9D0)*
0544 & ABS(A00U-A20U)**2
0545 ENDIF
0546 FACZZ=FACZZ*WIDS(23,1)
0547
0548 DO 300 I=MMIN1,MMAX1
0549 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 300
0550 EI=SIGN(1D0,DBLE(I))*KCHG(IABS(I),1)
0551 DO 290 J=MMIN2,MMAX2
0552 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 290
0553 EJ=SIGN(1D0,DBLE(J))*KCHG(IABS(J),1)
0554 IF(EI*EJ.GT.0D0) GOTO 290
0555 NCHN=NCHN+1
0556 ISIG(NCHN,1)=I
0557 ISIG(NCHN,2)=J
0558 ISIG(NCHN,3)=1
0559 SIGH(NCHN)=0.5D0*FACZZ*VINT(180+I)*VINT(180+J)
0560 290 CONTINUE
0561 300 CONTINUE
0562 310 CONTINUE
0563
0564 ELSEIF(ISUB.EQ.77) THEN
0565
0566 IF(SH.LE.4.01D0*SQMW) GOTO 340
0567
0568 IF(MSTP(46).LE.2) THEN
0569
0570 BE2=1D0-4D0*SQMW/SH
0571 BE4=BE2**2
0572 CTH2=CTH**2
0573 CTH3=CTH**3
0574 TH=-0.5D0*SH*BE2*(1D0-CTH)
0575 UH=-0.5D0*SH*BE2*(1D0+CTH)
0576 IF(MAX(TH,UH).GT.-1D0) GOTO 340
0577 SHANG=(1D0+BE2)**2
0578 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
0579 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
0580 THANG=(BE2-CTH)**2
0581 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
0582 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
0583 UHANG=(BE2+CTH)**2
0584 AUHRE=(UH-SQMH)/((UH-SQMH)**2+GMMH**2)*UHANG
0585 AUHIM=-GMMH/((UH-SQMH)**2+GMMH**2)*UHANG
0586 SGZANG=1D0/SQMW*BE2*(3D0-BE2)**2*CTH
0587 ASGRE=XW*SGZANG
0588 ASGIM=0D0
0589 ASZRE=XW1*SH/(SH-SQMZ)*SGZANG
0590 ASZIM=0D0
0591 TGZANG=1D0/SQMW*(BE2*(4D0-2D0*BE2+BE4)+BE2*(4D0-10D0*BE2+
0592 & BE4)*CTH+(2D0-11D0*BE2+10D0*BE4)*CTH2+BE2*CTH3)
0593 ATGRE=0.5D0*XW*SH/TH*TGZANG
0594 ATGIM=0D0
0595 ATZRE=0.5D0*XW1*SH/(TH-SQMZ)*TGZANG
0596 ATZIM=0D0
0597 UGZANG=1D0/SQMW*(BE2*(4D0-2D0*BE2+BE4)-BE2*(4D0-10D0*BE2+
0598 & BE4)*CTH+(2D0-11D0*BE2+10D0*BE4)*CTH2-BE2*CTH3)
0599 AUGRE=0.5D0*XW*SH/UH*UGZANG
0600 AUGIM=0D0
0601 AUZRE=0.5D0*XW1*SH/(UH-SQMZ)*UGZANG
0602 AUZIM=0D0
0603 A4ARE=1D0/SQMW*(1D0+2D0*BE2-6D0*BE2*CTH-CTH2)
0604 A4AIM=0D0
0605 A4SRE=2D0/SQMW*(1D0+2D0*BE2-CTH2)
0606 A4SIM=0D0
0607 FWW=COMFAC*1D0/(4096D0*PARU(1)**2)*(AEM/XW)**4*
0608 & (SH/SQMW)**2*SH2
0609 IF(MSTP(46).LE.0) THEN
0610 AWWARE=ASHRE
0611 AWWAIM=ASHIM
0612 AWWSRE=0D0
0613 AWWSIM=0D0
0614 ELSEIF(MSTP(46).EQ.1) THEN
0615 AWWARE=ASHRE+ATHRE+ASGRE+ASZRE+ATGRE+ATZRE+A4ARE
0616 AWWAIM=ASHIM+ATHIM+ASGIM+ASZIM+ATGIM+ATZIM+A4AIM
0617 AWWSRE=-ATHRE-AUHRE+ATGRE+ATZRE+AUGRE+AUZRE+A4SRE
0618 AWWSIM=-ATHIM-AUHIM+ATGIM+ATZIM+AUGIM+AUZIM+A4SIM
0619 ELSE
0620 AWWARE=ASGRE+ASZRE+ATGRE+ATZRE+A4ARE
0621 AWWAIM=ASGIM+ASZIM+ATGIM+ATZIM+A4AIM
0622 AWWSRE=ATGRE+ATZRE+AUGRE+AUZRE+A4SRE
0623 AWWSIM=ATGIM+ATZIM+AUGIM+AUZIM+A4SIM
0624 ENDIF
0625 AWWA2=AWWARE**2+AWWAIM**2
0626 AWWS2=AWWSRE**2+AWWSIM**2
0627
0628 ELSE
0629
0630 FWWA=COMFAC*(AEM/(4D0*PARU(1)*XW))**2*(64D0/9D0)*
0631 & ABS(A00U+0.5D0*A20U+4.5D0*A11U*DBLE(CTH))**2
0632 FWWS=COMFAC*(AEM/(4D0*PARU(1)*XW))**2*64D0*ABS(A20U)**2
0633 ENDIF
0634
0635 DO 330 I=MMIN1,MMAX1
0636 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 330
0637 EI=SIGN(1D0,DBLE(I))*KCHG(IABS(I),1)
0638 DO 320 J=MMIN2,MMAX2
0639 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 320
0640 EJ=SIGN(1D0,DBLE(J))*KCHG(IABS(J),1)
0641 IF(EI*EJ.LT.0D0) THEN
0642
0643 IF(MSTP(45).EQ.1) GOTO 320
0644 IF(MSTP(46).LE.2) FACWW=FWW*AWWA2*WIDS(24,1)
0645 IF(MSTP(46).GE.3) FACWW=FWWA*WIDS(24,1)
0646 ELSE
0647
0648 IF(MSTP(45).EQ.2) GOTO 320
0649 IF(MSTP(46).LE.2) FACWW=FWW*AWWS2
0650 IF(MSTP(46).GE.3) FACWW=FWWS
0651 IF(EI.GT.0D0) FACWW=FACWW*WIDS(24,4)
0652 IF(EI.LT.0D0) FACWW=FACWW*WIDS(24,5)
0653 ENDIF
0654 NCHN=NCHN+1
0655 ISIG(NCHN,1)=I
0656 ISIG(NCHN,2)=J
0657 ISIG(NCHN,3)=1
0658 SIGH(NCHN)=FACWW*VINT(180+I)*VINT(180+J)
0659 IF(EI*EJ.GT.0D0) SIGH(NCHN)=0.5D0*SIGH(NCHN)
0660 320 CONTINUE
0661 330 CONTINUE
0662 340 CONTINUE
0663 ENDIF
0664
0665 ELSEIF(ISUB.LE.120) THEN
0666 IF(ISUB.EQ.102) THEN
0667
0668 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
0669 WDTP13=0D0
0670 DO 345 IDC=MDCY(KFHIGG,2),MDCY(KFHIGG,2)+MDCY(KFHIGG,3)-1
0671 IF(KFDP(IDC,1).EQ.21.AND.KFDP(IDC,2).EQ.21.AND.
0672 & KFDP(IDC,3).EQ.0) WDTP13=PMAS(KFHIGG,2)*BRAT(IDC)
0673 345 CONTINUE
0674 IF(WDTP13.EQ.0D0) CALL PYERRM(26,
0675 & '(PYSGHG:) did not find Higgs -> g g channel')
0676 HS=SHR*WDTP(0)
0677 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
0678 FACBW=4D0*COMFAC/((SH-SQMH)**2+HS**2)
0679 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
0680 & FACBW=0D0
0681 HI=SHR*WDTP13/32D0
0682 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 350
0683 NCHN=NCHN+1
0684 ISIG(NCHN,1)=21
0685 ISIG(NCHN,2)=21
0686 ISIG(NCHN,3)=1
0687 SIGH(NCHN)=HI*FACBW*HF
0688 350 CONTINUE
0689
0690 ELSEIF(ISUB.EQ.103) THEN
0691
0692 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
0693 WDTP14=0D0
0694 DO 355 IDC=MDCY(KFHIGG,2),MDCY(KFHIGG,2)+MDCY(KFHIGG,3)-1
0695 IF(KFDP(IDC,1).EQ.22.AND.KFDP(IDC,2).EQ.22.AND.
0696 & KFDP(IDC,3).EQ.0) WDTP14=PMAS(KFHIGG,2)*BRAT(IDC)
0697 355 CONTINUE
0698 IF(WDTP14.EQ.0D0) CALL PYERRM(26,
0699 & '(PYSGHG:) did not find Higgs -> gamma gamma channel')
0700 HS=SHR*WDTP(0)
0701 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
0702 FACBW=4D0*COMFAC/((SH-SQMH)**2+HS**2)
0703 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
0704 & FACBW=0D0
0705 HI=SHR*WDTP14*2D0
0706 IF(KFAC(1,22)*KFAC(2,22).EQ.0) GOTO 360
0707 NCHN=NCHN+1
0708 ISIG(NCHN,1)=22
0709 ISIG(NCHN,2)=22
0710 ISIG(NCHN,3)=1
0711 SIGH(NCHN)=HI*FACBW*HF
0712 360 CONTINUE
0713
0714 ELSEIF(ISUB.EQ.110) THEN
0715
0716 THUH=MAX(TH*UH,SH*CKIN(3)**2)
0717 FACHG=COMFAC*(3D0*AEM**4)/(2D0*PARU(1)**2*XW*SQMW)*SH*THUH
0718 FACHG=FACHG*WIDS(KFHIGG,2)
0719
0720 CIGTOT=DCMPLX(0D0,0D0)
0721 CIZTOT=DCMPLX(0D0,0D0)
0722 JMAX=3*MSTP(1)+1
0723 DO 370 J=1,JMAX
0724 IF(J.LE.2*MSTP(1)) THEN
0725 FNC=1D0
0726 EJ=KCHG(J,1)/3D0
0727 AJ=SIGN(1D0,EJ+0.1D0)
0728 VJ=AJ-4D0*EJ*XWV
0729 BALP=SQM4/(2D0*PMAS(J,1))**2
0730 BBET=SH/(2D0*PMAS(J,1))**2
0731 ELSEIF(J.LE.3*MSTP(1)) THEN
0732 FNC=3D0
0733 JL=2*(J-2*MSTP(1))-1
0734 EJ=KCHG(10+JL,1)/3D0
0735 AJ=SIGN(1D0,EJ+0.1D0)
0736 VJ=AJ-4D0*EJ*XWV
0737 BALP=SQM4/(2D0*PMAS(10+JL,1))**2
0738 BBET=SH/(2D0*PMAS(10+JL,1))**2
0739 ELSE
0740 BALP=SQM4/(2D0*PMAS(24,1))**2
0741 BBET=SH/(2D0*PMAS(24,1))**2
0742 ENDIF
0743 BABI=1D0/(BALP-BBET)
0744 IF(BALP.LT.1D0) THEN
0745 F0ALP=DCMPLX(DBLE(ASIN(SQRT(BALP))),0D0)
0746 F1ALP=F0ALP**2
0747 ELSE
0748 F0ALP=DCMPLX(DBLE(LOG(SQRT(BALP)+SQRT(BALP-1D0))),
0749 & -DBLE(0.5D0*PARU(1)))
0750 F1ALP=-F0ALP**2
0751 ENDIF
0752 F2ALP=DBLE(SQRT(ABS(BALP-1D0)/BALP))*F0ALP
0753 IF(BBET.LT.1D0) THEN
0754 F0BET=DCMPLX(DBLE(ASIN(SQRT(BBET))),0D0)
0755 F1BET=F0BET**2
0756 ELSE
0757 F0BET=DCMPLX(DBLE(LOG(SQRT(BBET)+SQRT(BBET-1D0))),
0758 & -DBLE(0.5D0*PARU(1)))
0759 F1BET=-F0BET**2
0760 ENDIF
0761 F2BET=DBLE(SQRT(ABS(BBET-1D0)/BBET))*F0BET
0762 IF(J.LE.3*MSTP(1)) THEN
0763 FIF=DBLE(0.5D0*BABI)+DBLE(BABI**2)*(DBLE(0.5D0*(1D0-BALP+
0764 & BBET))*(F1BET-F1ALP)+DBLE(BBET)*(F2BET-F2ALP))
0765 CIGTOT=CIGTOT+DBLE(FNC*EJ**2)*FIF
0766 CIZTOT=CIZTOT+DBLE(FNC*EJ*VJ)*FIF
0767 ELSE
0768 TXW=XW/XW1
0769 CIGTOT=CIGTOT-0.5*(DBLE(BABI*(1.5D0+BALP))+DBLE(BABI**2)*
0770 & (DBLE(1.5D0-3D0*BALP+4D0*BBET)*(F1BET-F1ALP)+
0771 & DBLE(BBET*(2D0*BALP+3D0))*(F2BET-F2ALP)))
0772 CIZTOT=CIZTOT-DBLE(0.5D0*BABI*XW1)*(DBLE(5D0-TXW+2D0*BALP*
0773 & (1D0-TXW))*(1D0+DBLE(2D0*BABI*BBET)*(F2BET-F2ALP))+
0774 & DBLE(BABI*(4D0*BBET*(3D0-TXW)-(2D0*BALP-1D0)*(5D0-TXW)))*
0775 & (F1BET-F1ALP))
0776 ENDIF
0777 370 CONTINUE
0778 CIGTOT=CIGTOT/DBLE(SH)
0779 CIZTOT=CIZTOT*DBLE(XWC)/DCMPLX(DBLE(SH-SQMZ),DBLE(GMMZ))
0780
0781 DO 380 I=MMINA,MMAXA
0782 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 380
0783 EI=KCHG(IABS(I),1)/3D0
0784 AI=SIGN(1D0,EI)
0785 VI=AI-4D0*EI*XWV
0786 FCOI=1D0
0787 IF(IABS(I).LE.10) FCOI=FACA/3D0
0788 NCHN=NCHN+1
0789 ISIG(NCHN,1)=I
0790 ISIG(NCHN,2)=-I
0791 ISIG(NCHN,3)=1
0792 SIGH(NCHN)=FACHG*FCOI*(ABS(DBLE(EI)*CIGTOT+DBLE(VI)*
0793 & CIZTOT)**2+AI**2*ABS(CIZTOT)**2)
0794 380 CONTINUE
0795
0796 ELSEIF(ISUB.EQ.111) THEN
0797
0798 IF(MSTP(38).NE.0) THEN
0799
0800 CALL PYWIDT(KFHIGG,SQM4,WDTP,WDTE)
0801 WDTP13=0D0
0802 DO 385 IDC=MDCY(KFHIGG,2),MDCY(KFHIGG,2)+MDCY(KFHIGG,3)-1
0803 IF(KFDP(IDC,1).EQ.21.AND.KFDP(IDC,2).EQ.21.AND.
0804 & KFDP(IDC,3).EQ.0) WDTP13=PMAS(KFHIGG,2)*BRAT(IDC)
0805 385 CONTINUE
0806 IF(WDTP13.EQ.0D0) CALL PYERRM(26,
0807 & '(PYSGHG:) did not find Higgs -> g g channel')
0808 FACGH=COMFAC*FACA*(2D0/9D0)*AS*(WDTP13/SQRT(SQM4))*
0809 & (TH**2+UH**2)/(SH*SQM4)
0810
0811 HBW4=GMMH/((SQM4-SQMH)**2+GMMH**2)
0812 GMMHC=SQRT(SQM4)*WDTP(0)
0813 HBW4C=SQRT(SQM4)*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))/
0814 & ((SQM4-SQMH)**2+GMMHC**2)
0815 FACGH=FACGH*HBW4C/HBW4
0816 ELSE
0817
0818 A5STUR=0D0
0819 A5STUI=0D0
0820 DO 390 I=1,2*MSTP(1)
0821 SQMQ=PMAS(I,1)**2
0822 EPSS=4D0*SQMQ/SH
0823 EPSH=4D0*SQMQ/SQMH
0824 CALL PYWAUX(1,EPSS,W1SR,W1SI)
0825 CALL PYWAUX(1,EPSH,W1HR,W1HI)
0826 CALL PYWAUX(2,EPSS,W2SR,W2SI)
0827 CALL PYWAUX(2,EPSH,W2HR,W2HI)
0828 A5STUR=A5STUR+EPSH*(1D0+SH/(TH+UH)*(W1SR-W1HR)+
0829 & (0.25D0-SQMQ/(TH+UH))*(W2SR-W2HR))
0830 A5STUI=A5STUI+EPSH*(SH/(TH+UH)*(W1SI-W1HI)+
0831 & (0.25D0-SQMQ/(TH+UH))*(W2SI-W2HI))
0832 390 CONTINUE
0833 FACGH=COMFAC*FACA/(144D0*PARU(1)**2)*AEM/XW*AS**3*SQMH/SQMW*
0834 & SQMH/SH*(UH**2+TH**2)/(UH+TH)**2*(A5STUR**2+A5STUI**2)
0835 FACGH=FACGH*WIDS(25,2)
0836 ENDIF
0837 DO 400 I=MMINA,MMAXA
0838 IF(I.EQ.0.OR.IABS(I).GT.MSTP(58).OR.
0839 & KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 400
0840 NCHN=NCHN+1
0841 ISIG(NCHN,1)=I
0842 ISIG(NCHN,2)=-I
0843 ISIG(NCHN,3)=1
0844 SIGH(NCHN)=FACGH
0845 400 CONTINUE
0846
0847 ELSEIF(ISUB.EQ.112) THEN
0848
0849 IF(MSTP(38).NE.0) THEN
0850
0851 CALL PYWIDT(KFHIGG,SQM4,WDTP,WDTE)
0852 WDTP13=0D0
0853 DO 405 IDC=MDCY(KFHIGG,2),MDCY(KFHIGG,2)+MDCY(KFHIGG,3)-1
0854 IF(KFDP(IDC,1).EQ.21.AND.KFDP(IDC,2).EQ.21.AND.
0855 & KFDP(IDC,3).EQ.0) WDTP13=PMAS(KFHIGG,2)*BRAT(IDC)
0856 405 CONTINUE
0857 IF(WDTP13.EQ.0D0) CALL PYERRM(26,
0858 & '(PYSGHG:) did not find Higgs -> g g channel')
0859 FACQH=COMFAC*FACA*(1D0/12D0)*AS*(WDTP13/SQRT(SQM4))*
0860 & (SH**2+UH**2)/(-TH*SQM4)
0861
0862 HBW4=GMMH/((SQM4-SQMH)**2+GMMH**2)
0863 GMMHC=SQRT(SQM4)*WDTP(0)
0864 HBW4C=SQRT(SQM4)*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))/
0865 & ((SQM4-SQMH)**2+GMMHC**2)
0866 FACQH=FACQH*HBW4C/HBW4
0867 ELSE
0868
0869 A5TSUR=0D0
0870 A5TSUI=0D0
0871 DO 410 I=1,2*MSTP(1)
0872 SQMQ=PMAS(I,1)**2
0873 EPST=4D0*SQMQ/TH
0874 EPSH=4D0*SQMQ/SQMH
0875 CALL PYWAUX(1,EPST,W1TR,W1TI)
0876 CALL PYWAUX(1,EPSH,W1HR,W1HI)
0877 CALL PYWAUX(2,EPST,W2TR,W2TI)
0878 CALL PYWAUX(2,EPSH,W2HR,W2HI)
0879 A5TSUR=A5TSUR+EPSH*(1D0+TH/(SH+UH)*(W1TR-W1HR)+
0880 & (0.25D0-SQMQ/(SH+UH))*(W2TR-W2HR))
0881 A5TSUI=A5TSUI+EPSH*(TH/(SH+UH)*(W1TI-W1HI)+
0882 & (0.25D0-SQMQ/(SH+UH))*(W2TI-W2HI))
0883 410 CONTINUE
0884 FACQH=COMFAC*FACA/(384D0*PARU(1)**2)*AEM/XW*AS**3*SQMH/SQMW*
0885 & SQMH/(-TH)*(UH**2+SH**2)/(UH+SH)**2*(A5TSUR**2+A5TSUI**2)
0886 FACQH=FACQH*WIDS(25,2)
0887 ENDIF
0888 DO 430 I=MMINA,MMAXA
0889 IF(I.EQ.0.OR.IABS(I).GT.MSTP(58)) GOTO 430
0890 DO 420 ISDE=1,2
0891 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 420
0892 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 420
0893 NCHN=NCHN+1
0894 ISIG(NCHN,ISDE)=I
0895 ISIG(NCHN,3-ISDE)=21
0896 ISIG(NCHN,3)=1
0897 SIGH(NCHN)=FACQH
0898 420 CONTINUE
0899 430 CONTINUE
0900
0901 ELSEIF(ISUB.EQ.113) THEN
0902
0903 IF(MSTP(38).NE.0) THEN
0904
0905 CALL PYWIDT(KFHIGG,SQM4,WDTP,WDTE)
0906 WDTP13=0D0
0907 DO 435 IDC=MDCY(KFHIGG,2),MDCY(KFHIGG,2)+MDCY(KFHIGG,3)-1
0908 IF(KFDP(IDC,1).EQ.21.AND.KFDP(IDC,2).EQ.21.AND.
0909 & KFDP(IDC,3).EQ.0) WDTP13=PMAS(KFHIGG,2)*BRAT(IDC)
0910 435 CONTINUE
0911 IF(WDTP13.EQ.0D0) CALL PYERRM(26,
0912 & '(PYSGHG:) did not find Higgs -> g g channel')
0913 FACGH=COMFAC*FACA*(3D0/16D0)*AS*(WDTP13/SQRT(SQM4))*
0914 & (SH**4+TH**4+UH**4+SQM4**4)/(SH*TH*UH*SQM4)
0915
0916 HBW4=GMMH/((SQM4-SQMH)**2+GMMH**2)
0917 GMMHC=SQRT(SQM4)*WDTP(0)
0918 HBW4C=SQRT(SQM4)*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))/
0919 & ((SQM4-SQMH)**2+GMMHC**2)
0920 FACGH=FACGH*HBW4C/HBW4
0921 ELSE
0922
0923 A2STUR=0D0
0924 A2STUI=0D0
0925 A2USTR=0D0
0926 A2USTI=0D0
0927 A2TUSR=0D0
0928 A2TUSI=0D0
0929 A4STUR=0D0
0930 A4STUI=0D0
0931 DO 440 I=1,2*MSTP(1)
0932 SQMQ=PMAS(I,1)**2
0933 EPSS=4D0*SQMQ/SH
0934 EPST=4D0*SQMQ/TH
0935 EPSU=4D0*SQMQ/UH
0936 EPSH=4D0*SQMQ/SQMH
0937 IF(EPSH.LT.1D-6) GOTO 440
0938 CALL PYWAUX(1,EPSS,W1SR,W1SI)
0939 CALL PYWAUX(1,EPST,W1TR,W1TI)
0940 CALL PYWAUX(1,EPSU,W1UR,W1UI)
0941 CALL PYWAUX(1,EPSH,W1HR,W1HI)
0942 CALL PYWAUX(2,EPSS,W2SR,W2SI)
0943 CALL PYWAUX(2,EPST,W2TR,W2TI)
0944 CALL PYWAUX(2,EPSU,W2UR,W2UI)
0945 CALL PYWAUX(2,EPSH,W2HR,W2HI)
0946 CALL PYI3AU(EPSS,TH/UH,Y3STUR,Y3STUI)
0947 CALL PYI3AU(EPSS,UH/TH,Y3SUTR,Y3SUTI)
0948 CALL PYI3AU(EPST,SH/UH,Y3TSUR,Y3TSUI)
0949 CALL PYI3AU(EPST,UH/SH,Y3TUSR,Y3TUSI)
0950 CALL PYI3AU(EPSU,SH/TH,Y3USTR,Y3USTI)
0951 CALL PYI3AU(EPSU,TH/SH,Y3UTSR,Y3UTSI)
0952 CALL PYI3AU(EPSH,SQMH/SH*TH/UH,YHSTUR,YHSTUI)
0953 CALL PYI3AU(EPSH,SQMH/SH*UH/TH,YHSUTR,YHSUTI)
0954 CALL PYI3AU(EPSH,SQMH/TH*SH/UH,YHTSUR,YHTSUI)
0955 CALL PYI3AU(EPSH,SQMH/TH*UH/SH,YHTUSR,YHTUSI)
0956 CALL PYI3AU(EPSH,SQMH/UH*SH/TH,YHUSTR,YHUSTI)
0957 CALL PYI3AU(EPSH,SQMH/UH*TH/SH,YHUTSR,YHUTSI)
0958 W3STUR=YHSTUR-Y3STUR-Y3UTSR
0959 W3STUI=YHSTUI-Y3STUI-Y3UTSI
0960 W3SUTR=YHSUTR-Y3SUTR-Y3TUSR
0961 W3SUTI=YHSUTI-Y3SUTI-Y3TUSI
0962 W3TSUR=YHTSUR-Y3TSUR-Y3USTR
0963 W3TSUI=YHTSUI-Y3TSUI-Y3USTI
0964 W3TUSR=YHTUSR-Y3TUSR-Y3SUTR
0965 W3TUSI=YHTUSI-Y3TUSI-Y3SUTI
0966 W3USTR=YHUSTR-Y3USTR-Y3TSUR
0967 W3USTI=YHUSTI-Y3USTI-Y3TSUI
0968 W3UTSR=YHUTSR-Y3UTSR-Y3STUR
0969 W3UTSI=YHUTSI-Y3UTSI-Y3STUI
0970 B2STUR=SQMQ/SQMH**2*(SH*(UH-SH)/(SH+UH)+2D0*TH*UH*
0971 & (UH+2D0*SH)/(SH+UH)**2*(W1TR-W1HR)+(SQMQ-SH/4D0)*
0972 & (0.5D0*W2SR+0.5D0*W2HR-W2TR+W3STUR)+SH2*(2D0*SQMQ/
0973 & (SH+UH)**2-0.5D0/(SH+UH))*(W2TR-W2HR)+0.5D0*TH*UH/SH*
0974 & (W2HR-2D0*W2TR)+0.125D0*(SH-12D0*SQMQ-4D0*TH*UH/SH)*W3TSUR)
0975 B2STUI=SQMQ/SQMH**2*(2D0*TH*UH*(UH+2D0*SH)/(SH+UH)**2*
0976 & (W1TI-W1HI)+(SQMQ-SH/4D0)*(0.5D0*W2SI+0.5D0*W2HI-W2TI+
0977 & W3STUI)+SH2*(2D0*SQMQ/(SH+UH)**2-0.5D0/(SH+UH))*
0978 & (W2TI-W2HI)+0.5D0*TH*UH/SH*(W2HI-2D0*W2TI)+0.125D0*
0979 & (SH-12D0*SQMQ-4D0*TH*UH/SH)*W3TSUI)
0980 B2SUTR=SQMQ/SQMH**2*(SH*(TH-SH)/(SH+TH)+2D0*UH*TH*
0981 & (TH+2D0*SH)/(SH+TH)**2*(W1UR-W1HR)+(SQMQ-SH/4D0)*
0982 & (0.5D0*W2SR+0.5D0*W2HR-W2UR+W3SUTR)+SH2*(2D0*SQMQ/
0983 & (SH+TH)**2-0.5D0/(SH+TH))*(W2UR-W2HR)+0.5D0*UH*TH/SH*
0984 & (W2HR-2D0*W2UR)+0.125D0*(SH-12D0*SQMQ-4D0*UH*TH/SH)*W3USTR)
0985 B2SUTI=SQMQ/SQMH**2*(2D0*UH*TH*(TH+2D0*SH)/(SH+TH)**2*
0986 & (W1UI-W1HI)+(SQMQ-SH/4D0)*(0.5D0*W2SI+0.5D0*W2HI-W2UI+
0987 & W3SUTI)+SH2*(2D0*SQMQ/(SH+TH)**2-0.5D0/(SH+TH))*
0988 & (W2UI-W2HI)+0.5D0*UH*TH/SH*(W2HI-2D0*W2UI)+0.125D0*
0989 & (SH-12D0*SQMQ-4D0*UH*TH/SH)*W3USTI)
0990 B2TSUR=SQMQ/SQMH**2*(TH*(UH-TH)/(TH+UH)+2D0*SH*UH*
0991 & (UH+2D0*TH)/(TH+UH)**2*(W1SR-W1HR)+(SQMQ-TH/4D0)*
0992 & (0.5D0*W2TR+0.5D0*W2HR-W2SR+W3TSUR)+TH2*(2D0*SQMQ/
0993 & (TH+UH)**2-0.5D0/(TH+UH))*(W2SR-W2HR)+0.5D0*SH*UH/TH*
0994 & (W2HR-2D0*W2SR)+0.125D0*(TH-12D0*SQMQ-4D0*SH*UH/TH)*W3STUR)
0995 B2TSUI=SQMQ/SQMH**2*(2D0*SH*UH*(UH+2D0*TH)/(TH+UH)**2*
0996 & (W1SI-W1HI)+(SQMQ-TH/4D0)*(0.5D0*W2TI+0.5D0*W2HI-W2SI+
0997 & W3TSUI)+TH2*(2D0*SQMQ/(TH+UH)**2-0.5D0/(TH+UH))*
0998 & (W2SI-W2HI)+0.5D0*SH*UH/TH*(W2HI-2D0*W2SI)+0.125D0*
0999 & (TH-12D0*SQMQ-4D0*SH*UH/TH)*W3STUI)
1000 B2TUSR=SQMQ/SQMH**2*(TH*(SH-TH)/(TH+SH)+2D0*UH*SH*
1001 & (SH+2D0*TH)/(TH+SH)**2*(W1UR-W1HR)+(SQMQ-TH/4D0)*
1002 & (0.5D0*W2TR+0.5D0*W2HR-W2UR+W3TUSR)+TH2*(2D0*SQMQ/
1003 & (TH+SH)**2-0.5D0/(TH+SH))*(W2UR-W2HR)+0.5D0*UH*SH/TH*
1004 & (W2HR-2D0*W2UR)+0.125D0*(TH-12D0*SQMQ-4D0*UH*SH/TH)*W3UTSR)
1005 B2TUSI=SQMQ/SQMH**2*(2D0*UH*SH*(SH+2D0*TH)/(TH+SH)**2*
1006 & (W1UI-W1HI)+(SQMQ-TH/4D0)*(0.5D0*W2TI+0.5D0*W2HI-W2UI+
1007 & W3TUSI)+TH2*(2D0*SQMQ/(TH+SH)**2-0.5D0/(TH+SH))*
1008 & (W2UI-W2HI)+0.5D0*UH*SH/TH*(W2HI-2D0*W2UI)+0.125D0*
1009 & (TH-12D0*SQMQ-4D0*UH*SH/TH)*W3UTSI)
1010 B2USTR=SQMQ/SQMH**2*(UH*(TH-UH)/(UH+TH)+2D0*SH*TH*
1011 & (TH+2D0*UH)/(UH+TH)**2*(W1SR-W1HR)+(SQMQ-UH/4D0)*
1012 & (0.5D0*W2UR+0.5D0*W2HR-W2SR+W3USTR)+UH2*(2D0*SQMQ/
1013 & (UH+TH)**2-0.5D0/(UH+TH))*(W2SR-W2HR)+0.5D0*SH*TH/UH*
1014 & (W2HR-2D0*W2SR)+0.125D0*(UH-12D0*SQMQ-4D0*SH*TH/UH)*W3SUTR)
1015 B2USTI=SQMQ/SQMH**2*(2D0*SH*TH*(TH+2D0*UH)/(UH+TH)**2*
1016 & (W1SI-W1HI)+(SQMQ-UH/4D0)*(0.5D0*W2UI+0.5D0*W2HI-W2SI+
1017 & W3USTI)+UH2*(2D0*SQMQ/(UH+TH)**2-0.5D0/(UH+TH))*
1018 & (W2SI-W2HI)+0.5D0*SH*TH/UH*(W2HI-2D0*W2SI)+0.125D0*
1019 & (UH-12D0*SQMQ-4D0*SH*TH/UH)*W3SUTI)
1020 B2UTSR=SQMQ/SQMH**2*(UH*(SH-UH)/(UH+SH)+2D0*TH*SH*
1021 & (SH+2D0*UH)/(UH+SH)**2*(W1TR-W1HR)+(SQMQ-UH/4D0)*
1022 & (0.5D0*W2UR+0.5D0*W2HR-W2TR+W3UTSR)+UH2*(2D0*SQMQ/
1023 & (UH+SH)**2-0.5D0/(UH+SH))*(W2TR-W2HR)+0.5D0*TH*SH/UH*
1024 & (W2HR-2D0*W2TR)+0.125D0*(UH-12D0*SQMQ-4D0*TH*SH/UH)*W3TUSR)
1025 B2UTSI=SQMQ/SQMH**2*(2D0*TH*SH*(SH+2D0*UH)/(UH+SH)**2*
1026 & (W1TI-W1HI)+(SQMQ-UH/4D0)*(0.5D0*W2UI+0.5D0*W2HI-W2TI+
1027 & W3UTSI)+UH2*(2D0*SQMQ/(UH+SH)**2-0.5D0/(UH+SH))*
1028 & (W2TI-W2HI)+0.5D0*TH*SH/UH*(W2HI-2D0*W2TI)+0.125D0*
1029 & (UH-12D0*SQMQ-4D0*TH*SH/UH)*W3TUSI)
1030 B4STUR=0.25D0*EPSH*(-2D0/3D0+0.25D0*(EPSH-1D0)*
1031 & (W2SR-W2HR+W3STUR))
1032 B4STUI=0.25D0*EPSH*0.25D0*(EPSH-1D0)*(W2SI-W2HI+W3STUI)
1033 B4TUSR=0.25D0*EPSH*(-2D0/3D0+0.25D0*(EPSH-1D0)*
1034 & (W2TR-W2HR+W3TUSR))
1035 B4TUSI=0.25D0*EPSH*0.25D0*(EPSH-1D0)*(W2TI-W2HI+W3TUSI)
1036 B4USTR=0.25D0*EPSH*(-2D0/3D0+0.25D0*(EPSH-1D0)*
1037 & (W2UR-W2HR+W3USTR))
1038 B4USTI=0.25D0*EPSH*0.25D0*(EPSH-1D0)*(W2UI-W2HI+W3USTI)
1039 A2STUR=A2STUR+B2STUR+B2SUTR
1040 A2STUI=A2STUI+B2STUI+B2SUTI
1041 A2USTR=A2USTR+B2USTR+B2UTSR
1042 A2USTI=A2USTI+B2USTI+B2UTSI
1043 A2TUSR=A2TUSR+B2TUSR+B2TSUR
1044 A2TUSI=A2TUSI+B2TUSI+B2TSUI
1045 A4STUR=A4STUR+B4STUR+B4USTR+B4TUSR
1046 A4STUI=A4STUI+B4STUI+B4USTI+B4TUSI
1047 440 CONTINUE
1048 FACGH=COMFAC*FACA*3D0/(128D0*PARU(1)**2)*AEM/XW*AS**3*
1049 & SQMH/SQMW*SQMH**3/(SH*TH*UH)*(A2STUR**2+A2STUI**2+A2USTR**2+
1050 & A2USTI**2+A2TUSR**2+A2TUSI**2+A4STUR**2+A4STUI**2)
1051 FACGH=FACGH*WIDS(25,2)
1052 ENDIF
1053 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 450
1054 NCHN=NCHN+1
1055 ISIG(NCHN,1)=21
1056 ISIG(NCHN,2)=21
1057 ISIG(NCHN,3)=1
1058 SIGH(NCHN)=FACGH
1059 450 CONTINUE
1060 ENDIF
1061
1062 ELSEIF(ISUB.LE.170) THEN
1063 IF(ISUB.EQ.121) THEN
1064
1065 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 460
1066 IA=KFPR(ISUBSV,2)
1067 PMF=PYMRUN(IA,SH)
1068 FACQQH=COMFAC*(4D0*PARU(1)*AEM/XW)*(4D0*PARU(1)*AS)**2*
1069 & (0.5D0*PMF/PMAS(24,1))**2
1070 WID2=1D0
1071 IF(IA.EQ.6.OR.IA.EQ.7.OR.IA.EQ.8) WID2=WIDS(IA,1)
1072 FACQQH=FACQQH*WID2
1073 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) THEN
1074 IKFI=1
1075 IF(IA.LE.10.AND.MOD(IA,2).EQ.0) IKFI=2
1076 IF(IA.GT.10) IKFI=3
1077 FACQQH=FACQQH*PARU(150+10*IHIGG+IKFI)**2
1078 IF(IMSS(1).NE.0.AND.IA.EQ.5) THEN
1079 FACQQH=FACQQH/(1D0+RMSS(41))**2
1080 IF(IHIGG.NE.3) THEN
1081 FACQQH=FACQQH*(1D0+RMSS(41)*PARU(152+10*IHIGG)/
1082 & PARU(151+10*IHIGG))**2
1083 ENDIF
1084 ENDIF
1085 ENDIF
1086 CALL PYQQBH(WTQQBH)
1087 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1088 HS=SHR*WDTP(0)
1089 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
1090 FACBW=(1D0/PARU(1))*VINT(2)*HF/((SH-SQMH)**2+HS**2)
1091 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1092 & FACBW=0D0
1093 NCHN=NCHN+1
1094 ISIG(NCHN,1)=21
1095 ISIG(NCHN,2)=21
1096 ISIG(NCHN,3)=1
1097 SIGH(NCHN)=FACQQH*WTQQBH*FACBW
1098 460 CONTINUE
1099
1100 ELSEIF(ISUB.EQ.122) THEN
1101
1102 IA=KFPR(ISUBSV,2)
1103 PMF=PYMRUN(IA,SH)
1104 FACQQH=COMFAC*(4D0*PARU(1)*AEM/XW)*(4D0*PARU(1)*AS)**2*
1105 & (0.5D0*PMF/PMAS(24,1))**2
1106 WID2=1D0
1107 IF(IA.EQ.6.OR.IA.EQ.7.OR.IA.EQ.8) WID2=WIDS(IA,1)
1108 FACQQH=FACQQH*WID2
1109 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) THEN
1110 IKFI=1
1111 IF(IA.LE.10.AND.MOD(IA,2).EQ.0) IKFI=2
1112 IF(IA.GT.10) IKFI=3
1113 FACQQH=FACQQH*PARU(150+10*IHIGG+IKFI)**2
1114 IF(IMSS(1).NE.0.AND.IA.EQ.5) THEN
1115 FACQQH=FACQQH/(1D0+RMSS(41))**2
1116 IF(IHIGG.NE.3) THEN
1117 FACQQH=FACQQH*(1D0+RMSS(41)*PARU(152+10*IHIGG)/
1118 & PARU(151+10*IHIGG))**2
1119 ENDIF
1120 ENDIF
1121 ENDIF
1122 CALL PYQQBH(WTQQBH)
1123 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1124 HS=SHR*WDTP(0)
1125 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
1126 FACBW=(1D0/PARU(1))*VINT(2)*HF/((SH-SQMH)**2+HS**2)
1127 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1128 & FACBW=0D0
1129 DO 470 I=MMINA,MMAXA
1130 IF(I.EQ.0.OR.IABS(I).GT.MSTP(58).OR.
1131 & KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 470
1132 NCHN=NCHN+1
1133 ISIG(NCHN,1)=I
1134 ISIG(NCHN,2)=-I
1135 ISIG(NCHN,3)=1
1136 SIGH(NCHN)=FACQQH*WTQQBH*FACBW
1137 470 CONTINUE
1138
1139 ELSEIF(ISUB.EQ.123) THEN
1140
1141
1142 FACNOR=COMFAC*(4D0*PARU(1)*AEM/(XW*XW1))**3*SQMZ/32D0
1143 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) FACNOR=FACNOR*
1144 & PARU(154+10*IHIGG)**2
1145 FACPRP=1D0/((VINT(215)-VINT(204)**2)*
1146 & (VINT(216)-VINT(209)**2))**2
1147 FACZZ1=FACNOR*FACPRP*(0.5D0*TAUP*VINT(2))*VINT(219)
1148 FACZZ2=FACNOR*FACPRP*VINT(217)*VINT(218)
1149 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1150 HS=SHR*WDTP(0)
1151 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
1152 FACBW=(1D0/PARU(1))*VINT(2)*HF/((SH-SQMH)**2+HS**2)
1153 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1154 & FACBW=0D0
1155 DO 490 I=MMIN1,MMAX1
1156 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 490
1157 IA=IABS(I)
1158 DO 480 J=MMIN2,MMAX2
1159 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 480
1160 JA=IABS(J)
1161 EI=KCHG(IA,1)*ISIGN(1,I)/3D0
1162 AI=SIGN(1D0,KCHG(IA,1)+0.5D0)*ISIGN(1,I)
1163 VI=AI-4D0*EI*XWV
1164 EJ=KCHG(JA,1)*ISIGN(1,J)/3D0
1165 AJ=SIGN(1D0,KCHG(JA,1)+0.5D0)*ISIGN(1,J)
1166 VJ=AJ-4D0*EJ*XWV
1167 FACLR1=(VI**2+AI**2)*(VJ**2+AJ**2)+4D0*VI*AI*VJ*AJ
1168 FACLR2=(VI**2+AI**2)*(VJ**2+AJ**2)-4D0*VI*AI*VJ*AJ
1169 NCHN=NCHN+1
1170 ISIG(NCHN,1)=I
1171 ISIG(NCHN,2)=J
1172 ISIG(NCHN,3)=1
1173 SIGH(NCHN)=(FACLR1*FACZZ1+FACLR2*FACZZ2)*FACBW
1174 480 CONTINUE
1175 490 CONTINUE
1176
1177 ELSEIF(ISUB.EQ.124) THEN
1178
1179
1180 FACNOR=COMFAC*(4D0*PARU(1)*AEM/XW)**3*SQMW
1181 IF(MSTP(4).GE.1.OR.IHIGG.GE.2) FACNOR=FACNOR*
1182 & PARU(155+10*IHIGG)**2
1183 FACPRP=1D0/((VINT(215)-VINT(204)**2)*
1184 & (VINT(216)-VINT(209)**2))**2
1185 FACWW=FACNOR*FACPRP*(0.5D0*TAUP*VINT(2))*VINT(219)
1186 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1187 HS=SHR*WDTP(0)
1188 HF=SHR*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
1189 FACBW=(1D0/PARU(1))*VINT(2)*HF/((SH-SQMH)**2+HS**2)
1190 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1191 & FACBW=0D0
1192 DO 510 I=MMIN1,MMAX1
1193 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 510
1194 EI=SIGN(1D0,DBLE(I))*KCHG(IABS(I),1)
1195 DO 500 J=MMIN2,MMAX2
1196 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 500
1197 EJ=SIGN(1D0,DBLE(J))*KCHG(IABS(J),1)
1198 IF(EI*EJ.GT.0D0) GOTO 500
1199 FACLR=VINT(180+I)*VINT(180+J)
1200 NCHN=NCHN+1
1201 ISIG(NCHN,1)=I
1202 ISIG(NCHN,2)=J
1203 ISIG(NCHN,3)=1
1204 SIGH(NCHN)=FACLR*FACWW*FACBW
1205 500 CONTINUE
1206 510 CONTINUE
1207
1208 ELSEIF(ISUB.EQ.143) THEN
1209
1210 SQMHC=PMAS(37,1)**2
1211 CALL PYWIDT(37,SH,WDTP,WDTE)
1212 HS=SHR*WDTP(0)
1213 FACBW=4D0*COMFAC/((SH-SQMHC)**2+HS**2)
1214 HP=AEM/(8D0*XW)*SH/SQMW*SH
1215 DO 530 I=MMIN1,MMAX1
1216 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 530
1217 IA=IABS(I)
1218 IM=(MOD(IA,10)+1)/2
1219 DO 520 J=MMIN2,MMAX2
1220 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 520
1221 JA=IABS(J)
1222 JM=(MOD(JA,10)+1)/2
1223 IF(I*J.GT.0.OR.IA.EQ.JA.OR.IM.NE.JM) GOTO 520
1224 IF((IA.LE.10.AND.JA.GT.10).OR.(IA.GT.10.AND.JA.LE.10))
1225 & GOTO 520
1226 IF(MOD(IA,2).EQ.0) THEN
1227 IU=IA
1228 IL=JA
1229 ELSE
1230 IU=JA
1231 IL=IA
1232 ENDIF
1233 RML=PYMRUN(IL,SH)**2/SH
1234 RMU=PYMRUN(IU,SH)**2/SH
1235 HI=HP*(RML*PARU(141)**2+RMU/PARU(141)**2)
1236 IF(IA.LE.10) HI=HI*FACA/3D0
1237 KCHHC=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
1238 HF=SHR*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1239 NCHN=NCHN+1
1240 ISIG(NCHN,1)=I
1241 ISIG(NCHN,2)=J
1242 ISIG(NCHN,3)=1
1243 SIGH(NCHN)=HI*FACBW*HF
1244 520 CONTINUE
1245 530 CONTINUE
1246
1247 ELSEIF(ISUB.EQ.161) THEN
1248
1249
1250 FHCQ=COMFAC*FACA*AS*AEM/XW*1D0/24
1251
1252 SQMHC=PMAS(37,1)**2
1253 GMMHC=PMAS(37,1)*PMAS(37,2)
1254 HBW4=GMMHC/((SQM4-SQMHC)**2+GMMHC**2)
1255 CALL PYWIDT(37,SQM4,WDTP,WDTE)
1256 GMMHCC=SQRT(SQM4)*WDTP(0)
1257 HBW4C=GMMHCC/((SQM4-SQMHC)**2+GMMHCC**2)
1258 FHCQ=FHCQ*HBW4C/HBW4
1259 Q2RM=SH
1260 IF(MSTP(32).EQ.12) Q2RM=PARP(194)
1261 DO 550 I=MMINA,MMAXA
1262 IA=IABS(I)
1263 IF(IA.NE.5) GOTO 550
1264 SQML=PYMRUN(IA,Q2RM)**2
1265 IUA=IA+MOD(IA,2)
1266 SQMQ=PYMRUN(IUA,Q2RM)**2
1267 FACHCQ=FHCQ*(SQML*PARU(141)**2+SQMQ/PARU(141)**2)/SQMW*
1268 & (SH/(SQMQ-UH)+2D0*SQMQ*(SQMHC-UH)/(SQMQ-UH)**2+(SQMQ-UH)/SH-
1269 & 2D0*SQMQ/(SQMQ-UH)+2D0*(SQMHC-UH)/(SQMQ-UH)*
1270 & (SQMHC-SQMQ-SH)/SH)
1271 KCHHC=ISIGN(1,KCHG(IA,1)*ISIGN(1,I))
1272 DO 540 ISDE=1,2
1273 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 540
1274 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 540
1275 NCHN=NCHN+1
1276 ISIG(NCHN,ISDE)=I
1277 ISIG(NCHN,3-ISDE)=21
1278 ISIG(NCHN,3)=1
1279 SIGH(NCHN)=FACHCQ*WIDS(37,(5-KCHHC)/2)
1280 IF(IUA.EQ.6) SIGH(NCHN)=SIGH(NCHN)*WIDS(6,(5+KCHHC)/2)
1281 540 CONTINUE
1282 550 CONTINUE
1283 ENDIF
1284
1285 ELSEIF(ISUB.LE.402) THEN
1286 IF(ISUB.EQ.401) THEN
1287
1288 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 560
1289 IA=KFPR(ISUBSV,2)
1290 CALL PYSTBH(WTTBH)
1291 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1292 HS=SHR*WDTP(0)
1293 FACBW=(1D0/PARU(1))*VINT(2)*HS/((SH-SQMH)**2+HS**2)
1294 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1295 & FACBW=0D0
1296 NCHN=NCHN+1
1297 ISIG(NCHN,1)=21
1298 ISIG(NCHN,2)=21
1299 ISIG(NCHN,3)=1
1300 SIGH(NCHN)=2d0*COMFAC*WTTBH*FACBW
1301
1302
1303 SIGH(NCHN)=SIGH(NCHN)*WIDS(37,2)*WIDS(6,3)
1304 IF(ABS(WIDS(37,2)-WIDS(37,3))
1305 & .GE.1D-6*(WIDS(37,2)+WIDS(37,3)).OR.
1306 & ABS(WIDS(6,2)-WIDS(6,3))
1307 & .GE.1D-6*(WIDS(6,2)+WIDS(6,3))) THEN
1308 WRITE(*,*)'Error: Process 401 cannot handle different'
1309 WRITE(*,*)'decays for H+ and H- or t and tbar.'
1310 WRITE(*,*)'Execution stopped.'
1311 CALL PYSTOP(108)
1312 END IF
1313 560 CONTINUE
1314
1315 ELSEIF(ISUB.EQ.402) THEN
1316
1317 IA=KFPR(ISUBSV,2)
1318 CALL PYSTBH(WTTBH)
1319 CALL PYWIDT(KFHIGG,SH,WDTP,WDTE)
1320 HS=SHR*WDTP(0)
1321 FACBW=(1D0/PARU(1))*VINT(2)*HS/((SH-SQMH)**2+HS**2)
1322 IF(ABS(SHR-PMAS(KFHIGG,1)).GT.PARP(48)*PMAS(KFHIGG,2))
1323 & FACBW=0D0
1324 DO 570 I=MMINA,MMAXA
1325 IF(I.EQ.0.OR.IABS(I).GT.MSTP(58).OR.
1326 & KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 570
1327 NCHN=NCHN+1
1328 ISIG(NCHN,1)=I
1329 ISIG(NCHN,2)=-I
1330 ISIG(NCHN,3)=1
1331 SIGH(NCHN)=2d0*COMFAC*WTTBH*FACBW
1332
1333
1334 SIGH(NCHN)=SIGH(NCHN)*WIDS(37,2)*WIDS(6,3)
1335 IF(ABS(WIDS(37,2)-WIDS(37,3))/(WIDS(37,2)+WIDS(37,3))
1336 & .GE.1D-6.OR.
1337 & ABS(WIDS(6,2)-WIDS(6,3))/(WIDS(6,2)+WIDS(6,3))
1338 & .GE.1D-6) THEN
1339 WRITE(*,*)'Error: Process 402 cannot handle different'
1340 WRITE(*,*)'decays for H+ and H- or t and tbar.'
1341 WRITE(*,*)'Execution stopped.'
1342 CALL PYSTOP(108)
1343 END IF
1344 570 CONTINUE
1345 ENDIF
1346 ENDIF
1347
1348 RETURN
1349 END