1 subroutine GSGevolvep0(xin,qin,p2in,ip2in,pdf)
2 include 'parmsetup.inc'
3 real*8 xin,qin,q2in,p2in,pdf(-6:6),xval(45),qcdl4,qcdl5
4 real*8 upv,dnv,usea,dsea,str,chm,bot,top,glu
7 common/gsgdat/SIG(78,11,3),QNS(78,11,3),GL(78,11,3)
8 character*16 name(nmxset)
9 integer nmem(nmxset),ndef(nmxset),mmem
10 common/NAME/name,nmem,ndef,mmem
15 call getnmem(iset,iimem)
16 c -- this is LO 2 --> 3 0/1 --> 2
17 if(iimem.eq.2) iimem = 3
18 if(iimem.eq.0) iimem = 2
19 if(iimem.eq.1) iimem = 2
21 call SFGSHL(iimem,xin,qin,upv,dnv,usea,dsea,str,chm,bot,glu)
38 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
39 entry GSGevolvep1(xin,qin,p2in,ip2in,pdf)
41 c--- this is HO --- iimem=1
43 call SFGSHL(iimem,xin,qin,upv,dnv,usea,dsea,str,chm,bot,glu)
61 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
63 read(1,*)nmem(nset),ndef(nset)
67 read(1,*)SIG(k,m,j),QNS(k,m,j),GL(k,m,j)
73 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
74 entry GSGalfa(alfas,qalfa)
76 call getnmem(iset,imem)
77 call GetOrderAsM(iset,iord)
78 call Getlam4M(iset,imem,qcdl4)
79 call Getlam5M(iset,imem,qcdl5)
80 call aspdflib(alfas,Qalfa,iord,qcdl5)
81 c call aspdflib(alfas,Qalfa,iord,qcdl5)
85 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
86 entry GSGinit(Eorder,Q2fit)
89 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
92 call setnmem(iset,mem)
98 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
99 c SUBROUTINE SFGSHO(X,Q,U,D,US,DS,S,C,B,G)
100 SUBROUTINE SFGSHL(iset,X,Q,U,D,US,DS,S,C,B,G)
102 *****************************************************************
103 * Subroutine returns the parton distributions in the photon in *
104 * higher order. u,d etc. gives the actual distributions and *
105 * not x times the distributions; Q2 means Q 2. The distributions*
106 * are valid for 5.0e -4< x < 1.0 and 5.3 GeV 2 < Q 2 < 1.0e 8. *
107 * if higher Q 2 or lower x is required, these may be obtained *
108 * from the authors on request. *
109 * Lionel Gordon July 1991 : Gordon@uk.ac.man.ph.v2 *
110 *****************************************************************
112 implicit real*8 (a-h,o-z)
113 PARAMETER(NP=78,NQ=11,NARG=2)
116 c + SIG(NP,NQ),QNS(NP,NQ),GL(NP,NQ),Y(NP),
118 + XT(NARG),A(NP+NQ),QT(NQ)
119 common/gsgdat/SIG(78,11,3),QNS(78,11,3),GL(78,11,3)
122 c SAVE SIG,QNS,GL,Y,ICALL
124 DATA QT /5.3D0,20.0D0,50.0D0,1.0D2,5.0D2,1.0D3,1.0D4,1.0D5,
128 ******************************************************************
135 *if x is out of range
137 IF((X.LT.5.0D-4).OR.(X.GT.0.95D0)) GOTO 90
139 IF((X.LT.5.0D-4).OR.(X.GT.0.99D0)) GOTO 90
142 *******************************************************************
144 * get the x coordinates
161 XSIG=DBFINT(2,XT,NA,A,SIG(1,1,iset))
162 XQNS=DBFINT(2,XT,NA,A,QNS(1,1,iset))
163 G =DBFINT(2,XT,NA,A,GL(1,1,iset))
165 IF (Q2.LT.50.0D0) THEN
166 C Use three flavour evolution.
167 U=(XSIG+9.0D0*XQNS)/6.0D0
168 D=(XSIG-4.5D0*XQNS)/6.0D0
173 ELSE IF((Q2.GT.50.0D0).AND.(Q2.LT.250.0D0)) THEN
174 C Use four flavour evolution
175 U=(XSIG+6.0D0*XQNS)/8.0D0
176 D=(XSIG-6.0D0*XQNS)/8.0D0
181 C Use five flavour evolution
182 U=(XSIG+7.5D0*XQNS)/10.0D0
183 D=(XSIG-5.0D0*XQNS)/10.0D0
198 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
199 SUBROUTINE GSXCOR(Y,NP)
201 implicit real*8 (a-h,o-z)
217 DO 40 IX=1625,1980,25
223 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc