]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | #include "pdf/pilot.h" |
2 | SUBROUTINE SASVMD(ISET,KF,X,Q2,P2,ALAM,XPGA,VXPGA) | |
3 | C...Purpose: to evaluate the VMD parton distributions of a photon, | |
4 | C...evolved homogeneously from an initial scale P2 to Q2. | |
5 | C...Does not include dipole suppression factor. | |
6 | C...ISET is parton distribution set, see above; | |
7 | C...additionally ISET=0 is used for the evolution of an anomalous photon | |
8 | C...which branched at a scale P2 and then evolved homogeneously to Q2. | |
9 | C...ALAM is the 4-flavour Lambda, which is automatically converted | |
10 | C...to 3- and 5-flavour equivalents as needed. | |
11 | DIMENSION XPGA(-6:6), VXPGA(-6:6) | |
12 | DATA PMC/1.3/, PMB/4.6/, AEM/0.007297/, AEM2PI/0.0011614/ | |
13 | ||
14 | C...Reset output. | |
15 | DO 100 KFL=-6,6 | |
16 | XPGA(KFL)=0. | |
17 | VXPGA(KFL)=0. | |
18 | 100 CONTINUE | |
19 | KFA=IABS(KF) | |
20 | ||
21 | C...Calculate Lambda; protect against unphysical Q2 and P2 input. | |
22 | ALAM3=ALAM*(PMC/ALAM)**(2./27.) | |
23 | ALAM5=ALAM*(ALAM/PMB)**(2./23.) | |
24 | P2EFF=MAX(P2,1.2*ALAM3**2) | |
25 | IF(KFA.EQ.4) P2EFF=MAX(P2EFF,PMC**2) | |
26 | IF(KFA.EQ.5) P2EFF=MAX(P2EFF,PMB**2) | |
27 | Q2EFF=MAX(Q2,P2EFF) | |
28 | ||
29 | C...Find number of flavours at lower and upper scale. | |
30 | NFP=4 | |
31 | IF(P2EFF.LT.PMC**2) NFP=3 | |
32 | IF(P2EFF.GT.PMB**2) NFP=5 | |
33 | NFQ=4 | |
34 | IF(Q2EFF.LT.PMC**2) NFQ=3 | |
35 | IF(Q2EFF.GT.PMB**2) NFQ=5 | |
36 | ||
37 | C...Find s as sum of 3-, 4- and 5-flavour parts. | |
38 | S=0. | |
39 | IF(NFP.EQ.3) THEN | |
40 | Q2DIV=PMC**2 | |
41 | IF(NFQ.EQ.3) Q2DIV=Q2EFF | |
42 | S=S+(6./27.)*LOG(LOG(Q2DIV/ALAM3**2)/LOG(P2EFF/ALAM3**2)) | |
43 | ENDIF | |
44 | IF(NFP.LE.4.AND.NFQ.GE.4) THEN | |
45 | P2DIV=P2EFF | |
46 | IF(NFP.EQ.3) P2DIV=PMC**2 | |
47 | Q2DIV=Q2EFF | |
48 | IF(NFQ.EQ.5) Q2DIV=PMB**2 | |
49 | S=S+(6./25.)*LOG(LOG(Q2DIV/ALAM**2)/LOG(P2DIV/ALAM**2)) | |
50 | ENDIF | |
51 | IF(NFQ.EQ.5) THEN | |
52 | P2DIV=PMB**2 | |
53 | IF(NFP.EQ.5) P2DIV=P2EFF | |
54 | S=S+(6./23.)*LOG(LOG(Q2EFF/ALAM5**2)/LOG(P2DIV/ALAM5**2)) | |
55 | ENDIF | |
56 | ||
57 | C...Calculate frequent combinations of x and s. | |
58 | X1=1.-X | |
59 | XL=-LOG(X) | |
60 | S2=S**2 | |
61 | S3=S**3 | |
62 | S4=S**4 | |
63 | ||
64 | C...Evaluate homogeneous anomalous parton distributions below or | |
65 | C...above threshold. | |
66 | IF(ISET.EQ.0) THEN | |
67 | IF(Q2.LE.P2.OR.(KFA.EQ.4.AND.Q2.LT.PMC**2).OR. | |
68 | &(KFA.EQ.5.AND.Q2.LT.PMB**2)) THEN | |
69 | XVAL = X * 1.5 * (X**2+X1**2) | |
70 | XGLU = 0. | |
71 | XSEA = 0. | |
72 | ELSE | |
73 | XVAL = (1.5/(1.-0.197*S+4.33*S2)*X**2 + (1.5+2.10*S)/ | |
74 | & (1.+3.29*S)*X1**2 + 5.23*S/(1.+1.17*S+19.9*S3)*X*X1) * | |
75 | & X**(1./(1.+1.5*S)) * (1.-X**2)**(2.667*S) | |
76 | XGLU = 4.*S/(1.+4.76*S+15.2*S2+29.3*S4) * | |
77 | & X**(-2.03*S/(1.+2.44*S)) * (X1*XL)**(1.333*S) * | |
78 | & ((4.*X**2+7.*X+4.)*X1/3. - 2.*X*(1.+X)*XL) | |
79 | XSEA = S2/(1.+4.54*S+8.19*S2+8.05*S3) * | |
80 | & X**(-1.54*S/(1.+1.29*S)) * X1**(2.667*S) * | |
81 | & ((8.-73.*X+62.*X**2)*X1/9. + (3.-8.*X**2/3.)*X*XL + | |
82 | & (2.*X-1.)*X*XL**2) | |
83 | ENDIF | |
84 | ||
85 | C...Evaluate set 1D parton distributions below or above threshold. | |
86 | ELSEIF(ISET.EQ.1) THEN | |
87 | IF(Q2.LE.P2.OR.(KFA.EQ.4.AND.Q2.LT.PMC**2).OR. | |
88 | &(KFA.EQ.5.AND.Q2.LT.PMB**2)) THEN | |
89 | XVAL = 1.294 * X**0.80 * X1**0.76 | |
90 | XGLU = 1.273 * X**0.40 * X1**1.76 | |
91 | XSEA = 0.100 * X1**3.76 | |
92 | ELSE | |
93 | XVAL = 1.294/(1.+0.252*S+3.079*S2) * X**(0.80-0.13*S) * | |
94 | & X1**(0.76+0.667*S) * XL**(2.*S) | |
95 | XGLU = 7.90*S/(1.+5.50*S) * EXP(-5.16*S) * | |
96 | & X**(-1.90*S/(1.+3.60*S)) * X1**1.30 * XL**(0.50+3.*S) + | |
97 | & 1.273 * EXP(-10.*S) * X**0.40 * X1**(1.76+3.*S) | |
98 | XSEA = (0.1-0.397*S2+1.121*S3)/(1.+5.61*S2+5.26*S3) * | |
99 | & X**(-7.32*S2/(1.+10.3*S2)) * | |
100 | & X1**((3.76+15.*S+12.*S2)/(1.+4.*S)) | |
101 | XSEA0 = 0.100 * X1**3.76 | |
102 | ENDIF | |
103 | ||
104 | C...Evaluate set 1M parton distributions below or above threshold. | |
105 | ELSEIF(ISET.EQ.2) THEN | |
106 | IF(Q2.LE.P2.OR.(KFA.EQ.4.AND.Q2.LT.PMC**2).OR. | |
107 | &(KFA.EQ.5.AND.Q2.LT.PMB**2)) THEN | |
108 | XVAL = 0.8477 * X**0.51 * X1**1.37 | |
109 | XGLU = 3.42 * X**0.255 * X1**2.37 | |
110 | XSEA = 0. | |
111 | ELSE | |
112 | XVAL = 0.8477/(1.+1.37*S+2.18*S2+3.73*S3) * X**(0.51+0.21*S) | |
113 | & * X1**1.37 * XL**(2.667*S) | |
114 | XGLU = 24.*S/(1.+9.6*S+0.92*S2+14.34*S3) * EXP(-5.94*S) * | |
115 | & X**((-0.013-1.80*S)/(1.+3.14*S)) * X1**(2.37+0.4*S) * | |
116 | & XL**(0.32+3.6*S) + 3.42 * EXP(-12.*S) * X**0.255 * | |
117 | & X1**(2.37+3.*S) | |
118 | XSEA = 0.842*S/(1.+21.3*S-33.2*S2+229.*S3) * | |
119 | & X**((0.13-2.90*S)/(1.+5.44*S)) * X1**(3.45+0.5*S) * | |
120 | & XL**(2.8*S) | |
121 | XSEA0 = 0. | |
122 | ENDIF | |
123 | ||
124 | C...Evaluate set 2D parton distributions below or above threshold. | |
125 | ELSEIF(ISET.EQ.3) THEN | |
126 | IF(Q2.LE.P2.OR.(KFA.EQ.4.AND.Q2.LT.PMC**2).OR. | |
127 | &(KFA.EQ.5.AND.Q2.LT.PMB**2)) THEN | |
128 | XVAL = X**0.46 * X1**0.64 + 0.76 * X | |
129 | XGLU = 1.925 * X1**2 | |
130 | XSEA = 0.242 * X1**4 | |
131 | ELSE | |
132 | XVAL = (1.+0.186*S)/(1.-0.209*S+1.495*S2) * X**(0.46+0.25*S) | |
133 | & * X1**((0.64+0.14*S+5.*S2)/(1.+S)) * XL**(1.9*S) + | |
134 | & (0.76+0.4*S) * X * X1**(2.667*S) | |
135 | XGLU = (1.925+5.55*S+147.*S2)/(1.-3.59*S+3.32*S2) * | |
136 | & EXP(-18.67*S) * X**((-5.81*S-5.34*S2)/(1.+29.*S-4.26*S2)) | |
137 | & * X1**((2.-5.9*S)/(1.+1.7*S)) * XL**(9.3*S/(1.+1.7*S)) | |
138 | XSEA = (0.242-0.252*S+1.19*S2)/(1.-0.607*S+21.95*S2) * | |
139 | & X**(-12.1*S2/(1.+2.62*S+16.7*S2)) * X1**4 * XL**S | |
140 | XSEA0 = 0.242 * X1**4 | |
141 | ENDIF | |
142 | ||
143 | C...Evaluate set 2M parton distributions below or above threshold. | |
144 | ELSEIF(ISET.EQ.4) THEN | |
145 | IF(Q2.LE.P2.OR.(KFA.EQ.4.AND.Q2.LT.PMC**2).OR. | |
146 | &(KFA.EQ.5.AND.Q2.LT.PMB**2)) THEN | |
147 | XVAL = 1.168 * X**0.50 * X1**2.60 + 0.965 * X | |
148 | XGLU = 1.808 * X1**2 | |
149 | XSEA = 0.209 * X1**4 | |
150 | ELSE | |
151 | XVAL = (1.168+1.771*S+29.35*S2) * EXP(-5.776*S) * | |
152 | & X**((0.5+0.208*S)/(1.-0.794*S+1.516*S2)) * | |
153 | & X1**((2.6+7.6*S)/(1.+5.*S)) * XL**(5.15*S/(1.+2.*S)) + | |
154 | & (0.965+22.35*S)/(1.+18.4*S) * X * X1**(2.667*S) | |
155 | XGLU = (1.808+29.9*S)/(1.+26.4*S) * EXP(-5.28*S) * | |
156 | & X**((-5.35*S-10.11*S2)/(1.+31.71*S)) * | |
157 | & X1**((2.-7.3*S+4.*S2)/(1.+2.5*S)) * | |
158 | & XL**(10.9*S/(1.+2.5*S)) | |
159 | XSEA = (0.209+0.644*S2)/(1.+0.319*S+17.6*S2) * | |
160 | & X**((-0.373*S-7.71*S2)/(1.+0.815*S+11.0*S2)) * | |
161 | & X1**(4.+S) * XL**(0.45*S) | |
162 | XSEA0 = 0.209 * X1**4 | |
163 | ENDIF | |
164 | ENDIF | |
165 | ||
166 | C...Threshold factors for c and b sea. | |
167 | SLL=LOG(LOG(Q2EFF/ALAM**2)/LOG(P2EFF/ALAM**2)) | |
168 | XCHM=0. | |
169 | IF(Q2.GT.PMC**2.AND.Q2.GT.1.001*P2EFF) THEN | |
170 | SCH=MAX(0.,LOG(LOG(PMC**2/ALAM**2)/LOG(P2EFF/ALAM**2))) | |
171 | IF(ISET.EQ.0) THEN | |
172 | XCHM=XSEA*(1.-(SCH/SLL)**2) | |
173 | ELSE | |
174 | XCHM=MAX(0.,XSEA-XSEA0*X1**(2.667*S))*(1.-SCH/SLL) | |
175 | ENDIF | |
176 | ENDIF | |
177 | XBOT=0. | |
178 | IF(Q2.GT.PMB**2.AND.Q2.GT.1.001*P2EFF) THEN | |
179 | SBT=MAX(0.,LOG(LOG(PMB**2/ALAM**2)/LOG(P2EFF/ALAM**2))) | |
180 | IF(ISET.EQ.0) THEN | |
181 | XBOT=XSEA*(1.-(SBT/SLL)**2) | |
182 | ELSE | |
183 | XBOT=MAX(0.,XSEA-XSEA0*X1**(2.667*S))*(1.-SBT/SLL) | |
184 | ENDIF | |
185 | ENDIF | |
186 | ||
187 | C...Fill parton distributions. | |
188 | XPGA(0)=XGLU | |
189 | XPGA(1)=XSEA | |
190 | XPGA(2)=XSEA | |
191 | XPGA(3)=XSEA | |
192 | XPGA(4)=XCHM | |
193 | XPGA(5)=XBOT | |
194 | XPGA(KFA)=XPGA(KFA)+XVAL | |
195 | DO 110 KFL=1,5 | |
196 | XPGA(-KFL)=XPGA(KFL) | |
197 | 110 CONTINUE | |
198 | VXPGA(KFA)=XVAL | |
199 | VXPGA(-KFA)=XVAL | |
200 | ||
201 | RETURN | |
202 | END |