File indexing completed on 2025-08-05 08:21:15
0001
0002
0003
0004
0005
0006
0007 FUNCTION PYRNMQ(ID,DTERM)
0008
0009
0010 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0011 IMPLICIT INTEGER(I-N)
0012 INTEGER PYK,PYCHGE,PYCOMP
0013
0014 COMMON/PYMSSM/IMSS(0:99),RMSS(0:99)
0015 SAVE /PYMSSM/
0016
0017
0018 DOUBLE PRECISION PI,R
0019 DOUBLE PRECISION TOL
0020 DOUBLE PRECISION CI(3)
0021 EXTERNAL PYALPS
0022 DOUBLE PRECISION PYALPS
0023 DATA TOL/0.001D0/
0024 DATA PI,R/3.141592654D0,.61803399D0/
0025 DATA CI/0.47D0,0.07D0,0.02D0/
0026
0027 C=1D0-R
0028 CA=CI(ID)
0029 AG=(0.71D0)**2/4D0/PI
0030 AG=RMSS(20)
0031 XM0=RMSS(8)
0032 XMG=RMSS(1)
0033 XM02=XM0*XM0
0034 XMG2=XMG*XMG
0035
0036 AS=PYALPS(XM02+6D0*XMG2)
0037 CG=8D0/9D0*((AS/AG)**2-1D0)
0038 BX=XM02+(CA+CG)*XMG2+DTERM
0039 AX=MIN(50D0**2,0.5D0*BX)
0040 CX=MAX(2000D0**2,2D0*BX)
0041
0042 X0=AX
0043 X3=CX
0044 IF(ABS(CX-BX).GT.ABS(BX-AX))THEN
0045 X1=BX
0046 X2=BX+C*(CX-BX)
0047 ELSE
0048 X2=BX
0049 X1=BX-C*(BX-AX)
0050 ENDIF
0051 AS1=PYALPS(X1)
0052 CG=8D0/9D0*((AS1/AG)**2-1D0)
0053 F1=ABS(XM02+(CA+CG)*XMG2+DTERM-X1)
0054 AS2=PYALPS(X2)
0055 CG=8D0/9D0*((AS2/AG)**2-1D0)
0056 F2=ABS(XM02+(CA+CG)*XMG2+DTERM-X2)
0057 100 IF(ABS(X3-X0).GT.TOL*(ABS(X1)+ABS(X2))) THEN
0058 IF(F2.LT.F1) THEN
0059 X0=X1
0060 X1=X2
0061 X2=R*X1+C*X3
0062 F1=F2
0063 AS2=PYALPS(X2)
0064 CG=8D0/9D0*((AS2/AG)**2-1D0)
0065 F2=ABS(XM02+(CA+CG)*XMG2+DTERM-X2)
0066 ELSE
0067 X3=X2
0068 X2=X1
0069 X1=R*X2+C*X0
0070 F2=F1
0071 AS1=PYALPS(X1)
0072 CG=8D0/9D0*((AS1/AG)**2-1D0)
0073 F1=ABS(XM02+(CA+CG)*XMG2+DTERM-X1)
0074 ENDIF
0075 GOTO 100
0076 ENDIF
0077 IF(F1.LT.F2) THEN
0078 PYRNMQ=X1
0079 XMIN=X1
0080 ELSE
0081 PYRNMQ=X2
0082 XMIN=X2
0083 ENDIF
0084
0085 RETURN
0086 END