]>
Commit | Line | Data |
---|---|---|
0caf84a5 | 1 | ! -*- F90 -*- |
2 | ||
3 | ||
4 | subroutine evolvePDF(x,Q,f) | |
5 | implicit none | |
6 | integer nset,imem,Eorder,IP2 | |
7 | real*8 x,Q,P2,Q2fit,f(-6:6),alfas,a,photon,gluino | |
8 | nset = 1 | |
9 | call evolvePDFM(nset,x,Q,f) | |
10 | return | |
11 | ! | |
12 | entry evolvePDFp(x,Q,P2,IP2,f) | |
13 | nset = 1 | |
14 | call evolvePDFpM(nset,x,Q,P2,IP2,f) | |
15 | return | |
16 | ! | |
17 | entry evolvePDFa(x,Q,a,f) | |
18 | nset = 1 | |
19 | call evolvePDFaM(nset,x,Q,a,f) | |
20 | return | |
21 | ! | |
22 | entry evolvePDFphoton(x,Q,f,photon) | |
23 | nset = 1 | |
24 | call evolvePDFphotonM(nset,x,Q,f,photon) | |
25 | return | |
26 | ! | |
27 | entry evolvePDFgluino(x,Q,f,gluino) | |
28 | nset = 1 | |
29 | call evolvePDFgluinoM(nset,x,Q,f,gluino) | |
30 | return | |
31 | ! | |
32 | entry initPDF(imem) | |
33 | nset = 1 | |
34 | call initPDFM(nset,imem) | |
35 | ||
36 | return | |
37 | END | |
38 | ! | |
39 | subroutine evolvePDFaM(nset,xin,Qin,a,f) | |
40 | implicit none | |
41 | real*8 x,Q,a,f(-6:6) | |
42 | real*8 ruv,rdv,ru,rd,rs,rc,rb,rt,rg | |
43 | integer nset,iimem,j | |
44 | real*8 xin,qin,q2in | |
45 | character*20 lparm | |
46 | real*8 xmin,xmax,q2min,q2max | |
47 | ||
48 | call getlhaparm(18,lparm) | |
49 | if(lparm.ne.'EXTRAPOLATE') then | |
50 | call getnmem(nset,iimem) | |
51 | call getminmaxm(nset,iimem,xmin,xmax,q2min,q2max) | |
52 | x = max(xmin,min(xmax,xin)) | |
53 | q2in = qin**2 | |
54 | q = sqrt(max(0d0,q2min,min(q2max,q2in))) | |
55 | else | |
56 | x = xin | |
57 | q = qin | |
58 | endif | |
59 | ||
60 | call getlhaparm(15,lparm) | |
61 | if(lparm.eq.'EPS08') then | |
66f02a7f | 62 | call eps08(x,q,a,ruv,rdv,ru,rd,rs,rc,rb,rt,rg) |
63 | else if (lparm.eq.'EPS09LO') then | |
64 | call eps09(1, 1, a, x, q, ruv, rdv, ru, rd, rs, rc, rb, rt, rg) | |
65 | else if (lparm.eq.'EPS09NLO') then | |
66 | call eps09(2, 1, a, x, q, ruv, rdv, ru, rd, rs, rc, rb, rt, rg) | |
0caf84a5 | 67 | else |
66f02a7f | 68 | call eks98(x,q,a,ruv,rdv,ru,rd,rs,rc,rb,rt,rg) |
0caf84a5 | 69 | endif |
70 | ||
71 | call evolvePDFM(nset,x,Q,f) | |
72 | f(0) = f(0)*rg | |
73 | f(1) = f(1)*rdv-f(-1)*(rdv-rd) | |
74 | f(2) = f(2)*ruv-f(-2)*(ruv-ru) | |
75 | f(3) = f(3)*rs | |
76 | f(4) = f(4)*rc | |
77 | f(5) = f(5)*rb | |
78 | f(6) = f(6)*rt | |
79 | f(-6) = f(-6)*rt | |
80 | f(-5) = f(-5)*rb | |
81 | f(-4) = f(-4)*rc | |
82 | f(-3) = f(-3)*rs | |
83 | f(-2) = f(-2)*ru | |
84 | f(-1) = f(-1)*rd | |
85 | ||
86 | return | |
87 | END | |
88 | ! | |
89 | subroutine evolvePDFM(nset,xin,Qin,f) | |
90 | implicit none | |
91 | include 'parmsetup.inc' | |
92 | integer Eorder,index,imem | |
93 | character*16 name(nmxset) | |
94 | integer nmem(nmxset),ndef(nmxset),mem,ip2 | |
95 | common/NAME/name,nmem,ndef,mem | |
96 | integer iset,iimem | |
97 | common/SET/iset,iimem | |
98 | integer nset,j | |
99 | real*8 x,xin,Q,Qin,Q2fit,alfas,p2,q2in | |
100 | real*8 f(-6:6),photon,gluino | |
101 | character*20 lparm | |
102 | real*8 xmin,xmax,q2min,q2max | |
103 | save | |
104 | ! | |
105 | call setnset(nset) | |
106 | ! | |
107 | ! print *,'this is evolvePDFM, name=',nset,name(nset) | |
108 | ! set all f's to 0.0d0 at start | |
109 | ! do j = -6,6 | |
110 | ! f(j) = 0.0d0 | |
111 | ! enddo | |
112 | ||
113 | call getlhaparm(18,lparm) | |
114 | if(lparm.ne.'EXTRAPOLATE') then | |
115 | call getnmem(nset,iimem) | |
116 | call getminmaxm(nset,iimem,xmin,xmax,q2min,q2max) | |
117 | x = max(xmin,min(xmax,xin)) | |
118 | q2in = qin**2 | |
119 | q = sqrt(max(0d0,q2min,min(q2max,q2in))) | |
120 | else | |
121 | x = xin | |
122 | q = qin | |
123 | endif | |
124 | ||
125 | if (name(nset).eq.'QCDNUM') call QCDNUMevolve(x,Q,f) | |
126 | if (name(nset).eq.'QCDNUM_MRST') call QCDNUMevolve(x,Q,f) | |
127 | if (name(nset).eq.'QCDNUM_MRST3') call QCDNUM3evolve(x,Q,f) | |
128 | if (name(nset).eq.'QCDNUM_MRST4') call QCDNUM4evolve(x,Q,f) | |
129 | if (name(nset)(1:11).eq.'QCDNUM_ZEUS') call ZEUSevolve(x,Q,f) | |
130 | if (name(nset).eq.'CTEQ5grid') call CTEQ5evolve(x,Q,f) | |
131 | if (name(nset).eq.'CTEQ6grid') call CTEQ6evolve(x,Q,f) | |
dece5eff | 132 | !!$ if (name(nset).eq.'CTEQ65grid') call CTEQ65evolve(x,Q,f) |
133 | !!$ if (name(nset).eq.'CTEQ65cgrid') call CTEQ65cevolve(x,Q,f) | |
134 | !!$ if (name(nset).eq.'CTEQ65sgrid') call CTEQ65sevolve(x,Q,f) | |
0caf84a5 | 135 | if (name(nset).eq.'CTEQ6ABgrid') call CTEQ6evolve(x,Q,f) |
dece5eff | 136 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ65evolve(x,Q,f) |
0caf84a5 | 137 | if (name(nset).eq.'EVLCTEQ') call EVLCTEQevolve(x,Q,f) |
43586896 | 138 | if (name(nset).eq.'MRSTgrid') call MRSTevolve(x,Q,f) |
dece5eff | 139 | !!$ if (name(nset).eq.'MRST3grid') call MRSTevolve(x,Q,f) |
140 | !!$ if (name(nset).eq.'MRST4grid') call MRSTevolve(x,Q,f) | |
141 | !!$ if (name(nset).eq.'MRST98grid') call MRST98evolve(x,Q,f) | |
142 | !!$ if (name(nset).eq.'MRST2006grid') call MRST2006evolve(x,Q,f) | |
0caf84a5 | 143 | if (name(nset).eq.'MRSTpdf') call QCDNUMevolve(x,Q,f) |
144 | if (name(nset).eq.'MRST') call QCDNUMevolve(x,Q,f) | |
145 | if (name(nset).eq.'A02') call A02evolve(x,Q,f) | |
146 | if (name(nset).eq.'A02M') call A02Mevolve(x,Q,f) | |
147 | if (name(nset).eq.'H12000') call H1evolve(x,Q,f) | |
148 | if (name(nset).eq.'GRV') call GRVevolve(x,Q,f) | |
149 | if (name(nset).eq.'OWP') call OWPevolve(x,Q,f) | |
150 | if (name(nset).eq.'SMRSP') call SMRSPevolve(x,Q,f) | |
151 | if (name(nset).eq.'GRVP0') call GRVP0evolve(x,Q,f) | |
152 | if (name(nset).eq.'GRVP1') call GRVP1evolve(x,Q,f) | |
153 | if (name(nset).eq.'ABFKWP') call ABFKWPevolve(x,Q,f) | |
154 | if (name(nset).eq.'USER') call USERevolve(x,Q,f) | |
155 | return | |
156 | ! | |
157 | entry evolvePDFpM(nset,xin,Qin,P2,IP2,f) | |
158 | ! | |
159 | call setnset(nset) | |
160 | ! | |
161 | call getlhaparm(18,lparm) | |
162 | if(lparm.ne.'EXTRAPOLATE') then | |
163 | call getnmem(nset,iimem) | |
164 | call getminmaxm(nset,iimem,xmin,xmax,q2min,q2max) | |
165 | x = max(xmin,min(xmax,xin)) | |
166 | q2in = qin**2 | |
167 | q = sqrt(max(0d0,q2min,min(q2max,q2in))) | |
168 | else | |
169 | x = xin | |
170 | q = qin | |
171 | endif | |
172 | ! | |
173 | if(name(nset).eq.'SASG') call SASGevolvep(x,Q,P2,IP2,f) | |
174 | if(name(nset).eq.'GRVG0') call GRVGevolvep0(x,Q,P2,IP2,f) | |
175 | if(name(nset).eq.'GRVG1') call GRVGevolvep1(x,Q,P2,IP2,f) | |
176 | if (name(nset).eq.'DOG0') call DOGevolvep0(x,Q,P2,IP2,f) | |
177 | if (name(nset).eq.'DOG1') call DOGevolvep1(x,Q,P2,IP2,f) | |
178 | if (name(nset).eq.'DGG') call DGGevolvep(x,Q,P2,IP2,f) | |
179 | if (name(nset).eq.'LACG') call LACGevolvep(x,Q,P2,IP2,f) | |
180 | if (name(nset).eq.'GSG0') call GSGevolvep0(x,Q,P2,IP2,f) | |
181 | if (name(nset).eq.'GSG1') call GSGevolvep1(x,Q,P2,IP2,f) | |
182 | if (name(nset).eq.'GSG960') call GSG96evolvep0(x,Q,P2,IP2,f) | |
183 | if (name(nset).eq.'GSG961') call GSG96evolvep1(x,Q,P2,IP2,f) | |
184 | if (name(nset).eq.'ACFGP') call ACFGPevolvep(x,Q,P2,IP2,f) | |
185 | if (name(nset).eq.'WHITG') call WHITGevolvep(x,Q,P2,IP2,f) | |
186 | return | |
187 | ! | |
188 | entry evolvePDFphotonM(nset,xin,qin,f,photon) | |
189 | ||
190 | ! | |
191 | call setnset(nset) | |
192 | ! | |
193 | call getlhaparm(18,lparm) | |
194 | if(lparm.ne.'EXTRAPOLATE') then | |
195 | call getnmem(nset,iimem) | |
196 | call getminmaxm(nset,iimem,xmin,xmax,q2min,q2max) | |
197 | x = max(xmin,min(xmax,xin)) | |
198 | q2in = qin**2 | |
199 | q = sqrt(max(0d0,q2min,min(q2max,q2in))) | |
200 | else | |
201 | x = xin | |
202 | q = qin | |
203 | endif | |
204 | ! | |
205 | if(name(nset).eq.'MRST4qed') then | |
dece5eff | 206 | !!$ call MRSTqedevolve(x,Q,f,photon) |
0caf84a5 | 207 | else |
208 | photon = 0.0d0 | |
209 | endif | |
210 | ||
211 | return | |
212 | ||
213 | entry evolvePDFgluinoM(nset,xin,qin,f,gluino) | |
214 | ||
215 | ! | |
216 | call setnset(nset) | |
217 | ! | |
218 | call getlhaparm(18,lparm) | |
219 | if(lparm.ne.'EXTRAPOLATE') then | |
220 | call getnmem(nset,iimem) | |
221 | call getminmaxm(nset,iimem,xmin,xmax,q2min,q2max) | |
222 | x = max(xmin,min(xmax,xin)) | |
223 | q2in = qin**2 | |
224 | q = sqrt(max(0d0,q2min,min(q2max,q2in))) | |
225 | else | |
226 | x = xin | |
227 | q = qin | |
228 | endif | |
229 | ! | |
230 | if(name(nset).eq.'CTEQ6LGgrid') then | |
231 | call CTEQ6LGevolve(x,Q,f,gluino) | |
232 | else | |
233 | gluino = 0.0d0 | |
234 | endif | |
235 | ||
236 | return | |
237 | ||
238 | ||
239 | entry readevolve(nset) | |
240 | ! | |
241 | read(1,*) name(nset) | |
242 | ! print *, 'this is readevolve', name(nset) | |
243 | ! | |
244 | call setnset(nset) | |
245 | ! | |
246 | if (name(nset).eq.'QCDNUM') call QCDNUMread(nset) | |
247 | if (name(nset).eq.'QCDNUM_MRST') call QCDNUMread(nset) | |
248 | if (name(nset).eq.'QCDNUM_MRST3') call QCDNUM3read(nset) | |
249 | if (name(nset).eq.'QCDNUM_MRST4') call QCDNUM4read(nset) | |
250 | if (name(nset)(1:11).eq.'QCDNUM_ZEUS') call ZEUSread(nset) | |
251 | if (name(nset).eq.'CTEQ5grid') call CTEQ5read(nset) | |
252 | if (name(nset).eq.'CTEQ6grid') call CTEQ6read(nset) | |
dece5eff | 253 | !!$ if (name(nset).eq.'CTEQ65grid') call CTEQ65read(nset) |
254 | !!$ if (name(nset).eq.'CTEQ65cgrid') call CTEQ65cread(nset) | |
255 | !!$ if (name(nset).eq.'CTEQ65sgrid') call CTEQ65read(nset) | |
0caf84a5 | 256 | if (name(nset).eq.'CTEQ6ABgrid') call CTEQ6read(nset) |
dece5eff | 257 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ66read(nset) |
0caf84a5 | 258 | if (name(nset).eq.'CTEQ6LGgrid') call CTEQ6LGread(nset) |
259 | if (name(nset).eq.'EVLCTEQ') call EVLCTEQread(nset) | |
43586896 | 260 | if (name(nset).eq.'MRSTgrid') call MRSTread(nset) |
dece5eff | 261 | !!$ if (name(nset).eq.'MRST3grid') call MRSTread(nset) |
262 | !!$ if (name(nset).eq.'MRST4grid') call MRSTread(nset) | |
263 | !!$ if (name(nset).eq.'MRST4qed') call MRSTqedread(nset) | |
264 | !!$ if (name(nset).eq.'MRST98grid') call MRST98read(nset) | |
265 | !!$ if (name(nset).eq.'MRST2006grid') call MRST2006read(nset) | |
0caf84a5 | 266 | if (name(nset).eq.'MRSTpdf') call QCDNUMread(nset) |
267 | if (name(nset).eq.'MRST') call QCDNUMread(nset) | |
268 | if (name(nset).eq.'A02') call A02read(nset) | |
269 | if (name(nset).eq.'A02M') call A02Mread(nset) | |
270 | if (name(nset).eq.'H12000') call H1read(nset) | |
271 | if (name(nset).eq.'GRV') call GRVread(nset) | |
272 | if (name(nset).eq.'SASG') call SASGread(nset) | |
273 | if (name(nset).eq.'GRVG0' .OR. & | |
274 | & name(nset).eq.'GRVG1') call GRVGread(nset) | |
275 | if (name(nset).eq.'DOG0' .OR. & | |
276 | & name(nset).eq.'DOG1') call DOGread(nset) | |
277 | if (name(nset).eq.'DGG') call DGGread(nset) | |
278 | if (name(nset).eq.'LACG') call LACGread(nset) | |
279 | if (name(nset).eq.'GSG0' .OR. & | |
280 | & name(nset).eq.'GSG1') call GSGread(nset) | |
281 | if (name(nset).eq.'GSG960' .OR. & | |
282 | & name(nset).eq.'GSG961') call GSG96read(nset) | |
283 | if (name(nset).eq.'ACFGP') call ACFGPread(nset) | |
284 | if (name(nset).eq.'WHITG') call WHITGread(nset) | |
285 | if (name(nset).eq.'OWP') call OWPread(nset) | |
286 | if (name(nset).eq.'SMRSP') call SMRSPread(nset) | |
287 | if (name(nset).eq.'GRVP0' .OR. & | |
288 | & name(nset).eq.'GRVP1') call GRVPread(nset) | |
289 | if (name(nset).eq.'ABFKWP') call ABFKWPread(nset) | |
290 | if (name(nset).eq.'USER') call USERread(nset) | |
291 | return | |
292 | ! | |
293 | entry alfasevolve(nset,alfas,Qin) | |
294 | ! | |
295 | call setnset(nset) | |
296 | q = qin | |
297 | if (name(nset).eq.'QCDNUM') call QCDNUMalfa(alfas,Q) | |
298 | if (name(nset).eq.'QCDNUM_MRST') call QCDNUMalfa(alfas,Q) | |
299 | if (name(nset).eq.'QCDNUM_MRST3') call QCDNUM3alfa(alfas,Q) | |
300 | if (name(nset).eq.'QCDNUM_MRST4') call QCDNUM4alfa(alfas,Q) | |
301 | if (name(nset)(1:11).eq.'QCDNUM_ZEUS') call ZEUSalfa(alfas,Q) | |
302 | if (name(nset).eq.'CTEQ5grid') call CTEQ5alfa(alfas,Q) | |
303 | if (name(nset).eq.'CTEQ6grid') call CTEQ6alfa(alfas,Q) | |
dece5eff | 304 | !!$ if (name(nset).eq.'CTEQ65grid') call CTEQ65alfa(alfas,Q) |
305 | !!$ if (name(nset).eq.'CTEQ65cgrid') call CTEQ65alfa(alfas,Q) | |
306 | !!$ if (name(nset).eq.'CTEQ65sgrid') call CTEQ65alfa(alfas,Q) | |
307 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ65alfa(alfas,Q) | |
0caf84a5 | 308 | if (name(nset).eq.'CTEQ6LGgrid') call CTEQ6LGalfa(alfas,Q) |
309 | if (name(nset).eq.'EVLCTEQ') call EVLCTEQalfa(alfas,Q) | |
43586896 | 310 | if (name(nset).eq.'MRSTgrid') call MRSTalfa(5,alfas,Q) |
dece5eff | 311 | !!$ if (name(nset).eq.'MRST3grid') call MRSTalfa(3,alfas,Q) |
312 | !!$ if (name(nset).eq.'MRST4grid') call MRSTalfa(4,alfas,Q) | |
313 | !!$ if (name(nset).eq.'MRST4qed') call MRSTalfa(4,alfas,Q) | |
314 | !!$ if (name(nset).eq.'MRST98grid') call MRST98alfa(alfas,Q) | |
315 | !!$ if (name(nset).eq.'MRST2006grid') call MRST2006alfa(5,alfas,Q) | |
0caf84a5 | 316 | if (name(nset).eq.'MRSTpdf') call QCDNUMalfa(alfas,Q) |
317 | if (name(nset).eq.'MRST') call QCDNUMalfa(alfas,Q) | |
318 | if (name(nset).eq.'A02') call A02alfa(alfas,Q) | |
319 | if (name(nset).eq.'A02M') call A02Malfa(alfas,Q) | |
320 | if (name(nset).eq.'H12000') call H1alfa(alfas,Q) | |
321 | if (name(nset).eq.'GRV') call GRValfa(alfas,Q) | |
322 | if (name(nset).eq.'SASG') call SASGalfa(alfas,Q) | |
323 | if (name(nset).eq.'GRVG0' .OR. & | |
324 | & name(nset).eq.'GRVG1') call GRVGalfa(alfas,Q) | |
325 | if (name(nset).eq.'DOG0' .OR. & | |
326 | & name(nset).eq.'DOG1') call DOGalfa(alfas,Q) | |
327 | if (name(nset).eq.'DGG') call DGGalfa(alfas,Q) | |
328 | if (name(nset).eq.'LACG') call LACGalfa(alfas,Q) | |
329 | if (name(nset).eq.'GSG0' .OR. & | |
330 | & name(nset).eq.'GSG1') call GSGalfa(alfas,Q) | |
331 | if (name(nset).eq.'GSG960' .OR. & | |
332 | & name(nset).eq.'GSG961') call GSG96alfa(alfas,Q) | |
333 | if (name(nset).eq.'ACFGP') call ACFGPalfa(alfas,Q) | |
334 | if (name(nset).eq.'WHITG') call WHITGalfa(alfas,Q) | |
335 | if (name(nset).eq.'OWP') call OWPalfa(alfas,Q) | |
336 | if (name(nset).eq.'SMRSP') call SMRSPalfa(alfas,Q) | |
337 | if (name(nset).eq.'GRVP0' .OR. & | |
338 | & name(nset).eq.'GRVP1') call GRVPalfa(alfas,Q) | |
339 | if (name(nset).eq.'ABFKWP') call ABFKWPalfa(alfas,Q) | |
340 | if (name(nset).eq.'USER') call USERalfa(alfas,Q) | |
341 | return | |
342 | ! | |
343 | entry initevolution(nset,Eorder,Q2fit) | |
344 | ! | |
345 | call setnset(nset) | |
346 | ! | |
347 | if (name(nset).eq.'QCDNUM') call QCDNUMinit(nset,Eorder,Q2fit) | |
348 | if (name(nset)(1:11).eq.'QCDNUM_ZEUS') & | |
349 | & call ZEUSinit(nset,Eorder,Q2fit) | |
350 | if (name(nset).eq.'CTEQ5grid') call CTEQ5init(Eorder,Q2fit) | |
351 | if (name(nset).eq.'CTEQ6grid') call CTEQ6init(Eorder,Q2fit) | |
dece5eff | 352 | !!$ if (name(nset).eq.'CTEQ65grid') call CTEQ65init(Eorder,Q2fit) |
353 | !!$ if (name(nset).eq.'CTEQ65cgrid') call CTEQ65init(Eorder,Q2fit) | |
354 | !!$ if (name(nset).eq.'CTEQ65sgrid') call CTEQ65init(Eorder,Q2fit) | |
355 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ65init(Eorder,Q2fit) | |
0caf84a5 | 356 | if (name(nset).eq.'CTEQ6LGgrid') call CTEQ6LGinit(Eorder,Q2fit) |
357 | if (name(nset).eq.'EVLCTEQ') call EVLCTEQinit(nset,Eorder,Q2fit) | |
43586896 | 358 | if (name(nset).eq.'MRSTgrid') call MRSTinit(Eorder,Q2fit) |
dece5eff | 359 | !!$ if (name(nset).eq.'MRST3grid') call MRSTinit(Eorder,Q2fit) |
360 | !!$ if (name(nset).eq.'MRST4grid') call MRSTinit(Eorder,Q2fit) | |
361 | !!$ if (name(nset).eq.'MRST4qed') call MRSTinit(Eorder,Q2fit) | |
362 | !!$ if (name(nset).eq.'MRST98grid') call MRST98init(Eorder,Q2fit) | |
363 | !!$ if (name(nset).eq.'MRST2006grid') call MRST2006init(Eorder,Q2fit) | |
0caf84a5 | 364 | if (name(nset).eq.'QCDNUM_MRST') then |
365 | call QCDNUMinit(nset,Eorder,Q2fit) | |
366 | call QNLSET('BMARK',.TRUE.) | |
367 | endif | |
368 | if (name(nset).eq.'QCDNUM_MRST3') then | |
369 | call QCDNUM3init(nset,Eorder,Q2fit) | |
370 | call QNLSET('BMARK',.TRUE.) | |
371 | endif | |
372 | if (name(nset).eq.'QCDNUM_MRST4') then | |
373 | call QCDNUM4init(nset,Eorder,Q2fit) | |
374 | call QNLSET('BMARK',.TRUE.) | |
375 | endif | |
376 | if (name(nset).eq.'A02') call A02init | |
377 | if (name(nset).eq.'A02M') call A02Minit | |
378 | if (name(nset).eq.'H12000') call H1init(Eorder,Q2fit) | |
379 | if (name(nset).eq.'GRV') call GRVinit(Eorder,Q2fit) | |
380 | if (name(nset).eq.'SASG') call SASGinit(Eorder,Q2fit) | |
381 | if (name(nset).eq.'GRVG0' .OR. & | |
382 | & name(nset).eq.'GRVG1') call GRVGinit(Eorder,Q2fit) | |
383 | if (name(nset).eq.'DOG0' .OR. & | |
384 | & name(nset).eq.'DOG1') call DOGinit(Eorder,Q2fit) | |
385 | if (name(nset).eq.'DGG') call DGGinit(Eorder,Q2fit) | |
386 | if (name(nset).eq.'LACG') call LACGinit(Eorder,Q2fit) | |
387 | if (name(nset).eq.'GSG0' .OR. & | |
388 | & name(nset).eq.'GSG1') call GSGinit(Eorder,Q2fit) | |
389 | if (name(nset).eq.'GSG960' .OR. & | |
390 | & name(nset).eq.'GSG961') call GSG96init(Eorder,Q2fit) | |
391 | if (name(nset).eq.'ACFGP') call ACFGPinit(Eorder,Q2fit) | |
392 | if (name(nset).eq.'WHITG') call WHITGinit(Eorder,Q2fit) | |
393 | if (name(nset).eq.'OWP') call OWPinit(Eorder,Q2fit) | |
394 | if (name(nset).eq.'SMRSP') call SMRSPinit(Eorder,Q2fit) | |
395 | if (name(nset).eq.'GRVP0' .OR. & | |
396 | & name(nset).eq.'GRVP1') call GRVPinit(Eorder,Q2fit) | |
397 | if (name(nset).eq.'ABFKWP') call ABFKWPinit(Eorder,Q2fit) | |
398 | if (name(nset).eq.'USER') call USERinit(nset,Eorder,Q2fit) | |
399 | return | |
400 | ! | |
401 | entry initPDFM(nset,imem) | |
402 | ! | |
403 | call setnset(nset) | |
404 | call setnmem(nset,imem) | |
405 | ! | |
406 | iimem = imem | |
407 | if (name(nset).eq.'QCDNUM') then | |
408 | call InitEvolvePDF(nset,imem) | |
409 | call QCDNUMpdf(nset) | |
410 | endif | |
411 | if (name(nset).eq.'QCDNUM_MRST') then | |
412 | call InitEvolvePDF(nset,imem) | |
413 | call QCDNUMpdf(nset) | |
414 | endif | |
415 | if (name(nset).eq.'QCDNUM_MRST3') then | |
416 | call InitEvolvePDF(nset,imem) | |
417 | call QCDNUM3pdf(nset) | |
418 | endif | |
419 | if (name(nset).eq.'QCDNUM_MRST4') then | |
420 | call InitEvolvePDF(nset,imem) | |
421 | call QCDNUM4pdf(nset) | |
422 | endif | |
423 | if (name(nset)(1:11).eq.'QCDNUM_ZEUS') then | |
424 | call InitEvolvePDF(nset,imem) | |
425 | call ZEUSpdf(nset) | |
426 | endif | |
427 | if (name(nset).eq.'MRST') then | |
428 | call InitEvolvePDF(nset,imem) | |
429 | call QCDNUMpdf(nset) | |
430 | endif | |
431 | if (name(nset).eq.'MRSTpdf') then | |
432 | call InitEvolvePDF(nset,imem) | |
433 | call QCDNUMpdf(nset) | |
434 | endif | |
435 | if (name(nset).eq.'EVLCTEQ') then | |
436 | call InitEvolvePDF(nset,imem) | |
437 | call EVLCTEQpdf(nset) | |
438 | ! call EVLCTEQpdf(nset,imem) | |
439 | endif | |
440 | if (name(nset).eq.'CTEQ65grid') then | |
441 | call CTEQ6NewAlpha(nset,imem) | |
442 | endif | |
443 | if (name(nset).eq.'CTEQ65cgrid') then | |
444 | call CTEQ6NewAlpha(nset,imem) | |
445 | endif | |
446 | if (name(nset).eq.'CTEQ65sgrid') then | |
447 | call CTEQ6NewAlpha(nset,imem) | |
448 | endif | |
449 | if (name(nset).eq.'CTEQ6ABgrid') then | |
450 | call CTEQ6NewAlpha(nset,imem) | |
451 | ! call CTEQ6pdf(nset) | |
452 | endif | |
453 | if (name(nset).eq.'CTEQ66grid') then | |
454 | call CTEQ6NewAlpha(nset,imem) | |
455 | endif | |
456 | if (name(nset).eq.'H12000') then | |
457 | call InitEvolvePDF(nset,imem) | |
458 | call H1pdf(imem) | |
459 | endif | |
460 | if (name(nset).eq.'USER') then | |
461 | call InitEvolvePDF(nset,imem) | |
462 | call USERpdf(nset) | |
463 | endif | |
464 | if (name(nset).eq.'CTEQ5grid') call CTEQ5pdf(imem) | |
465 | if (name(nset).eq.'CTEQ6grid') call CTEQ6pdf(imem) | |
dece5eff | 466 | !!$ if (name(nset).eq.'CTEQ65grid') call CTEQ65pdf(imem) |
467 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ65pdf(imem) | |
468 | !!$ if (name(nset).eq.'CTEQ65cgrid') call CTEQ65pdf(imem) | |
469 | !!$ if (name(nset).eq.'CTEQ65sgrid') call CTEQ65pdf(imem) | |
470 | !!$ if (name(nset).eq.'CTEQ6ABgrid') call CTEQ6pdf(imem) | |
471 | !!$ if (name(nset).eq.'CTEQ66grid') call CTEQ65pdf(imem) | |
0caf84a5 | 472 | if (name(nset).eq.'CTEQ6LGgrid') call CTEQ6LGpdf(imem) |
43586896 | 473 | if (name(nset).eq.'MRSTgrid') call MRSTpdf(imem) |
dece5eff | 474 | !!$ if (name(nset).eq.'MRST3grid') call MRSTpdf(imem) |
475 | !!$ if (name(nset).eq.'MRST4grid') call MRSTpdf(imem) | |
476 | !!$ if (name(nset).eq.'MRST4qed') call MRSTpdf(imem) | |
477 | !!$ if (name(nset).eq.'MRST98grid') call MRST98pdf(imem) | |
478 | !!$ if (name(nset).eq.'MRST2006grid') call MRST2006pdf(imem) | |
0caf84a5 | 479 | if (name(nset).eq.'A02') call A02pdf(imem) |
480 | if (name(nset).eq.'A02M') call A02Mpdf(imem) | |
481 | if (name(nset).eq.'GRV0' .OR. & | |
482 | & name(nset).eq.'GRV1') call GRVpdf(imem) | |
483 | if (name(nset).eq.'SASG') call SASGpdf(imem) | |
484 | if (name(nset).eq.'GRVG') call GRVGpdf(imem) | |
485 | if (name(nset).eq.'DOG0' .OR. & | |
486 | & name(nset).eq.'DOG1') call DOGpdf(imem) | |
487 | if (name(nset).eq.'DGG') call DGGpdf(imem) | |
488 | if (name(nset).eq.'LACG') call LACGpdf(imem) | |
489 | if (name(nset).eq.'GSG0' .OR. & | |
490 | & name(nset).eq.'GSG1') call GSGpdf(imem) | |
491 | if (name(nset).eq.'GSG960' .OR. & | |
492 | & name(nset).eq.'GSG961') call GSG96pdf(imem) | |
493 | if (name(nset).eq.'ACFGP') call ACFGPpdf(imem) | |
494 | if (name(nset).eq.'WHITG') call WHITGpdf(imem) | |
495 | if (name(nset).eq.'OWP') call OWPpdf(imem) | |
496 | if (name(nset).eq.'SMRSP') call SMRSPpdf(imem) | |
497 | if (name(nset).eq.'GRVP0' .OR. & | |
498 | & name(nset).eq.'GRVP1') call GRVPpdf(imem) | |
499 | if (name(nset).eq.'ABFKWP') call ABFKWPpdf(imem) | |
500 | return | |
501 | ! | |
502 | END |