File indexing completed on 2025-08-05 08:21:10
0001
0002
0003
0004
0005
0006
0007
0008
0009 FUNCTION PYFCMP(XC,XS,NPOW)
0010 IMPLICIT NONE
0011 DOUBLE PRECISION XC, XS, Y, PYFCMP,FAC
0012 INTEGER NPOW
0013
0014 PYFCMP=0D0
0015
0016 Y=XC+XS
0017 IF (Y.GE.1D0) RETURN
0018
0019 FAC=3D0*XC*XS*(XC**2+XS**2)/(Y**4)
0020
0021 IF (NPOW.LE.0) THEN
0022 PYFCMP=FAC/(2D0-XS*(3D0-XS*(3D0-2D0*XS)))
0023 ELSEIF (NPOW.EQ.1) THEN
0024 PYFCMP=FAC*(1D0-Y)/(2D0+XS**2*(-3D0+XS)+3D0*XS*LOG(XS))
0025 ELSEIF (NPOW.EQ.2) THEN
0026 PYFCMP=FAC*(1D0-Y)**2/(2D0*((1D0-XS)*(1D0+XS*(4D0+XS))
0027 & +3D0*XS*(1D0+XS)*LOG(XS)))
0028 ELSEIF (NPOW.EQ.3) THEN
0029 PYFCMP=FAC*(1D0-Y)**3*2D0/(4D0+27D0*XS-31D0*XS**3
0030 & +6D0*XS*LOG(XS)*(3D0+2D0*XS*(3D0+XS)))
0031 ELSEIF (NPOW.GE.4) THEN
0032 PYFCMP=FAC*(1D0-Y)**4/(2D0*(1D0+2D0*XS)*((1D0-XS)*(1D0+
0033 & XS*(10D0+XS))+6D0*XS*LOG(XS)*(1D0+XS)))
0034 ENDIF
0035 RETURN
0036 END