Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:21:10

0001  
0002 C*********************************************************************
0003  
0004 C...PYFEYN
0005 C...Interface to FeynHiggs for MSSM Higgs sector.
0006 C...Pythia6.402: Updated to FeynHiggs v.2.3.0+ w/ DOUBLE COMPLEX
0007 C...P. Skands
0008  
0009       SUBROUTINE PYFEYN(IERR)
0010  
0011 C...Double precision and integer declarations.
0012       IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0013       IMPLICIT INTEGER(I-N)
0014       INTEGER PYK,PYCHGE,PYCOMP
0015 C...Commonblocks.
0016       COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0017       COMMON/PYDAT2/KCHG(500,4),PMAS(500,4),PARF(2000),VCKM(4,4)
0018 C...SUSY blocks
0019       COMMON/PYMSSM/IMSS(0:99),RMSS(0:99)
0020 C...FeynHiggs variables
0021       DOUBLE PRECISION RMHIGG(4)
0022       DOUBLE COMPLEX SAEFF, UHIGGS(3,3)
0023       DOUBLE COMPLEX DMU,
0024      &     AE33, AU33, AD33, AE22, AU22, AD22, AE11, AU11, AD11,
0025      &     DM1, DM2, DM3
0026 C...SLHA Common Block
0027       COMMON/PYLH3P/MODSEL(200),PARMIN(100),PAREXT(200),RMSOFT(0:100),
0028      &     AU(3,3),AD(3,3),AE(3,3)
0029       SAVE /PYDAT1/,/PYDAT2/,/PYMSSM/,/PYLH3P/
0030  
0031       IERR=0
0032       CALL FHSETFLAGS(IERR,4,0,0,2,0,2,1,1)
0033       IF (IERR.NE.0) THEN
0034         CALL PYERRM(11,'(PYHGGM:) Caught error from FHSETFLAGS.'
0035      &       //'Will not use FeynHiggs for this run.')
0036         RETURN
0037       ENDIF
0038       Q=RMSOFT(0)
0039       DMB=PMAS(5,1)
0040       DMT=PMAS(6,1)
0041       DMZ=PMAS(23,1)
0042       DMW=PMAS(24,1)
0043       DMA=PMAS(36,1)
0044       DM1=RMSOFT(1)
0045       DM2=RMSOFT(2)
0046       DM3=RMSOFT(3)
0047       DTANB=RMSS(5)
0048       DMU=RMSS(4)
0049       DM3SL=RMSOFT(33)
0050       DM3SE=RMSOFT(36)
0051       DM3SQ=RMSOFT(43)
0052       DM3SU=RMSOFT(46)
0053       DM3SD=RMSOFT(49)
0054       DM2SL=RMSOFT(32)
0055       DM2SE=RMSOFT(35)
0056       DM2SQ=RMSOFT(42)
0057       DM2SU=RMSOFT(45)
0058       DM2SD=RMSOFT(48)
0059       DM1SL=RMSOFT(31)
0060       DM1SE=RMSOFT(34)
0061       DM1SQ=RMSOFT(41)
0062       DM1SU=RMSOFT(44)
0063       DM1SD=RMSOFT(47)
0064       AE33=AE(3,3)
0065       AE22=AE(2,2)
0066       AE11=AE(1,1)
0067       AU33=AU(3,3)
0068       AU22=AU(2,2)
0069       AU11=AU(1,1)
0070       AD33=AD(3,3)
0071       AD22=AD(2,2)
0072       AD11=AD(1,1)
0073       CALL FHSETPARA(IERR, 1D0, DMT, DMB, DMW, DMZ, DTANB,
0074      &     DMA,0D0, DM3SL, DM3SE, DM3SQ, DM3SU, DM3SD,
0075      &     DM2SL, DM2SE, DM2SQ, DM2SU, DM2SD,
0076      &     DM1SL, DM1SE, DM1SQ, DM1SU, DM1SD,DMU,
0077      &     AE33, AU33, AD33, AE22, AU22, AD22, AE11, AU11, AD11,
0078      &     DM1, DM2, DM3, 0D0, 0D0,Q,Q,Q)
0079       IF (IERR.NE.0) THEN
0080         CALL PYERRM(11,'(PYHGGM:) Caught error from FHSETPARA.'
0081      &       //' Will not use FeynHiggs for this run.')
0082         RETURN
0083       ENDIF
0084 C...  Get Higgs masses & alpha_eff. (UHIGGS redundant here, only for CPV)
0085       SAEFF=0D0
0086       CALL FHHIGGSCORR(IERR, RMHIGG, SAEFF, UHIGGS)
0087       IF (IERR.NE.0) THEN
0088         CALL PYERRM(11,'(PYFEYN:) Caught error from FHHIG'//
0089      &       'GSCORR. Will not use FeynHiggs for this run.')
0090         RETURN
0091       ENDIF
0092       ALPHA = ASIN(DBLE(SAEFF))
0093       R=RMSS(18)/ALPHA
0094       IF (R.LT.0D0.OR.ABS(R).GT.1.2D0.OR.ABS(R).LT.0.8D0) THEN
0095         CALL PYERRM(1,'(PYFEYN:) Large corrections in Higgs sector.')
0096         WRITE(MSTU(11),*) '   Old Alpha:', RMSS(18)
0097         WRITE(MSTU(11),*) '   New Alpha:', ALPHA
0098       ENDIF
0099       IF (RMHIGG(1).LT.0.85D0*PMAS(25,1).OR.RMHIGG(1).GT.
0100      &       1.15D0*PMAS(25,1)) THEN
0101         CALL PYERRM(1,'(PYFEYN:) Large corrections in Higgs sector.')
0102         WRITE(MSTU(11),*) '   Old m(h0):', PMAS(25,1)
0103         WRITE(MSTU(11),*) '   New m(h0):', RMHIGG(1)
0104       ENDIF
0105       RMSS(18)=ALPHA
0106       PMAS(25,1)=RMHIGG(1)
0107       PMAS(35,1)=RMHIGG(2)
0108       PMAS(36,1)=RMHIGG(3)
0109       PMAS(37,1)=RMHIGG(4)
0110  
0111       RETURN
0112       END