]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PDF/spdf/pdfset.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / PDF / spdf / pdfset.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.3 1997/04/15 14:02:00 cernlib
6* Import version 7.08
7*
8* Revision 1.3 1997/04/08 15:53:25 pdflib
9* Lambda_QCD for CTEQ4 sets corrected
10*
11* Revision 1.2 1996/10/28 15:03:30 pdflib
12* PDFLIB new version 7.04
13*
14* Revision 1.1.1.1 1996/04/12 15:29:25 plothow
15* Version 7.01
16*
17*
18#include "pdf/pilot.h"
19 SUBROUTINE PDFSET(PARM,VAL)
20C
21C **********************************************************************
22C * *
23C * Routine to set user parameters in the internal COMMON/W50511/, *
24C * COMMON/W50512/ *
25C * and COMMON/W50513/ *
26C * and provide filling of the internal COMMON/W50518/ *
27C * COMMON/W505110/ *
28C * COMMON/W505120/ *
29C * COMMON/W505121/ *
30C * and COMMON/W505122/ *
31C * *
32C * Author: H. Plothow-Besch *
33C * CERN-PPE, CH - 1211 Geneva 23, Switzerland *
34C * *
35C **********************************************************************
36C
37#include "pdf/impdp.inc"
38C
39#include "pdf/w5051p0.inc"
40#include "pdf/w5051p1.inc"
41#include "pdf/w5051p2.inc"
42#include "pdf/w5051p3.inc"
43#include "pdf/w5051p7.inc"
44#include "pdf/w50510.inc"
45#include "pdf/w50511.inc"
46#include "pdf/w50512.inc"
47#include "pdf/w50513.inc"
48#include "pdf/w50514.inc"
49#include "pdf/w50514w.inc"
50#include "pdf/w50515.inc"
51#include "pdf/w50516.inc"
52#include "pdf/w50517.inc"
53#include "pdf/w50518.inc"
54#include "pdf/w50519.inc"
55#include "pdf/w505110.inc"
56#include "pdf/w505120.inc"
57#include "pdf/w505121.inc"
58#include "pdf/w505122.inc"
59#include "pdf/expdp.inc"
60 + PQCDL4(NPTYMX,NGRMAX,NSETMX), PQCDL5(NPTYMX,NGRMAX,NSETMX),
61 + PXMIN(NPTYMX,NGRMAX,NSETMX), PXMAX(NPTYMX,NGRMAX,NSETMX),
62 + PQ2MIN(NPTYMX,NGRMAX,NSETMX), PQ2MAX(NPTYMX,NGRMAX,NSETMX)
63C.
64 PARAMETER (NSDIM = 16)
65 CHARACTER*2 AV(NSDIM)
66 CHARACTER*20 PARM(NCHDIM),STRING
67#include "pdf/expdp.inc"
68 + VAL(NCHDIM)
69C.
70 EQUIVALENCE (VALUE,IVALUE)
71C.
72 DATA (PQCDL4(1,1,K),K=1,ND11) /
73 + 0.0000D0, 0.0450D0, 0.5000D0, 0.4700D0, 0.4000D0,
74 + 0.2000D0, 0.4000D0, 0.2000D0, 0.2900D0, 0.1770D0 /
75 DATA (PQCDL4(1,2,K),K=1,ND12) /
76 + 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0,
77 + 0.3000D0, 0.1600D0, 0.2600D0, 0.3600D0 /
78 DATA (PQCDL4(1,3,K),K=1,ND13) /
79 + 0.1070D0, 0.2500D0, 0.1780D0, 0.0910D0, 0.2280D0,
80 + 0.0910D0, 0.2280D0, 0.1000D0, 0.1900D0, 0.1000D0,
81 + 0.1900D0, 0.1000D0, 0.1000D0, 0.1000D0, 0.1900D0,
82 + 0.1000D0, 0.3000D0, 0.1900D0, 0.1900D0, 0.1900D0,
83 + 0.1900D0, 0.1350D0, 0.1600D0, 0.2000D0, 0.2350D0,
84 + 0.2150D0, 0.2150D0, 0.2150D0, 0.2300D0, 0.2300D0,
85 + 0.2300D0, 0.2300D0, 0.2300D0, 0.2300D0, 0.2300D0,
86 + 0.2300D0, 0.2300D0, 0.2300D0, 0.2310D0, 0.2310D0,
87 + 0.2540D0, 0.2540D0, 0.2300D0, 0.2300D0, 0.1500D0,
88 + 0.2010D0, 0.2660D0, 0.3440D0, 0.4350D0, 0.5420D0,
89 + 0.3440D0, 0.5070D0, 0.2410D0, 0.3440D0, 0.2410D0,
90 + 0.3440D0, 0.2410D0, 0.3440D0 /
91 DATA (PQCDL4(1,4,K),K=1,ND14) /
92 + 0.2120D0, 0.1940D0, 0.1910D0, 0.1550D0, 0.2370D0,
93 + 0.2120D0, 0.1940D0, 0.1910D0, 0.1550D0, 0.2370D0,
94 + 0.1440D0, 0.1680D0, 0.2310D0, 0.2310D0, 0.3220D0,
95 + 0.2470D0, 0.1900D0, 0.2130D0, 0.2080D0, 0.2080D0,
96 + 0.3220D0, 0.2350D0, 0.1900D0, 0.2130D0, 0.2080D0,
97 + 0.2080D0, 0.3220D0, 0.2350D0, 0.1770D0, 0.2390D0,
98 + 0.2470D0, 0.2350D0, 0.2960D0, 0.2960D0, 0.2130D0,
99 + 0.2530D0, 0.2960D0, 0.3440D0, 0.3990D0, 0.3020D0,
100 + 0.2590D0 /
101 DATA (PQCDL4(1,5,K),K=1,ND15) /
102 + 0.1600D0, 0.2200D0, 0.2000D0, 0.2000D0, 0.2000D0,
103 + 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0,
104 + 0.2000D0 /
105 DATA (PQCDL4(1,6,K),K=1,ND16) /
106 + 0.2300D0 /
107 DATA (PQCDL4(1,7,K),K=1,ND17) /
108 + 0.2540D0,0.2540D0 /
109C.
110 DATA (PQCDL4(2,1,K),K=1,ND21) /
111 + 0.2000D0, 0.4000D0 /
112 DATA (PQCDL4(2,3,K),K=1,ND23) /
113 + 0.1900D0, 0.1900D0, 0.1900D0 /
114 DATA (PQCDL4(2,5,K),K=1,ND25) /
115 + 0.2000D0, 0.2000D0 /
116 DATA (PQCDL4(2,6,K),K=1,ND26) /
117 + 0.2310D0, 0.1810D0, 0.2810D0 /
118C.
119 DATA (PQCDL4(3,1,K),K=1,ND31) /
120 + 0.3800D0, 0.4400D0 /
121 DATA (PQCDL4(3,2,K),K=1,ND32) /
122 + 0.4000D0, 0.4000D0, 0.4000D0, 0.4000D0 /
123 DATA (PQCDL4(3,3,K),K=1,ND33) /
124 + 0.2000D0, 0.2000D0, 0.2000D0 /
125 DATA (PQCDL4(3,4,K),K=1,ND34) /
126 + 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0 /
127 DATA (PQCDL4(3,5,K),K=1,ND35) /
128 + 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0 /
129 DATA (PQCDL4(3,6,K),K=1,ND36) /
130 + 0.2000D0, 0.2000D0, 0.2000D0 /
131 DATA (PQCDL4(3,8,K),K=1,ND38) /
132 + 0.4000D0, 0.4000D0, 0.4000D0, 0.4000D0, 0.4000D0,
133 + 0.4000D0 /
134 DATA (PQCDL4(3,9,K),K=1,ND39) /
135 + 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0, 0.2000D0,
136 + 0.2000D0, 0.2000D0, 0.2000D0 /
137C.
138C.
139 DATA (PQCDL5(1,1,K),K=1,ND11) /
140 + 0.0000D0, 0.0300D0, 0.4111D0, 0.3844D0, 0.3226D0,
141 + 0.1519D0, 0.3226D0, 0.1519D0, 0.2274D0, 0.1330D0 /
142 DATA (PQCDL5(1,2,K),K=1,ND12) /
143 + 0.1519D0, 0.1519D0, 0.1519D0, 0.1519D0, 0.1519D0,
144 + 0.2048D0, 0.1016D0, 0.1745D0, 0.2513D0 /
145 DATA (PQCDL5(1,3,K),K=1,ND13) /
146 + 0.0651D0, 0.1671D0, 0.1144D0, 0.0544D0, 0.1507D0,
147 + 0.0544D0, 0.1507D0, 0.0604D0, 0.1230D0, 0.0604D0,
148 + 0.1230D0, 0.0604D0, 0.0604D0, 0.0604D0, 0.1230D0,
149 + 0.0604D0, 0.2048D0, 0.1230D0, 0.1230D0, 0.1230D0,
150 + 0.1230D0, 0.0842D0, 0.1016D0, 0.1303D0, 0.1559D0,
151 + 0.1412D0, 0.1412D0, 0.1412D0, 0.1522D0, 0.1522D0,
152 + 0.1522D0, 0.1522D0, 0.1522D0, 0.1522D0, 0.1522D0,
153 + 0.1522D0, 0.1522D0, 0.1522D0, 0.1529D0, 0.1529D0,
154 + 0.1700D0, 0.1700D0, 0.1522D0, 0.1522D0, 0.0946D0,
155 + 0.1310D0, 0.1790D0, 0.2388D0, 0.3110D0, 0.3988D0,
156 + 0.2388D0, 0.3698D0, 0.1604D0, 0.2388D0, 0.1604D0,
157 + 0.2388D0, 0.1604D0, 0.2388D0 /
158 DATA (PQCDL5(1,4,K),K=1,ND14) /
159 + 0.1390D0, 0.1259D0, 0.1238D0, 0.0981D0, 0.1574D0,
160 + 0.1390D0, 0.1259D0, 0.1238D0, 0.0981D0, 0.1574D0,
161 + 0.1063D0, 0.1250D0, 0.1520D0, 0.1520D0, 0.2200D0,
162 + 0.1640D0, 0.1430D0, 0.1390D0, 0.1350D0, 0.1350D0,
163 + 0.2200D0, 0.1550D0, 0.1430D0, 0.1390D0, 0.1350D0,
164 + 0.1350D0, 0.2200D0, 0.1550D0, 0.1320D0, 0.1580D0,
165 + 0.1640D0, 0.1810D0, 0.2020D0, 0.2020D0, 0.1400D0,
166 + 0.1690D0, 0.2020D0, 0.2390D0, 0.2820D0, 0.2060D0,
167 + 0.1740D0 /
168 DATA (PQCDL5(1,5,K),K=1,ND15) /
169 + 0.1016D0, 0.1684D0, 0.1303D0, 0.1519D0, 0.1530D0,
170 + 0.1310D0, 0.1310D0, 0.1530D0, 0.1530D0, 0.1310D0,
171 + 0.1310D0 /
172 DATA (PQCDL5(1,6,K),K=1,ND16) /
173 + 0.1559D0 /
174 DATA (PQCDL5(1,7,K),K=1,ND17) /
175 + 0.1700D0,0.1700D0 /
176C.
177 DATA (PQCDL5(2,1,K),K=1,ND21) /
178 + 0.1519D0, 0.3226D0 /
179 DATA (PQCDL5(2,3,K),K=1,ND23) /
180 + 0.1230D0, 0.1230D0, 0.1230D0 /
181 DATA (PQCDL5(2,5,K),K=1,ND25) /
182 + 0.1303D0, 0.1519D0 /
183 DATA (PQCDL5(2,6,K),K=1,ND26) /
184 + 0.1529D0, 0.1166D0, 0.1904D0 /
185C.
186 DATA (PQCDL5(3,1,K),K=1,ND31) /
187 + 0.3051D0, 0.3150D0 /
188 DATA (PQCDL5(3,2,K),K=1,ND32) /
189 + 0.3226D0, 0.3226D0, 0.3226D0, 0.3226D0 /
190 DATA (PQCDL5(3,3,K),K=1,ND33) /
191 + 0.1519D0, 0.1519D0, 0.1519D0 /
192 DATA (PQCDL5(3,4,K),K=1,ND34) /
193 + 0.1303D0, 0.1519D0, 0.1519D0, 0.1303D0, 0.1519D0 /
194 DATA (PQCDL5(3,5,K),K=1,ND35) /
195 + 0.1303D0, 0.1303D0, 0.1519D0, 0.1530D0 /
196 DATA (PQCDL5(3,6,K),K=1,ND36) /
197 + 0.1303D0, 0.1303D0, 0.1303D0 /
198 DATA (PQCDL5(3,8,K),K=1,ND38) /
199 + 0.3226D0, 0.3226D0, 0.3226D0, 0.3226D0, 0.3226D0,
200 + 0.3226D0 /
201 DATA (PQCDL5(3,9,K),K=1,ND39) /
202 + 0.3226D0, 0.3226D0, 0.3226D0, 0.3226D0, 0.3226D0,
203 + 0.3226D0, 0.3226D0, 0.3226D0 /
204C.
205C.
206 DATA (PXMIN(1,1,K),K=1,ND11) /
207 + 0.0000D0, 5.000D-3, 5.000D-3, 5.000D-3, 1.000D-3,
208 + 5.000D-3, 5.000D-3, 1.000D-4, 1.000D-4, 5.000D-5 /
209 DATA (PXMIN(1,2,K),K=1,ND12) /
210 + 5.000D-5, 5.000D-5, 5.000D-5, 5.000D-5, 5.000D-5,
211 + 5.000D-5, 5.000D-5, 5.000D-5, 5.000D-5 /
212 DATA (PXMIN(1,3,K),K=1,ND13) /
213 + 1.000D-4, 1.000D-4, 1.000D-4, 1.000D-4, 1.000D-4,
214 + 1.000D-4, 1.000D-4, 1.000D-4, 1.000D-4, 1.000D-4,
215 + 1.000D-4, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
216 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
217 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
218 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
219 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
220 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
221 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
222 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
223 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
224 + 1.000D-5, 1.000D-5, 1.000D-5 /
225 DATA (PXMIN(1,4,K),K=1,ND14) /
226 + 1.00D-10, 1.00D-10, 1.00D-10, 1.00D-10, 1.00D-10,
227 + 1.00D-10, 1.00D-10, 1.00D-10, 1.00D-10, 1.00D-10,
228 + 1.00D-10, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
229 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
230 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
231 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
232 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
233 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
234 + 1.000D-5 /
235 DATA (PXMIN(1,5,K),K=1,ND15) /
236 + 1.000D-6, 1.000D-6, 1.000D-6, 1.000D-6, 1.000D-6,
237 + 1.000D-6, 1.000D-6, 1.000D-4, 1.000D-4, 1.000D-4,
238 + 1.000D-4 /
239 DATA (PXMIN(1,6,K),K=1,ND16) /
240 + 1.000D-4 /
241 DATA (PXMIN(1,7,K),K=1,ND17) /
242 + 1.000D-6, 1.000D-6 /
243C.
244 DATA (PXMIN(2,1,K),K=1,ND21) /
245 + 5.000D-3, 5.000D-3 /
246 DATA (PXMIN(2,3,K),K=1,ND23) /
247 + 1.000D-5, 1.000D-5, 1.000D-5 /
248 DATA (PXMIN(2,5,K),K=1,ND25) /
249 + 1.000D-5, 1.000D-5 /
250 DATA (PXMIN(2,6,K),K=1,ND26) /
251 + 1.000D-3, 1.000D-3, 1.000D-3 /
252C.
253 DATA (PXMIN(3,1,K),K=1,ND31) /
254 + 1.000D-5, 1.000D-5 /
255 DATA (PXMIN(3,2,K),K=1,ND32) /
256 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5 /
257 DATA (PXMIN(3,3,K),K=1,ND33) /
258 + 1.000D-4, 1.000D-4, 1.000D-4 /
259 DATA (PXMIN(3,4,K),K=1,ND34) /
260 + 5.000D-4, 5.000D-4, 5.000D-4, 5.000D-4, 5.000D-4 /
261 DATA (PXMIN(3,5,K),K=1,ND35) /
262 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5 /
263 DATA (PXMIN(3,6,K),K=1,ND36) /
264 + 1.370D-3, 1.370D-3, 1.370D-3 /
265 DATA (PXMIN(3,8,K),K=1,ND38) /
266 + 1.000D-3, 1.000D-3, 1.000D-3, 1.000D-3, 1.000D-3,
267 + 1.000D-3 /
268 DATA (PXMIN(3,9,K),K=1,ND39) /
269 + 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5, 1.000D-5,
270 + 1.000D-5, 1.000D-5, 1.000D-5 /
271C.
272C.
273 DATA (PXMAX(1,1,K),K=1,ND11) /
274 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99998D0, 0.99999D0,
275 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0 /
276 DATA (PXMAX(1,2,K),K=1,ND12) /
277 + 0.95000D0, 0.95000D0, 0.95000D0, 0.95000D0, 0.95000D0,
278 + 0.95000D0, 0.95000D0, 0.95000D0, 0.95000D0 /
279 DATA (PXMAX(1,3,K),K=1,ND13) /
280 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
281 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
282 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
283 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
284 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
285 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
286 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
287 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
288 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
289 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
290 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
291 + 0.99999D0, 0.99999D0, 0.99999D0 /
292 DATA (PXMAX(1,4,K),K=1,ND14) /
293 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
294 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
295 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
296 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
297 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
298 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
299 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
300 + 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0, 0.99998D0,
301 + 0.99998D0 /
302 DATA (PXMAX(1,5,K),K=1,ND15) /
303 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
304 + 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0, 0.99999D0,
305 + 0.99999D0 /
306 DATA (PXMAX(1,6,K),K=1,ND16) /
307 + 0.99999D0 /
308 DATA (PXMAX(1,7,K),K=1,ND17) /
309 + 0.99999D0, 0.99999D0 /
310C.
311 DATA (PXMAX(2,1,K),K=1,ND21) /
312 + 0.9998D0, 0.9998D0 /
313 DATA (PXMAX(2,3,K),K=1,ND23) /
314 + 0.9998D0, 0.9998D0, 0.9998D0 /
315 DATA (PXMAX(2,5,K),K=1,ND25) /
316 + 0.9998D0, 0.9998D0 /
317 DATA (PXMAX(2,6,K),K=1,ND26) /
318 + 0.9998D0, 0.9998D0, 0.9998D0 /
319C.
320 DATA (PXMAX(3,1,K),K=1,ND31) /
321 + 0.9000D0, 0.9000D0 /
322 DATA (PXMAX(3,2,K),K=1,ND32) /
323 + 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0 /
324 DATA (PXMAX(3,3,K),K=1,ND33) /
325 + 0.9998D0, 0.9998D0, 0.9998D0 /
326 DATA (PXMAX(3,4,K),K=1,ND34) /
327 + 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0 /
328 DATA (PXMAX(3,5,K),K=1,ND35) /
329 + 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0 /
330 DATA (PXMAX(3,6,K),K=1,ND36) /
331 + 0.9986D0, 0.9986D0, 0.9986D0 /
332 DATA (PXMAX(3,8,K),K=1,ND38) /
333 + 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0,
334 + 0.9998D0 /
335 DATA (PXMAX(3,9,K),K=1,ND39) /
336 + 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0, 0.9998D0,
337 + 0.9998D0, 0.9998D0, 0.9998D0 /
338C.
339C.
340 DATA (PQ2MIN(1,1,K),K=1,ND11) /
341 + 0.000D0, 0.500D0, 1.800D0, 5.000D0, 4.000D0,
342 + 4.000D0, 4.000D0, 5.000D0, 5.000D0, 4.000D0 /
343 DATA (PQ2MIN(1,2,K),K=1,ND12) /
344 + 10.00D0, 10.00D0, 10.00D0, 10.00D0, 10.00D0,
345 + 10.00D0, 10.00D0, 10.00D0, 10.00D0 /
346 DATA (PQ2MIN(1,3,K),K=1,ND13) /
347 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
348 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
349 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
350 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
351 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
352 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
353 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
354 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
355 + 5.000D0, 5.000D0, 0.625D0, 0.625D0, 5.000D0,
356 + 5.000D0, 5.000D0, 5.000D0, 5.000D0, 5.000D0,
357 + 5.000D0, 5.000D0, 1.250D0, 1.250D0, 1.250D0,
358 + 1.250D0, 2.000D0, 2.000D0 /
359 DATA (PQ2MIN(1,4,K),K=1,ND14) /
360 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
361 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
362 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
363 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
364 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
365 + 4.000D0, 4.000D0, 4.000D0, 4.000D0, 4.000D0,
366 + 4.000D0, 2.560D0, 2.560D0, 2.560D0, 2.560D0,
367 + 2.560D0, 2.560D0, 2.560D0, 2.560D0, 2.560D0,
368 + 0.490D0 /
369 DATA (PQ2MIN(1,5,K),K=1,ND15) /
370 + 0.200D0, 0.200D0, 0.300D0, 0.250D0, 0.400D0,
371 + 0.400D0, 0.400D0, 0.400D0, 0.400D0, 0.400D0,
372 + 0.400D0 /
373 DATA (PQ2MIN(1,6,K),K=1,ND16) /
374 + 2.0000D0 /
375 DATA (PQ2MIN(1,7,K),K=1,ND17) /
376 + 5.000D0, 5.000D0 /
377C.
378 DATA (PQ2MIN(2,1,K),K=1,ND21) /
379 + 4.0000D0, 4.0000D0 /
380 DATA (PQ2MIN(2,3,K),K=1,ND23) /
381 + 5.0000D0, 5.0000D0, 5.0000D0 /
382 DATA (PQ2MIN(2,5,K),K=1,ND25) /
383 + 0.3000D0, 0.2500D0 /
384 DATA (PQ2MIN(2,6,K),K=1,ND26) /
385 + 2.0000D0, 2.0000D0, 2.0000D0 /
386C.
387 DATA (PQ2MIN(3,1,K),K=1,ND31) /
388 + 10.000D0, 10.000D0 /
389 DATA (PQ2MIN(3,2,K),K=1,ND32) /
390 + 1.0000D0, 1.0000D0, 20.000D0, 200.00D0 /
391 DATA (PQ2MIN(3,3,K),K=1,ND33) /
392 + 4.0000D0, 4.0000D0, 1.0000D0 /
393 DATA (PQ2MIN(3,4,K),K=1,ND34) /
394 + 5.3000D0, 5.3000D0, 5.3000D0, 5.3000D0, 5.3000D0 /
395 DATA (PQ2MIN(3,5,K),K=1,ND35) /
396 + 0.3000D0, 0.3000D0, 0.2500D0, 0.6000D0 /
397 DATA (PQ2MIN(3,6,K),K=1,ND36) /
398 + 2.0000D0, 2.0000D0, 2.0000D0 /
399 DATA (PQ2MIN(3,8,K),K=1,ND38) /
400 + 4.0000D0, 4.0000D0, 4.0000D0, 4.0000D0, 4.0000D0,
401 + 4.0000D0 /
402 DATA (PQ2MIN(3,9,K),K=1,ND39) /
403 + 0.3600D0, 0.3600D0, 4.0000D0, 4.0000D0, 0.3600D0,
404 + 0.3600D0, 4.0000D0, 4.0000D0 /
405C.
406C.
407 DATA (PQ2MAX(1,1,K),K=1,ND11) /
408 + 0.000D0, 1.000D6, 1.000D6, 1.000D6, 1.000D6,
409 + 1.000D6, 1.000D6, 1.000D8, 1.000D8, 4.000D7 /
410 DATA (PQ2MAX(1,2,K),K=1,ND12) /
411 + 1.000D8, 1.000D8, 1.000D8, 1.000D8, 1.000D8,
412 + 1.000D8, 1.000D8, 1.000D8, 1.000D8 /
413 DATA (PQ2MAX(1,3,K),K=1,ND13) /
414 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
415 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
416 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
417 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
418 + 2.680D9, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
419 + 2.680D9, 2.680D9, 2.680D9, 2.680D9, 2.680D9,
420 + 2.680D9, 2.680D9, 2.680D9, 2.680D9, 2.680D9,
421 + 2.680D9, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
422 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
423 + 1.310D6, 1.310D6, 1.310D6, 1.310D6, 1.310D6,
424 + 1.310D6, 1.310D6, 1.000D7, 1.000D7, 1.000D7,
425 + 1.000D7, 1.000D7, 1.000D7 /
426 DATA (PQ2MAX(1,4,K),K=1,ND14) /
427 + 1.000D8, 1.000D8, 1.000D8, 1.000D8, 1.000D8,
428 + 1.000D8, 1.000D8, 1.000D8, 1.000D8, 1.000D8,
429 + 1.000D8, 1.000D6, 1.000D6, 1.000D6, 1.000D6,
430 + 1.000D6, 1.000D6, 1.000D6, 1.000D6, 1.000D6,
431 + 1.000D6, 1.000D6, 1.000D6, 1.000D6, 1.000D6,
432 + 1.000D6, 1.000D6, 1.000D6, 1.000D6, 1.000D6,
433 + 1.000D6, 1.000D8, 1.000D8, 1.000D8, 1.000D8,
434 + 1.000D6, 1.000D8, 1.000D8, 1.000D8, 1.000D8,
435 + 1.000D8 /
436 DATA (PQ2MAX(1,5,K),K=1,ND15) /
437 + 1.000D8, 1.000D8, 1.000D8, 1.000D8, 1.000D6,
438 + 1.000D6, 1.000D6, 1.000D4, 1.000D4, 1.000D4,
439 + 1.000D4 /
440 DATA (PQ2MAX(1,6,K),K=1,ND16) /
441 + 1.0000D8 /
442 DATA (PQ2MAX(1,7,K),K=1,ND17) /
443 + 1.310D6, 1.310D6 /
444C.
445 DATA (PQ2MAX(2,1,K),K=1,ND21) /
446 + 2.0000D3, 2.0000D3 /
447 DATA (PQ2MAX(2,3,K),K=1,ND23) /
448 + 1.3100D6, 1.3100D6, 1.3100D6 /
449 DATA (PQ2MAX(2,5,K),K=1,ND25) /
450 + 1.0000D6, 1.0000D6 /
451 DATA (PQ2MAX(2,6,K),K=1,ND26) /
452 + 1.0000D8, 1.0000D8, 1.0000D8 /
453C.
454 DATA (PQ2MAX(3,1,K),K=1,ND31) /
455 + 1.0000D4, 1.0000D4 /
456 DATA (PQ2MAX(3,2,K),K=1,ND32) /
457 + 1.0000D4, 50.000D0, 500.00D0, 1.0000D4 /
458 DATA (PQ2MAX(3,3,K),K=1,ND33) /
459 + 1.0000D5, 1.0000D5, 1.0000D5 /
460 DATA (PQ2MAX(3,4,K),K=1,ND34) /
461 + 1.0000D8, 1.0000D8, 1.0000D8, 1.0000D8, 1.0000D8 /
462 DATA (PQ2MAX(3,5,K),K=1,ND35) /
463 + 1.0000D6, 1.0000D6, 1.0000D6, 5.0000D4 /
464 DATA (PQ2MAX(3,6,K),K=1,ND36) /
465 + 5.5000D5, 5.5000D5, 5.5000D5/
466 DATA (PQ2MAX(3,8,K),K=1,ND38) /
467 + 2.5000D3, 2.5000D3, 2.5000D3, 2.5000D3, 2.5000D3,
468 + 2.5000D3 /
469 DATA (PQ2MAX(3,9,K),K=1,ND39) /
470 + 5.0000D4, 5.0000D4, 5.0000D4, 5.0000D4, 5.0000D4,
471 + 5.0000D4, 5.0000D4, 5.0000D4 /
472C.
473 DATA AV /'BE','OR','GH','DO','EH','DF','MR','HM','KM',
474 + 'MT','CT','GR','AB','BM','WI','SA'/
475C.
476 DATA ZEROD/0.D0/,PONED/0.1D0/,ONED/1.D0/,ONEDO/1.1D0/,TWOD/2.D0/
477 DATA ZEROMIN/0.0001D0/
478 DATA ISTART/0/
479C.
480 SAVE ISTART, PQCDL4, PQCDL5, PXMIN, PXMAX, PQ2MIN, PQ2MAX,
481 + /W50511/, /W505110/, /W505120/, /W505121/, /W505122/,
482 + /W50514/, /W50514W/, /W50515/, /W50516/, /W50518/
483C.
484 IF (ISTART.EQ.0) IFLSET = 0
485C.
486C Set the PDFLIB parameters to the values of the previous call to PDFSET
487 IF(IFLSET.EQ.1) THEN
488 IFLPRT = IFLPRTP
489 NPTYPE = NPTYPP
490 NGROUP = NGROPP
491 NSET = NSETP
492 NFL = NFLP
493 LO = LOP
494 TMAS = TMASP
495 QCDL4 = QCDL4P
496 QCDL5 = QCDL5P
497 XMIN = XMINP
498 XMAX = XMAXP
499 Q2MIN = Q2MINP
500 Q2MAX = Q2MAXP
501 ENDIF
502C.
503C Initialisation of PDFLIB parameters (first call to PDFSET)
504 IF(ISTART.EQ.0) THEN
505C.
506C set maximum dimensions for PDFs per particle type and per author group
507 CALL UFILL(NPGSMX,1,NPTYMX*NGRMAX,0)
508 NPGSMX(1,1) = ND11
509 NPGSMX(1,2) = ND12
510 NPGSMX(1,3) = ND13
511 NPGSMX(1,4) = ND14
512 NPGSMX(1,5) = ND15
513 NPGSMX(1,6) = ND16
514 NPGSMX(1,7) = ND17
515 NPGSMX(1,8) = ND18
516 NPGSMX(1,9) = ND19
517 NPGSMX(2,1) = ND21
518 NPGSMX(2,2) = ND22
519 NPGSMX(2,3) = ND23
520 NPGSMX(2,4) = ND24
521 NPGSMX(2,5) = ND25
522 NPGSMX(2,6) = ND26
523 NPGSMX(2,7) = ND27
524 NPGSMX(2,8) = ND28
525 NPGSMX(2,9) = ND29
526 NPGSMX(3,1) = ND31
527 NPGSMX(3,2) = ND32
528 NPGSMX(3,3) = ND33
529 NPGSMX(3,4) = ND34
530 NPGSMX(3,5) = ND35
531 NPGSMX(3,6) = ND36
532 NPGSMX(3,7) = ND37
533 NPGSMX(3,8) = ND38
534 NPGSMX(3,9) = ND39
535C.
536C set retracted PDF sets invalid
537 CALL UFILL(NSETFL,1,NPTYMX*NGRMAX*NSETMX,0)
538 DO KPTY = 1,NPTYMX
539 DO KGRO = 1,NGRMAX
540 IF(NPGSMX(KPTY,KGRO) .EQ. 0) GOTO 2
541 DO ISET = 1,NPGSMX(KPTY,KGRO)
542 NSETFL(KPTY,KGRO,ISET) = 1
543 IF (KPTY.EQ.1) THEN
544 IF (KGRO.EQ.3) THEN
545 IF (ISET.EQ.8) THEN
546 NSETFL(KPTY,KGRO,ISET) = 0
547 ENDIF
548 ELSEIF (KGRO.EQ.5) THEN
549 IF (ISET.EQ.1 .OR. ISET.EQ.2) THEN
550 NSETFL(KPTY,KGRO,ISET) = 0
551 ENDIF
552 ENDIF
553 ENDIF
554 ENDDO
555 2 CONTINUE
556 ENDDO
557 ENDDO
558C.
559C set character*8 NAME for each PDF
560 DO NPTY=1,NPTYMX
561 DO NGR=1,NGRMAX
562 DO NSET=1,NSETMX
563 SFNAME(NPTY,NGR,NSET) = ' '
564 ENDDO
565 ENDDO
566 ENDDO
567 SFNAME(1,1,1) = 'PRIVATE '
568 SFNAME(1,1,2) = 'BEBC '
569 SFNAME(1,1,3) = 'OR '
570 SFNAME(1,1,4) = 'BEP '
571 SFNAME(1,1,5) = 'GHR '
572 SFNAME(1,1,6) = 'DO-1 '
573 SFNAME(1,1,7) = 'DO-2 '
574 SFNAME(1,1,8) = 'EHLQ-1 '
575 SFNAME(1,1,9) = 'EHLQ-2 '
576 SFNAME(1,1,10) = 'DO-1.1 '
577 SFNAME(1,2,1) = 'DFLM-SV '
578 SFNAME(1,2,2) = 'DFLM-HV '
579 SFNAME(1,2,3) = 'DFLM-SG '
580 SFNAME(1,2,4) = 'DFLM-HG '
581 SFNAME(1,2,5) = 'DFLM-LO '
582 SFNAME(1,2,6) = 'DFLM-HO '
583 SFNAME(1,2,7) = 'DFLM-160'
584 SFNAME(1,2,8) = 'DFLM-260'
585 SFNAME(1,2,9) = 'DFLM-360'
586 SFNAME(1,3,1) = 'MRS-1 '
587 SFNAME(1,3,2) = 'MRS-2 '
588 SFNAME(1,3,3) = 'MRS-3 '
589 SFNAME(1,3,4) = 'MRS-E '
590 SFNAME(1,3,5) = 'MRS-B '
591 SFNAME(1,3,6) = 'MRS-EP '
592 SFNAME(1,3,7) = 'MRS-BP '
593 SFNAME(1,3,8) = 'HMRS-E1.'
594 SFNAME(1,3,9) = 'HMRS-B1.'
595 SFNAME(1,3,10) = 'HMRS-E3.'
596 SFNAME(1,3,11) = 'HMRS-B3.'
597 SFNAME(1,3,12) = 'HMRSE+ '
598 SFNAME(1,3,13) = 'HMRSE- '
599 SFNAME(1,3,14) = 'HMRS-E '
600 SFNAME(1,3,15) = 'HMRS-B '
601 SFNAME(1,3,16) = 'HMRSB100'
602 SFNAME(1,3,17) = 'HMRSB300'
603 SFNAME(1,3,18) = 'KMRS-BM2'
604 SFNAME(1,3,19) = 'KMRS-BM5'
605 SFNAME(1,3,20) = 'KMRS-BM '
606 SFNAME(1,3,21) = 'KMRS-B0 '
607 SFNAME(1,3,22) = 'MRS-B0-1'
608 SFNAME(1,3,23) = 'MRS-B0-2'
609 SFNAME(1,3,24) = 'MRS-B0-3'
610 SFNAME(1,3,25) = 'MRS-B0-4'
611 SFNAME(1,3,26) = 'MRS-S0 '
612 SFNAME(1,3,27) = 'MRS-D0 '
613 SFNAME(1,3,28) = 'MRS-DM '
614 SFNAME(1,3,29) = 'MRS-S0P '
615 SFNAME(1,3,30) = 'MRS-D0P '
616 SFNAME(1,3,31) = 'MRS-DMP '
617 SFNAME(1,3,32) = 'MRS-S0PD'
618 SFNAME(1,3,33) = 'MRS-D0PD'
619 SFNAME(1,3,34) = 'MRS-DMPD'
620 SFNAME(1,3,35) = 'MRS-(H) '
621 SFNAME(1,3,36) = 'MRS-(H)D'
622 SFNAME(1,3,37) = 'MRS-(A) '
623 SFNAME(1,3,38) = 'MRS-(A)F'
624 SFNAME(1,3,39) = 'MRS-Ap '
625 SFNAME(1,3,40) = 'MRS-Ap F'
626 SFNAME(1,3,41) = 'MRS-G '
627 SFNAME(1,3,42) = 'MRS-GFit'
628 SFNAME(1,3,43) = 'MRS-A lQ'
629 SFNAME(1,3,44) = 'MRS-ADlQ'
630 SFNAME(1,3,45) = 'MRS-Ap-1'
631 SFNAME(1,3,46) = 'MRS-Ap-2'
632 SFNAME(1,3,47) = 'MRS-Ap-3'
633 SFNAME(1,3,48) = 'MRS-Ap-4'
634 SFNAME(1,3,49) = 'MRS-Ap-5'
635 SFNAME(1,3,50) = 'MRS-Ap-6'
636 SFNAME(1,3,51) = 'MRS-J '
637 SFNAME(1,3,52) = 'MRS-Jp '
638 SFNAME(1,3,53) = 'MRS-R1 '
639 SFNAME(1,3,54) = 'MRS-R2 '
640 SFNAME(1,3,55) = 'MRS-R3 '
641 SFNAME(1,3,56) = 'MRS-R4 '
642 SFNAME(1,3,57) = 'MRS-R1Ft'
643 SFNAME(1,3,58) = 'MRS-R2Ft'
644 SFNAME(1,4,1) = 'MT-S1DIS'
645 SFNAME(1,4,2) = 'MT-B1DIS'
646 SFNAME(1,4,3) = 'MT-B2DIS'
647 SFNAME(1,4,4) = 'MT-E1DIS'
648 SFNAME(1,4,5) = 'MT-6 DIS'
649 SFNAME(1,4,6) = 'MT-S1MSB'
650 SFNAME(1,4,7) = 'MT-B1MSB'
651 SFNAME(1,4,8) = 'MT-B2MSB'
652 SFNAME(1,4,9) = 'MT-E1MSB'
653 SFNAME(1,4,10) = 'MT-6 MSB'
654 SFNAME(1,4,11) = 'MT-LO '
655 SFNAME(1,4,12) = 'CTEQ-1LO'
656 SFNAME(1,4,13) = 'CTEQ-1M '
657 SFNAME(1,4,14) = 'CTEQ-1MS'
658 SFNAME(1,4,15) = 'CTEQ-1ML'
659 SFNAME(1,4,16) = 'CTEQ-1D '
660 SFNAME(1,4,17) = 'CTEQ-2LO'
661 SFNAME(1,4,18) = 'CTEQ-2M '
662 SFNAME(1,4,19) = 'CTEQ-2MS'
663 SFNAME(1,4,20) = 'CTEQ-2MF'
664 SFNAME(1,4,21) = 'CTEQ-2ML'
665 SFNAME(1,4,22) = 'CTEQ-2D '
666 SFNAME(1,4,23) = 'CTEQ-2pL'
667 SFNAME(1,4,24) = 'CTEQ-2pM'
668 SFNAME(1,4,25) = 'CTEQ2pMS'
669 SFNAME(1,4,26) = 'CTEQ2pMF'
670 SFNAME(1,4,27) = 'CTEQ2pML'
671 SFNAME(1,4,28) = 'CTEQ-2pD'
672 SFNAME(1,4,29) = 'CTEQ-3L '
673 SFNAME(1,4,30) = 'CTEQ-3M '
674 SFNAME(1,4,31) = 'CTEQ-3D '
675 SFNAME(1,4,32) = 'CTEQ-4L '
676 SFNAME(1,4,33) = 'CTEQ-4D '
677 SFNAME(1,4,34) = 'CTEQ-4M '
678 SFNAME(1,4,35) = 'CTEQ-4A1'
679 SFNAME(1,4,36) = 'CTEQ-4A2'
680 SFNAME(1,4,37) = 'CTEQ-4A3'
681 SFNAME(1,4,38) = 'CTEQ-4A4'
682 SFNAME(1,4,39) = 'CTEQ-4A5'
683 SFNAME(1,4,40) = 'CTEQ-4HJ'
684 SFNAME(1,4,41) = 'CTEQ-4lQ'
685 SFNAME(1,5,1) = 'GRV-HO '
686 SFNAME(1,5,2) = 'GRV-LO '
687 SFNAME(1,5,3) = 'GRV-HO '
688 SFNAME(1,5,4) = 'GRV-LO '
689 SFNAME(1,5,5) = 'GRV94-LO'
690 SFNAME(1,5,6) = 'GRV94-MS'
691 SFNAME(1,5,7) = 'GRV94-DI'
692 SFNAME(1,5,8) = 'GRSV-LOS'
693 SFNAME(1,5,9) = 'GRSV-LOV'
694 SFNAME(1,5,10) = 'GRSV-HOS'
695 SFNAME(1,5,11) = 'GRSV-HOV'
696 SFNAME(1,6,1) = 'ABFOW '
697 SFNAME(1,7,1) = 'BM-A '
698 SFNAME(1,7,2) = 'BM-B '
699 SFNAME(2,1,1) = 'OW-P-1 '
700 SFNAME(2,1,2) = 'OW-P-2 '
701 SFNAME(2,3,1) = 'SMRS-P-1'
702 SFNAME(2,3,2) = 'SMRS-P-2'
703 SFNAME(2,3,3) = 'SMRS-P-3'
704 SFNAME(2,5,1) = 'GRV-P-HO'
705 SFNAME(2,5,2) = 'GRV-P-LO'
706 SFNAME(2,6,1) = 'ABFKW-P1'
707 SFNAME(2,6,2) = 'ABFKW-P2'
708 SFNAME(2,6,3) = 'ABFKW-P3'
709 SFNAME(3,1,1) = 'DO-G-LO '
710 SFNAME(3,1,2) = 'DO-G-HO '
711 SFNAME(3,2,1) = 'DG-G-1 '
712 SFNAME(3,2,2) = 'DG-G-2 '
713 SFNAME(3,2,3) = 'DG-G-3 '
714 SFNAME(3,2,4) = 'DG-G-4 '
715 SFNAME(3,3,1) = 'LAC-G-1 '
716 SFNAME(3,3,2) = 'LAC-G-2 '
717 SFNAME(3,3,3) = 'LAC-G-3 '
718 SFNAME(3,4,1) = 'GS-G-1 '
719 SFNAME(3,4,2) = 'GS-G-2 '
720 SFNAME(3,4,3) = 'GS-G-3 '
721 SFNAME(3,4,4) = 'GS-96-HO'
722 SFNAME(3,4,5) = 'GS-96-LO'
723 SFNAME(3,5,1) = 'GRV-GLHO'
724 SFNAME(3,5,2) = 'GRV-G-HO'
725 SFNAME(3,5,3) = 'GRV-G-LO'
726 SFNAME(3,5,4) = 'GRS-G-LO'
727 SFNAME(3,6,1) = 'ACFGP-GH'
728 SFNAME(3,6,2) = 'ACFGP-GC'
729 SFNAME(3,6,3) = 'AFG-G-HO'
730 SFNAME(3,8,1) = 'WHIT-G-1'
731 SFNAME(3,8,2) = 'WHIT-G-2'
732 SFNAME(3,8,3) = 'WHIT-G-3'
733 SFNAME(3,8,4) = 'WHIT-G-4'
734 SFNAME(3,8,5) = 'WHIT-G-5'
735 SFNAME(3,8,6) = 'WHIT-G-6'
736 SFNAME(3,9,1) = 'SaS-1G1D'
737 SFNAME(3,9,2) = 'SaS-1G1M'
738 SFNAME(3,9,3) = 'SaS-1G2D'
739 SFNAME(3,9,4) = 'SaS-1G2M'
740 SFNAME(3,9,5) = 'SaS-2G1D'
741 SFNAME(3,9,6) = 'SaS-2G1M'
742 SFNAME(3,9,7) = 'SaS-2G2D'
743 SFNAME(3,9,8) = 'SaS-2G2M'
744C.
745C set cross reference tables for NEW PDFLIB format version 4.0
746C (give OLD to get NEW)
747 DO I=1,MODEMX
748 NPTYCR(I) = I/100 + 1
749 IF(I.LE.99) THEN
750 IF(I.LE. 9) THEN
751 NGROCR(I) = 1
752 NSETCR(I) = I
753 ELSEIF(I.GE. 10 .AND. I.LE. 19) THEN
754 NGROCR(I) = 2
755 NSETCR(I) = I - 9
756 ELSEIF(I.GE. 20 .AND. I.LE. 47) THEN
757 NGROCR(I) = 3
758 NSETCR(I) = I - 19
759 ELSEIF(I.GE. 48 .AND. I.LE. 49) THEN
760 NGROCR(I) = -1
761 NSETCR(I) = -1
762 ELSEIF(I.GE. 50 .AND. I.LE. 61) THEN
763 NGROCR(I) = 4
764 NSETCR(I) = I - 49
765 ELSEIF(I.GE. 62 .AND. I.LE. 69) THEN
766 NGROCR(I) = -1
767 NSETCR(I) = -1
768 ELSEIF(I.GE. 70 .AND. I.LE. 73) THEN
769 NGROCR(I) = 5
770 NSETCR(I) = I - 69
771 ELSEIF(I.EQ. 74 ) THEN
772 NGROCR(I) = -1
773 NSETCR(I) = -1
774 ELSEIF(I.EQ. 75 ) THEN
775 NGROCR(I) = 1
776 NSETCR(I) = I - 65
777 ELSEIF(I.GE. 76 .AND. I.LE. 79) THEN
778 NGROCR(I) = -1
779 NSETCR(I) = -1
780 ELSEIF(I.EQ. 80 ) THEN
781 NGROCR(I) = 6
782 NSETCR(I) = I - 79
783 ELSEIF(I.GE. 81 .AND. I.LE. 85) THEN
784 NGROCR(I) = -1
785 NSETCR(I) = -1
786 ELSEIF(I.GE. 86 .AND. I.LE. 87) THEN
787 NGROCR(I) = 7
788 NSETCR(I) = I - 85
789 ELSEIF(I.GE. 88 .AND. I.LE. 99) THEN
790 NGROCR(I) = -1
791 NSETCR(I) = -1
792 ENDIF
793 ELSEIF(I.GE.100 .AND. I.LE.199) THEN
794 IF(I.GE.100 .AND. I.LE.105) THEN
795 NGROCR(I) = -1
796 NSETCR(I) = -1
797 ELSEIF(I.GE.106 .AND. I.LE.107) THEN
798 NGROCR(I) = 1
799 NSETCR(I) = I - 105
800 ELSEIF(I.GE.108 .AND. I.LE.129) THEN
801 NGROCR(I) = -1
802 NSETCR(I) = -1
803 ELSEIF(I.GE.130 .AND. I.LE.132) THEN
804 NGROCR(I) = 3
805 NSETCR(I) = I - 129
806 ELSEIF(I.GE.133 .AND. I.LE.171) THEN
807 NGROCR(I) = -1
808 NSETCR(I) = -1
809 ELSEIF(I.GE.172 .AND. I.LE.173) THEN
810 NGROCR(I) = 5
811 NSETCR(I) = I - 171
812 ELSEIF(I.GE.174 .AND. I.LE.179) THEN
813 NGROCR(I) = -1
814 NSETCR(I) = -1
815 ELSEIF(I.GE.180 .AND. I.LE.182) THEN
816 NGROCR(I) = 6
817 NSETCR(I) = I - 179
818 ELSEIF(I.GE.183 .AND. I.LE.199) THEN
819 NGROCR(I) = -1
820 NSETCR(I) = -1
821 ENDIF
822 ELSEIF(I.GE.200 .AND. I.LE.(MODEMX-1)) THEN
823 IF(I.GE.200 .AND. I.LE.205) THEN
824 NGROCR(I) = -1
825 NSETCR(I) = -1
826 ELSEIF(I.GE.206 .AND. I.LE.207) THEN
827 NGROCR(I) = 1
828 NSETCR(I) = I - 205
829 ELSEIF(I.GE.208 .AND. I.LE.209) THEN
830 NGROCR(I) = -1
831 NSETCR(I) = -1
832 ELSEIF(I.GE.210 .AND. I.LE.213) THEN
833 NGROCR(I) = 2
834 NSETCR(I) = I - 209
835 ELSEIF(I.GE.214 .AND. I.LE.219) THEN
836 NGROCR(I) = -1
837 NSETCR(I) = -1
838 ELSEIF(I.GE.220 .AND. I.LE.222) THEN
839 NGROCR(I) = 3
840 NSETCR(I) = I - 219
841 ELSEIF(I.GE.223 .AND. I.LE.229) THEN
842 NGROCR(I) = -1
843 NSETCR(I) = -1
844 ELSEIF(I.GE.230 .AND. I.LE.232) THEN
845 NGROCR(I) = 4
846 NSETCR(I) = I - 229
847 ELSEIF(I.GE.233 .AND. I.LE.270) THEN
848 NGROCR(I) = -1
849 NSETCR(I) = -1
850 ELSEIF(I.GE.271 .AND. I.LE.273) THEN
851 NGROCR(I) = 5
852 NSETCR(I) = I - 270
853 ELSEIF(I.GE.274 .AND. I.LE.279) THEN
854 NGROCR(I) = -1
855 NSETCR(I) = -1
856 ELSEIF(I.GE.280 .AND. I.LE.281) THEN
857 NGROCR(I) = 6
858 NSETCR(I) = I - 279
859 ELSEIF(I.GE.282 .AND. I.LE.(MODEMX-1)) THEN
860 NGROCR(I) = -1
861 NSETCR(I) = -1
862 ENDIF
863 ELSEIF(I.EQ.MODEMX) THEN
864 NPTYCR(I) = -1
865 NGROCR(I) = -1
866 NSETCR(I) = -1
867 ENDIF
868 ENDDO
869C.
870C Now get opposite cross reference
871C (give NEW to get OLD)
872 CALL UFILL(MODECR,1,NPTYMX*NGRMAX*NSETMX,-1)
873 DO I = 1,NPTYMX
874 DO J = 1,NGRMAX
875 IF (I.EQ.1) THEN
876 IF (J.EQ.1) KT = 0
877 IF (J.EQ.2) KT = 9
878 IF (J.EQ.3) KT = 19
879 IF (J.EQ.4) KT = 49
880 IF (J.EQ.5) KT = 69
881 IF (J.EQ.6) KT = 79
882 IF (J.EQ.7) KT = 85
883 ELSEIF (I.EQ.2) THEN
884 IF (J.EQ.1) KT = 105
885 IF (J.EQ.3) KT = 129
886 IF (J.EQ.5) KT = 171
887 IF (J.EQ.6) KT = 179
888 ELSEIF (I.EQ.3) THEN
889 IF (J.EQ.1) KT = 205
890 IF (J.EQ.2) KT = 209
891 IF (J.EQ.3) KT = 219
892 IF (J.EQ.4) KT = 229
893 IF (J.EQ.5) KT = 270
894 IF (J.EQ.6) KT = 279
895 ENDIF
896 IF(NPGSMX(I,J).EQ.0) GOTO 5
897 DO K = 1,NPGSMX(I,J)
898 KT = KT + 1
899 MK = KT
900 IF (I.EQ.1 .AND. J.EQ.1 .AND. K.EQ.10) MK = 75
901 IF (I.EQ.1 .AND. J.EQ.3 .AND. K.GE.29) MK = -1
902 IF (I.EQ.1 .AND. J.EQ.4 .AND. K.GE.12) MK = -1
903 IF (I.EQ.1 .AND. J.EQ.5 .AND. K.GE. 5) MK = -1
904 IF (I.EQ.3 .AND. J.EQ.5 .AND. K.GE. 4) MK = -1
905 IF (I.EQ.3 .AND. J.EQ.6 .AND. K.GE. 3) MK = -1
906 IF (I.EQ.3 .AND. J.EQ.8 .AND. K.GE. 1) MK = -1
907 IF (I.EQ.3 .AND. J.EQ.9 .AND. K.GE. 1) MK = -1
908 MODECR(I,J,K) = MK
909 ENDDO
910 5 CONTINUE
911 ENDDO
912 ENDDO
913C Define Printer
914 IF(N6.LE.0) N6 = L6
915C Define FIRST flag
916 FIRST = .TRUE.
917C Set the default values
918 IF(IFLPRT.LT.0 .OR. IFLPRT.GT.5) IFLPRT = LFLPRT
919 NPTYPE = LPTYPE
920 NGROUP = LGROUP
921 NSET = LNSET
922 NFL = IFL
923 LO = LORD
924 TMAS = TM
925 QCDL4 = PQCDL4(NPTYPE,NGROUP,NSET)
926 QCDL5 = PQCDL5(NPTYPE,NGROUP,NSET)
927 XMIN = PXMIN(NPTYPE,NGROUP,NSET)
928 XMAX = PXMAX(NPTYPE,NGROUP,NSET)
929 Q2MIN = PQ2MIN(NPTYPE,NGROUP,NSET)
930 Q2MAX = PQ2MAX(NPTYPE,NGROUP,NSET)
931C.
932C Save the PDFLIB parameters
933 IFLPRTP = IFLPRT
934 NPTYPP = NPTYPE
935 NGROPP = NGROUP
936 NSETP = NSET
937 NFLP = NFL
938 LOP = LO
939 TMASP = TMAS
940 QCDL4P = QCDL4
941 QCDL5P = QCDL5
942 XMINP = XMIN
943 XMAXP = XMAX
944 Q2MINP = Q2MIN
945 Q2MAXP = Q2MAX
946C. endif from ISTART
947 ENDIF
948C.
949C Validate call to PDFSET
950 IFLSET = 1
951C.
952C Default : NEW version 4.0 of PDFLIB
953 NEWVER = .TRUE.
954C.
955C Now get user defined values
956 NFLU = 0
957 LOU = 0
958 TMASU = ZEROD
959 QCDL4U = ZEROD
960 QCDL5U = ZEROD
961 XMINU = ZEROD
962 XMAXU = ZEROD
963 Q2MINU = ZEROD
964 Q2MAXU = ZEROD
965 KPTYP = 0
966 KGROP = 0
967 KNSET = 0
968 KMODE = 0
969 NV = 0
970 DO 10 I = 1,20
971 STRING = PARM(I)
972 CALL CLTOU(STRING)
973 NSCHECK = 0
974 DO NS = 1,NSDIM
975 IF(STRING(1:2).EQ.AV(NS)) NSCHECK = NS
976 ENDDO
977 IF( STRING(1:5).NE.'INIT0' .AND. STRING(1:4).NE.'MODE'
978 + .AND. STRING(1:6).NE.'NPTYPE'.AND. STRING(1:6).NE.'NGROUP'
979 + .AND. STRING(1:4).NE.'NSET' .AND. STRING(1:3).NE.'NFL'
980 + .AND. STRING(1:2).NE.'LO' .AND. STRING(1:4).NE.'TMAS'
981 + .AND. STRING(1:5).NE.'QCDL4' .AND. STRING(1:5).NE.'QCDL5'
982 + .AND. STRING(1:4).NE.'XMIN' .AND. STRING(1:4).NE.'XMAX'
983 + .AND. STRING(1:5).NE.'Q2MIN' .AND. STRING(1:5).NE.'Q2MAX'
984C.
985 + .AND. STRING(1:2).NE.'NU' .AND. STRING(1:2).NE.'PR'
986 + .AND. STRING(1:2).NE.'PI' .AND. STRING(1:2).NE.'PH'
987 + .AND. STRING(1:3).NE.'PRI' .AND. NSCHECK .EQ.0
988 + .AND. STRING(1:2).NE.'OW' .AND. STRING(1:2).NE.'SM'
989 + .AND. STRING(1:4).NE.'GRVP' .AND. STRING(1:5).NE.'GRV-P'
990 + .AND. STRING(1:5).NE.'GRVPI' .AND. STRING(1:6).NE.'GRV-PI'
991 + .AND. STRING(1:4).NE.'ABFK' .AND. STRING(1:3).NE.'DOG'
992 + .AND. STRING(1:4).NE.'DO-G' .AND. STRING(1:4).NE.'DOPH'
993 + .AND. STRING(1:5).NE.'DO-PH' .AND. STRING(1:2).NE.'DG'
994 + .AND. STRING(1:2).NE.'LA' .AND. STRING(1:2).NE.'GS'
995 + .AND. STRING(1:3).NE.'GRV' .AND. STRING(1:3).NE.'GRS'
996 + .AND. STRING(1:4).NE.'WHIT' .AND. STRING(1:3).NE.'SAS'
997 + .AND. STRING(1:2).NE.'AC' .AND. STRING(1:5).NE.'FIRST')GOTO 20
998 NV = NV + 1
999 VALUE = VAL(I)
1000C.
1001 IF(STRING(1:5).EQ.'FIRST' .OR. STRING(1:4).EQ.'MODE' .OR.
1002 + STRING(1:6).EQ.'NPTYPE'.OR. STRING(1:6).EQ.'NGROUP' .OR.
1003 + STRING(1:4).EQ.'NSET' .OR. STRING(1:3).EQ.'NFL' .OR.
1004 + STRING(1:2).EQ.'LO' .OR.
1005 + STRING(1:3).EQ.'PRI' .OR. NSCHECK .GT.0 .OR.
1006 + STRING(1:2).EQ.'OW' .OR. STRING(1:2).EQ.'SM' .OR.
1007 + STRING(1:4).EQ.'GRVP' .OR. STRING(1:5).EQ.'GRV-P' .OR.
1008 + STRING(1:5).EQ.'GRVPI' .OR. STRING(1:6).EQ.'GRV-PI' .OR.
1009 + STRING(1:4).EQ.'ABFK' .OR. STRING(1:3).EQ.'DOG' .OR.
1010 + STRING(1:4).EQ.'DO-G' .OR. STRING(1:4).EQ.'DOPH' .OR.
1011 + STRING(1:5).EQ.'DO-PH' .OR. STRING(1:2).EQ.'DG' .OR.
1012 + STRING(1:2).EQ.'LA' .OR. STRING(1:2).EQ.'GS' .OR.
1013 + STRING(1:3).EQ.'GRV' .OR. STRING(1:3).EQ.'GRS' .OR.
1014 + STRING(1:4).EQ.'WHIT' .OR. STRING(1:3).EQ.'SAS' .OR.
1015 + STRING(1:2).EQ.'AC' ) THEN
1016 TEMP = VALUE
1017 IF(ABS(VALUE).LT.1.E-2) TEMP = IVALUE
1018 ENDIF
1019C Get user's setting for FIRST (option: silent mode => FIRST = .FALSE.)
1020 IF(STRING(1:5).EQ.'FIRST') THEN
1021 IF(TEMP.EQ.0) FIRST = .FALSE.
1022 IF(TEMP.EQ.1) FIRST = .TRUE.
1023 ENDIF
1024C.
1025C. Return, because PDFSET was called ONLY for initialisation
1026 IF(STRING(1:5).EQ.'INIT0') THEN
1027 IFLSET = 0
1028C Print status of PDFLIB
1029 IF(FIRST) THEN
1030 IF(ISTART.EQ.0) CALL PDFVERS
1031 ENDIF
1032 ISTART = 1
1033C. Reset PDFSET parameters
1034 DO K = 1,NCHDIM
1035 PARM(K) = ' '
1036 ENDDO
1037 RETURN
1038 ENDIF
1039C.
1040C Check if PDFLIB format of new version 4.0 or of versions 3.0 or less
1041 IF(STRING(1:4).EQ.'MODE') THEN
1042 NEWVER = .FALSE.
1043 MODE = TEMP
1044 KMODE = 1
1045 ENDIF
1046C Now NEW version 4.0 or bigger
1047C Get particle type
1048 IF(STRING(1:6).EQ.'NPTYPE') THEN
1049 NPTYPE = TEMP
1050 KPTYP = 1
1051 ENDIF
1052C Get Author Group Number
1053 IF(STRING(1:6).EQ.'NGROUP') THEN
1054 NGROUP = TEMP
1055 KGROP = 1
1056 ENDIF
1057C Get PDF Set within Author Group
1058 IF(STRING(1:4).EQ.'NSET' ) THEN
1059 NSET = TEMP
1060 KNSET = 1
1061 ENDIF
1062C Particle Type = Nucleons
1063 IF(STRING(1:2).EQ.'NU' .OR. STRING(1:2).EQ.'PR'
1064 + .OR. NSCHECK.GT.0) THEN
1065 NPTYPE = 1
1066 KPTYP = 1
1067 ENDIF
1068 IF(STRING(1:3).EQ.'PRI') THEN
1069 NPTYPE = 1
1070 KPTYP = 1
1071 NGROUP = 1
1072 KGROP = 1
1073 NSET = TEMP
1074 KNSET = 1
1075 ENDIF
1076 IF(NSCHECK.GE.1 .AND. NSCHECK.LE.5) THEN
1077 NPTYPE = 1
1078 KPTYP = 1
1079 NGROUP = 1
1080 KGROP = 1
1081 NSET = TEMP
1082 KNSET = 1
1083 ENDIF
1084 IF(NSCHECK.EQ.6) THEN
1085 NPTYPE = 1
1086 KPTYP = 1
1087 NGROUP = 2
1088 KGROP = 1
1089 NSET = TEMP
1090 KNSET = 1
1091 ENDIF
1092 IF(NSCHECK.GE.7 .AND. NSCHECK.LE.9) THEN
1093 NPTYPE = 1
1094 KPTYP = 1
1095 NGROUP = 3
1096 KGROP = 1
1097 NSET = TEMP
1098 KNSET = 1
1099 ENDIF
1100 IF(NSCHECK.GE.10 .AND. NSCHECK.LE.11) THEN
1101 NPTYPE = 1
1102 KPTYP = 1
1103 NGROUP = 4
1104 KGROP = 1
1105 NSET = TEMP
1106 KNSET = 1
1107 ENDIF
1108 IF(NSCHECK.EQ.12) THEN
1109 NPTYPE = 1
1110 KPTYP = 1
1111 NGROUP = 5
1112 KGROP = 1
1113 NSET = TEMP
1114 KNSET = 1
1115 ENDIF
1116 IF(NSCHECK.EQ.13) THEN
1117 NPTYPE = 1
1118 KPTYP = 1
1119 NGROUP = 6
1120 KGROP = 1
1121 NSET = TEMP
1122 KNSET = 1
1123 ENDIF
1124 IF(NSCHECK.EQ.14) THEN
1125 NPTYPE = 1
1126 KPTYP = 1
1127 NGROUP = 7
1128 KGROP = 1
1129 NSET = TEMP
1130 KNSET = 1
1131 ENDIF
1132C Particle Type = Pions
1133 IF(STRING(1:2).EQ.'PI') THEN
1134 NPTYPE = 2
1135 KPTYP = 1
1136 ENDIF
1137 IF(STRING(1:2).EQ.'OW' .OR.
1138 + STRING(1:3).EQ.'OWP' .OR. STRING(1:4).EQ.'OW-P' .OR.
1139 + STRING(1:4).EQ.'OWPI' .OR. STRING(1:5).EQ.'OW-PI') THEN
1140 NPTYPE = 2
1141 KPTYP = 1
1142 NGROUP = 1
1143 KGROP = 1
1144 NSET = TEMP
1145 KNSET = 1
1146 ENDIF
1147 IF(STRING(1:2).EQ.'SM' .OR.
1148 + STRING(1:5).EQ.'SMRSP' .OR. STRING(1:6).EQ.'SMRS-P' .OR.
1149 + STRING(1:6).EQ.'SMRSPI' .OR. STRING(1:7).EQ.'SMRS-PI') THEN
1150 NPTYPE = 2
1151 KPTYP = 1
1152 NGROUP = 3
1153 KGROP = 1
1154 NSET = TEMP
1155 KNSET = 1
1156 ENDIF
1157 IF(STRING(1:4).EQ.'GRVP' .OR. STRING(1:5).EQ.'GRV-P' .OR.
1158 + STRING(1:5).EQ.'GRVPI' .OR. STRING(1:6).EQ.'GRV-PI') THEN
1159 NPTYPE = 2
1160 KPTYP = 1
1161 NGROUP = 5
1162 KGROP = 1
1163 NSET = TEMP
1164 KNSET = 1
1165 ENDIF
1166 IF(STRING(1:4).EQ.'ABFK' .OR.
1167 + STRING(1:6).EQ.'ABFKWP' .OR. STRING(1:7).EQ.'ABFKW-P' .OR.
1168 + STRING(1:7).EQ.'ABFKWPI' .OR. STRING(1:8).EQ.'ABFKW-PI') THEN
1169 NPTYPE = 2
1170 KPTYP = 1
1171 NGROUP = 6
1172 KGROP = 1
1173 NSET = TEMP
1174 KNSET = 1
1175 ENDIF
1176C Particle Type = Photons
1177 IF(STRING(1:2).EQ.'PH') THEN
1178 NPTYPE = 3
1179 KPTYP = 1
1180 ENDIF
1181 IF(STRING(1:3).EQ.'DOG' .OR. STRING(1:4).EQ.'DO-G' .OR.
1182 + STRING(1:4).EQ.'DOPH' .OR. STRING(1:5).EQ.'DO-PH') THEN
1183 NPTYPE = 3
1184 KPTYP = 1
1185 NGROUP = 1
1186 KGROP = 1
1187 NSET = TEMP
1188 KNSET = 1
1189 ENDIF
1190 IF(STRING(1:2).EQ.'DG' .OR.
1191 + STRING(1:3).EQ.'DGG' .OR. STRING(1:4).EQ.'DG-G' .OR.
1192 + STRING(1:4).EQ.'DGPH' .OR. STRING(1:5).EQ.'DG-PH') THEN
1193 NPTYPE = 3
1194 KPTYP = 1
1195 NGROUP = 2
1196 KGROP = 1
1197 NSET = TEMP
1198 KNSET = 1
1199 ENDIF
1200 IF(STRING(1:2).EQ.'LA' .OR.
1201 + STRING(1:4).EQ.'LACG' .OR. STRING(1:5).EQ.'LAC-G' .OR.
1202 + STRING(1:5).EQ.'LACPH' .OR. STRING(1:6).EQ.'LAC-PH') THEN
1203 NPTYPE = 3
1204 KPTYP = 1
1205 NGROUP = 3
1206 KGROP = 1
1207 NSET = TEMP
1208 KNSET = 1
1209 ENDIF
1210 IF(STRING(1:2).EQ.'GS' .OR.
1211 + STRING(1:3).EQ.'GSG' .OR. STRING(1:4).EQ.'GS-G' .OR.
1212 + STRING(1:4).EQ.'GSPH' .OR. STRING(1:5).EQ.'GS-PH') THEN
1213 NPTYPE = 3
1214 KPTYP = 1
1215 NGROUP = 4
1216 KGROP = 1
1217 NSET = TEMP
1218 KNSET = 1
1219 ENDIF
1220 IF(STRING(1:4).EQ.'GRVG' .OR. STRING(1:5).EQ.'GRV-G' .OR.
1221 + STRING(1:5).EQ.'GRVPH' .OR. STRING(1:6).EQ.'GRV-PH' .OR.
1222 + STRING(1:5).EQ.'GRSPH' .OR. STRING(1:6).EQ.'GRS-PH') THEN
1223 NPTYPE = 3
1224 KPTYP = 1
1225 NGROUP = 5
1226 KGROP = 1
1227 NSET = TEMP
1228 KNSET = 1
1229 ENDIF
1230 IF(STRING(1:2).EQ.'AC' .OR.
1231 + STRING(1:6).EQ.'ACFGPG' .OR. STRING(1:7).EQ.'ACFGP-G' .OR.
1232 + STRING(1:7).EQ.'ACFGPPH' .OR. STRING(1:8).EQ.'ACFGP-PH') THEN
1233 NPTYPE = 3
1234 KPTYP = 1
1235 NGROUP = 6
1236 KGROP = 1
1237 NSET = TEMP
1238 KNSET = 1
1239 ENDIF
1240 IF(STRING(1:2).EQ.'WI' .OR.
1241 + STRING(1:5).EQ.'WHITG' .OR. STRING(1:6).EQ.'WHIT-G' .OR.
1242 + STRING(1:6).EQ.'WHITPH' .OR. STRING(1:7).EQ.'WHIT-PH') THEN
1243 NPTYPE = 3
1244 KPTYP = 1
1245 NGROUP = 8
1246 KGROP = 1
1247 NSET = TEMP
1248 KNSET = 1
1249 ENDIF
1250 IF(STRING(1:2).EQ.'SA' .OR.
1251 + STRING(1:4).EQ.'SASG' .OR. STRING(1:5).EQ.'SAS-G' .OR.
1252 + STRING(1:5).EQ.'SASPH' .OR. STRING(1:6).EQ.'SAS-PH') THEN
1253 NPTYPE = 3
1254 KPTYP = 1
1255 NGROUP = 9
1256 KGROP = 1
1257 NSET = TEMP
1258 KNSET = 1
1259 ENDIF
1260C... set defaults for private structure functions set (Nset = 1)
1261 IF(NPTYPE.EQ.1 .AND. NGROUP.EQ.1 .AND. NSET.EQ.1) THEN
1262 NFL = IFL
1263 LO = LORD
1264 TMAS = TM
1265 QCDL4 = ZEROD
1266 QCDL5 = ZEROMIN
1267 XMIN = ZEROD
1268 XMAX = 0.9999D0
1269 Q2MIN = ZEROD
1270 Q2MAX = 1.000D8
1271 ENDIF
1272 IF(STRING(1:3).EQ.'NFL' ) NFLU = TEMP
1273 IF(STRING(1:2).EQ.'LO' ) LOU = TEMP
1274 IF(STRING(1:4).EQ.'TMAS' ) TMASU = VALUE
1275C.
1276 IF(STRING(1:5).EQ.'QCDL4') QCDL4U = VALUE
1277 IF(STRING(1:5).EQ.'QCDL5') QCDL5U = VALUE
1278C.
1279 IF(STRING(1:4).EQ.'XMIN') XMINU = VALUE
1280 IF(STRING(1:4).EQ.'XMAX') XMAXU = VALUE
1281 IF(STRING(1:5).EQ.'Q2MIN') Q2MINU = VALUE
1282 IF(STRING(1:5).EQ.'Q2MAX') Q2MAXU = VALUE
1283 10 CONTINUE
1284 20 CONTINUE
1285C Print status of PDFLIB
1286 IF(FIRST) THEN
1287 IF(ISTART.EQ.0) CALL PDFVERS
1288 ENDIF
1289 ISTART = 1
1290C Print values
1291 IF(IFLPRT.GE.1) THEN
1292 IF(NV.GT.0) THEN
1293 IF(NEWVER) THEN
1294 WRITE(N6,2000) (PARM(I)(1:6),I=1,NV)
1295 ELSE
1296 WRITE(N6,2000) (PARM(I)(1:4),I=1,NV)
1297 ENDIF
1298 WRITE(N6,2001) (VAL(I),I=1,NV)
1299 ELSE
1300 WRITE(N6,2002)
1301 ENDIF
1302 ELSE
1303 IF(NV.EQ.0) WRITE(N6,2002)
1304 ENDIF
1305 2000 FORMAT(/,' Parm = ',10(1X,A8))
1306 2001 FORMAT(1H ,' Val = ',10(1X,F8.4))
1307 2002 FORMAT(/,' PDFSET : Warning!! NO Parameters read in, defaults
1308 + (Nucleon PDFs) used !!')
1309C.
1310C. check on conflicting parameters in case of mixed versions
1311 IF((KPTYP*KMODE).EQ.1 .OR. (KGROP*KMODE).EQ.1 .OR.
1312 + (KNSET*KMODE).EQ.1) THEN
1313 WRITE(N6,*)
1314 + ' PDFLIB : Warning!! Mixed parameter settings for OLD and NE
1315 +W version of PDFLIB format'
1316 WRITE(N6,*)
1317 + ' Warning : ALL parameters set to NEW default (Nucleon PDFs) !!'
1318 NEWVER = .TRUE.
1319 NPTYPE = LPTYPE
1320 NGROUP = LGROUP
1321 NSET = LNSET
1322 ENDIF
1323C.
1324#include "pdf/w50511c.inc"
1325C.
1326C User wants old version (3.0 or less) of PDFLIB format
1327 IF(.NOT.NEWVER) THEN
1328 IF (MODE .GE.0 .AND. MODE .LE.MODEMX) THEN
1329 IF(MODE.EQ.0) THEN
1330 NPTYPE = LPTYPO
1331 NGROUP = LGROPO
1332 NSET = LNSETO
1333 ELSE
1334 NPTYPE = NPTYCR(MODE)
1335 NGROUP = NGROCR(MODE)
1336 NSET = NSETCR(MODE)
1337C Check on validity of parameter values
1338 IF (NPTYPE.LT.0 .OR. NGROUP.LT.0 .OR. NSET.LT.0) THEN
1339 IF(FIRST) THEN
1340 WRITE(N6,*) ' PDFLIB : MODE value INCORRECT, MODE = ',
1341 + MODE
1342 WRITE(N6,*) ' Warning : MODE value set to OLD default !!'
1343 ENDIF
1344 NPTYPE = LPTYPO
1345 NGROUP = LGROPO
1346 NSET = LNSETO
1347 GOTO 30
1348 ENDIF
1349 ENDIF
1350 ELSE
1351 IF(FIRST) THEN
1352 WRITE(N6,*) ' PDFLIB : MODE value INCORRECT, MODE = ',MODE
1353 WRITE(N6,*) ' Warning : MODE value set to OLD default !!'
1354 ENDIF
1355 NPTYPE = LPTYPO
1356 NGROUP = LGROPO
1357 NSET = LNSETO
1358 ENDIF
1359C User wants new version (4.0 or bigger) of PDFLIB format
1360 ELSE
1361C Check on validity of parameter values
1362 IF (NSET.EQ.0) THEN
1363 NPTYPE = LPTYPE
1364 NGROUP = LGROUP
1365 NSET = LNSET
1366 IF(FIRST) THEN
1367 WRITE(N6,*)
1368 + ' PDFLIB : DEFAULT parameter set (Nucleon PDFs) has been
1369 + chosen !'
1370 WRITE(N6,*)
1371 + ' PDFLIB : Nptype = ',NPTYPE,' Ngroup = ',NGROUP,
1372 + ' Nset = ',NSET
1373 ENDIF
1374 ENDIF
1375 IF (NPTYPE.LT.0 .OR. NPTYPE.EQ.0 .OR. NPTYPE.GT.NPTYMX) THEN
1376 IF(FIRST) THEN
1377 WRITE(N6,*)
1378 + ' PDFLIB : Particle type number INCORRECT, Nptype = ',
1379 + NPTYPE,' Ngroup = ',NGROUP,' Nset = ',NSET
1380 WRITE(N6,*)
1381 + ' Warning : ALL parameters set to default (Nucleon PDFs) !!'
1382 ENDIF
1383 NPTYPE = LPTYPE
1384 NGROUP = LGROUP
1385 NSET = LNSET
1386 ENDIF
1387 IF (NGROUP.LT.0 .OR. NGROUP.EQ.0 .OR. NGROUP.GT.NGRMAX) THEN
1388 IF(FIRST) THEN
1389 WRITE(N6,*)
1390 + ' PDFLIB : Group number for PDFs INCORRECT, Nptype = ',
1391 + NPTYPE,' Ngroup = ',NGROUP,' Nset = ',NSET
1392 WRITE(N6,*)
1393 + ' Warning : ALL parameters set to default (Nucleon PDFs) !!'
1394 ENDIF
1395 NPTYPE = LPTYPE
1396 NGROUP = LGROUP
1397 NSET = LNSET
1398 ENDIF
1399 IF (NSET.LT.0 .OR. NSET.EQ.0 .OR. NSET.GT.NPGSMX(NPTYPE,NGROUP))
1400 + THEN
1401 IF(FIRST) THEN
1402 WRITE(N6,*)
1403 + ' PDFLIB : NSET value for PDFs INCORRECT, Nptype = ',
1404 + NPTYPE,' Ngroup = ',NGROUP,' Nset = ',NSET
1405 WRITE(N6,*)
1406 + ' Warning : ALL parameters set to default (Nucleon PDFs) !!'
1407 ENDIF
1408 NPTYPE = LPTYPE
1409 NGROUP = LGROUP
1410 NSET = LNSET
1411 ENDIF
1412 ENDIF
1413 30 CONTINUE
1414C.
1415C Check on retracted PDF sets
1416 IF (NSETFL(NPTYPE,NGROUP,NSET).EQ.0) THEN
1417 IF(FIRST) THEN
1418 WRITE(N6,*)
1419 + ' PDFLIB : Your selected PDF set has been retracted by the aut
1420 +hors'
1421 WRITE(N6,*)
1422 + ' Warning : ALL parameters set to default (Nucleon PDFs) !!'
1423 ENDIF
1424 NPTYPE = LPTYPE
1425 NGROUP = LGROUP
1426 NSET = LNSET
1427 ENDIF
1428C.
1429C Number of flavours in alpha(s) calculation
1430 IF (ABS(NFL).LT.3 .OR. ABS(NFL).GT.6) THEN
1431 IF(FIRST) THEN
1432 IF(NPTYPE.EQ.1 .AND. NGROUP.EQ.1 .AND. NSET.EQ.1) WRITE(N6,*)
1433 + ' You are calling the DUMMY private SF routine !!'
1434 WRITE(N6,*) ' PDFLIB : NFL value outside range, NFL = ',NFL
1435 WRITE(N6,*) ' Warning : NFL value set to default !!'
1436 ENDIF
1437 NFL = IFL
1438 ENDIF
1439 IF (NFLU .GT. 0) THEN
1440 NFL = NFLU
1441 IF(FIRST) THEN
1442 IF(NFLU.NE.NFLP) THEN
1443 WRITE(N6,*) ' PDFLIB : NFL value'
1444 WRITE(N6,*) ' Warning : NON standard settings, NFL value = ',
1445 + NFL,' set by user !!'
1446 ENDIF
1447 ENDIF
1448 ENDIF
1449C.
1450C Order of alpha(s) calculation
1451 LO=LORD
1452 IF ((NPTYPE.EQ.1.AND.NGROUP.EQ.1.AND.NSET.GE. 2) .OR.
1453 + (NPTYPE.EQ.1.AND.NGROUP.EQ.2.AND.NSET.LE. 5) .OR.
1454 + (NPTYPE.EQ.1.AND.NGROUP.EQ.4.AND.NSET.GE.11.AND.NSET.LE.12).OR.
1455 + (NPTYPE.EQ.1.AND.NGROUP.EQ.4.AND.NSET.EQ.17) .OR.
1456 + (NPTYPE.EQ.1.AND.NGROUP.EQ.4.AND.NSET.EQ.23) .OR.
1457 + (NPTYPE.EQ.1.AND.NGROUP.EQ.4.AND.NSET.EQ.29) .OR.
1458 + (NPTYPE.EQ.1.AND.NGROUP.EQ.4.AND.NSET.EQ.32) .OR.
1459 + (NPTYPE.EQ.1.AND.NGROUP.EQ.5.AND.NSET.EQ. 2) .OR.
1460 + (NPTYPE.EQ.1.AND.NGROUP.EQ.5.AND.NSET.GE. 4.AND.NSET.LE.5).OR.
1461 + (NPTYPE.EQ.1.AND.NGROUP.EQ.5.AND.NSET.GE. 8.AND.NSET.LE.9).OR.
1462 + (NPTYPE.EQ.2.AND.NGROUP.EQ.1.AND.NSET.LE. 2) .OR.
1463 + (NPTYPE.EQ.2.AND.NGROUP.EQ.5.AND.NSET.EQ. 2) .OR.
1464 + (NPTYPE.EQ.3.AND.NGROUP.EQ.1.AND.NSET.EQ. 1) .OR.
1465 + (NPTYPE.EQ.3.AND.NGROUP.EQ.2.AND.NSET.LE. 4) .OR.
1466 + (NPTYPE.EQ.3.AND.NGROUP.EQ.3.AND.NSET.LE. 3) .OR.
1467 + (NPTYPE.EQ.3.AND.NGROUP.EQ.4.AND.NSET.GE. 2.AND.NSET.LE.3).OR.
1468 + (NPTYPE.EQ.3.AND.NGROUP.EQ.4.AND.NSET.EQ. 5) .OR.
1469 + (NPTYPE.EQ.3.AND.NGROUP.EQ.5.AND.NSET.GE. 3.AND.NSET.LE.4).OR.
1470 + (NPTYPE.EQ.3.AND.(NGROUP.GE.8.AND.NGROUP.LE.9)))
1471 + LO=1
1472 IF (LOU .GT. 0) THEN
1473 LO = LOU
1474 IF(FIRST) THEN
1475 IF(LOU.NE.LOP) THEN
1476 WRITE(N6,*) ' PDFLIB : LO value'
1477 WRITE(N6,*) ' Warning : NON standard settings, LO value = ',
1478 + LO,' set by user !!'
1479 ENDIF
1480 ENDIF
1481 ENDIF
1482C.
1483C Top Quark mass
1484 IF(TMAS.LE.ZEROD) THEN
1485 IF(FIRST) THEN
1486 WRITE(N6,*)' PDFLIB : TMAS value zero or negativ, Tmas = ',TMAS
1487 WRITE(N6,*)' Warning : TMAS value set to default !!'
1488 ENDIF
1489 TMAS = TM
1490 ENDIF
1491 IF (TMASU .GT. ZEROMIN) THEN
1492 TMAS = TMASU
1493 IF(FIRST) THEN
1494 IF(TMASU.NE.TMASP) THEN
1495 WRITE(N6,*)' PDFLIB : TMAS value'
1496 WRITE(N6,*) ' Warning : NON standard settings, TMAS value = ',
1497 + TMAS,' set by user !!'
1498 ENDIF
1499 ENDIF
1500 ENDIF
1501C.
1502C. this lambda (NFL=4) is given by the authors and
1503C. NOT used in the calculation
1504 QCDL4 = PQCDL4(NPTYPE,NGROUP,NSET)
1505 IF(NPTYPE.EQ.1 .AND. NGROUP.EQ.1 .AND. NSET.EQ.1) THEN
1506 IF (QCDL5 .LT. ZEROMIN) THEN
1507 IF(FIRST) THEN
1508 WRITE (N6,*) ' PDFLIB : QCD-Lambda5 is not defined !! '
1509 WRITE (N6,*) ' Warning : QCD-Lambda5 set to QCDL5 = 0.0D0'
1510 ENDIF
1511 QCDL4 = ZEROD
1512 QCDL5 = ZEROD
1513C. Reset PDFSET parameters
1514 DO K = 1,NCHDIM
1515 PARM(K) = ' '
1516 ENDDO
1517 RETURN
1518 ENDIF
1519 ENDIF
1520 IF (QCDL4U .GT. ZEROMIN) THEN
1521 QCDL4 = QCDL4U
1522 IF(FIRST) THEN
1523 IF(QCDL4U.NE.QCDL4P) THEN
1524 WRITE (N6,*) ' PDFLIB : QCD-Lambda4 value'
1525 WRITE(N6,*) ' Warning : NON standard settings, QCDL4 value = ',
1526 + QCDL4,' set by user !!'
1527 ENDIF
1528 ENDIF
1529 ENDIF
1530C.
1531C. this is the lambda (NFL=5) used in the calculation
1532 QCDL5 = PQCDL5(NPTYPE,NGROUP,NSET)
1533 IF (QCDL5U .GT. ZEROMIN) THEN
1534 QCDL5 = QCDL5U
1535 IF(FIRST) THEN
1536 IF(QCDL5U.NE.QCDL5P) THEN
1537 WRITE (N6,*) ' PDFLIB : QCD-Lambda5 value'
1538 WRITE(N6,*) ' Warning : NON standard settings, QCDL5 value = ',
1539 + QCDL5,' set by user !!'
1540 ENDIF
1541 ENDIF
1542 ENDIF
1543C.
1544C Minimal X values
1545 XMIN = PXMIN(NPTYPE,NGROUP,NSET)
1546 IF (XMINU .GT. ZEROMIN) THEN
1547 XMIN = XMINU
1548 IF(FIRST) THEN
1549 IF(XMINU.NE.XMINP) THEN
1550 WRITE (N6,*) ' PDFLIB : XMIN value'
1551 WRITE(N6,*) ' Warning : NON standard settings, XMIN value = ',
1552 + XMIN,' set by user !!'
1553 ENDIF
1554 ENDIF
1555 ENDIF
1556C.
1557C Maximal X values
1558 XMAX = PXMAX(NPTYPE,NGROUP,NSET)
1559 IF (XMAXU .GT. ZEROMIN) THEN
1560 XMAX = XMAXU
1561 IF(FIRST) THEN
1562 IF(XMAXU.NE.XMAXP) THEN
1563 WRITE (N6,*) ' PDFLIB : XMAX value'
1564 WRITE(N6,*) ' Warning : NON standard settings, XMAX value = ',
1565 + XMAX,' set by user !!'
1566 ENDIF
1567 ENDIF
1568 ENDIF
1569C.
1570C Minimal Q**2 values
1571 Q2MIN = PQ2MIN(NPTYPE,NGROUP,NSET)
1572 IF (Q2MINU .GT. ZEROMIN) THEN
1573 Q2MIN = Q2MINU
1574 IF(FIRST) THEN
1575 IF(Q2MINU.NE.Q2MINP) THEN
1576 WRITE (N6,*) ' PDFLIB : Q2MIN value'
1577 WRITE(N6,*) ' Warning : NON standard settings, Q2MIN value = ',
1578 + Q2MIN,' set by user !!'
1579 ENDIF
1580 ENDIF
1581 ENDIF
1582C.
1583C Maximal Q**2 values
1584 Q2MAX = PQ2MAX(NPTYPE,NGROUP,NSET)
1585 IF (Q2MAXU .GT. ZEROMIN) THEN
1586 Q2MAX = Q2MAXU
1587 IF(FIRST) THEN
1588 IF(Q2MAXU.NE.Q2MAXP) THEN
1589 WRITE (N6,*) ' PDFLIB : Q2MAX value'
1590 WRITE(N6,*) ' Warning : NON standard settings, Q2MAX value = ',
1591 + Q2MAX,' set by user !!'
1592 ENDIF
1593 ENDIF
1594 ENDIF
1595C.
1596C Save the PDFLIB parameters
1597 IFLPRTP = IFLPRT
1598 NPTYPP = NPTYPE
1599 NGROPP = NGROUP
1600 NSETP = NSET
1601 NFLP = NFL
1602 LOP = LO
1603 TMASP = TMAS
1604 QCDL4P = QCDL4
1605 QCDL5P = QCDL5
1606 XMINP = XMIN
1607 XMAXP = XMAX
1608 Q2MINP = Q2MIN
1609 Q2MAXP = Q2MAX
1610C.
1611C... Reset variables to zero for error counting
1612 PDFWGT = ONED
1613 WXMIN = ZEROD
1614 WXMAX = ZEROD
1615 WQ2MIN = ZEROD
1616 WQ2MAX = ZEROD
1617 WTXMIN = ZEROD
1618 WTXMAX = ZEROD
1619 WTQ2MIN = ZEROD
1620 WTQ2MAX = ZEROD
1621C.
1622C print COMMON block values
1623 IF(IFLPRT.GE.2) THEN
1624 WRITE(N6,3000) NPTYPE,NGROUP,NSET,SFNAME(NPTYPE,NGROUP,NSET),
1625 + MODECR(NPTYPE,NGROUP,NSET)
1626 WRITE(N6,3001) NFL,LO,TMAS
1627 WRITE(N6,3002) QCDL4,QCDL5
1628 WRITE(N6,3003) XMIN,XMAX,Q2MIN,Q2MAX
1629 ENDIF
1630 3000 FORMAT(/,' Nptype = ',I1,' Ngroup = ',I1,' Nset = ',I2,
1631 + ' Name = "',A8,'" CrMode = ',I3)
1632 3001 FORMAT(1H ,' Nfl = ',I2,', LO = ',I1,
1633 + ', Tmas = ',F7.2,' GeV/c**2')
1634 3002 FORMAT(1H ,' QCDL4 = ',F7.4,' GeV, QCDL5 = ',F7.4,' GeV')
1635 3003 FORMAT(1H ,' Xmin = ',1X,E8.2,', Xmax = ',E11.5,
1636 + ', Q2min = ',F7.3,' (GeV/c)**2, Q2max = ',E8.2,
1637 + ' (GeV/c)**2')
1638C.
1639C. Reset PDFSET parameters
1640 DO K = 1,NCHDIM
1641 PARM(K) = ' '
1642 ENDDO
1643C.
1644 RETURN
1645 END