Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pypcmp.f
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file pypcmp.f
1 
2 C*********************************************************************
3 
4 C...PYPCMP: Auxiliary to PYPDFU.
5 C...Giving the momentum integral of a companion quark, with its
6 C...partner at XS, using an approximate gluon density like (1-x)^NPOW/x.
7 C...The value corresponds to an unrescaled range between 0 and 1-XS.
8 
9  FUNCTION pypcmp(XS,NPOW)
10  IMPLICIT NONE
11  DOUBLE PRECISION xs, pypcmp
12  INTEGER npow
13  IF (xs.GE.1d0.OR.xs.LE.0d0) THEN
14  pypcmp=0d0
15  ELSEIF (npow.LE.0) THEN
16  pypcmp=xs*(5d0+xs*(-9d0-2d0*xs*(-3d0+xs))+3d0*log(xs))
17  pypcmp=pypcmp/((-1d0+xs)*(2d0+xs*(-1d0+2d0*xs)))
18  ELSEIF (npow.EQ.1) THEN
19  pypcmp=-1d0-3d0*xs+(2d0*(-1d0+xs)**2*(1d0+xs+xs**2))
20  & /(2d0+xs**2*(xs-3d0)+3d0*xs*log(xs))
21  ELSEIF (npow.EQ.2) THEN
22  pypcmp=xs*((1d0-xs)*(19d0+xs*(43d0+4d0*xs))
23  & +6d0*log(xs)*(1d0+6d0*xs+4d0*xs**2))
24  pypcmp=pypcmp/(4d0*((xs-1d0)*(1d0+xs*(4d0+xs))
25  & -3d0*xs*log(xs)*(1+xs)))
26  ELSEIF (npow.EQ.3) THEN
27  pypcmp=3d0*xs*((xs-1)*(7d0+xs*(28d0+13d0*xs))
28  & -2d0*log(xs)*(1d0+xs*(9d0+2d0*xs*(6d0+xs))))
29  pypcmp=pypcmp/(4d0+27d0*xs-31d0*xs**3
30  & +6d0*xs*log(xs)*(3d0+2d0*xs*(3d0+xs)))
31  ELSE
32  pypcmp=(-9d0*xs*(xs**2-1d0)*(5d0+xs*(24d0+xs))+12d0*xs*log(xs)
33  & *(1d0+2d0*xs)*(1d0+2d0*xs*(5d0+2d0*xs)))
34  pypcmp=pypcmp/(8d0*(1d0+2d0*xs)*((xs-1d0)*(1d0+xs*(10d0+xs))
35  & -6d0*xs*log(xs)*(1d0+xs)))
36  ENDIF
37  RETURN
38  END