File indexing completed on 2025-08-05 08:21:11
0001
0002
0003
0004
0005
0006
0007 SUBROUTINE PYHGGM(ALPHA)
0008
0009
0010 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0011 IMPLICIT INTEGER(I-N)
0012 INTEGER PYK,PYCHGE,PYCOMP
0013
0014 PARAMETER (KSUSY1=1000000,KSUSY2=2000000,KTECHN=3000000,
0015 &KEXCIT=4000000,KDIMEN=5000000)
0016
0017 COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0018 COMMON/PYDAT2/KCHG(500,4),PMAS(500,4),PARF(2000),VCKM(4,4)
0019 COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
0020 COMMON/PYMSSM/IMSS(0:99),RMSS(0:99)
0021 SAVE /PYDAT1/,/PYDAT2/,/PYPARS/,/PYMSSM/
0022
0023
0024 DOUBLE PRECISION AT,AB,XMU,TANB
0025 DOUBLE PRECISION ALPHA
0026 INTEGER IHOPT
0027 DOUBLE PRECISION DMA,DTANB,DMQ,DMUR,DMTOP,DAU,DAD
0028 DOUBLE PRECISION DMU,DMH,DHM,DMHCH,DSA,DCA,DTANBA
0029 DOUBLE PRECISION DMC,DMDR,DMHP,DHMP,DAMP
0030 DOUBLE PRECISION DSTOP1,DSTOP2,DSBOT1,DSBOT2
0031
0032 IHOPT=IMSS(4)
0033 IF(IHOPT.EQ.2) THEN
0034 ALPHA=RMSS(18)
0035 RETURN
0036 ENDIF
0037 AT=RMSS(16)
0038 AB=RMSS(15)
0039 DMGL=RMSS(3)
0040 XMU=RMSS(4)
0041 TANB=RMSS(5)
0042
0043 DMA=RMSS(19)
0044 DTANB=TANB
0045 DMQ=RMSS(10)
0046 DMUR=RMSS(12)
0047 DMDR=RMSS(11)
0048 DMTOP=PMAS(6,1)
0049 DMC=PMAS(PYCOMP(KSUSY1+37),1)
0050 DAU=AT
0051 DAD=AB
0052 DMU=XMU
0053 RMSS(40)=0D0
0054 RMSS(41)=0D0
0055
0056 IF(IHOPT.EQ.0) THEN
0057 CALL PYSUBH (DMA,DTANB,DMQ,DMUR,DMTOP,DAU,DAD,DMU,DMH,DHM,
0058 & DMHCH,DSA,DCA,DTANBA)
0059 ELSEIF(IHOPT.EQ.1) THEN
0060 CALL PYSUBH (DMA,DTANB,DMQ,DMUR,DMTOP,DAU,DAD,DMU,DMH,DHM,
0061 & DMHCH,DSA,DCA,DTANBA)
0062 CALL PYPOLE(3,DMC,DMA,DTANB,DMQ,DMUR,DMDR,DMTOP,DAU,DAD,DMU,
0063 & DMH,DMHP,DHM,DHMP,DAMP,DSA,DCA,
0064 & DSTOP1,DSTOP2,DSBOT1,DSBOT2,DTANBA,DMGL,DDT,DDB)
0065 RMSS(40)=DDT
0066 RMSS(41)=DDB
0067 DMH=DMHP
0068 DHM=DHMP
0069 DMA=DAMP
0070 IF(ABS(PMAS(PYCOMP(1000006),1)-DSTOP2).GT.5D-1) THEN
0071 WRITE(MSTU(11),*) ' STOP1 MASS DOES NOT MATCH IN PYHGGM '
0072 WRITE(MSTU(11),*) ' STOP1 MASSES = ',
0073 & PMAS(PYCOMP(1000006),1),DSTOP2
0074 ENDIF
0075 IF(ABS(PMAS(PYCOMP(2000006),1)-DSTOP1).GT.5D-1) THEN
0076 WRITE(MSTU(11),*) ' STOP2 MASS DOES NOT MATCH IN PYHGGM '
0077 WRITE(MSTU(11),*) ' STOP2 MASSES = ',
0078 & PMAS(PYCOMP(2000006),1),DSTOP1
0079 ENDIF
0080 IF(ABS(PMAS(PYCOMP(1000005),1)-DSBOT2).GT.5D-1) THEN
0081 WRITE(MSTU(11),*) ' SBOT1 MASS DOES NOT MATCH IN PYHGGM '
0082 WRITE(MSTU(11),*) ' SBOT1 MASSES = ',
0083 & PMAS(PYCOMP(1000005),1),DSBOT2
0084 ENDIF
0085 IF(ABS(PMAS(PYCOMP(2000005),1)-DSBOT1).GT.5D-1) THEN
0086 WRITE(MSTU(11),*) ' SBOT2 MASS DOES NOT MATCH IN PYHGGM '
0087 WRITE(MSTU(11),*) ' SBOT2 MASSES = ',
0088 & PMAS(PYCOMP(2000005),1),DSBOT1
0089 ENDIF
0090
0091 ELSEIF (IHOPT.EQ.3) THEN
0092
0093
0094 IF (IMSS(1).NE.11.AND.IMSS(1).NE.12.AND.IMSS(1).NE.13) THEN
0095 CALL PYERRM(11,'(PYHGGM:) FeynHiggs needs SLHA or ISASUSY'
0096 & //' spectrum, change IMSS(1) or IMSS(4) option.')
0097 ENDIF
0098 ALPHA=RMSS(18)
0099 RETURN
0100 ENDIF
0101
0102 ALPHA=ACOS(DCA)
0103
0104 PMAS(25,1)=DMH
0105 PMAS(35,1)=DHM
0106 PMAS(36,1)=DMA
0107 PMAS(37,1)=DMHCH
0108
0109 RETURN
0110 END