File indexing completed on 2025-08-05 08:21:13
0001
0002
0003
0004
0005
0006
0007
0008 SUBROUTINE PYNMES(KFDIQ)
0009
0010
0011 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0012 IMPLICIT INTEGER(I-N)
0013 INTEGER PYK,PYCHGE,PYCOMP
0014
0015 COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0016 COMMON/PYDAT2/KCHG(500,4),PMAS(500,4),PARF(2000),VCKM(4,4)
0017 SAVE /PYDAT1/,/PYDAT2/
0018
0019 MSTU(121)=0
0020 IF(MSTJ(12).LT.2) RETURN
0021
0022
0023 IF(MSTJ(12).LT.5)THEN
0024 POPWT=PARF(131)
0025 IF(KFDIQ.NE.0) THEN
0026 KFDIQA=IABS(KFDIQ)
0027 KFA=MOD(KFDIQA/1000,10)
0028 KFB=MOD(KFDIQA/100,10)
0029 KFS=MOD(KFDIQA,10)
0030 POPWT=PARF(132)
0031 IF(KFA.EQ.3) POPWT=PARF(133)
0032 IF(KFB.EQ.3) POPWT=PARF(134)
0033 IF(KFS.EQ.1) POPWT=POPWT*SQRT(PARJ(4))
0034 ENDIF
0035 MSTU(121)=INT(POPWT/(1D0+POPWT)+PYR(0))
0036 RETURN
0037 ENDIF
0038
0039
0040 MSTU(122)=170
0041 PARF(193)=PARJ(8)
0042 PARF(194)=PARF(139)
0043 IF(KFDIQ.NE.0) THEN
0044 MSTU(122)=180
0045 PARF(193)=PARJ(10)
0046 PARF(194)=PARF(140)
0047 ENDIF
0048 IF(PARF(194).LT.1D-5.OR.PARF(194).GT.1D0-1D-5) THEN
0049 IF(PARF(194).GT.1D0-1D-5) CALL PYERRM(9,
0050 & '(PYNMES:) Neglecting too large popcorn possibility')
0051 RETURN
0052 ENDIF
0053
0054
0055 100 RTST=PYR(0)
0056 MSTU(121)=-1
0057 110 MSTU(121)=MSTU(121)+1
0058 RTST=RTST/PARF(194)
0059 IF(RTST.LT.1D0) GOTO 110
0060 IF(KFDIQ.EQ.0.AND.PYR(0)*(2D0+PARF(135)*PARF(161)).GT.
0061 & (2D0+PARF(135)*PARF(161)*PARF(138)**MSTU(121))) GOTO 100
0062 RETURN
0063 END