]> git.uio.no Git - u/mrichter/AliRoot.git/blob - LHAPDF/lhapdf5.3.1/QCDNUM.f
Fix for IsTriggerInputFired,GetFiredTriggerInputs
[u/mrichter/AliRoot.git] / LHAPDF / lhapdf5.3.1 / QCDNUM.f
1 CDECK  ID>, QCDCOM.
2  
3 CDECK  ID>, QCDCOM.
4  
5 C------------------------QCDNUM COMMON BLOCKS---------------------
6  
7 CDECK  ID>, QCDNUM.
8
9 CDECK  ID>, QNINIT.
10
11 C     =================
12       SUBROUTINE QNINIT
13 C     =================
14
15 C---  QNINIT: initialisation.
16 C---  Called by user.
17  
18       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
19  
20       CHARACTER*8 CHVERS,CHDATE
21       COMMON/QCVERS/ CHVERS,CHDATE
22  
23  
24       COMMON/QCCONS/
25      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
26      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
27      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
28      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
29      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
30      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
31  
32  
33  
34       LOGICAL
35      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
36      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
37      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
38      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
39      +LFFCAL,LASOLD
40
41       COMMON/QCFLAG/ 
42      +IORD,IOLAST,
43      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
44      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
45      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
46      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
47      +LFFCAL(7,30),LASOLD
48  
49  
50       PARAMETER ( MXX = 410 )
51       PARAMETER ( MQ2 =  120 )
52
53 C--   Do not set the following parameter to zero!
54       PARAMETER ( NDFMAX = 20)
55
56  
57       COMMON/QCGRID/
58      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
59      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
60      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
61      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
62  
63  
64       REAL
65      +WGTFF1,WGTFG1,
66      +WGTGF1,WGTGG1,
67      +WGTPP2,WGTPM2,WGTNS2,
68      +WGTFF2,WGTFG2,
69      +WGTGF2,WGTGG2,
70      +WGTC2Q,WGTC2G,YNTC2Q,
71      +WGTCLQ,WGTCLG,WGTC3Q
72
73       COMMON/QCWEIT/
74      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
75      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
76      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
77      +WGTNS2(MXX*(MXX+1)/2,3:5),
78      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
79      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
80      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
81      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
82      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
83
84       COMMON/QCWADR/ IWADR(MXX,MXX)
85
86  
87       COMMON/QCPASS/
88      +ALPHA0, Q0ALFA, ASLAST, QALAST,
89      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
90      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
91      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
92      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
93      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
94      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
95      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
96      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
97      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
98
99       LOGICAL LEVDONE,LE_DONE
100       COMMON/QCLEVL/
101      +LEVDONE(MXX,10),LE_DONE(MXX)
102  
103  
104       CHARACTER*5 PNAM,STFNAM
105       LOGICAL     LNFP
106       COMMON /QCLNFP/ LNFP(0:30,3:5)
107       COMMON /QCPNAM/ PNAM(0:30)
108       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
109       COMMON /QCFNAM/ STFNAM(7)
110  
111  
112       LOGICAL LTIME  
113       REAL T_START,T_END,T_SPENT
114       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
115      +E_CALLS(10),LTIME
116       COMMON/QCFCNT/IFCNT(-1:1,5)
117
118       CHARACTER*7 TSNAM
119       COMMON/QCTRCE/ TSNAM(0:19)
120       COMMON/QCTRCI/ NTCAL(0:19),ITADR
121 c
122 c common added by MRW 18/3/05 to make silent mode for LHAPDF
123 c
124       common/lhasilent/lhasilent
125
126  
127       CHVERS = '16.12   '
128       CHDATE = '12-08-98'
129  
130       LDOUBL = .TRUE.
131       if(lhasilent.eq.0) then
132       WRITE(6,'(/////)')
133       WRITE(6,
134      &'(8X,''+-----------------------------------------------+'')')
135       WRITE(6,
136      &'(8X,''|                                               |'')')
137 c      LDOUBL = .TRUE.
138       WRITE(6,
139      &'(8X,''| You are using the double precision version of |'')')
140       WRITE(6,
141      &'(8X,''|                                               |'')')
142       WRITE(6,
143      &'(8X,''|              Q C D N U M '',A8,
144      &     ''             |'')') CHVERS
145       WRITE(6,
146      &'(8X,''|                                               |'')')
147       WRITE(6,
148      &'(8X,''|         Author  : Michiel Botje               |'')')
149       WRITE(6,
150      &'(8X,''|         Email   : h24@nikhef.nl               |'')')
151       WRITE(6,
152      &'(8X,''|                                               |'')')
153       WRITE(6,
154      &'(8X,''|         Date    : '',A8,
155      &     ''                    |'')') CHDATE
156       WRITE(6,
157      &'(8X,''|         Max NX  : '',I3,
158      &     ''                         |'')') MXX-1
159       WRITE(6,
160      &'(8X,''|         Max NQ2 : '',I3,
161      &     ''                         |'')') MQ2-1
162       WRITE(6,
163      &'(8X,''|                                               |'')')
164       WRITE(6,
165      &'(8X,''+-----------------------------------------------+'')')
166       WRITE(6,'(/////)')
167       endif
168  
169       IORD   = 2
170       IOLAST = -999
171       Q0ALFA = 50.
172       ALPHA0 = 0.180
173       QALAST = -999.
174       ASLAST = -999.
175       SCAX0  = 0.20
176       SCAQ0  = 1.D10
177  
178       PI     = 3.14159265359
179       PROTON = 0.9382796
180       EUTRON = 0.9395731
181       UCLEON = (PROTON + EUTRON) / 2.
182       UDSCBT(1) = 0.005
183       UDSCBT(2) = 0.01
184       UDSCBT(3) = 0.3
185       UDSCBT(4) = 1.5
186       UDSCBT(5) = 5.0
187       UDSCBT(6) = 188.
188       CBMSTF(4) = UDSCBT(4)
189       CBMSTF(5) = UDSCBT(4)
190       CBMSTF(6) = UDSCBT(5)
191       CBMSTF(7) = UDSCBT(5)
192       CHARGE(4) = 4./9.
193       CHARGE(5) = 4./9.
194       CHARGE(6) = 1./9.
195       CHARGE(7) = 1./9.
196       AAM2H     = 1.
197       BBM2H     = 0.
198       AAM2L     = 1.
199       BBM2L     = 0.
200       AAAR2     = 1.
201       BBBR2     = 0.
202       FL_FAC    = 0.
203       C1S3   = 1./3.
204       C2S3   = 2./3.
205       C4S3   = 4./3.
206       C5S3   = 5./3.
207       C8S3   = 8./3.
208       C14S3  = 14./3.
209       C16S3  = 16./3.
210       C20S3  = 20./3.
211       C28S3  = 28./3.
212       C38S3  = 38./3.
213       C40S3  = 40./3.
214       C44S3  = 44./3.
215       C52S3  = 52./3.
216       C136S3 = 136./3.
217       C11S6  = 11./6.
218       C2S9   = 2./9.
219       C4S9   = 4./9.
220       C10S9  = 10./9.
221       C14S9  = 14./9.
222       C16S9  = 16./9.
223       C40S9  = 40./9.
224       C44S9  = 44./9.
225       C62S9  = 62./9.
226       C112S9 = 112./9.
227       C182S9 = 182./9.
228       C11S12 = 11./12.
229       C35S18 = 35./18.
230       C11S3  = 11./3.
231       C22S3  = 22./3.
232       C61S12 = 61./12.
233       C215S1 = 215./12.
234       C29S12 = 29./12.
235       CPI2S3 = PI**2/3.
236       CPIA   = 67./18. - CPI2S3/2.
237       CPIB   = 4.*CPI2S3
238       CPIC   = 17./18. + 3.5*CPI2S3
239       CPID   = 367./36. - CPI2S3
240       CPIE   = 5. - CPI2S3
241       CPIF   = CPI2S3 - 218./9.
242
243       CCA    = 3.
244       CCF    = (CCA*CCA-1.)/(2.*CCA)
245       CTF    = 0.5
246       CATF   = CCA*CTF
247       CFTF   = CCF*CTF
248  
249       DO I = 1,10
250         T_SPENT(I) = 0.
251         E_CALLS(I) = 0.
252         N_CALLS(I) = 0
253       ENDDO
254       LTIME  = .FALSE.
255
256       LBMARK = .FALSE.
257       LW1ANA = .TRUE.
258       LW1NUM = .FALSE.
259       LW2NUM = .TRUE.
260       LW2STF = .TRUE.
261       LWF2C  = .FALSE.
262       LWF2B  = .FALSE.
263       LWFLC  = .FALSE.
264       LWFLB  = .FALSE.
265       LIMCK  = .TRUE.
266       LPLUS  = .TRUE.
267       LALFOK = .FALSE.
268       LDQ2OK = .FALSE.
269       LWT1OK = .FALSE.
270       LWT2OK = .FALSE.
271       LWTFOK = .FALSE.
272       LWFCOK = .FALSE.
273       LWLCOK = .FALSE.
274       LWFBOK = .FALSE.
275       LWLBOK = .FALSE.
276       LMARK  = .FALSE.
277       LCLOWQ = .TRUE.
278       LASOLD = .FALSE.
279       DO I = 1,30
280         DO J = 1,7
281           LFFCAL(J,I)  = .FALSE.
282         ENDDO
283       ENDDO
284 C--   Invalidate all evolutions      
285       CALL QNFALS(LEVDONE,MXX*10)
286       CALL QNFALS(LE_DONE,MXX)
287       CALL QNINUL(IQL_LAST,10)
288       CALL QNINUL(IQ0_LAST,10)
289       CALL QNINUL(IQH_LAST,10)
290  
291       ITADR = 0
292       DO I = 0,19
293         TSNAM(I) = '       '
294         NTCAL(I) = 0
295       ENDDO
296
297       NXX    = 0
298       NQ2    = 0
299       NGRVER = 0
300       NDFAST = 30
301       XMICUT = -1.
302       QMICUT = -1.
303       QMACUT = -1.
304       RS2CUT = -1.
305       QMINAS = 0.
306       THRS34 = -1.D10
307       THRS45 =  1.D10
308  
309       CALL VZERO_LHA (WGTFF1,MXX*(MXX+1)/2)
310       CALL VZERO_LHA (WGTFG1,MXX*(MXX+1)*3/2)
311       CALL VZERO_LHA (WGTGF1,MXX*(MXX+1)/2)
312       CALL VZERO_LHA (WGTGG1,MXX*(MXX+1)*3/2)
313       CALL VZERO_LHA (WGTPP2,MXX*(MXX+1)*3/2)
314       CALL VZERO_LHA (WGTPM2,MXX*(MXX+1)*3/2)
315       CALL VZERO_LHA (WGTNS2,MXX*(MXX+1)*3/2)
316       CALL VZERO_LHA (WGTFF2,MXX*(MXX+1)*3/2)
317       CALL VZERO_LHA (WGTFG2,MXX*(MXX+1)*3/2)
318       CALL VZERO_LHA (WGTGF2,MXX*(MXX+1)*3/2)
319       CALL VZERO_LHA (WGTGG2,MXX*(MXX+1)*3/2)
320       CALL VZERO_LHA (WGTC2Q,MXX*(MXX+1)/2)
321       CALL VZERO_LHA (WGTC2G,MXX*(MXX+1)*3/2)
322       CALL VZERO_LHA (YNTC2Q,MXX)
323       CALL VZERO_LHA (WGTCLQ,MXX*(MXX+1)/2)
324       CALL VZERO_LHA (WGTCLG,MXX*(MXX+1)*3/2)
325       CALL VZERO_LHA (WGTC3Q,MXX*(MXX+1)/2)
326
327       CALL QNVNUL(PWGT,11*31*3)
328       CALL QNINUL(NFMAP,MQ2)
329       CALL QNINUL(MARKFF,MXX*MQ2)
330       CALL QNINUL(MARKFH,MXX*MQ2)
331       CALL QNINUL(MARKQQ,MQ2)
332       CALL QNINUL(IDFAST,7*30)
333       CALL QNINUL(IFCNT,3*5)  
334
335       CALL QNVNUL(PDFQCD,MXX*MQ2*11)
336       DO ID = 1,NDFMAX
337         DO IX = 1,MXX
338           DO IQ = 1,MQ2
339             FSTORE(IX,IQ,30+ID) = -501.
340           ENDDO
341         ENDDO
342       ENDDO
343
344       PNAM(0)   = 'GLUON'
345       PNAM(1)   = 'SINGL'
346       LNFP(0,3) = .TRUE.
347       LNFP(0,4) = .TRUE.
348       LNFP(0,5) = .TRUE.
349       LNFP(1,3) = .TRUE.
350       LNFP(1,4) = .TRUE.
351       LNFP(1,5) = .TRUE.
352       DO 10 I = 2,30
353         PNAM(I)   = 'FREE '
354         LNFP(I,3) = .FALSE.
355         LNFP(I,4) = .FALSE.
356         LNFP(I,5) = .FALSE.
357   10  CONTINUE
358       PWGT(0,0,3) = 1.
359       PWGT(0,0,4) = 1.
360       PWGT(0,0,5) = 1.
361       PWGT(1,1,3) = 1.
362       PWGT(1,1,4) = 1.
363       PWGT(1,1,5) = 1.
364       STFNAM(1)   = 'F2   '
365       STFNAM(2)   = 'FL   '
366       STFNAM(3)   = 'XF3  '
367       STFNAM(4)   = 'F2C  '
368       STFNAM(5)   = 'FLC  '
369       STFNAM(6)   = 'F2B  '
370       STFNAM(7)   = 'FLB  '
371
372       CALL QTRACE('QNINIT ',0)
373  
374       RETURN
375       END
376  
377 CDECK  ID>, QTRACE.
378
379 C     ===============================
380       SUBROUTINE QTRACE(SRNAM,IPRINT)
381 C     ===============================
382  
383       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
384
385       CHARACTER*7 SRNAM
386
387       CHARACTER*7 TSNAM
388       COMMON/QCTRCE/ TSNAM(0:19)
389       COMMON/QCTRCI/ NTCAL(0:19),ITADR
390  
391
392       IF(IPRINT.EQ.0) THEN
393
394         IF(SRNAM.EQ.TSNAM(ITADR)) THEN
395           NTCAL(ITADR) = NTCAL(ITADR) + 1
396         ELSE
397           ITADR = MOD(ITADR+1,20)
398           TSNAM(ITADR) = SRNAM
399           NTCAL(ITADR) = 1
400         ENDIF
401
402       ELSE
403
404         WRITE(6,'(/'' ----------------------------'')')
405
406         K = -20
407         DO I = ITADR+1,ITADR+19
408           J = MOD(I,20)
409           K = K+1
410           WRITE(6,'(I4,2X,A7,''  #calls = '',I5)')
411      +    K,TSNAM(J),NTCAL(J)
412         ENDDO
413         K = 0
414         WRITE(6,'(I4,2X,A7,''  #calls = '',I5,''  <--- error'')')
415      +  K,TSNAM(ITADR),NTCAL(ITADR)
416
417         WRITE(6,'( '' ----------------------------'')')
418
419       ENDIF
420
421       RETURN
422       END
423  
424 CDECK  ID>, QNDUMP.
425
426 C     ======================
427       SUBROUTINE QNDUMP(LUN)
428 C     ======================
429
430 C---  QNDUMP: write weight tables to LUN.
431 C---  Called by user.
432  
433       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
434  
435  
436       PARAMETER ( MXX = 410 )
437       PARAMETER ( MQ2 =  120 )
438
439 C--   Do not set the following parameter to zero!
440       PARAMETER ( NDFMAX = 20)
441
442       CHARACTER*8 CHVERS,CHDATE
443       COMMON/QCVERS/ CHVERS,CHDATE
444  
445  
446       COMMON/QCCONS/
447      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
448      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
449      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
450      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
451      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
452      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
453  
454  
455  
456       LOGICAL
457      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
458      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
459      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
460      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
461      +LFFCAL,LASOLD
462
463       COMMON/QCFLAG/ 
464      +IORD,IOLAST,
465      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
466      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
467      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
468      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
469      +LFFCAL(7,30),LASOLD
470  
471  
472       COMMON/QCGRID/
473      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
474      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
475      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
476      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
477  
478  
479       REAL
480      +WGTFF1,WGTFG1,
481      +WGTGF1,WGTGG1,
482      +WGTPP2,WGTPM2,WGTNS2,
483      +WGTFF2,WGTFG2,
484      +WGTGF2,WGTGG2,
485      +WGTC2Q,WGTC2G,YNTC2Q,
486      +WGTCLQ,WGTCLG,WGTC3Q
487
488       COMMON/QCWEIT/
489      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
490      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
491      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
492      +WGTNS2(MXX*(MXX+1)/2,3:5),
493      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
494      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
495      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
496      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
497      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
498
499       COMMON/QCWADR/ IWADR(MXX,MXX)
500
501
502       REAL
503      +WH_C0KG,WH_C1KG,WH_C1BKG,
504      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
505
506       COMMON/QCHWGT/
507      +WH_C0KG(0:MXX,MQ2,4:7),
508      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
509      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
510      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
511
512
513       DIMENSION STOREM(6)
514
515       CALL QTRACE('QNDUMP ',0)
516
517       STOREM(1) = CBMSTF(4)
518       STOREM(2) = CBMSTF(6)
519       STOREM(3) = 0.
520       STOREM(4) = 0.
521       STOREM(5) = 0.
522       STOREM(6) = 0.
523
524       WRITE(LUN) MXX,MQ2
525       WRITE(LUN) CHVERS,CHDATE
526       WRITE(LUN) STOREM
527       WRITE(LUN) LWT1OK,LWT2OK,LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,
528      +           LPLUS
529       WRITE(LUN) XXTAB,Q2TAB,
530      +           NXX,NQ2,IQF2C,IQF2B,IQFLC,IQFLB
531       IF(LWT1OK) THEN
532       WRITE(LUN) WGTFF1,WGTFG1,WGTGF1,WGTGG1
533       ENDIF
534       IF(LWT2OK) THEN
535       WRITE(LUN) WGTPP2,WGTPM2,WGTNS2,WGTFF2,WGTFG2,WGTGF2,WGTGG2
536       ENDIF
537       IF(LWTFOK) THEN
538       WRITE(LUN) WGTC2Q,WGTC2G,YNTC2Q,WGTCLQ,WGTCLG,WGTC3Q
539       ENDIF
540       IF(LWFCOK.OR.LWLCOK.OR.LWFBOK.OR.LWLBOK) THEN
541       WRITE(LUN) WH_C0KG,WH_C1KG,WH_C1BKG,
542      +           WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
543       ENDIF
544  
545       RETURN
546       END
547  
548 CDECK  ID>, QNREAD.
549
550 C     =================================
551       SUBROUTINE QNREAD(LUN,ISTOP,IERR)
552 C     =================================
553
554 C---  QNDUMP: read weight tables from LUN.
555 C---  Called by user.
556 C---  Input  integer LUN
557 C---         integer ISTOP = 0 read the file
558 C---                 ISTOP = 1 read only when ierr = 0
559 C---                 ISTOP = 2 stop the program when ierr .ne. 0
560 C---  Output integer IERR  = 0 all ok
561 C---                       = 1 xgrid on file .ne. that in QCDNUM
562 C---                       = 2 file contains heavy quark weight tables and
563 C---                           qgrid on file .ne. that in QCDNUM
564 C---                       = 3 file contains charm weight tables and
565 C---                           c mass on the file .ne. that in QCDNUM
566 C---                       = 4 file contains bottom weight tables and
567 C---                           b mass on the file .ne. that in QCDNUM
568  
569       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
570  
571  
572       PARAMETER ( MXX = 410 )
573       PARAMETER ( MQ2 =  120 )
574
575 C--   Do not set the following parameter to zero!
576       PARAMETER ( NDFMAX = 20)
577
578       CHARACTER*8 CHVERS,CHDATE
579       COMMON/QCVERS/ CHVERS,CHDATE
580  
581  
582       COMMON/QCCONS/
583      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
584      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
585      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
586      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
587      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
588      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
589  
590  
591  
592       LOGICAL
593      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
594      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
595      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
596      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
597      +LFFCAL,LASOLD
598
599       COMMON/QCFLAG/ 
600      +IORD,IOLAST,
601      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
602      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
603      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
604      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
605      +LFFCAL(7,30),LASOLD
606  
607  
608       COMMON/QCGRID/
609      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
610      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
611      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
612      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
613  
614  
615       REAL
616      +WGTFF1,WGTFG1,
617      +WGTGF1,WGTGG1,
618      +WGTPP2,WGTPM2,WGTNS2,
619      +WGTFF2,WGTFG2,
620      +WGTGF2,WGTGG2,
621      +WGTC2Q,WGTC2G,YNTC2Q,
622      +WGTCLQ,WGTCLG,WGTC3Q
623
624       COMMON/QCWEIT/
625      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
626      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
627      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
628      +WGTNS2(MXX*(MXX+1)/2,3:5),
629      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
630      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
631      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
632      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
633      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
634
635       COMMON/QCWADR/ IWADR(MXX,MXX)
636
637
638       REAL
639      +WH_C0KG,WH_C1KG,WH_C1BKG,
640      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
641
642       COMMON/QCHWGT/
643      +WH_C0KG(0:MXX,MQ2,4:7),
644      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
645      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
646      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
647
648  
649       COMMON/QCPASS/
650      +ALPHA0, Q0ALFA, ASLAST, QALAST,
651      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
652      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
653      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
654      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
655      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
656      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
657      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
658      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
659      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
660
661       LOGICAL LEVDONE,LE_DONE
662       COMMON/QCLEVL/
663      +LEVDONE(MXX,10),LE_DONE(MXX)
664  
665
666       CHARACTER*8 RHVERS,RHDATE
667       LOGICAL     RWT1OK,RWT2OK,RWTFOK,RWFCOK
668       LOGICAL     RWLCOK,RWFBOK,RWLBOK,RPLUS
669       LOGICAL     LREADX,LREADQ,LREADB,LREADC
670       DIMENSION   RMASS(6)
671       DIMENSION   RXTAB(MXX),RQTAB(MQ2)
672       DIMENSION   IRF2C(MQ2),IRF2B(MQ2),IRFLC(MQ2),IRFLB(MQ2)
673 c
674 c common added 18/3/05 by MRW
675       common/lhasilent/lhasilent
676
677       CALL QTRACE('QNREAD ',0)
678
679       REWIND LUN
680
681 C--   Setup the weight adresses
682 C--   (Usually done in QNFILW, but this routine might not be called)
683       DO IX0 = 1,MXX
684         DO IX = IX0,MXX
685           IWADR(IX,IX0) = IWTAD(IX,IX0)
686         ENDDO
687       ENDDO
688
689 C--   Read header information
690       READ(LUN,ERR=500) KXX,KQ2
691       IF(KXX.NE.MXX.OR.KQ2.NE.MQ2) THEN
692         WRITE(6,'(/'' QNREAD: nxmax, nqmax on file  '',2I5,
693      +            /''         nxmax, nqmax in QCDNUM'',2I5,
694      +            /''         Incompatible ---> STOP'')') 
695      +                        KXX,KQ2,MXX,MQ2
696         STOP
697       ENDIF
698       READ(LUN,ERR=500) RHVERS,RHDATE
699       READ(RHVERS(1:2),'(I2)') IV
700
701 C--   If ISTOP > 0 : stop when fileversion = QCDNUM15 or lower
702 C--   If ISTOP = 0 : read up to the weight tables
703       IF(IV.LE.15.AND.ISTOP.NE.0) THEN
704         WRITE(6,'(/'' QNREAD: file was written with QCDNUM'',A8,
705      +             '' Incompatible ---> STOP'')')
706      +   RHVERS
707         STOP   
708       ENDIF
709       if(lhasilent.eq.0) 
710      + WRITE(6,'(/'' QNREAD: file was written with QCDNUM'',A8)')
711      + RHVERS
712
713       READ(LUN,ERR=500) RMASS  
714       READ(LUN,ERR=500) RWT1OK,RWT2OK,RWTFOK,RWFCOK,RWLCOK,RWFBOK,
715      +                  RWLBOK,RPLUS
716       READ(LUN,ERR=500) RXTAB,RQTAB,
717      +                  NRX,NRQ,IRF2C,IRF2B,IRFLC,IRFLB
718
719       IERR   = 0
720       LREADX = .FALSE.
721       LREADQ = .FALSE.
722       LREADC = .FALSE.
723       LREADB = .FALSE.
724
725 C--   Check xgrid (if there is one already defined)  
726       IF(NXX.NE.0)     THEN
727         IF(NXX.NE.NRX) THEN
728           IERR = 1
729         ELSE
730           DO IX = 1,NXX
731             IF(RXTAB(IX).NE.XXTAB(IX)) IERR = 1
732           ENDDO
733         ENDIF
734       ENDIF
735
736 C--   What to do when xgrid is different
737       IF(IERR.EQ.1) THEN
738         IF(ISTOP.EQ.1) THEN
739           WRITE(6,'(/
740      +    '' QNREAD: X grid in memory different from that on file'',
741      +    '' ---> abandon reading'')')
742           RETURN
743         ENDIF
744         IF(ISTOP.EQ.2) THEN
745           WRITE(6,'(/
746      +    '' QNREAD: X grid in memory different from that on file'',
747      +    '' ---> STOP'')')
748           STOP
749         ENDIF
750       ENDIF
751
752       IF(IERR.EQ.1.OR.NXX.LE.0) LREADX = .TRUE.
753
754 C--   Check Q2 grid if there is one already defined and if there are
755 C--   heavy quark weight tables on the file
756       IF(NQ2.NE.0.AND.(RWFCOK.OR.RWLCOK.OR.RWFBOK.OR.RWLBOK)) THEN
757         IF(NQ2.NE.NRQ) THEN
758           IERR = 2
759         ELSE
760           DO IQ = 1,NQ2
761             IF(RQTAB(IQ).NE.Q2TAB(IQ)) IERR = 2
762           ENDDO
763         ENDIF
764       ENDIF
765
766 C--   What to do when qgrid is different
767       IF(IERR.EQ.2) THEN
768         IF(ISTOP.EQ.1) THEN
769           WRITE(6,'(/
770      +    '' QNREAD: Q2 grid in memory different from that on file'',
771      +    '' ---> abandon reading'')')
772           RETURN
773         ENDIF
774         IF(ISTOP.EQ.2) THEN
775           WRITE(6,'(/
776      +    '' QNREAD: Q2 grid in memory different from that on file'',
777      +    '' ---> STOP'')')
778           STOP
779         ENDIF
780       ENDIF
781
782       IF(IERR.EQ.2.OR.NQ2.LE.0) LREADQ = .TRUE.
783
784 C--   Check charm mass if there are charm weight tables on the file
785       IF(RWFCOK.OR.RWLCOK) THEN
786         IF(IV.LE.15) THEN
787           IF(RMASS(4).NE.CBMSTF(4)) IERR = 3
788         ELSE
789           IF(RMASS(1).NE.CBMSTF(4)) IERR = 3
790         ENDIF
791       ENDIF
792
793 C--   What to do when charm mass is different
794       IF(IERR.EQ.3) THEN
795         IF(ISTOP.EQ.1) THEN
796           WRITE(6,'(/
797      +    '' QNREAD: Charm mass in memory different from that on file'',
798      +    '' ---> abandon reading'')')
799           RETURN
800         ENDIF
801         IF(ISTOP.EQ.2) THEN
802           WRITE(6,'(/
803      +    '' QNREAD: Charm mass in memory different from that on'',
804      +    '' file ---> STOP'')')
805           STOP
806         ENDIF
807         LREADC = .TRUE.
808       ENDIF
809
810 C--   Check bottom mass if there are bottom weight tables on the file
811       IF(RWFBOK.OR.RWLBOK) THEN
812         IF(IV.LE.15) THEN
813           IF(RMASS(5).NE.CBMSTF(6)) IERR = 4
814         ELSE
815           IF(RMASS(2).NE.CBMSTF(6)) IERR = 4
816         ENDIF
817       ENDIF
818
819 C--   What to do when bottom mass is different
820       IF(IERR.EQ.4) THEN
821         IF(ISTOP.EQ.1) THEN
822           WRITE(6,'(/
823      +    '' QNREAD: Bottom mass in memory different from that on'',
824      +    '' file ---> abandon reading'')')
825           RETURN
826         ENDIF
827         IF(ISTOP.EQ.2) THEN
828           WRITE(6,'(/
829      +    '' QNREAD: Bottom mass in memory different from that on'',
830      +    '' file ---> STOP'')')
831           STOP
832         ENDIF
833         LREADB = .TRUE.
834       ENDIF
835
836 C--   ok..... continue.......
837       LPLUS  = RPLUS
838 C--   Invalidate all evolutions      
839       CALL QNFALS(LEVDONE,MXX*10)
840
841       IF(LREADX) THEN
842 C--     Copy xgrid to qcdnum common block
843         NXX = NRX
844         DO IX = 1,NXX+1
845           XXTAB(IX) = RXTAB(IX)
846         ENDDO
847         WRITE(6,'(/
848      +    '' QNREAD: xgrid table read in (original overwritten)'')')
849 C--     Invalidate all weight tables since the grid has changed 
850         LWT1OK = .FALSE.
851         LWT2OK = .FALSE.
852         LWTFOK = .FALSE.
853         LWFCOK = .FALSE.
854         LWLCOK = .FALSE.
855         LWFBOK = .FALSE.
856         LWLBOK = .FALSE.
857         LMARK  = .FALSE.
858         NGRVER = NGRVER+1
859 C--     Invalidate all evolutions      
860         CALL QNFALS(LEVDONE,MXX*10)
861 C---    Update IFAILC
862         CALL GRSETC
863 C---    Update NFMAP
864         CALL QNSETT
865 C---    Update heavy quark xgrid
866         CALL GXHDEF
867       ENDIF
868
869       IF(LREADQ) THEN
870 C--     Copy q2 grid to common block
871         NQ2 = NRQ
872         DO IQ = 1,NQ2
873           Q2TAB(IQ) = RQTAB(IQ)
874         ENDDO
875         WRITE(6,'(/
876      +    '' QNREAD: qgrid table read in (original overwritten)'')')
877 C--     Invalidate hq weight tables since the grid has changed
878         LALFOK = .FALSE.
879         LDQ2OK = .FALSE.
880         LWFCOK = .FALSE.
881         LWLCOK = .FALSE.
882         LWFBOK = .FALSE.
883         LWLBOK = .FALSE.
884         LMARK  = .FALSE.
885         NGRVER = NGRVER + 1
886 C--     Invalidate all evolutions      
887         CALL QNFALS(LEVDONE,MXX*10)
888 C---    Update IFAILC
889         CALL GRSETC
890 C---    Update NFMAP
891         CALL QNSETT
892       ENDIF
893
894       IF(LREADC) THEN
895         IF(IV.LE.15) THEN
896           UDSCBT(4) = RMASS(4)
897           CBMSTF(4) = RMASS(4)
898           CBMSTF(5) = RMASS(4)
899         ELSE
900           CBMSTF(4) = RMASS(1)
901           CBMSTF(5) = RMASS(1)
902         ENDIF
903         WRITE(6,'(/
904      +    '' QNREAD: charm mass read in (original overwritten)'')')
905 C--     Invalidate charm weight tables since charm mass has changed
906         LWFCOK = .FALSE.
907         LWLCOK = .FALSE.
908 C--     Invalidate alpha_s table
909         LALFOK = .FALSE.
910       ENDIF
911
912       IF(LREADB) THEN
913         IF(IV.LE.15) THEN
914           UDSCBT(5) = RMASS(5)
915           CBMSTF(6) = RMASS(5)
916           CBMSTF(7) = RMASS(5)
917         ELSE
918           CBMSTF(6) = RMASS(2)
919           CBMSTF(7) = RMASS(2)
920         ENDIF
921         WRITE(6,'(/
922      +    '' QNREAD: bottom mass read in (original overwritten)'')')
923 C--     Invalidate bottom weight tables since charm mass has changed
924         LWFBOK = .FALSE.
925         LWLBOK = .FALSE.
926 C--     Invalidate alpha_s table
927         LALFOK = .FALSE.
928       ENDIF
929
930       IF(IV.LE.15) THEN
931         WRITE(6,'(/'' QNREAD: file was written with QCDNUM'',A8)')
932      +   RHVERS
933         WRITE(6,'( '' ------> Abandon reading the weight tables'')')
934         RETURN
935       ENDIF
936
937       IF(RWT1OK) THEN
938         READ(LUN,ERR=500) WGTFF1,WGTFG1,WGTGF1,WGTGG1
939         LWT1OK = .TRUE.
940         if(lhasilent.eq.0) 
941      +   WRITE(6,'(/'' QNREAD: LO weight tables read in'')')
942       ENDIF
943
944       IF(RWT2OK) THEN
945         READ(LUN,ERR=500) WGTPP2,WGTPM2,WGTNS2,WGTFF2,WGTFG2,WGTGF2,
946      +                    WGTGG2
947         LWT2OK = .TRUE.
948         if(lhasilent.eq.0) 
949      +   WRITE(6,'(/'' QNREAD: NLO weight tables read in'')')
950       ENDIF
951
952       IF(RWTFOK) THEN
953         READ(LUN,ERR=500) WGTC2Q,WGTC2G,YNTC2Q,WGTCLQ,WGTCLG,WGTC3Q
954         LWTFOK = .TRUE.
955         if(lhasilent.eq.0) 
956      +   WRITE(6,'(/'' QNREAD: F2, FL weight tables read in'')')
957       ENDIF
958
959       IF(RWFCOK.OR.RWLCOK.OR.RWFBOK.OR.RWLBOK) THEN
960         READ(LUN,ERR=500) WH_C0KG,WH_C1KG,WH_C1BKG,
961      +                    WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
962         LWFCOK = RWFCOK
963         LWLCOK = RWLCOK
964         LWFBOK = RWFBOK
965         LWLBOK = RWLBOK
966         if(lhasilent.eq.0) then 
967         IF(RWFCOK)
968      +  WRITE(6,'(/'' QNREAD: F2C weight tables read in'')')
969         IF(RWLCOK)
970      +  WRITE(6,'(/'' QNREAD: FLC weight tables read in'')')
971         IF(RWFBOK)
972      +  WRITE(6,'(/'' QNREAD: F2B weight tables read in'')')
973         IF(RWLBOK)
974      +  WRITE(6,'(/'' QNREAD: FLB weight tables read in'')')
975         endif
976       ENDIF
977
978       RETURN
979
980  500  CONTINUE
981       WRITE(6,'(/'' QNREAD: cannot read file on lun = '',I5,
982      +           '' ---> STOP'')') LUN
983
984       CALL QTRACE('QNREAD ',1)
985
986       STOP
987  
988       END
989
990 CDECK  ID>, QNPRIN.
991 C
992 C     ======================
993       SUBROUTINE QNPRIN(LUN)
994 C     ======================
995  
996 C---  QNPRIN: print default + current setting of QCDNUM parameters.
997 C---  Called by QPRINT
998 C---  Input parameter: LUN. To be opened by user unless LUN = 6.
999
1000       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1001
1002  
1003       LOGICAL
1004      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1005      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1006      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1007      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1008      +LFFCAL,LASOLD
1009
1010       COMMON/QCFLAG/ 
1011      +IORD,IOLAST,
1012      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1013      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1014      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1015      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1016      +LFFCAL(7,30),LASOLD
1017  
1018  
1019       COMMON/QCCONS/
1020      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
1021      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
1022      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
1023      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
1024      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
1025      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
1026  
1027  
1028  
1029       PARAMETER ( MXX = 410 )
1030       PARAMETER ( MQ2 =  120 )
1031
1032 C--   Do not set the following parameter to zero!
1033       PARAMETER ( NDFMAX = 20)
1034
1035  
1036       COMMON/QCGRID/
1037      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
1038      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
1039      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
1040      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
1041  
1042  
1043       COMMON/QCPASS/
1044      +ALPHA0, Q0ALFA, ASLAST, QALAST,
1045      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
1046      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
1047      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
1048      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
1049      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
1050      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
1051      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
1052      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
1053      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
1054
1055       LOGICAL LEVDONE,LE_DONE
1056       COMMON/QCLEVL/
1057      +LEVDONE(MXX,10),LE_DONE(MXX)
1058  
1059
1060       IF(RS2CUT.GE.0.) THEN
1061         RS2C = SQRT(RS2CUT)
1062       ELSE
1063         RS2C = RS2CUT
1064       ENDIF
1065
1066       WRITE(LUN,'(//'' +-------+---+-------+--------------+'',
1067      + ''------------------------------------+'')')
1068       WRITE(LUN,'(  '' | var   |typ| deflt |     value    |'',
1069      + '' description                        |'')')
1070       WRITE(LUN,'(  '' +-------+---+-------+--------------+'',
1071      + ''------------------------------------+'')')
1072       WRITE(LUN,'('' | W1ANA | L |   T   | '',6X,L1,5X,
1073      + '' | Analytical LO weight calculation   |'')') LW1ANA
1074       WRITE(LUN,'('' | W1NUM | L |   F   | '',6X,L1,5X,
1075      + '' | Numerical  LO weight calculation   |'')') LW1NUM
1076       WRITE(LUN,'('' | W2NUM | L |   T   | '',6X,L1,5X,
1077      + '' | Numerical NLO weight calculation   |'')') LW2NUM
1078       WRITE(LUN,'('' | W2STF | L |   T   | '',6X,L1,5X,
1079      + '' | Structure function NLO weights     |'')') LW2STF
1080       WRITE(LUN,'('' | WTF2C | L |   F   | '',6X,L1,5X,
1081      + '' | F2_charm  weight calculation       |'')') LWF2C 
1082       WRITE(LUN,'('' | WTF2B | L |   F   | '',6X,L1,5X,
1083      + '' | F2_bottom weight calculation       |'')') LWF2B 
1084       WRITE(LUN,'('' | WTFLC | L |   F   | '',6X,L1,5X,
1085      + '' | FL_charm  weight calculation       |'')') LWFLC 
1086       WRITE(LUN,'('' | WTFLB | L |   F   | '',6X,L1,5X,
1087      + '' | FL_bottom weight calculation       |'')') LWFLB 
1088       WRITE(LUN,'('' | LIMCK | L |   T   | '',6X,L1,5X,
1089      + '' | Check x, Q2 limits and cuts        |'')') LIMCK 
1090       WRITE(LUN,'('' | CLOWQ | L |   T   | '',6X,L1,5X,
1091      + '' | Heavy F2,FL only for Q2 > 1.5 GeV2 |'')') LCLOWQ
1092       WRITE(LUN,'('' | ORDER | I |   2   | '',6X,I1,5X,
1093      + '' | LO (1) or NLO (2) calculations     |'')') IORD  
1094       WRITE(LUN,'('' | SCAX0 | R |  0.20 | '',E12.5,
1095      + '' | x-grid  scale from log --> linear  |'')') SCAX0
1096       WRITE(LUN,'('' | SCAQ0 | R | +inf  | '',E12.5,
1097      + '' | Q2-grid scale from log --> linear  |'')') SCAQ0
1098       WRITE(LUN,'('' | MCSTF | R |  1.5  | '',E12.5,
1099      + '' | C mass for F2c, FLc (GeV)          |'')') CBMSTF(4)
1100       WRITE(LUN,'('' | MBSTF | R |  5.0  | '',E12.5,
1101      + '' | B mass for F2b, FLb (GeV)          |'')') CBMSTF(6)
1102       WRITE(LUN,'('' | MCALF | R |  1.5  | '',E12.5,
1103      + '' | C mass for alpha_s evolution (GeV) |'')') UDSCBT(4)
1104       WRITE(LUN,'('' | MBALF | R |  5.0  | '',E12.5,
1105      + '' | B mass for alpha_s evolution (GeV) |'')') UDSCBT(5)
1106       WRITE(LUN,'('' | MTALF | R | 188.  | '',E12.5,
1107      + '' | T mass for alpha_s evolution (GeV) |'')') UDSCBT(6)
1108       WRITE(LUN,'('' | ALFAS | R | 0.180 | '',E12.5,
1109      + '' | Value of alpha_s                   |'')') ALPHA0   
1110       WRITE(LUN,'('' | ALFQ0 | R |  50.  | '',E12.5,
1111      + '' | Q2 where alpha_s is given (GeV2)   |'')') Q0ALFA   
1112       WRITE(LUN,'('' | AAAR2 | R |  1.0  | '',E12.5,
1113      + '' | R2 = A*M2 + B (ren. scale)         |'')') AAAR2
1114       WRITE(LUN,'('' | BBBR2 | R |  0.0  | '',E12.5,
1115      + '' | R2 = A*M2 + B (ren. scale)         |'')') BBBR2
1116       WRITE(LUN,'('' | AAM2L | R |  1.0  | '',E12.5,
1117      + '' | M2 = A*Q2 + B (light fact. scale)  |'')') AAM2L
1118       WRITE(LUN,'('' | BBM2L | R |  0.0  | '',E12.5,
1119      + '' | M2 = A*Q2 + B (light fact. scale)  |'')') BBM2L
1120       WRITE(LUN,'('' | AAM2H | R |  1.0  | '',E12.5,
1121      + '' | M2 = A*Q2 + B (heavy fact. scale)  |'')') AAM2H
1122       WRITE(LUN,'('' | BBM2H | R |  0.0  | '',E12.5,
1123      + '' | M2 = A*Q2 + B (heavy fact. scale)  |'')') BBM2H
1124       WRITE(LUN,'(  '' +-------+---+-------+--------------+'',
1125      + ''------------------------------------+'')')
1126       WRITE(LUN,'('' | TCHRM | R | -inf  | '',E12.5,
1127      + '' | Charm threshold  (GeV2)            |'')') THRS34
1128       WRITE(LUN,'('' | TBOTT | R | +inf  | '',E12.5,
1129      + '' | Bottom threshold (GeV2)            |'')') THRS45
1130       WRITE(LUN,'('' | XMINC | R |  0.0  | '',E12.5,
1131      + '' | Xmin cut  (.le.0 = no cut)         |'')') XMICUT
1132       WRITE(LUN,'('' | QMINC | R |  0.0  | '',E12.5,
1133      + '' | Qmin cut  (.le.0 = no cut)         |'')') QMICUT
1134       WRITE(LUN,'('' | QMAXC | R |  0.0  | '',E12.5,
1135      + '' | Qmax cut  (.le.0 = no cut)         |'')') QMACUT
1136       WRITE(LUN,'('' | ROOTS | R |  0.0  | '',E12.5,
1137      + '' | Roots cut (.le.0 = no cut)         |'')') RS2C
1138       WRITE(LUN,'('' | QMINA | R |  0.0  | '',E12.5,
1139      + '' | Lowest Q2 gridpoint above Lambda2  |'')') QMINAS
1140       WRITE(LUN,'(  '' +-------+---+-------+--------------+'',
1141      + ''------------------------------------+'')')
1142       WRITE(LUN,'('' | ASOLD | L |   F   | '',6X,L1,5X,
1143      + '' | Use old (incorrect) a_s evolution  |'')') LASOLD
1144       WRITE(LUN,'('' | BMARK | L |   F   | '',6X,L1,5X,
1145      + '' | Do not use: for tests only         |'')') LBMARK
1146       WRITE(LUN,'('' | FLFAC | R |  0.0  | '',E12.5,
1147      + '' | Hands off : for experts only       |'')') BBM2H
1148       WRITE(LUN,'(  '' +-------+---+-------+--------------+'',
1149      + ''------------------------------------+'')')
1150
1151       RETURN
1152       END
1153
1154 CDECK  ID>, QNVERS.
1155 C
1156 C     ==============================================
1157       SUBROUTINE QNVERS(VERSION,LDOUBLE,NXMAX,NQMAX)
1158 C     ==============================================
1159
1160 C---  QNVERS: return version number, dp flag and max # of gridpoints.
1161 C---  Called by user.
1162 C---  Output variables: VERSION (character*8)
1163 C---                    LDOUBLE (logical)
1164 C---                    NXMAX, NQMAX (integer); set by parameter
1165 C---                    statement in common block QCNXQM.
1166  
1167       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1168
1169       CHARACTER*8 VERSION
1170       LOGICAL     LDOUBLE
1171  
1172       CHARACTER*8 CHVERS,CHDATE
1173       COMMON/QCVERS/ CHVERS,CHDATE
1174  
1175  
1176       LOGICAL
1177      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1178      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1179      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1180      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1181      +LFFCAL,LASOLD
1182
1183       COMMON/QCFLAG/ 
1184      +IORD,IOLAST,
1185      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1186      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1187      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1188      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1189      +LFFCAL(7,30),LASOLD
1190  
1191  
1192       PARAMETER ( MXX = 410 )
1193       PARAMETER ( MQ2 =  120 )
1194
1195 C--   Do not set the following parameter to zero!
1196       PARAMETER ( NDFMAX = 20)
1197
1198
1199       CALL QTRACE('QNVERS ',0)
1200  
1201       VERSION = CHVERS
1202       LDOUBLE = LDOUBL
1203       NXMAX   = MXX-1
1204       NQMAX   = MQ2-1
1205  
1206       RETURN
1207       END
1208  
1209 CDECK  ID>, QPRINT.
1210  
1211 C     ==========================
1212       SUBROUTINE QPRINT(LUN,OPT)
1213 C     ==========================
1214
1215 C---  QPRINT: steering routine to print various QCDNUM info on
1216 C--           logical unit number LUN (to be opened by the user).
1217 C---  Called by user.
1218 C---  Input integer LUN  :  locical unit number.
1219 C---        character OPT: 'A' (All)        print all info.
1220 C---                       'B' (Booklist)   print pdf definitions.
1221 C---                       'P' (Parameters) Parameter/option list.
1222 C---                       'S' (Statistics) # STF function calls.
1223 C---                       'T' (Timelog)    timelog.
1224 C---                       'X' (Xq2grid)    grid,thresholds,cuts.
1225  
1226       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1227  
1228       CHARACTER*(*) OPT
1229       CHARACTER*1   OPT1
1230  
1231  
1232       LOGICAL LTIME  
1233       REAL T_START,T_END,T_SPENT
1234       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
1235      +E_CALLS(10),LTIME
1236       COMMON/QCFCNT/IFCNT(-1:1,5)
1237
1238  
1239       PARAMETER ( MXX = 410 )
1240       PARAMETER ( MQ2 =  120 )
1241
1242 C--   Do not set the following parameter to zero!
1243       PARAMETER ( NDFMAX = 20)
1244
1245  
1246       COMMON/QCGRID/
1247      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
1248      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
1249      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
1250      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
1251  
1252  
1253       REAL
1254      +WGTFF1,WGTFG1,
1255      +WGTGF1,WGTGG1,
1256      +WGTPP2,WGTPM2,WGTNS2,
1257      +WGTFF2,WGTFG2,
1258      +WGTGF2,WGTGG2,
1259      +WGTC2Q,WGTC2G,YNTC2Q,
1260      +WGTCLQ,WGTCLG,WGTC3Q
1261
1262       COMMON/QCWEIT/
1263      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
1264      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
1265      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
1266      +WGTNS2(MXX*(MXX+1)/2,3:5),
1267      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
1268      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
1269      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
1270      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
1271      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
1272
1273       COMMON/QCWADR/ IWADR(MXX,MXX)
1274
1275
1276       CALL QTRACE('QPRINT ',0)
1277  
1278       IF(LENOCC_LHA(OPT).LT.1) GOTO 500
1279       OPT1 = OPT(1:1)
1280       CALL CLTOU_LHA(OPT1)
1281  
1282       IF(OPT1.EQ.'T') THEN !
1283         CALL QPTIME(LUN)
1284       ELSEIF(OPT1.EQ.'P') THEN
1285         CALL QNPRIN(LUN)
1286       ELSEIF(OPT1.EQ.'B') THEN
1287         CALL QNLIST(LUN)
1288       ELSEIF(OPT1.EQ.'S') THEN
1289         CALL QNSTAT(LUN)
1290       ELSEIF(OPT1.EQ.'X') THEN
1291         CALL QPGRID(LUN)
1292       ELSEIF(OPT1.EQ.'A') THEN
1293         CALL QNPRIN(LUN)
1294         CALL QNLIST(LUN)
1295         CALL QPGRID(LUN)
1296         CALL QNSTAT(LUN)
1297         CALL QPTIME(LUN)
1298       ELSE
1299         GOTO 500
1300       ENDIF
1301
1302       RETURN
1303
1304  500  CONTINUE
1305
1306       WRITE(6,'(/'' ------------------------------------'')')
1307       WRITE(6,'( '' QCDNUM error in s/r QPRINT ---> STOP'')')
1308       WRITE(6,'( '' ------------------------------------'')')
1309       WRITE(6,'( '' Input LUN :'',I5   )') LUN
1310       WRITE(6,'( ''       OPT :'',A    )') OPT
1311       WRITE(6,'(/'' Option should be A, B, P, S, T or X'')')
1312
1313       STOP
1314
1315       END
1316  
1317 CDECK  ID>, QNTIME.
1318  
1319 C     ======================
1320       SUBROUTINE QNTIME(OPT)
1321 C     ======================
1322
1323 C---  QNTIME: start/halt/continue the timelog.
1324 C---  Called by user and by QPTIME.
1325 C---  Input variable: 'Start'    initialise and start the timelog.
1326 C---                  'Hold'     stop logging.     
1327 C---                  'Cont'     continue logging.
1328  
1329       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1330  
1331       CHARACTER*(*) OPT
1332       CHARACTER*1   OPT1
1333  
1334  
1335       LOGICAL LTIME  
1336       REAL T_START,T_END,T_SPENT
1337       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
1338      +E_CALLS(10),LTIME
1339       COMMON/QCFCNT/IFCNT(-1:1,5)
1340
1341
1342       CALL QTRACE('QNTIME ',0)
1343  
1344       IF(LENOCC_LHA(OPT).LT.1) GOTO 500
1345       OPT1 = OPT(1:1)
1346       CALL CLTOU_LHA(OPT1)
1347  
1348       IF(OPT1.EQ.'S') THEN
1349  
1350         DO I = 1,10
1351           T_SPENT(I) = 0.
1352           E_CALLS(I) = 0.
1353           N_CALLS(I) = 0
1354         ENDDO
1355         LTIME = .TRUE.
1356  
1357         N_CALLS(1) = N_CALLS(1)+1
1358         CALL TIMEX_LHA(T_START(1))
1359  
1360       ELSEIF(OPT1.EQ.'H') THEN
1361
1362         LTIME = .FALSE.
1363         CALL TIMEX_LHA(T_END(1))
1364         T_SPENT(1) = T_SPENT(1)+T_END(1)-T_START(1)
1365         T_START(1) = T_END(1)
1366
1367       ELSEIF(OPT1.EQ.'C') THEN
1368
1369         IF(.NOT.LTIME) THEN
1370           LTIME = .TRUE.
1371           N_CALLS(1) = N_CALLS(1)+1
1372           CALL TIMEX_LHA(T_START(1))
1373         ENDIF
1374
1375       ELSE
1376  
1377         GOTO 500
1378  
1379       ENDIF
1380  
1381       RETURN
1382
1383  500  CONTINUE
1384
1385       WRITE(6,'(/'' ------------------------------------'')')
1386       WRITE(6,'( '' QCDNUM error in s/r QNTIME ---> STOP'')')
1387       WRITE(6,'( '' ------------------------------------'')')
1388       WRITE(6,'( '' Input OPT :'',A    )') OPT
1389       WRITE(6,'(/'' Option should be S, H or C         '')')
1390
1391       CALL QTRACE('QNTIME ',1)
1392
1393       STOP
1394  
1395       END
1396  
1397 CDECK  ID>, QPTIME.
1398  
1399 C     ======================
1400       SUBROUTINE QPTIME(LUN)
1401 C     ======================
1402
1403 C---  QPTIME: start/print the timelog.
1404 C---  Called by QPRINT.
1405 C---  Input variable: LUN logical unit number 
1406  
1407       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1408  
1409  
1410       LOGICAL LTIME  
1411       REAL T_START,T_END,T_SPENT
1412       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
1413      +E_CALLS(10),LTIME
1414       COMMON/QCFCNT/IFCNT(-1:1,5)
1415
1416  
1417       PARAMETER ( MXX = 410 )
1418       PARAMETER ( MQ2 =  120 )
1419
1420 C--   Do not set the following parameter to zero!
1421       PARAMETER ( NDFMAX = 20)
1422
1423  
1424       COMMON/QCGRID/
1425      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
1426      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
1427      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
1428      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
1429  
1430  
1431       REAL
1432      +WGTFF1,WGTFG1,
1433      +WGTGF1,WGTGG1,
1434      +WGTPP2,WGTPM2,WGTNS2,
1435      +WGTFF2,WGTFG2,
1436      +WGTGF2,WGTGG2,
1437      +WGTC2Q,WGTC2G,YNTC2Q,
1438      +WGTCLQ,WGTCLG,WGTC3Q
1439
1440       COMMON/QCWEIT/
1441      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
1442      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
1443      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
1444      +WGTNS2(MXX*(MXX+1)/2,3:5),
1445      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
1446      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
1447      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
1448      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
1449      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
1450
1451       COMMON/QCWADR/ IWADR(MXX,MXX)
1452
1453  
1454       CALL QNTIME('H')    
1455
1456       N_TOT      = N_CALLS(3)+N_CALLS(4)+N_CALLS(5)
1457       E_TOT      = E_CALLS(3)+E_CALLS(4)+E_CALLS(5)
1458       T_TOT      = T_SPENT(3)+T_SPENT(4)+T_SPENT(5)
1459       T_REST     = T_SPENT(1)-T_TOT-T_SPENT(2)-T_SPENT(6)
1460       DUMMY      = 1.
1461       F_FAST     = 0.
1462       DO J = 1,5
1463         F_FAST   = F_FAST+IFCNT(1,J)
1464       ENDDO
1465       WRITE(LUN,
1466      +  '(//'' -------------------------------------------------'')')
1467       WRITE(LUN,
1468      +  '(  '' Routine     # calls   # evols   CPU sec  CPU/evol'')')
1469       WRITE(LUN,
1470      +  '(  '' -------------------------------------------------'')')
1471       WRITE(LUN,
1472      + '('' EVOLNM   '',I10,2F10.1,F10.2)') N_CALLS(3),
1473      +      E_CALLS(3),T_SPENT(3),T_SPENT(3)/MAX(E_CALLS(3),DUMMY)
1474       WRITE(LUN,
1475      + '('' EVOLNP   '',I10,2F10.1,F10.2)') N_CALLS(4),
1476      +      E_CALLS(4),T_SPENT(4),T_SPENT(4)/MAX(E_CALLS(4),DUMMY)
1477       WRITE(LUN,
1478      + '('' EVOLSG   '',I10,2F10.1,F10.2)') N_CALLS(5),
1479      +      E_CALLS(5),T_SPENT(5),T_SPENT(5)/MAX(E_CALLS(5),DUMMY)
1480       WRITE(LUN,
1481      +  '(  '' -------------------------------------------------'')')
1482       WRITE(LUN,
1483      + '('' AP total '',I10,2F10.1,F10.2)') N_TOT,
1484      +      E_TOT,T_TOT,T_TOT/MAX(E_TOT,DUMMY)
1485       WRITE(LUN,'('' '')')
1486       WRITE(LUN,
1487      + '('' STFAST   '',I10,   2F10.1)') N_CALLS(6),F_FAST,T_SPENT(6)
1488       WRITE(LUN,
1489      + '('' QNFILW   '',I10,10X,F10.1)') N_CALLS(2),T_SPENT(2)
1490       WRITE(LUN,
1491      + '('' Other    '',10X,10X,F10.1)') T_REST
1492       WRITE(LUN,
1493      +  '(  '' -------------------------------------------------'')')
1494       WRITE(LUN,
1495      + '('' Total    '',10X,10X,F10.1)') T_SPENT(1)
1496       WRITE(LUN,
1497      +  '(  '' -------------------------------------------------'')')
1498
1499
1500       RETURN
1501       END
1502  
1503 CDECK  ID>, QNSTAT.
1504  
1505 C     ======================
1506       SUBROUTINE QNSTAT(LUN)
1507 C     ======================
1508
1509 C---  QNSTAT: print number of structure function calculations.
1510 C---  Called by user.
1511 C---  Input parameter: LUN to be opened by user unless LUN = 6.
1512  
1513       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1514  
1515  
1516       LOGICAL LTIME  
1517       REAL T_START,T_END,T_SPENT
1518       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
1519      +E_CALLS(10),LTIME
1520       COMMON/QCFCNT/IFCNT(-1:1,5)
1521
1522
1523       DIMENSION ITOT(5)
1524        
1525        DO J = 1,5
1526         ITOT(J) = 0
1527         DO I = -1,1
1528           ITOT(J) = ITOT(J)+IFCNT(I,J)
1529         ENDDO
1530       ENDDO
1531  
1532       WRITE(LUN,'(//'' ------------------------------'',
1533      +   ''--------------------------------------------'')')
1534       WRITE(LUN,'(  '' Structure function calls '',
1535      +   ''           F2       FL      xF3'',
1536      +                ''      F2h      FLh'')')
1537       WRITE(LUN,'(  '' ------------------------------'',
1538      +   ''--------------------------------------------'')')
1539       WRITE(LUN,
1540      + '('' Slow calculation             '',5I9)') (IFCNT( 0,J),J=1,5)
1541       WRITE(LUN,
1542      + '('' Fast calculation             '',5I9)') (IFCNT( 1,J),J=1,5)
1543       WRITE(LUN,
1544      + '('' Outside grid or cuts         '',5I9)') (IFCNT(-1,J),J=1,5)
1545       WRITE(LUN,'(  '' ------------------------------'',
1546      +   ''--------------------------------------------'')')
1547       WRITE(LUN,
1548      + '('' Total                        '',5I9)') (   ITOT(J),J=1,5)
1549       WRITE(LUN,'(  '' ------------------------------'',
1550      +   ''--------------------------------------------'')')
1551
1552       RETURN
1553       END
1554  
1555 CDECK  ID>, QNIVAL.
1556  
1557 C     ================================
1558       SUBROUTINE QNIVAL(OPT,FLAG,IVAL)
1559 C     ================================
1560
1561 C---  QNIVAL: set/get integer variable.
1562 C---  Called by user or internally by s/r QNISET and QNIGET.
1563 C---  Input parameters: 'OPT'   = 'Set' or 'Get'.
1564 C---                    'FLAG'  = variable name to set or get.
1565 C---                    'IVAL' (integer) input or output variable.
1566  
1567       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1568  
1569       CHARACTER*(*) OPT
1570       CHARACTER*1   OPT1
1571       CHARACTER*(*) FLAG
1572       CHARACTER*5   FLAG5
1573  
1574  
1575       COMMON/QCCONS/
1576      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
1577      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
1578      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
1579      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
1580      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
1581      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
1582  
1583  
1584  
1585       LOGICAL
1586      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1587      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1588      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1589      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1590      +LFFCAL,LASOLD
1591
1592       COMMON/QCFLAG/ 
1593      +IORD,IOLAST,
1594      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1595      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1596      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1597      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1598      +LFFCAL(7,30),LASOLD
1599  
1600  
1601       PARAMETER ( MXX = 410 )
1602       PARAMETER ( MQ2 =  120 )
1603
1604 C--   Do not set the following parameter to zero!
1605       PARAMETER ( NDFMAX = 20)
1606
1607  
1608       COMMON/QCGRID/
1609      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
1610      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
1611      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
1612      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
1613  
1614  
1615       COMMON/QCPASS/
1616      +ALPHA0, Q0ALFA, ASLAST, QALAST,
1617      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
1618      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
1619      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
1620      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
1621      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
1622      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
1623      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
1624      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
1625      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
1626
1627       LOGICAL LEVDONE,LE_DONE
1628       COMMON/QCLEVL/
1629      +LEVDONE(MXX,10),LE_DONE(MXX)
1630  
1631  
1632       IF(LENOCC_LHA(OPT).LT.1)  THEN
1633         IERR = 1
1634         GOTO 500
1635       ENDIF
1636       IF(LENOCC_LHA(FLAG).LT.5) THEN
1637         IERR = 2
1638         GOTO 500
1639       ENDIF
1640       OPT1   = OPT(1:1)
1641       FLAG5  = FLAG(1:5)
1642       CALL CLTOU_LHA(OPT1)
1643       CALL CLTOU_LHA(FLAG5)
1644  
1645 C     ----------------------
1646       IF(OPT1.EQ.'S') THEN !
1647 C     ----------------------
1648  
1649         IF    (FLAG5.EQ.'ORDER') THEN
1650           IF(IVAL.LE.0.OR.IVAL.GE.3) THEN
1651             IERR = 3
1652             GOTO 500
1653           ENDIF
1654           IORD   = IVAL
1655 C--       Invalidate all evolutions      
1656           CALL QNFALS(LEVDONE,MXX*10)
1657           LALFOK = .FALSE.
1658         ELSE
1659           IERR = 2
1660           GOTO 500
1661         ENDIF
1662  
1663 C     --------------------------
1664       ELSEIF(OPT1.EQ.'G') THEN !
1665 C     --------------------------
1666  
1667         IF    (FLAG5.EQ.'ORDER') THEN
1668           IVAL = IORD
1669         ELSE
1670           IERR = 2
1671           GOTO 500
1672         ENDIF
1673  
1674 C     ------
1675       ELSE !
1676 C     ------
1677  
1678         IERR = 1
1679         GOTO 500
1680  
1681 C     -------
1682       ENDIF !
1683 C     -------
1684  
1685       RETURN
1686
1687  500  CONTINUE
1688
1689       WRITE(6,'(/'' ------------------------------------'')')
1690       WRITE(6,'( '' QCDNUM error in s/r QNIVAL ---> STOP'')')
1691       WRITE(6,'( '' ------------------------------------'')')
1692       WRITE(6,'( '' Input OPT : '',A    )') OPT
1693       WRITE(6,'( ''       VAR : '',A    )') FLAG
1694       WRITE(6,'( ''       VAL : '',I10  )') IVAL
1695       IF(IERR.EQ.1) THEN
1696         WRITE(6,'(/'' OPT should be either SET or GET '')')
1697       ELSEIF(IERR.EQ.2) THEN
1698         WRITE(6,'(/'' Variable VAR not found'')')
1699       ELSEIF(IERR.EQ.3) THEN
1700         WRITE(6,'(/'' IVAL out of allowed range'')')
1701       ENDIF
1702
1703       CALL QTRACE('QNIVAL ',1)
1704
1705       STOP
1706
1707       END
1708
1709 CDECK  ID>, QNISET.
1710  
1711 C     ============================
1712       SUBROUTINE QNISET(FLAG,IVAL)
1713 C     ============================
1714  
1715       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1716  
1717       CHARACTER*(*) FLAG
1718
1719       CALL QTRACE('QNISET ',0)
1720
1721       CALL QNIVAL('SET',FLAG,IVAL)
1722
1723       RETURN
1724       END
1725
1726 CDECK  ID>, QNIGET.
1727  
1728 C     ============================
1729       SUBROUTINE QNIGET(FLAG,IVAL)
1730 C     ============================
1731  
1732       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1733  
1734       CHARACTER*(*) FLAG
1735
1736       CALL QTRACE('QNIGET ',0)
1737
1738       CALL QNIVAL('GET',FLAG,IVAL)
1739
1740       RETURN
1741       END
1742  
1743 CDECK  ID>, QNRVAL.
1744  
1745 C     ===============================
1746       SUBROUTINE QNRVAL(OPT,FLAG,VAL)
1747 C     ===============================
1748
1749 C---  QNRVAL: set/get floating point variable.
1750 C---  Called by user or internally by s/r QNRSET and QNRGET.
1751 C---  Input parameters: 'OPT'   = 'Set' or 'Get'.
1752 C---                    'FLAG'  = variable name to set or get.
1753 C---                    'VAL' (real or d.p.) input or output variable.
1754  
1755       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
1756  
1757       CHARACTER*(*) OPT
1758       CHARACTER*1   OPT1
1759       CHARACTER*(*) FLAG
1760       CHARACTER*5   FLAG5
1761  
1762  
1763       COMMON/QCCONS/
1764      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
1765      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
1766      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
1767      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
1768      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
1769      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
1770  
1771  
1772  
1773       LOGICAL
1774      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1775      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1776      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1777      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1778      +LFFCAL,LASOLD
1779
1780       COMMON/QCFLAG/ 
1781      +IORD,IOLAST,
1782      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
1783      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
1784      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
1785      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
1786      +LFFCAL(7,30),LASOLD
1787  
1788  
1789       PARAMETER ( MXX = 410 )
1790       PARAMETER ( MQ2 =  120 )
1791
1792 C--   Do not set the following parameter to zero!
1793       PARAMETER ( NDFMAX = 20)
1794
1795  
1796       COMMON/QCGRID/
1797      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
1798      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
1799      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
1800      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
1801  
1802  
1803       COMMON/QCPASS/
1804      +ALPHA0, Q0ALFA, ASLAST, QALAST,
1805      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
1806      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
1807      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
1808      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
1809      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
1810      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
1811      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
1812      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
1813      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
1814
1815       LOGICAL LEVDONE,LE_DONE
1816       COMMON/QCLEVL/
1817      +LEVDONE(MXX,10),LE_DONE(MXX)
1818  
1819  
1820       IF(LENOCC_LHA(OPT).LT.1)  THEN
1821         IERR = 1
1822         GOTO 500
1823       ENDIF
1824       IF(LENOCC_LHA(FLAG).LT.5) THEN
1825         IERR = 2
1826         GOTO 500
1827       ENDIF
1828       OPT1   = OPT(1:1)
1829       FLAG5  = FLAG(1:5)
1830       CALL CLTOU_LHA(OPT1)
1831       CALL CLTOU_LHA(FLAG5)
1832  
1833 C     ----------------------
1834       IF(OPT1.EQ.'S') THEN !
1835 C     ----------------------
1836  
1837         IF    (FLAG5.EQ.'AAM2H'.OR.FLAG5.EQ.'AATQ2') THEN
1838           IF(VAL.LE.0.) THEN
1839             IERR = 3
1840             GOTO 500
1841           ENDIF
1842           AAM2H  = VAL
1843           DO I = 1,30
1844             LFFCAL(4,I) = .FALSE.
1845             LFFCAL(5,I) = .FALSE.
1846             LFFCAL(6,I) = .FALSE.
1847             LFFCAL(7,I) = .FALSE.
1848           ENDDO
1849         ELSEIF(FLAG5.EQ.'BBM2H'.OR.FLAG5.EQ.'PLUSB') THEN
1850           BBM2H  = VAL
1851           DO I = 1,30
1852             LFFCAL(4,I) = .FALSE.
1853             LFFCAL(5,I) = .FALSE.
1854             LFFCAL(6,I) = .FALSE.
1855             LFFCAL(7,I) = .FALSE.
1856           ENDDO
1857         ELSEIF(FLAG5.EQ.'AAM2L') THEN
1858           IF(VAL.LE.0.) THEN
1859             IERR = 3
1860             GOTO 500
1861           ENDIF
1862           AAM2L  = VAL
1863           DO I = 1,30
1864             LFFCAL(1,I) = .FALSE.
1865             LFFCAL(2,I) = .FALSE.
1866             LFFCAL(3,I) = .FALSE.
1867           ENDDO
1868         ELSEIF(FLAG5.EQ.'BBM2L') THEN
1869           BBM2L  = VAL
1870           DO I = 1,30
1871             LFFCAL(1,I) = .FALSE.
1872             LFFCAL(2,I) = .FALSE.
1873             LFFCAL(3,I) = .FALSE.
1874           ENDDO
1875         ELSEIF(FLAG5.EQ.'AAAR2') THEN
1876           AAAR2  = VAL
1877 C--       Invalidate all evolutions      
1878           CALL QNFALS(LEVDONE,MXX*10)
1879           LALFOK = .FALSE.
1880           DO I = 1,30
1881             DO J = 1,7
1882               LFFCAL(J,I)  = .FALSE.
1883             ENDDO
1884           ENDDO
1885         ELSEIF(FLAG5.EQ.'BBBR2') THEN
1886           BBBR2  = VAL
1887 C--       Invalidate all evolutions      
1888           CALL QNFALS(LEVDONE,MXX*10)
1889           LALFOK = .FALSE.
1890           DO I = 1,30
1891             DO J = 1,7
1892               LFFCAL(J,I)  = .FALSE.
1893             ENDDO
1894           ENDDO
1895         ELSEIF(FLAG5.EQ.'FLFAC') THEN
1896           FL_FAC = VAL
1897           DO I = 1,30
1898             LFFCAL(2,I)  = .FALSE.
1899           ENDDO
1900         ELSEIF(FLAG5.EQ.'SCAX0') THEN
1901           IF(VAL.LE.0.) THEN
1902             IERR = 3
1903             GOTO 500
1904           ENDIF
1905           SCAX0     = VAL
1906         ELSEIF(FLAG5.EQ.'SCAQ0') THEN
1907           IF(VAL.LE.0.) THEN
1908             IERR = 3
1909             GOTO 500
1910           ENDIF
1911           SCAQ0     = VAL
1912         ELSE
1913           IF(VAL.LE.0.) THEN
1914             IERR = 3
1915             GOTO 500
1916           ENDIF
1917 C--       Invalidate all evolutions      
1918           CALL QNFALS(LEVDONE,MXX*10)
1919           LALFOK = .FALSE.   !force alpha_s to be recalculated
1920           IF    (FLAG5.EQ.'UMASS') THEN
1921             UDSCBT(1) = VAL
1922           ELSEIF(FLAG5.EQ.'DMASS') THEN
1923             UDSCBT(2) = VAL
1924           ELSEIF(FLAG5.EQ.'SMASS') THEN
1925             UDSCBT(3) = VAL
1926           ELSEIF(FLAG5.EQ.'CMASS') THEN
1927             UDSCBT(4) = VAL
1928             CBMSTF(4) = VAL
1929             CBMSTF(5) = VAL
1930             LWFCOK = .FALSE.  !invalidate F2C weight tables
1931             LWLCOK = .FALSE.  !invalidate FLC weight tables
1932           ELSEIF(FLAG5.EQ.'MCSTF') THEN
1933             CBMSTF(4) = VAL
1934             CBMSTF(5) = VAL
1935             LWFCOK = .FALSE.
1936             LWLCOK = .FALSE.
1937           ELSEIF(FLAG5.EQ.'MCALF') THEN
1938             UDSCBT(4) = VAL
1939           ELSEIF(FLAG5.EQ.'BMASS') THEN
1940             UDSCBT(5) = VAL
1941             CBMSTF(6) = VAL
1942             CBMSTF(7) = VAL
1943             LWFBOK = .FALSE.  !invalidate F2B weight tables
1944             LWLBOK = .FALSE.  !invalidate FLB weight tables
1945           ELSEIF(FLAG5.EQ.'MBSTF') THEN
1946             CBMSTF(6) = VAL
1947             CBMSTF(7) = VAL
1948             LWFBOK = .FALSE.
1949             LWLBOK = .FALSE.
1950           ELSEIF(FLAG5.EQ.'MBALF') THEN
1951             UDSCBT(5) = VAL
1952           ELSEIF(FLAG5.EQ.'MTALF') THEN
1953             UDSCBT(6) = VAL
1954           ELSEIF(FLAG5.EQ.'TMASS') THEN
1955             UDSCBT(6) = VAL
1956           ELSEIF(FLAG5.EQ.'ALFAS') THEN
1957             ALPHA0    = VAL
1958           ELSEIF(FLAG5.EQ.'ALFQ0') THEN
1959             Q0ALFA    = VAL
1960           ELSE
1961             IERR = 2
1962             GOTO 500
1963           ENDIF
1964         ENDIF
1965  
1966 C     --------------------------
1967       ELSEIF(OPT1.EQ.'G') THEN !
1968 C     --------------------------
1969  
1970         IF    (FLAG5.EQ.'SCAX0') THEN
1971           VAL = SCAX0
1972         ELSEIF(FLAG5.EQ.'SCAQ0') THEN
1973           VAL = SCAQ0
1974         ELSEIF(FLAG5.EQ.'AAM2H'.OR.FLAG5.EQ.'AATQ2') THEN
1975           VAL = AAM2H
1976         ELSEIF(FLAG5.EQ.'BBM2H'.OR.FLAG5.EQ.'PLUSB') THEN
1977           VAL = BBM2H
1978         ELSEIF(FLAG5.EQ.'AAM2L') THEN
1979           VAL = AAM2L
1980         ELSEIF(FLAG5.EQ.'BBM2L') THEN
1981           VAL = BBM2L
1982         ELSEIF(FLAG5.EQ.'AAAR2') THEN
1983           VAL = AAAR2
1984         ELSEIF(FLAG5.EQ.'BBBR2') THEN
1985           VAL = BBBR2
1986         ELSEIF(FLAG5.EQ.'FLFAC') THEN
1987           VAL = FL_FAC
1988         ELSEIF(FLAG5.EQ.'UMASS') THEN
1989           VAL = UDSCBT(1)
1990         ELSEIF(FLAG5.EQ.'DMASS') THEN
1991           VAL = UDSCBT(2)
1992         ELSEIF(FLAG5.EQ.'SMASS') THEN
1993           VAL = UDSCBT(3)
1994         ELSEIF(FLAG5.EQ.'CMASS') THEN
1995           VAL = UDSCBT(4)
1996         ELSEIF(FLAG5.EQ.'BMASS') THEN
1997           VAL = UDSCBT(5)
1998         ELSEIF(FLAG5.EQ.'TMASS') THEN
1999           VAL = UDSCBT(6)
2000         ELSEIF(FLAG5.EQ.'MCSTF') THEN
2001           VAL = CBMSTF(4)
2002         ELSEIF(FLAG5.EQ.'MBSTF') THEN
2003           VAL = CBMSTF(6)
2004         ELSEIF(FLAG5.EQ.'MCALF') THEN
2005           VAL = UDSCBT(4)
2006         ELSEIF(FLAG5.EQ.'MBALF') THEN
2007           VAL = UDSCBT(5)
2008         ELSEIF(FLAG5.EQ.'MTALF') THEN
2009           VAL = UDSCBT(6)
2010         ELSEIF(FLAG5.EQ.'ALFAS') THEN
2011           VAL = ALPHA0
2012         ELSEIF(FLAG5.EQ.'ALFQ0') THEN
2013           VAL = Q0ALFA
2014         ELSEIF(FLAG5.EQ.'TCHRM') THEN
2015           VAL = THRS34
2016         ELSEIF(FLAG5.EQ.'TBOTT') THEN
2017           VAL = THRS45
2018         ELSEIF(FLAG5.EQ.'XMINC') THEN
2019           VAL = XMICUT
2020         ELSEIF(FLAG5.EQ.'QMINC') THEN
2021           VAL = QMICUT
2022         ELSEIF(FLAG5.EQ.'QMAXC') THEN
2023           VAL = QMACUT
2024         ELSEIF(FLAG5.EQ.'ROOTS') THEN
2025           IF(RS2CUT.GE.0.) THEN
2026             VAL = SQRT(RS2CUT)
2027           ELSE
2028             VAL = RS2CUT
2029           ENDIF
2030         ELSEIF(FLAG5.EQ.'QMINA') THEN
2031           VAL = QMINAS
2032         ELSE
2033           IERR = 2
2034           GOTO 500
2035         ENDIF
2036  
2037 C     ------
2038       ELSE !
2039 C     ------
2040  
2041         IERR = 1
2042         GOTO 500
2043  
2044 C     -------   
2045       ENDIF !
2046 C     -------   
2047  
2048       RETURN
2049
2050  500  CONTINUE
2051
2052       WRITE(6,'(/'' ------------------------------------'')')
2053       WRITE(6,'( '' QCDNUM error in s/r QNRVAL ---> STOP'')')
2054       WRITE(6,'( '' ------------------------------------'')')
2055       WRITE(6,'( '' Input OPT : '',A    )') OPT
2056       WRITE(6,'( ''       VAR : '',A    )') FLAG
2057       WRITE(6,'( ''       VAL : '',E12.5)') RVAL
2058       IF(IERR.EQ.1) THEN
2059         WRITE(6,'(/'' OPT should be either SET or GET '')')
2060       ELSEIF(IERR.EQ.2) THEN
2061         WRITE(6,'(/'' Variable VAR not found'')')
2062       ELSEIF(IERR.EQ.3) THEN
2063         WRITE(6,'(/'' VAL should be .gt. 0  '')')
2064       ENDIF
2065
2066       CALL QTRACE('QNRVAL ',1)
2067
2068       STOP
2069
2070       END
2071
2072 CDECK  ID>, QNRSET.
2073  
2074 C     ============================
2075       SUBROUTINE QNRSET(FLAG,RVAL)
2076 C     ============================
2077  
2078       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2079  
2080       CHARACTER*(*) FLAG
2081
2082       CALL QTRACE('QNRSET ',0)
2083
2084       CALL QNRVAL('SET',FLAG,RVAL)
2085
2086       RETURN
2087       END
2088
2089 CDECK  ID>, QNRGET.
2090  
2091 C     ============================
2092       SUBROUTINE QNRGET(FLAG,RVAL)
2093 C     ============================
2094  
2095       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2096  
2097       CHARACTER*(*) FLAG
2098
2099       CALL QTRACE('QNRGET ',0)
2100
2101       CALL QNRVAL('GET',FLAG,RVAL)
2102
2103       RETURN
2104       END
2105  
2106 CDECK  ID>, QNLVAL.
2107  
2108 C     ================================
2109       SUBROUTINE QNLVAL(OPT,FLAG,LVAL)
2110 C     ================================
2111
2112 C---  QNLVAL: set/get logical variable.
2113 C---  Called by user or internally by s/r QNLSET and QNLGET.
2114 C---  Input parameters: 'OPT'   = 'Set' or 'Get'.
2115 C---                    'FLAG'  = variable name to set or get.
2116 C---                    'VAL' (logical) input or output variable.
2117  
2118       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2119  
2120       CHARACTER*(*) OPT
2121       CHARACTER*1   OPT1
2122       CHARACTER*(*) FLAG
2123       CHARACTER*5   FLAG5
2124       LOGICAL       LVAL
2125  
2126  
2127       COMMON/QCCONS/
2128      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
2129      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
2130      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
2131      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
2132      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
2133      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
2134  
2135  
2136  
2137       LOGICAL
2138      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2139      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2140      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2141      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2142      +LFFCAL,LASOLD
2143
2144       COMMON/QCFLAG/ 
2145      +IORD,IOLAST,
2146      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2147      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2148      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2149      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2150      +LFFCAL(7,30),LASOLD
2151  
2152  
2153       IF(LENOCC_LHA(OPT).LT.1)  THEN
2154         IERR = 1
2155         GOTO 500
2156       ENDIF
2157       IF(LENOCC_LHA(FLAG).LT.5) THEN
2158         IERR = 2
2159         GOTO 500
2160       ENDIF
2161       OPT1   = OPT(1:1)
2162       FLAG5  = FLAG(1:5)
2163       CALL CLTOU_LHA(OPT1)
2164       CALL CLTOU_LHA(FLAG5)
2165  
2166 C     ----------------------
2167       IF(OPT1.EQ.'S') THEN !
2168 C     ----------------------
2169  
2170         IF    (FLAG5.EQ.'W1ANA' ) THEN
2171           LW1ANA = LVAL
2172           IF(LW1ANA) LW1NUM = .FALSE.
2173         ELSEIF(FLAG5.EQ.'W1NUM' ) THEN
2174           LW1NUM = LVAL
2175           IF(LW1NUM) LW1ANA = .FALSE.
2176         ELSEIF(FLAG5.EQ.'W2NUM' ) THEN
2177           LW2NUM = LVAL
2178         ELSEIF(FLAG5.EQ.'W2STF' ) THEN
2179           LW2STF = LVAL
2180         ELSEIF(FLAG5.EQ.'WTF2C' ) THEN
2181           LWF2C  = LVAL
2182         ELSEIF(FLAG5.EQ.'WTFLC' ) THEN
2183           LWFLC  = LVAL
2184         ELSEIF(FLAG5.EQ.'WTF2B' ) THEN
2185           LWF2B  = LVAL
2186         ELSEIF(FLAG5.EQ.'WTFLB' ) THEN
2187           LWFLB  = LVAL
2188         ELSEIF(FLAG5.EQ.'BMARK' ) THEN
2189           LBMARK = LVAL
2190           LALFOK = .FALSE.
2191         ELSEIF(FLAG5.EQ.'LIMCK' ) THEN
2192           LIMCK  = LVAL
2193         ELSEIF(FLAG5.EQ.'CLOWQ' ) THEN
2194           LCLOWQ = LVAL
2195         ELSEIF(FLAG5.EQ.'ASOLD' ) THEN
2196           LASOLD = LVAL
2197           LALFOK = .FALSE.
2198         ELSE
2199           IERR = 2
2200           GOTO 500
2201         ENDIF
2202  
2203 C     --------------------------
2204       ELSEIF(OPT1.EQ.'G') THEN !
2205 C     --------------------------
2206  
2207         IF    (FLAG5.EQ.'W1ANA' ) THEN
2208           LVAL = LW1ANA
2209         ELSEIF(FLAG5.EQ.'W1NUM' ) THEN
2210           LVAL = LW1NUM
2211         ELSEIF(FLAG5.EQ.'W2NUM' ) THEN
2212           LVAL = LW2NUM
2213         ELSEIF(FLAG5.EQ.'W2STF' ) THEN
2214           LVAL = LW2STF
2215         ELSEIF(FLAG5.EQ.'WTF2C' ) THEN
2216           LVAL = LWF2C
2217         ELSEIF(FLAG5.EQ.'WTFLC' ) THEN
2218           LVAL = LWFLC
2219         ELSEIF(FLAG5.EQ.'WTF2B' ) THEN
2220           LVAL = LWF2B
2221         ELSEIF(FLAG5.EQ.'WTFLB' ) THEN
2222           LVAL = LWFLB
2223         ELSEIF(FLAG5.EQ.'BMARK' ) THEN
2224           LVAL = LBMARK
2225         ELSEIF(FLAG5.EQ.'LIMCK' ) THEN
2226           LVAL = LIMCK 
2227         ELSEIF(FLAG5.EQ.'CLOWQ' ) THEN
2228           LVAL = LCLOWQ 
2229         ELSEIF(FLAG5.EQ.'ASOLD' ) THEN
2230           LVAL = LASOLD 
2231         ELSE
2232           IERR = 2
2233           GOTO 500
2234         ENDIF
2235  
2236 C     ------
2237       ELSE !
2238 C     ------
2239  
2240         IERR = 1
2241         GOTO 500
2242  
2243 C     -------   
2244       ENDIF !
2245 C     -------   
2246  
2247       RETURN
2248
2249  500  CONTINUE
2250
2251       WRITE(6,'(/'' ------------------------------------'')')
2252       WRITE(6,'( '' QCDNUM error in s/r QNLVAL ---> STOP'')')
2253       WRITE(6,'( '' ------------------------------------'')')
2254       WRITE(6,'( '' Input OPT : '',A    )') OPT
2255       WRITE(6,'( ''       VAR : '',A    )') FLAG
2256       WRITE(6,'( ''       VAL : '',L2   )') LVAL
2257       IF(IERR.EQ.1) THEN
2258         WRITE(6,'(/'' OPT should be either SET or GET '')')
2259       ELSEIF(IERR.EQ.2) THEN
2260         WRITE(6,'(/'' Variable VAR not found'')')
2261       ENDIF
2262
2263       CALL QTRACE('QNLVAL ',1)
2264
2265       STOP
2266
2267       END
2268
2269 CDECK  ID>, QNLSET.
2270  
2271 C     ============================
2272       SUBROUTINE QNLSET(FLAG,LVAL)
2273 C     ============================
2274  
2275       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2276  
2277       CHARACTER*(*) FLAG
2278       LOGICAL       LVAL
2279
2280       CALL QTRACE('QNLSET ',0)
2281
2282       CALL QNLVAL('SET',FLAG,LVAL)
2283
2284       RETURN
2285       END
2286
2287 CDECK  ID>, QNLGET.
2288  
2289 C     ============================
2290       SUBROUTINE QNLGET(FLAG,LVAL)
2291 C     ============================
2292  
2293       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2294  
2295       CHARACTER*(*) FLAG
2296       LOGICAL       LVAL
2297
2298       CALL QTRACE('QNLGET ',0)
2299
2300       CALL QNLVAL('GET',FLAG,LVAL)
2301
2302       RETURN
2303       END
2304  
2305 CDECK  ID>, GRMXMQ.
2306  
2307 C     ============================
2308       SUBROUTINE GRMXMQ(NXMA,NQMA)
2309 C     ============================
2310
2311 C---  GRMXMQ: return max allowed number of x, Q2 gridpoints.
2312 C---  Called by user.
2313 C---  MXX and MQ2 are set by parameter statement in common QCNXQM.
2314  
2315       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2316  
2317  
2318       PARAMETER ( MXX = 410 )
2319       PARAMETER ( MQ2 =  120 )
2320
2321 C--   Do not set the following parameter to zero!
2322       PARAMETER ( NDFMAX = 20)
2323
2324  
2325       COMMON/QCGRID/
2326      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2327      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2328      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2329      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2330  
2331
2332       CALL QTRACE('GRMXMQ ',0)
2333  
2334       NXMA = MXX-1
2335       NQMA = MQ2-1
2336  
2337       RETURN
2338       END
2339  
2340 CDECK  ID>, GRGIVE.
2341  
2342 C     ========================================
2343       SUBROUTINE GRGIVE(NX,XMI,XMA,NQ,QMI,QMA)
2344 C     ========================================
2345
2346 C---  GRGIVE: return current grid definition.
2347 C---  Called by user.
2348 C---  Output variables: NX  (integer) number of x gridpoints.
2349 C---                    XMI (real or d.p.) lowest x value.
2350 C---                    XMA (real or d.p.) highest x value = 1.
2351 C---                    NQ  (integer) number of Q2 gridpoints.
2352 C---                    QMI (real or d.p.) lowest Q2 value.
2353 C---                    QMA (real or d.p.) highest Q2 value.
2354  
2355       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2356  
2357  
2358       PARAMETER ( MXX = 410 )
2359       PARAMETER ( MQ2 =  120 )
2360
2361 C--   Do not set the following parameter to zero!
2362       PARAMETER ( NDFMAX = 20)
2363
2364  
2365       COMMON/QCGRID/
2366      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2367      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2368      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2369      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2370  
2371
2372       CALL QTRACE('GRGIVE ',0)
2373  
2374       NX  = NXX
2375       XMI = XXTAB(1)
2376       XMA = XXTAB(NXX+1)
2377       NQ  = NQ2
2378       QMI = Q2TAB(1)
2379       QMA = Q2TAB(NQ2)
2380  
2381       RETURN
2382       END
2383  
2384 CDECK  ID>, GRXNUL.
2385  
2386 C     =================
2387       SUBROUTINE GRXNUL
2388 C     =================
2389  
2390       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2391  
2392  
2393       LOGICAL
2394      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2395      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2396      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2397      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2398      +LFFCAL,LASOLD
2399
2400       COMMON/QCFLAG/ 
2401      +IORD,IOLAST,
2402      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2403      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2404      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2405      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2406      +LFFCAL(7,30),LASOLD
2407  
2408  
2409       PARAMETER ( MXX = 410 )
2410       PARAMETER ( MQ2 =  120 )
2411
2412 C--   Do not set the following parameter to zero!
2413       PARAMETER ( NDFMAX = 20)
2414
2415  
2416       COMMON/QCGRID/
2417      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2418      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2419      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2420      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2421  
2422  
2423       COMMON/QCPASS/
2424      +ALPHA0, Q0ALFA, ASLAST, QALAST,
2425      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
2426      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
2427      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
2428      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
2429      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
2430      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
2431      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
2432      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
2433      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
2434
2435       LOGICAL LEVDONE,LE_DONE
2436       COMMON/QCLEVL/
2437      +LEVDONE(MXX,10),LE_DONE(MXX)
2438  
2439
2440       CALL QTRACE('GRXNUL ',0)
2441  
2442 C---  Invalidate weight tables (validated by call to QNFILW)
2443       LWT1OK = .FALSE.
2444       LWT2OK = .FALSE.
2445       LWTFOK = .FALSE.
2446       LWFCOK = .FALSE.
2447       LWLCOK = .FALSE.
2448       LWFBOK = .FALSE.
2449       LWLBOK = .FALSE.
2450       LMARK  = .FALSE.
2451 C--   Invalidate all evolutions      
2452       CALL QNFALS(LEVDONE,MXX*10)
2453  
2454 C---  Set grid to zero
2455       CALL QNVNUL(XXTAB,MXX)
2456       CALL QNVNUL(XHTAB,MXX)
2457       CALL QNINUL(IHTAB,MXX)
2458       NXX    = 0
2459       NGRVER = 0
2460
2461 C---  Update IFAILC
2462       CALL GRSETC
2463
2464 C---  Update NFMAP
2465       CALL QNSETT
2466  
2467
2468       RETURN
2469       END
2470  
2471 CDECK  ID>, GRXINP.
2472  
2473 C     ============================
2474       SUBROUTINE GRXINP(XARRAY,NX)
2475 C     ============================
2476  
2477       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2478  
2479  
2480       LOGICAL
2481      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2482      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2483      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2484      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2485      +LFFCAL,LASOLD
2486
2487       COMMON/QCFLAG/ 
2488      +IORD,IOLAST,
2489      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2490      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2491      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2492      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2493      +LFFCAL(7,30),LASOLD
2494  
2495  
2496       PARAMETER ( MXX = 410 )
2497       PARAMETER ( MQ2 =  120 )
2498
2499 C--   Do not set the following parameter to zero!
2500       PARAMETER ( NDFMAX = 20)
2501
2502  
2503       COMMON/QCGRID/
2504      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2505      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2506      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2507      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2508  
2509  
2510       COMMON/QCPASS/
2511      +ALPHA0, Q0ALFA, ASLAST, QALAST,
2512      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
2513      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
2514      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
2515      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
2516      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
2517      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
2518      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
2519      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
2520      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
2521
2522       LOGICAL LEVDONE,LE_DONE
2523       COMMON/QCLEVL/
2524      +LEVDONE(MXX,10),LE_DONE(MXX)
2525  
2526  
2527       DIMENSION XARRAY(*)
2528  
2529       DATA EPSI /1.E-6/
2530
2531       CALL QTRACE('GRXINP ',0)
2532  
2533       IF(NX.LE.0) THEN
2534         IERR = 1
2535         GOTO 500
2536       ENDIF
2537  
2538       IF((NX+NXX).GT.MXX-1) THEN
2539         IERR = 2
2540         GOTO 500
2541       ENDIF
2542
2543 C---  Invalidate weight tables (validated by call to QNFILW)
2544       LWT1OK = .FALSE.
2545       LWT2OK = .FALSE.
2546       LWTFOK = .FALSE.
2547       LWFCOK = .FALSE.
2548       LWLCOK = .FALSE.
2549       LWFBOK = .FALSE.
2550       LWLBOK = .FALSE.
2551       LMARK  = .FALSE.
2552 C--   Invalidate all evolutions      
2553       CALL QNFALS(LEVDONE,MXX*10)
2554
2555 C---  if this number changes, QCDNUM knows that the grid has changed
2556       NGRVER = NGRVER + 1
2557  
2558       IF(NXX.EQ.0) THEN
2559         DO 10 IX = 1,NX
2560           X = XARRAY(IX)
2561           IF(X.LE.0..OR.X.GT.1.) THEN
2562             IERR = 3
2563             GOTO 500
2564           ENDIF
2565           NXX    = NXX+1
2566           XXTAB(IX) = X
2567   10    CONTINUE
2568         IF(XXTAB(NXX).EQ.1.) THEN
2569           NXX = NXX-1
2570         ELSE
2571           XXTAB(NXX+1) = 1.
2572         ENDIF
2573         RETURN
2574       ENDIF
2575  
2576       IF(XXTAB(NXX).EQ.1.) THEN
2577         NXX = NXX-1
2578       ELSE
2579         XXTAB(NXX+1) = 1.
2580       ENDIF
2581  
2582       NXP = NXX+1
2583  
2584       DO 100 IX = 1,NX
2585  
2586         X = XARRAY(IX)
2587  
2588         IF(X.LE.0..OR.X.GT.1.) THEN
2589           IERR = 3
2590           GOTO 500
2591         ENDIF
2592  
2593 *mb     IF(X.LT.XXTAB(1)-EPSI) THEN
2594         IF(X/XXTAB(1).LT.1.-EPSI) THEN
2595  
2596           DO 20 JX = NXP,1,-1
2597             XXTAB(JX+1) = XXTAB(JX)
2598   20      CONTINUE
2599           NXP    = NXP+1
2600           XXTAB(1)  = X
2601  
2602 *mb     ELSEIF(X.GT.XXTAB(NXP)+EPSI) THEN
2603         ELSEIF(X/XXTAB(NXP).GT.1.+EPSI) THEN
2604  
2605           NXP    = NXP+1
2606           XXTAB(NXP) = X
2607  
2608         ELSE
2609  
2610           DO 30 I = 1,NXP
2611 *mb         IF(XXTAB(I).LE.X+EPSI) IX0 = I
2612             IF(XXTAB(I)/X.LE.1.+EPSI) IX0 = I
2613   30      CONTINUE
2614  
2615 *mb       IF(ABS(XXTAB(IX0)-X).LE.EPSI) THEN
2616           IF(ABS(XXTAB(IX0)/X-1.).LE.EPSI) THEN
2617             XXTAB(IX0) = X
2618           ELSE
2619             DO 40 JX = NXP,IX0+1,-1
2620               XXTAB(JX+1) = XXTAB(JX)
2621   40        CONTINUE
2622             NXP = NXP+1
2623             XXTAB(IX0+1) = X
2624           ENDIF
2625  
2626         ENDIF
2627  
2628  100  CONTINUE
2629  
2630       IF(XXTAB(NXP).EQ.1.) THEN
2631         NXX = NXP-1
2632       ELSE
2633         NXX = NXP
2634         XXTAB(NXX+1) = 1.
2635       ENDIF
2636
2637 C---  Update IFAILC
2638       CALL GRSETC
2639
2640 C---  Update NFMAP
2641       CALL QNSETT
2642
2643 C---  Update heavy quark xgrid
2644       CALL GXHDEF
2645  
2646       RETURN
2647
2648  500  CONTINUE
2649
2650       WRITE(6,'(/'' ------------------------------------'')')
2651       WRITE(6,'( '' QCDNUM error in s/r GRXINP ---> STOP'')')
2652       WRITE(6,'( '' ------------------------------------'')')
2653       WRITE(6,'( '' Input X  :'',E12.5)') X
2654       WRITE(6,'( ''       NX :'',I5   )') NX
2655       IF(IERR.EQ.1) THEN
2656         WRITE(6,'(/'' NX must be .ge. 1'')')
2657       ELSEIF(IERR.EQ.2) THEN
2658         WRITE(6,'(/'' Maximum number of gridpoints exceeded '')')
2659         WRITE(6,'(/'' # existing x  gridpoints ='',I5/
2660      +             '' # points to be added     ='',I5/
2661      +             '' maximum # points allowed ='',I5)')
2662      +                NXX, NX, MXX-1
2663       ELSEIF(IERR.EQ.3) THEN
2664         WRITE(6,'(/'' Value of X outside allowed range (0,1]'')')
2665       ENDIF
2666
2667       CALL QTRACE('GRXINP ',1)
2668
2669       STOP
2670
2671       END
2672  
2673 CDECK  ID>, GRXDEF.
2674  
2675 C     ==========================
2676       SUBROUTINE GRXDEF(NX,XMIN)
2677 C     ==========================
2678  
2679       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2680  
2681  
2682       LOGICAL
2683      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2684      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2685      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2686      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2687      +LFFCAL,LASOLD
2688
2689       COMMON/QCFLAG/ 
2690      +IORD,IOLAST,
2691      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2692      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2693      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2694      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2695      +LFFCAL(7,30),LASOLD
2696  
2697  
2698       PARAMETER ( MXX = 410 )
2699       PARAMETER ( MQ2 =  120 )
2700
2701 C--   Do not set the following parameter to zero!
2702       PARAMETER ( NDFMAX = 20)
2703
2704  
2705       COMMON/QCGRID/
2706      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2707      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2708      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2709      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2710  
2711  
2712       COMMON/QCPASS/
2713      +ALPHA0, Q0ALFA, ASLAST, QALAST,
2714      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
2715      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
2716      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
2717      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
2718      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
2719      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
2720      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
2721      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
2722      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
2723
2724       LOGICAL LEVDONE,LE_DONE
2725       COMMON/QCLEVL/
2726      +LEVDONE(MXX,10),LE_DONE(MXX)
2727  
2728
2729       CALL QTRACE('GRXDEF ',0)
2730  
2731       IF(NX.LE.0) THEN
2732         IERR = 1
2733         GOTO 500
2734       ENDIF
2735  
2736       IF(NX.GT.MXX-1) THEN
2737         IERR = 2
2738         GOTO 500
2739       ENDIF
2740  
2741       IF(XMIN.LE.0.OR.XMIN.GE.1.) THEN
2742         IERR = 3
2743         GOTO 500
2744       ENDIF
2745
2746 C---  Invalidate weight tables (validated by call to QNFILW)
2747       LWT1OK = .FALSE.
2748       LWT2OK = .FALSE.
2749       LWTFOK = .FALSE.
2750       LWFCOK = .FALSE.
2751       LWLCOK = .FALSE.
2752       LWFBOK = .FALSE.
2753       LWLBOK = .FALSE.
2754       LMARK  = .FALSE.
2755 C--   Invalidate all evolutions      
2756       CALL QNFALS(LEVDONE,MXX*10)
2757
2758 C---  if this number changes, QCDNUM knows that the grid has changed
2759       NGRVER = NGRVER + 1
2760  
2761       XMAX = 1.
2762       YMIN = SYFROMX(XMIN)
2763       YMAX = SYFROMX(XMAX)
2764       BW   = (YMAX-YMIN)/NX
2765       DO I = 1,NX
2766         YI = YMIN+(I-1)*BW
2767         XXTAB(I) = SXFROMY(YI)
2768       ENDDO
2769       XXTAB(1)    = XMIN
2770       XXTAB(NX+1) = 1.
2771       NXX         = NX
2772
2773 C---  Update IFAILC
2774       CALL GRSETC
2775
2776 C---  Update NFMAP
2777       CALL QNSETT
2778
2779 C---  Update heavy quark xgrid
2780       CALL GXHDEF
2781  
2782       RETURN
2783
2784  500  CONTINUE
2785
2786       WRITE(6,'(/'' ------------------------------------'')')
2787       WRITE(6,'( '' QCDNUM error in s/r GRXDEF ---> STOP'')')
2788       WRITE(6,'( '' ------------------------------------'')')
2789       WRITE(6,'( '' Input NX    :'',I5   )') NX
2790       WRITE(6,'( ''       Xmin  :'',E12.5)') XMIN
2791       IF(IERR.EQ.1) THEN
2792         WRITE(6,'(/'' NX must be .ge. 1'')')
2793       ELSEIF(IERR.EQ.2) THEN
2794         WRITE(6,'(/'' NX > max number of gridpoints'',
2795      +             '' allowed:'',I5)') MXX-1
2796       ELSEIF(IERR.EQ.3) THEN
2797         WRITE(6,'(/'' Xmin outside allowed range (0,1]'')')
2798       ENDIF
2799
2800       CALL QTRACE('GRXDEF ',1)
2801
2802       STOP
2803
2804       END
2805  
2806 CDECK  ID>, GRXLIM.
2807  
2808 C     ==========================
2809       SUBROUTINE GRXLIM(NX,XMIN)
2810 C     ==========================
2811  
2812       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
2813  
2814  
2815       LOGICAL
2816      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2817      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2818      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2819      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2820      +LFFCAL,LASOLD
2821
2822       COMMON/QCFLAG/ 
2823      +IORD,IOLAST,
2824      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
2825      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
2826      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
2827      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
2828      +LFFCAL(7,30),LASOLD
2829  
2830  
2831       PARAMETER ( MXX = 410 )
2832       PARAMETER ( MQ2 =  120 )
2833
2834 C--   Do not set the following parameter to zero!
2835       PARAMETER ( NDFMAX = 20)
2836
2837  
2838       COMMON/QCGRID/
2839      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
2840      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
2841      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
2842      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
2843  
2844  
2845       COMMON/QCPASS/
2846      +ALPHA0, Q0ALFA, ASLAST, QALAST,
2847      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
2848      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
2849      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
2850      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
2851      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
2852      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
2853      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
2854      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
2855      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
2856
2857       LOGICAL LEVDONE,LE_DONE
2858       COMMON/QCLEVL/
2859      +LEVDONE(MXX,10),LE_DONE(MXX)
2860  
2861  
2862       DATA EPSI / 1.E-6 /
2863
2864       CALL QTRACE('GRXLIM ',0)
2865  
2866       IF(NX.LE.0) THEN
2867         IERR = 1
2868         GOTO 500
2869       ENDIF
2870  
2871       IF(NX.GT.MXX-1) THEN
2872         IERR = 2
2873         GOTO 500
2874       ENDIF
2875
2876 C---  Invalidate weight tables (validated by call to QNFILW)
2877       LWT1OK = .FALSE.
2878       LWT2OK = .FALSE.
2879       LWTFOK = .FALSE.
2880       LWFCOK = .FALSE.
2881       LWLCOK = .FALSE.
2882       LWFBOK = .FALSE.
2883       LWLBOK = .FALSE.
2884       LMARK  = .FALSE.
2885 C--   Invalidate all evolutions      
2886       CALL QNFALS(LEVDONE,MXX*10)
2887  
2888       IF(XMIN.LE.0.OR.XMIN.GE.1.) THEN
2889         IERR = 3
2890         GOTO 500
2891       ENDIF
2892
2893 C---  if this number changes, QCDNUM knows that the grid has changed
2894       NGRVER = NGRVER + 1
2895  
2896       IF(NXX.EQ.0) THEN
2897         XXTAB(1) = 1.
2898       ELSEIF(XXTAB(NXX).EQ.1.) THEN
2899         NXX = NXX-1
2900       ELSE
2901         XXTAB(NXX+1) = 1.
2902       ENDIF
2903  
2904       NXP = NXX+1
2905  
2906 *mb   IF(XMIN.LT.XXTAB(1)-EPSI) THEN
2907       IF(XMIN/XXTAB(1).LT.1.-EPSI) THEN
2908         DO 20 IX = NXP,1,-1
2909           XXTAB(IX+1) = XXTAB(IX)
2910   20    CONTINUE
2911         NXP   = NXP+1
2912         XXTAB(1) = XMIN
2913       ENDIF
2914  
2915       IF(NX.GT.NXP-1) THEN
2916   30    CONTINUE
2917         GAPMAX = 0.
2918         DO 35 IX = 1,NXP-1
2919           GAP = SYFROMX(XXTAB(IX+1))-SYFROMX(XXTAB(IX))
2920           IF(GAP.GT.GAPMAX) THEN
2921             GAPMAX = GAP
2922             IX0    = IX
2923           ENDIF
2924   35    CONTINUE
2925         DO 40 IX = NXP,IX0+1,-1
2926           XXTAB(IX+1) = XXTAB(IX)
2927   40    CONTINUE
2928         NXP = NXP+1
2929         XXTAB(IX0+1) = 0.5*(XXTAB(IX0)+XXTAB(IX0+2))
2930         IF(NXP-1.LT.NX) GOTO 30
2931  
2932       ELSEIF(NX.LT.NXP-1) THEN
2933   50    CONTINUE
2934         GAPMIN = 999999.
2935         DO 55 IX = 2,NXP-1
2936           GAP = SYFROMX(XXTAB(IX+1))-SYFROMX(XXTAB(IX-1))
2937           IF(GAP.LE.GAPMIN) THEN
2938             GAPMIN = GAP
2939             IX0    = IX
2940           ENDIF
2941   55    CONTINUE
2942         DO 60 IX = IX0,NXP-1
2943           XXTAB(IX) = XXTAB(IX+1)
2944   60    CONTINUE
2945         XXTAB(NXP) = 0.
2946         NXP = NXP-1
2947         IF(NXP-1.GT.NX) GOTO 50
2948       ENDIF
2949  
2950       IF(XXTAB(NXP).EQ.1.) THEN
2951         NXX = NXP-1
2952       ELSE
2953         NXX = NXP
2954         XXTAB(NXX+1) = 1.
2955       ENDIF
2956
2957 C---  Update IFAILC
2958       CALL GRSETC
2959
2960 C---  Update NFMAP
2961       CALL QNSETT
2962
2963 C---  Update heavy quark xgrid
2964       CALL GXHDEF
2965  
2966       RETURN
2967
2968  500  CONTINUE
2969
2970       WRITE(6,'(/'' ------------------------------------'')')
2971       WRITE(6,'( '' QCDNUM error in s/r GRXLIM ---> STOP'')')
2972       WRITE(6,'( '' ------------------------------------'')')
2973       WRITE(6,'( '' Input NX    :'',I5   )') NX
2974       WRITE(6,'( ''       Xmin  :'',E12.5)') XMIN
2975       IF(IERR.EQ.1) THEN
2976         WRITE(6,'(/'' NX must be .ge. 1'')')
2977       ELSEIF(IERR.EQ.2) THEN
2978         WRITE(6,'(/'' NX > max number of gridpoints'',
2979      +             '' allowed:'',I5)') MXX-1
2980       ELSEIF(IERR.EQ.3) THEN
2981         WRITE(6,'(/'' Xmin outside allowed range (0,1]'')')
2982       ENDIF
2983
2984       CALL QTRACE('GRXLIM ',1)
2985
2986       STOP
2987
2988       END
2989  
2990 CDECK  ID>, GXHDEF.
2991  
2992 C     =================
2993       SUBROUTINE GXHDEF
2994 C     =================
2995
2996 C--   Create a purely logarithmic grid in x (XHTAB) for use 
2997 C--   in the heavy quark structure function calculations.
2998  
2999       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3000  
3001  
3002       PARAMETER ( MXX = 410 )
3003       PARAMETER ( MQ2 =  120 )
3004
3005 C--   Do not set the following parameter to zero!
3006       PARAMETER ( NDFMAX = 20)
3007
3008  
3009       COMMON/QCGRID/
3010      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3011      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3012      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3013      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3014  
3015
3016       IF(NXX.EQ.0.OR.NXX.GE.MXX)           RETURN
3017       IF(XXTAB(1).LE.0..OR.XXTAB(1).GE.1.) RETURN
3018
3019       XL1 = LOG(XXTAB(1))
3020       XL2 = 0.
3021       BW  = (XL2-XL1)/NXX
3022
3023       DO IX = 1,NXX
3024         XL = XL1 + (IX-1)*BW
3025         XHTAB(IX) = EXP(XL)
3026         IHTAB(IX) = ABS(IXFROMX(XHTAB(IX)))
3027       ENDDO
3028       XHTAB(NXX+1) = 1.
3029       IHTAB(NXX+1) = NXX+1
3030
3031       RETURN
3032       END
3033  
3034
3035 CDECK  ID>, SYFROMX.
3036  
3037 C     ====================================
3038       DOUBLE PRECISION FUNCTION SYFROMX(X)
3039 C     ====================================
3040       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3041  
3042  
3043       PARAMETER ( MXX = 410 )
3044       PARAMETER ( MQ2 =  120 )
3045
3046 C--   Do not set the following parameter to zero!
3047       PARAMETER ( NDFMAX = 20)
3048
3049  
3050       COMMON/QCGRID/
3051      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3052      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3053      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3054      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3055  
3056  
3057       IF(X.LE.SCAX0) THEN
3058         SYFROMX = LOG(X)
3059       ELSE
3060         SYFROMX = LOG(SCAX0) + (X-SCAX0)/SCAX0
3061       ENDIF
3062  
3063       RETURN
3064       END
3065
3066 CDECK  ID>, SXFROMY.
3067  
3068 C     ====================================
3069       DOUBLE PRECISION FUNCTION SXFROMY(Y)
3070 C     ====================================
3071       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3072  
3073  
3074       PARAMETER ( MXX = 410 )
3075       PARAMETER ( MQ2 =  120 )
3076
3077 C--   Do not set the following parameter to zero!
3078       PARAMETER ( NDFMAX = 20)
3079
3080  
3081       COMMON/QCGRID/
3082      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3083      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3084      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3085      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3086  
3087  
3088       IF(Y.LE.LOG(SCAX0)) THEN
3089         SXFROMY = EXP(Y)
3090       ELSE
3091         SXFROMY = (Y-LOG(SCAX0)+1.) * SCAX0
3092       ENDIF
3093  
3094       RETURN
3095       END
3096  
3097 CDECK  ID>, GRXOUT.
3098  
3099 C     =========================
3100       SUBROUTINE GRXOUT(XARRAY)
3101 C     =========================
3102
3103 C---  Copy XXTAB to XARRAY which should have been dimensioned
3104 C---  to at least NXX+1 by the user.
3105  
3106       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3107  
3108  
3109       LOGICAL
3110      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3111      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3112      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3113      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3114      +LFFCAL,LASOLD
3115
3116       COMMON/QCFLAG/ 
3117      +IORD,IOLAST,
3118      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3119      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3120      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3121      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3122      +LFFCAL(7,30),LASOLD
3123  
3124  
3125       PARAMETER ( MXX = 410 )
3126       PARAMETER ( MQ2 =  120 )
3127
3128 C--   Do not set the following parameter to zero!
3129       PARAMETER ( NDFMAX = 20)
3130
3131  
3132       COMMON/QCGRID/
3133      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3134      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3135      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3136      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3137  
3138  
3139       DIMENSION XARRAY(*)
3140
3141       CALL QTRACE('GRXOUT ',0)
3142  
3143       DO 10 IX = 1,NXX+1
3144         XARRAY(IX) = XXTAB(IX)
3145   10  CONTINUE
3146  
3147       RETURN
3148       END
3149  
3150 CDECK  ID>, LOGXGR.
3151  
3152 C     ===============================
3153       LOGICAL FUNCTION LOGXGR(IDUMMY)
3154 C     ===============================
3155
3156 C---  Figure out if xgrid is purely logarithmic
3157  
3158       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3159
3160       REAL    RAT1,RAT
3161  
3162  
3163       PARAMETER ( MXX = 410 )
3164       PARAMETER ( MQ2 =  120 )
3165
3166 C--   Do not set the following parameter to zero!
3167       PARAMETER ( NDFMAX = 20)
3168
3169  
3170       COMMON/QCGRID/
3171      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3172      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3173      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3174      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3175  
3176
3177       LOGXGR = .FALSE.
3178
3179       IF(NXX.LE.0) RETURN
3180
3181       RAT1   = XXTAB(2)/XXTAB(1)
3182       LOGXGR = .TRUE.
3183       DO IX = 1,NXX
3184         RAT = XXTAB(IX+1)/XXTAB(IX)
3185         IF(RAT.NE.RAT1) LOGXGR = .FALSE.
3186       ENDDO
3187
3188       RETURN
3189       END
3190  
3191 CDECK  ID>, GRQNUL.
3192  
3193 C     =================
3194       SUBROUTINE GRQNUL
3195 C     =================
3196  
3197       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3198  
3199  
3200       LOGICAL
3201      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3202      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3203      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3204      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3205      +LFFCAL,LASOLD
3206
3207       COMMON/QCFLAG/ 
3208      +IORD,IOLAST,
3209      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3210      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3211      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3212      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3213      +LFFCAL(7,30),LASOLD
3214  
3215  
3216       PARAMETER ( MXX = 410 )
3217       PARAMETER ( MQ2 =  120 )
3218
3219 C--   Do not set the following parameter to zero!
3220       PARAMETER ( NDFMAX = 20)
3221
3222  
3223       COMMON/QCGRID/
3224      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3225      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3226      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3227      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3228  
3229  
3230       COMMON/QCPASS/
3231      +ALPHA0, Q0ALFA, ASLAST, QALAST,
3232      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
3233      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
3234      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
3235      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
3236      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
3237      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
3238      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
3239      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
3240      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
3241
3242       LOGICAL LEVDONE,LE_DONE
3243       COMMON/QCLEVL/
3244      +LEVDONE(MXX,10),LE_DONE(MXX)
3245  
3246
3247       CALL QTRACE('GRQNUL ',0)
3248  
3249 C---  Invalidate weight tables (validated by call to QNFILW)
3250       LALFOK = .FALSE.
3251       LDQ2OK = .FALSE.
3252       LWFCOK = .FALSE.
3253       LWLCOK = .FALSE.
3254       LWFBOK = .FALSE.
3255       LWLBOK = .FALSE.
3256       LMARK  = .FALSE.
3257 C--   Invalidate all evolutions      
3258       CALL QNFALS(LEVDONE,MXX*10)
3259  
3260 C---  Set grid to zero
3261       CALL QNVNUL(Q2TAB,MQ2)
3262       NQ2    = 0
3263       NGRVER = 0
3264
3265 C---  Update IFAILC
3266       CALL GRSETC
3267
3268 C---  Update NFMAP
3269       CALL QNSETT
3270  
3271
3272       RETURN
3273       END
3274  
3275 CDECK  ID>, GRQINP.
3276 C
3277 C     ============================
3278       SUBROUTINE GRQINP(QARRAY,NQ)
3279 C     ============================
3280  
3281       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3282  
3283  
3284       LOGICAL
3285      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3286      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3287      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3288      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3289      +LFFCAL,LASOLD
3290
3291       COMMON/QCFLAG/ 
3292      +IORD,IOLAST,
3293      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3294      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3295      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3296      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3297      +LFFCAL(7,30),LASOLD
3298  
3299  
3300       PARAMETER ( MXX = 410 )
3301       PARAMETER ( MQ2 =  120 )
3302
3303 C--   Do not set the following parameter to zero!
3304       PARAMETER ( NDFMAX = 20)
3305
3306  
3307       COMMON/QCGRID/
3308      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3309      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3310      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3311      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3312  
3313  
3314       COMMON/QCPASS/
3315      +ALPHA0, Q0ALFA, ASLAST, QALAST,
3316      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
3317      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
3318      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
3319      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
3320      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
3321      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
3322      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
3323      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
3324      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
3325
3326       LOGICAL LEVDONE,LE_DONE
3327       COMMON/QCLEVL/
3328      +LEVDONE(MXX,10),LE_DONE(MXX)
3329  
3330  
3331       DIMENSION QARRAY(*)
3332  
3333       DATA EPSI /1.E-6/
3334
3335       CALL QTRACE('GRQINP ',0)
3336  
3337       IF(NQ.LE.0) THEN
3338         IERR = 1
3339         GOTO 500
3340       ENDIF
3341  
3342       IF((NQ+NQ2).GT.MQ2-1) THEN
3343         IERR = 2
3344         GOTO 500
3345       ENDIF
3346
3347 C---  Invalidate weight tables (validated by call to QNFILW)
3348       LALFOK = .FALSE.
3349       LDQ2OK = .FALSE.
3350       LWFCOK = .FALSE.
3351       LWLCOK = .FALSE.
3352       LWFBOK = .FALSE.
3353       LWLBOK = .FALSE.
3354       LMARK  = .FALSE.
3355 C--   Invalidate all evolutions      
3356       CALL QNFALS(LEVDONE,MXX*10)
3357
3358 C---  if this number changes, QCDNUM knows that the grid has changed
3359       NGRVER = NGRVER + 1
3360  
3361       IF(NQ2.EQ.0) THEN
3362         DO 10 IQ = 1,NQ
3363           Q = QARRAY(IQ)
3364           IF(Q.LE.0.) THEN
3365             IERR = 3
3366             GOTO 500
3367           ENDIF
3368           NQ2    = NQ2+1
3369           Q2TAB(IQ) = Q
3370   10    CONTINUE
3371         RETURN
3372       ENDIF
3373  
3374       DO 100 IQ = 1,NQ
3375  
3376         Q = QARRAY(IQ)
3377  
3378         IF(Q.LE.0.) THEN
3379           IERR = 3
3380           GOTO 500
3381         ENDIF
3382  
3383 *mb     IF(Q.LT.Q2TAB(1)-EPSI) THEN
3384         IF(Q/Q2TAB(1).LT.1.-EPSI) THEN
3385  
3386           DO 20 JQ = NQ2,1,-1
3387             Q2TAB(JQ+1) = Q2TAB(JQ)
3388   20      CONTINUE
3389           NQ2    = NQ2+1
3390           Q2TAB(1)  = Q
3391  
3392 *mb     ELSEIF(Q.GT.Q2TAB(NQ2)+EPSI) THEN
3393         ELSEIF(Q/Q2TAB(NQ2).GT.1.+EPSI) THEN
3394  
3395           NQ2    = NQ2+1
3396           Q2TAB(NQ2) = Q
3397  
3398         ELSE
3399  
3400           DO 30 I = 1,NQ2
3401 *mb         IF(Q2TAB(I).LE.Q+EPSI) IQ0 = I
3402             IF(Q2TAB(I)/Q.LE.1.+EPSI) IQ0 = I
3403   30      CONTINUE
3404  
3405 *mb       IF(ABS(Q2TAB(IQ0)-Q).LE.EPSI) THEN
3406           IF(ABS(Q2TAB(IQ0)/Q-1.).LE.EPSI) THEN
3407             Q2TAB(IQ0) = Q
3408           ELSE
3409             DO 40 JQ = NQ2,IQ0+1,-1
3410               Q2TAB(JQ+1) = Q2TAB(JQ)
3411   40        CONTINUE
3412             NQ2 = NQ2+1
3413             Q2TAB(IQ0+1) = Q
3414           ENDIF
3415  
3416         ENDIF
3417  
3418  100  CONTINUE
3419
3420 C---  Update IFAILC
3421       CALL GRSETC
3422
3423 C---  Update NFMAP
3424       CALL QNSETT
3425  
3426       RETURN
3427
3428  500  CONTINUE
3429
3430       WRITE(6,'(/'' ------------------------------------'')')
3431       WRITE(6,'( '' QCDNUM error in s/r GRQINP ---> STOP'')')
3432       WRITE(6,'( '' ------------------------------------'')')
3433       WRITE(6,'( '' Input Q2 :'',E12.5)') Q
3434       WRITE(6,'( ''       NQ :'',I5   )') NQ
3435       IF(IERR.EQ.1) THEN
3436         WRITE(6,'(/'' NQ must be .ge. 1'')')
3437       ELSEIF(IERR.EQ.2) THEN
3438         WRITE(6,'(/'' Maximum number of gridpoints exceeded '')')
3439         WRITE(6,'(/'' # existing Q2 gridpoints ='',I5/
3440      +             '' # points to be added     ='',I5/
3441      +             '' maximum # points allowed ='',I5)')
3442      +                NQ2, NQ, MQ2-1
3443       ELSEIF(IERR.EQ.3) THEN
3444         WRITE(6,'(/'' Value of Q2 outside allowed range > 0'')')
3445       ENDIF
3446
3447       CALL QTRACE('GRQINP ',1)
3448
3449       STOP
3450
3451       END
3452  
3453 CDECK  ID>, GRQDEF.
3454  
3455 C     ===============================
3456       SUBROUTINE GRQDEF(NQ,QMIN,QMAX)
3457 C     ===============================
3458  
3459       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3460  
3461  
3462       LOGICAL
3463      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3464      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3465      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3466      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3467      +LFFCAL,LASOLD
3468
3469       COMMON/QCFLAG/ 
3470      +IORD,IOLAST,
3471      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3472      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3473      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3474      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3475      +LFFCAL(7,30),LASOLD
3476  
3477  
3478       PARAMETER ( MXX = 410 )
3479       PARAMETER ( MQ2 =  120 )
3480
3481 C--   Do not set the following parameter to zero!
3482       PARAMETER ( NDFMAX = 20)
3483
3484  
3485       COMMON/QCGRID/
3486      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3487      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3488      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3489      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3490  
3491  
3492       COMMON/QCPASS/
3493      +ALPHA0, Q0ALFA, ASLAST, QALAST,
3494      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
3495      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
3496      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
3497      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
3498      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
3499      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
3500      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
3501      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
3502      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
3503
3504       LOGICAL LEVDONE,LE_DONE
3505       COMMON/QCLEVL/
3506      +LEVDONE(MXX,10),LE_DONE(MXX)
3507  
3508  
3509       CALL QTRACE('GRQDEF ',0)
3510  
3511       IF(NQ.LE.1) THEN
3512         IERR = 1
3513         GOTO 500
3514       ENDIF
3515  
3516       IF(NQ.GT.MQ2-1) THEN
3517         IERR = 2
3518         GOTO 500
3519       ENDIF
3520  
3521       IF(QMIN.LE.0.OR.QMAX.LE.0.OR.QMIN.GE.QMAX) THEN
3522         IERR = 3
3523         GOTO 500
3524       ENDIF
3525
3526 C---  Invalidate weight tables (validated by call to QNFILW)
3527       LALFOK = .FALSE.
3528       LDQ2OK = .FALSE.
3529       LWFCOK = .FALSE.
3530       LWLCOK = .FALSE.
3531       LWFBOK = .FALSE.
3532       LWLBOK = .FALSE.
3533       LMARK  = .FALSE.
3534 C--   Invalidate all evolutions      
3535       CALL QNFALS(LEVDONE,MXX*10)
3536  
3537 C---  if this number changes, QCDNUM knows that the grid has changed
3538       NGRVER = NGRVER + 1
3539  
3540       YMIN = SYFROMQ(QMIN)
3541       YMAX = SYFROMQ(QMAX)
3542       BW   = (YMAX-YMIN)/(NQ-1)
3543       DO I = 1,NQ
3544         YI = YMIN+(I-1)*BW
3545         Q2TAB(I) = SQFROMY(YI)
3546       ENDDO   
3547       Q2TAB(1)  = QMIN
3548       Q2TAB(NQ) = QMAX
3549       NQ2       = NQ
3550
3551 C---  Update IFAILC
3552       CALL GRSETC
3553
3554 C---  Update NFMAP
3555       CALL QNSETT
3556  
3557       RETURN
3558
3559  500  CONTINUE
3560
3561       WRITE(6,'(/'' ------------------------------------'')')
3562       WRITE(6,'( '' QCDNUM error in s/r GRQDEF ---> STOP'')')
3563       WRITE(6,'( '' ------------------------------------'')')
3564       WRITE(6,'( '' Input NQ    :'',I5   )') NQ
3565       WRITE(6,'( ''       Q2min :'',E12.5)') QMIN
3566       WRITE(6,'( ''       Q2max :'',E12.5)') QMAX
3567       IF(IERR.EQ.1) THEN
3568         WRITE(6,'(/'' NQ must be .ge. 2'')')
3569       ELSEIF(IERR.EQ.2) THEN
3570         WRITE(6,'(/'' NQ > max number of gridpoints'',
3571      +             '' allowed:'',I5)') MQ2-1
3572       ELSEIF(IERR.EQ.3) THEN
3573         WRITE(6,'(/'' Qmin and/or Qmax .le. 0 or Qmin .ge. Qmax'')')
3574       ENDIF
3575
3576       CALL QTRACE('GRQDEF ',1)
3577
3578       STOP
3579
3580       END
3581  
3582 CDECK  ID>, GRQLIM.
3583  
3584 C     ===============================
3585       SUBROUTINE GRQLIM(NQ,QMIN,QMAX)
3586 C     ===============================
3587  
3588       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3589  
3590  
3591       LOGICAL
3592      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3593      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3594      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3595      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3596      +LFFCAL,LASOLD
3597
3598       COMMON/QCFLAG/ 
3599      +IORD,IOLAST,
3600      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
3601      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
3602      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
3603      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
3604      +LFFCAL(7,30),LASOLD
3605  
3606  
3607       PARAMETER ( MXX = 410 )
3608       PARAMETER ( MQ2 =  120 )
3609
3610 C--   Do not set the following parameter to zero!
3611       PARAMETER ( NDFMAX = 20)
3612
3613  
3614       COMMON/QCGRID/
3615      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3616      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3617      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3618      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3619  
3620  
3621       COMMON/QCPASS/
3622      +ALPHA0, Q0ALFA, ASLAST, QALAST,
3623      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
3624      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
3625      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
3626      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
3627      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
3628      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
3629      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
3630      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
3631      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
3632
3633       LOGICAL LEVDONE,LE_DONE
3634       COMMON/QCLEVL/
3635      +LEVDONE(MXX,10),LE_DONE(MXX)
3636  
3637  
3638       DATA EPSI /1.E-6/
3639
3640       CALL QTRACE('GRQLIM ',0)
3641  
3642       IF(NQ.LE.0) THEN
3643         IERR = 1
3644         GOTO 500
3645       ENDIF
3646  
3647       IF(NQ.GT.MQ2-1) THEN
3648         IERR = 2
3649         GOTO 500
3650       ENDIF
3651
3652 C---  Invalidate weight tables (validated by call to QNFILW)
3653       LALFOK = .FALSE.
3654       LDQ2OK = .FALSE.
3655       LWFCOK = .FALSE.
3656       LWLCOK = .FALSE.
3657       LWFBOK = .FALSE.
3658       LWLBOK = .FALSE.
3659       LMARK  = .FALSE.
3660 C--   Invalidate all evolutions      
3661       CALL QNFALS(LEVDONE,MXX*10)
3662  
3663 C---  if this number changes, QCDNUM knows that the grid has changed
3664       NGRVER = NGRVER + 1
3665  
3666       IF(NQ2.EQ.0) THEN
3667  
3668         IF(QMIN.LE.0..OR.QMAX.LE.0..OR.QMIN.GE.QMAX) THEN
3669           IERR = 3
3670           GOTO 500
3671         ENDIF
3672  
3673         CALL GRQDEF(NQ,QMI,QMA)
3674  
3675       ELSE
3676  
3677         IF(QMIN.LE.0..OR.QMAX.LE.0..OR.QMIN.GE.QMAX) THEN
3678           IERR = 3
3679           GOTO 500
3680         ENDIF
3681  
3682 *mb     IF(QMIN.LT.Q2TAB(1)-EPSI) THEN
3683         IF(QMIN/Q2TAB(1).LT.1.-EPSI) THEN
3684           DO 20 IQ = NQ2,1,-1
3685             Q2TAB(IQ+1) = Q2TAB(IQ)
3686   20      CONTINUE
3687           NQ2      = NQ2+1
3688           Q2TAB(1) = QMIN
3689         ENDIF
3690 *mb     IF(QMAX.GT.Q2TAB(NQ2)+EPSI) THEN
3691         IF(QMAX/Q2TAB(NQ2).GT.1.+EPSI) THEN
3692           NQ2        = NQ2+1
3693           Q2TAB(NQ2) = QMAX
3694         ENDIF
3695  
3696         IF(NQ.GT.NQ2) THEN
3697   30      CONTINUE
3698           GAPMAX = 0.
3699           DO 35 IQ = 1,NQ2-1
3700             GAP = SYFROMQ(Q2TAB(IQ+1))-SYFROMQ(Q2TAB(IQ))
3701             IF(GAP.GT.GAPMAX) THEN
3702               GAPMAX = GAP
3703               IQ0    = IQ
3704             ENDIF
3705   35      CONTINUE
3706           DO 40 IQ = NQ2,IQ0+1,-1
3707             Q2TAB(IQ+1) = Q2TAB(IQ)
3708   40      CONTINUE
3709           NQ2 = NQ2+1
3710           Q2TAB(IQ0+1) = SQRT(Q2TAB(IQ0)*Q2TAB(IQ0+2))
3711           IF(NQ2.LT.NQ) GOTO 30
3712  
3713         ELSEIF(NQ.LT.NQ2) THEN
3714   50      CONTINUE
3715           GAPMIN = 999999.
3716           DO 55 IQ = 2,NQ2-1
3717             GAP = SYFROMQ(Q2TAB(IQ+1))-SYFROMQ(Q2TAB(IQ-1))
3718             IF(GAP.LE.GAPMIN) THEN
3719               GAPMIN = GAP
3720               IQ0    = IQ
3721             ENDIF
3722   55      CONTINUE
3723           DO 60 IQ = IQ0,NQ2-1
3724             Q2TAB(IQ) = Q2TAB(IQ+1)
3725   60      CONTINUE
3726           Q2TAB(NQ2) = 0.
3727           NQ2 = NQ2-1
3728           IF(NQ2.GT.NQ) GOTO 50
3729         ENDIF
3730  
3731       ENDIF
3732
3733 C---  Update IFAILC
3734       CALL GRSETC
3735
3736 C---  Update NFMAP
3737       CALL QNSETT
3738  
3739       RETURN
3740
3741  500  CONTINUE
3742
3743       WRITE(6,'(/'' ------------------------------------'')')
3744       WRITE(6,'( '' QCDNUM error in s/r GRQLIM ---> STOP'')')
3745       WRITE(6,'( '' ------------------------------------'')')
3746       WRITE(6,'( '' Input NQ    :'',I5   )') NQ
3747       WRITE(6,'( ''       Q2min :'',E12.5)') QMIN
3748       WRITE(6,'( ''       Q2max :'',E12.5)') QMAX
3749       IF(IERR.EQ.1) THEN
3750         WRITE(6,'(/'' NQ must be .ge. 1'')')
3751       ELSEIF(IERR.EQ.2) THEN
3752         WRITE(6,'(/'' NQ > max number of gridpoints'',
3753      +             '' allowed:'',I5)') MQ2-1
3754       ELSEIF(IERR.EQ.3) THEN
3755         WRITE(6,'(/'' Qmin and/or Qmax .le. 0 or Qmin .ge. Qmax'')')
3756       ENDIF
3757
3758       CALL QTRACE('GRQLIM ',1)
3759
3760       STOP
3761
3762       END
3763
3764 CDECK  ID>, SYFROMQ.
3765  
3766 C     ====================================
3767       DOUBLE PRECISION FUNCTION SYFROMQ(Q)
3768 C     ====================================
3769       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3770  
3771  
3772       PARAMETER ( MXX = 410 )
3773       PARAMETER ( MQ2 =  120 )
3774
3775 C--   Do not set the following parameter to zero!
3776       PARAMETER ( NDFMAX = 20)
3777
3778  
3779       COMMON/QCGRID/
3780      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3781      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3782      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3783      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3784  
3785  
3786       IF(Q.LE.SCAQ0) THEN
3787         SYFROMQ = LOG(Q)
3788       ELSE
3789         SYFROMQ = LOG(SCAQ0) + (Q-SCAQ0)/SCAQ0
3790       ENDIF
3791  
3792       RETURN
3793       END
3794
3795 CDECK  ID>, SQFROMY.
3796  
3797 C     ====================================
3798       DOUBLE PRECISION FUNCTION SQFROMY(Y)
3799 C     ====================================
3800       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3801  
3802  
3803       PARAMETER ( MXX = 410 )
3804       PARAMETER ( MQ2 =  120 )
3805
3806 C--   Do not set the following parameter to zero!
3807       PARAMETER ( NDFMAX = 20)
3808
3809  
3810       COMMON/QCGRID/
3811      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3812      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3813      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3814      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3815  
3816  
3817       IF(Y.LE.LOG(SCAQ0)) THEN
3818         SQFROMY = EXP(Y)
3819       ELSE
3820         SQFROMY = (Y-LOG(SCAQ0)+1.) * SCAQ0
3821       ENDIF
3822  
3823       RETURN
3824       END
3825  
3826  
3827 CDECK  ID>, GRQOUT.
3828  
3829 C     =========================
3830       SUBROUTINE GRQOUT(QARRAY)
3831 C     =========================
3832
3833 C---  Copy Q2TAB to QARRAY which should have been dimensioned
3834 C---  to at least NQ2 by the user.
3835  
3836       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3837  
3838  
3839       PARAMETER ( MXX = 410 )
3840       PARAMETER ( MQ2 =  120 )
3841
3842 C--   Do not set the following parameter to zero!
3843       PARAMETER ( NDFMAX = 20)
3844
3845  
3846       COMMON/QCGRID/
3847      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3848      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3849      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3850      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3851  
3852  
3853       DIMENSION QARRAY(*)
3854
3855       CALL QTRACE('GRQOUT ',0)
3856  
3857       DO 10 IQ = 1,NQ2
3858         QARRAY(IQ) = Q2TAB(IQ)
3859   10  CONTINUE
3860  
3861       RETURN
3862       END
3863
3864 CDECK  ID>, IXFROMX.
3865  
3866 C     ===========================
3867       INTEGER FUNCTION IXFROMX(X)
3868 C     ===========================
3869  
3870       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3871
3872 C---  Returns gridindex IX given a value for X.
3873 C---  If X is outside the current gridboundary then IXFROMX = 0.
3874 C---  If X corresponds to gridindex IX  then IXFROMX = IX.
3875 C---  If X lies above IX and below IX+1 then IXFROMX = -IX.
3876
3877 C---  NB: X and XXTAB are different only if |X-XXTAB| < epsi.
3878 C---  NB: If since the previous call the grid did not change
3879 C---      (i.e. NGRVER is the same) and if X did not change, then
3880 C---      IXFROMX just returns the result of the previous call.
3881  
3882  
3883       PARAMETER ( MXX = 410 )
3884       PARAMETER ( MQ2 =  120 )
3885
3886 C--   Do not set the following parameter to zero!
3887       PARAMETER ( NDFMAX = 20)
3888
3889  
3890       COMMON/QCGRID/
3891      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
3892      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
3893      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
3894      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
3895  
3896  
3897       SAVE XLAST,IXLAST,NGLAST
3898  
3899       DATA XLAST  / 0. /
3900       DATA IXLAST / 0 /
3901       DATA NGLAST / 0 /
3902       DATA EPSI   /1.E-6/
3903
3904 *     CALL QTRACE('IXFROMX',0)
3905  
3906       IF(X.EQ.XLAST.AND.NGRVER.EQ.NGLAST) THEN
3907         IXFROMX = IXLAST
3908         RETURN
3909       ENDIF
3910  
3911       IX      = 0
3912       IXLAST  = 0
3913       NGLAST  = NGRVER
3914       XLAST   = X
3915       IXFROMX = 0
3916
3917       IF(X.GT.1..OR.NXX.LE.0)   RETURN
3918       IF(X/XXTAB(1).LT.1.-EPSI) RETURN
3919
3920       DO 10 I = 1,NXX
3921 *mb     IF(XXTAB(I).LE.X+EPSI) IX = I
3922         IF(XXTAB(I)/X.LE.1.+EPSI) IX = I
3923   10  CONTINUE
3924  
3925 *mb   IF(ABS(XXTAB(IX)-X).LE.EPSI) THEN
3926       IF(ABS(XXTAB(IX)/X-1.).LE.EPSI) THEN
3927         IXFROMX = IX
3928         IXLAST  = IX
3929       ELSE
3930         IXFROMX = -IX
3931         IXLAST  = -IX
3932       ENDIF
3933  
3934       RETURN
3935       END
3936
3937 C------------------------------------------------
3938
3939 *-      REAL XR,X1,X2,XLAST
3940 *- 
3941 *-+SEQ,QCNXQM.
3942 *-+SEQ,QCGRID.
3943 *- 
3944 *-      SAVE XLAST,IXLAST,NGLAST
3945 *- 
3946 *-      DATA XLAST  / 0. /
3947 *-      DATA IXLAST / 0 /
3948 *-      DATA NGLAST / 0 /
3949 *-
3950 *-*     CALL QTRACE('IXFROMX',0)
3951 *- 
3952 *-      XR = X
3953 *-      IF(XR.EQ.XLAST.AND.NGRVER.EQ.NGLAST) THEN
3954 *-        IXFROMX = IXLAST
3955 *-        RETURN
3956 *-      ENDIF
3957 *- 
3958 *-      IX      = 0
3959 *-      IXLAST  = 0
3960 *-      NGLAST  = NGRVER
3961 *-      XLAST   = X
3962 *-      IXFROMX = 0
3963 *-
3964 *-      IF(XR.GT.1..OR.NXX.LE.0)   RETURN
3965 *-      X1 = XXTAB(1)
3966 *-      IF(XR.LT.X1)               RETURN
3967 *-
3968 *-      DO IX = 1,NXX
3969 *-        X2 = XXTAB(IX+1)
3970 *-        IF(X1.LE.XR.AND.XR.LT.X2) THEN
3971 *-          IXFROMX = -IX
3972 *-          IF(X1.EQ.XR) IXFROMX = IX
3973 *-          IXLAST = IX
3974 *-          RETURN
3975 *-        ENDIF
3976 *-        X1 = X2
3977 *-      ENDDO
3978 *- 
3979 *-      RETURN
3980 *-      END
3981
3982 CDECK  ID>, IHFROMH.
3983  
3984 C     ===========================
3985       INTEGER FUNCTION IHFROMH(X)
3986 C     ===========================
3987  
3988       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
3989
3990 C---  Returns gridindex IX of heavy quark grid given a value for X.
3991 C---  If X is outside the current gridboundary then IHFROMH = 0.
3992 C---  If X corresponds to gridindex IX  then IHFROMH = IX.
3993 C---  If X lies above IX and below IX+1 then IHFROMH = -IX.
3994
3995 C---  NB: X and XHTAB are different only if |X-XHTAB| < epsi.
3996 C---  NB: If since the previous call the grid did not change
3997 C---      (i.e. NGRVER is the same) and if X did not change, then
3998 C---      IHFROMH just returns the result of the previous call.
3999  
4000  
4001       PARAMETER ( MXX = 410 )
4002       PARAMETER ( MQ2 =  120 )
4003
4004 C--   Do not set the following parameter to zero!
4005       PARAMETER ( NDFMAX = 20)
4006
4007  
4008       COMMON/QCGRID/
4009      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4010      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4011      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4012      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4013  
4014  
4015       SAVE XLAST,IXLAST,NGLAST
4016  
4017       DATA XLAST  / 0. /
4018       DATA IXLAST / 0 /
4019       DATA NGLAST / 0 /
4020       DATA EPSI   /1.E-6/
4021
4022 *     CALL QTRACE('IHFROMH',0)
4023  
4024       IF(X.EQ.XLAST.AND.NGRVER.EQ.NGLAST) THEN
4025         IHFROMH = IXLAST
4026         RETURN
4027       ENDIF
4028  
4029       IX      = 0
4030       IXLAST  = 0
4031       NGLAST  = NGRVER
4032       XLAST   = X
4033       IHFROMH = 0
4034
4035       IF(X.GT.1..OR.NXX.LE.0)   RETURN
4036       IF(X/XHTAB(1).LT.1.-EPSI) RETURN
4037
4038       DO 10 I = 1,NXX
4039 *mb     IF(XHTAB(I).LE.X+EPSI) IX = I
4040         IF(XHTAB(I)/X.LE.1.+EPSI) IX = I
4041   10  CONTINUE
4042  
4043 *mb   IF(ABS(XHTAB(IX)-X).LE.EPSI) THEN
4044       IF(ABS(XHTAB(IX)/X-1.).LE.EPSI) THEN
4045         IHFROMH = IX
4046         IXLAST  = IX
4047       ELSE
4048         IHFROMH = -IX
4049         IXLAST  = -IX
4050       ENDIF
4051  
4052       RETURN
4053       END
4054
4055 C------------------------------------------------
4056
4057 *-      REAL XR,X1,X2,XLAST
4058 *- 
4059 *-+SEQ,QCNXQM.
4060 *-+SEQ,QCGRID.
4061 *- 
4062 *-      SAVE XLAST,IXLAST,NGLAST
4063 *- 
4064 *-      DATA XLAST  / 0. /
4065 *-      DATA IXLAST / 0 /
4066 *-      DATA NGLAST / 0 /
4067 *-
4068 *-*     CALL QTRACE('IXFROMX',0)
4069 *- 
4070 *-      XR = X
4071 *-      IF(XR.EQ.XLAST.AND.NGRVER.EQ.NGLAST) THEN
4072 *-        IXFROMX = IXLAST
4073 *-        RETURN
4074 *-      ENDIF
4075 *- 
4076 *-      IX      = 0
4077 *-      IXLAST  = 0
4078 *-      NGLAST  = NGRVER
4079 *-      XLAST   = X
4080 *-      IXFROMX = 0
4081 *-
4082 *-      IF(XR.GT.1..OR.NXX.LE.0)   RETURN
4083 *-      X1 = XHTAB(1)
4084 *-      IF(XR.LT.X1)               RETURN
4085 *-
4086 *-      DO IX = 1,NXX
4087 *-        X2 = XHTAB(IX+1)
4088 *-        IF(X1.LE.XR.AND.XR.LT.X2) THEN
4089 *-          IXFROMX = -IX
4090 *-          IF(X1.EQ.XR) IXFROMX = IX
4091 *-          IXLAST = IX
4092 *-          RETURN
4093 *-        ENDIF
4094 *-        X1 = X2
4095 *-      ENDDO
4096 *- 
4097 *-      RETURN
4098 *-      END
4099
4100 CDECK  ID>, IXNEARX.
4101  
4102 C     ===========================
4103       INTEGER FUNCTION IXNEARX(X)
4104 C     ===========================
4105  
4106       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4107
4108 C---  Returns closest gridindex IX given a value for X.
4109 C---  If X is outside the current gridboundary then IXNEARX = 0.
4110 C---  If X corresponds to gridindex IX  then IXNEARX = IX.
4111 C---  If X lies above IX and below IX+1 then IXNEARX = -IX or -IX-1.
4112
4113 C---  NB: X and XXTAB are different only if |X-XXTAB| < epsi.
4114 C---  NB: If since the previous call the grid did not change
4115 C---      (i.e. NGRVER is the same) and if X did not change, then
4116 C---      IXNEARX just returns the result of the previous call.
4117  
4118  
4119       PARAMETER ( MXX = 410 )
4120       PARAMETER ( MQ2 =  120 )
4121
4122 C--   Do not set the following parameter to zero!
4123       PARAMETER ( NDFMAX = 20)
4124
4125  
4126       COMMON/QCGRID/
4127      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4128      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4129      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4130      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4131  
4132  
4133       SAVE XLAST,IXLAST,NGLAST
4134  
4135       DATA XLAST  / 0. /
4136       DATA IXLAST / 0 /
4137       DATA NGLAST / 0 /
4138       DATA EPSI   /1.E-6/
4139
4140 *     CALL QTRACE('IXNEARX',0)
4141  
4142       IF(X.EQ.XLAST.AND.NGRVER.EQ.NGLAST) THEN
4143         IXNEARX = IXLAST
4144         RETURN
4145       ENDIF
4146  
4147       IX      = 0
4148       IXLAST  = 0
4149       NGLAST  = NGRVER
4150       XLAST   = X
4151       IXNEARX = 0
4152
4153       IF(X.GT.1..OR.NXX.LE.0)   RETURN
4154       IF(X/XXTAB(1).LT.1.-EPSI) RETURN
4155
4156       DO 10 I = 1,NXX
4157 *mb     IF(XXTAB(I).LE.X+EPSI) IX = I
4158         IF(XXTAB(I)/X.LE.1.+EPSI) IX = I
4159   10  CONTINUE
4160  
4161 *mb   IF(ABS(XXTAB(IX)-X).LE.EPSI) THEN
4162       IF(ABS(XXTAB(IX)/X-1.).LE.EPSI) THEN
4163         IXNEARX = IX
4164         IXLAST  = IX
4165       ELSE
4166         GAP     = SYFROMX(XXTAB(IX+1))-SYFROMX(XXTAB(IX))
4167         DEL     = SYFROMX(X)-SYFROMX(XXTAB(IX))
4168         IF(DEL/GAP.LE.0.5) THEN
4169           IXNEARX = -IX
4170         ELSE
4171           IXNEARX = -MIN(IX+1,NXX)
4172         ENDIF
4173         IXLAST  = IXNEARX
4174       ENDIF
4175  
4176       RETURN
4177       END
4178
4179 CDECK  ID>, IQFROMQ.
4180  
4181 C     ===========================
4182       INTEGER FUNCTION IQFROMQ(Q)
4183 C     ===========================
4184
4185 C---  Returns gridindex IQ given a value for Q.
4186 C---  If Q is outside the current gridboundary then IQFROMQ = 0.
4187 C---  If Q corresponds to gridindex IQ  then IQFROMQ = IQ.
4188 C---  If Q lies above IQ and below IQ+1 then IQFROMQ = -IQ.
4189
4190 C---  NB: Q and Q2TAB are different only if |Q-Q2TAB| < epsi.
4191 C---  NB: If since the previous call the grid did not change
4192 C---      (i.e. NGRVER is the same) and if Q did not change, then
4193 C---      IQFROMQ just returns the result of the previous call.
4194  
4195       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4196  
4197  
4198       PARAMETER ( MXX = 410 )
4199       PARAMETER ( MQ2 =  120 )
4200
4201 C--   Do not set the following parameter to zero!
4202       PARAMETER ( NDFMAX = 20)
4203
4204  
4205       COMMON/QCGRID/
4206      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4207      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4208      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4209      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4210  
4211  
4212       SAVE QLAST,IQLAST,NGLAST
4213  
4214       DATA QLAST  / 0. /
4215       DATA IQLAST / 0 /
4216       DATA NGLAST / 0 /
4217       DATA EPSI   /1.E-6/
4218
4219 *     CALL QTRACE('IQFROMQ',0)
4220  
4221       IF(Q.EQ.QLAST.AND.NGRVER.EQ.NGLAST) THEN
4222         IQFROMQ = IQLAST
4223         RETURN
4224       ENDIF
4225  
4226       IQ      = 0
4227       IQLAST  = 0
4228       NGLAST  = NGRVER
4229       QLAST   = Q
4230       IQFROMQ = 0
4231
4232       IF(NQ2.EQ.0)                RETURN
4233       IF(Q/Q2TAB(1).LT.1.-EPSI)   RETURN
4234       IF(Q/Q2TAB(NQ2).GT.1.+EPSI) RETURN
4235
4236       DO 10 I = 1,NQ2
4237 *mb   IF(Q2TAB(I).LE.Q+EPSI) IQ = I
4238       IF(Q2TAB(I)/Q.LE.1.+EPSI) IQ = I
4239   10  CONTINUE
4240  
4241 *mb   IF(ABS(Q2TAB(IQ)-Q).LE.EPSI) THEN
4242       IF(ABS(Q2TAB(IQ)/Q-1.).LE.EPSI) THEN
4243         IQFROMQ = IQ
4244         IQLAST  = IQ
4245       ELSE
4246         IQFROMQ = -IQ
4247         IQLAST  = -IQ
4248       ENDIF
4249  
4250       RETURN
4251       END
4252
4253 C------------------------------------------------
4254
4255 *-      REAL QR,Q1,Q2,QLAST
4256 *- 
4257 *-+SEQ,QCNXQM.
4258 *-+SEQ,QCGRID.
4259 *- 
4260 *-      SAVE QLAST,IQLAST,NGLAST
4261 *- 
4262 *-      DATA QLAST  / 0. /
4263 *-      DATA IQLAST / 0 /
4264 *-      DATA NGLAST / 0 /
4265 *-
4266 *-*     CALL QTRACE('IQFROMQ',0)
4267 *- 
4268 *-      QR = Q
4269 *-      IF(QR.EQ.QLAST.AND.NGRVER.EQ.NGLAST) THEN
4270 *-        IQFROMQ = IQLAST
4271 *-        RETURN
4272 *-      ENDIF
4273 *- 
4274 *-      IQ      = 0
4275 *-      IQLAST  = 0
4276 *-      NGLAST  = NGRVER
4277 *-      QLAST   = Q
4278 *-      IQFROMQ = 0
4279 *-
4280 *-
4281 *-      IF(NQ2.LE.0)   RETURN
4282 *-      Q1 = Q2TAB(1)
4283 *-      IF(QR.LT.Q1)   RETURN
4284 *-      Q2 = Q2TAB(NQ2)
4285 *-      IF(QR.GT.Q2)   RETURN
4286 *-      IF(QR.EQ.Q2)   THEN
4287 *-        IQFROMQ = NQ2
4288 *-        IQLAST  = NQ2
4289 *-        RETURN
4290 *-      ENDIF
4291 *-
4292 *-      DO IQ = 1,NQ2-1
4293 *-        Q2 = Q2TAB(IQ+1)
4294 *-        IF(Q1.LE.QR.AND.QR.LT.Q2) THEN
4295 *-          IQFROMQ = -IQ
4296 *-          IF(Q1.EQ.QR) IQFROMQ = IQ
4297 *-          IQLAST = IQ
4298 *-          RETURN
4299 *-        ENDIF
4300 *-        Q1 = Q2
4301 *-      ENDDO
4302 *- 
4303 *-      RETURN
4304 *-      END
4305
4306 CDECK  ID>, IQNEARQ.
4307  
4308 C     ===========================
4309       INTEGER FUNCTION IQNEARQ(Q)
4310 C     ===========================
4311
4312 C---  Returns closest gridindex IQ given a value for Q.
4313 C---  If Q is outside the current gridboundary then IQNEARQ = 0.
4314 C---  If Q corresponds to gridindex IQ  then IQNEARQ = IQ.
4315 C---  If Q lies above IQ and below IQ+1 then IQNEARQ = -IQ or -IQ-1.
4316
4317 C---  NB: Q and Q2TAB are different only if |Q-Q2TAB| < epsi.
4318 C---  NB: If since the previous call the grid did not change
4319 C---      (i.e. NGRVER is the same) and if Q did not change, then
4320 C---      IQNEARQ just returns the result of the previous call.
4321  
4322       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4323  
4324  
4325       PARAMETER ( MXX = 410 )
4326       PARAMETER ( MQ2 =  120 )
4327
4328 C--   Do not set the following parameter to zero!
4329       PARAMETER ( NDFMAX = 20)
4330
4331  
4332       COMMON/QCGRID/
4333      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4334      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4335      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4336      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4337  
4338  
4339       SAVE QLAST,IQLAST,NGLAST
4340  
4341       DATA QLAST  / 0. /
4342       DATA IQLAST / 0 /
4343       DATA NGLAST / 0 /
4344       DATA EPSI   /1.E-6/
4345
4346 *     CALL QTRACE('IQNEARQ',0)
4347  
4348       IF(Q.EQ.QLAST.AND.NGRVER.EQ.NGLAST) THEN
4349         IQNEARQ = IQLAST
4350         RETURN
4351       ENDIF
4352  
4353       IQ      = 0
4354       IQLAST  = 0
4355       NGLAST  = NGRVER
4356       QLAST   = Q
4357       IQNEARQ = 0
4358
4359       IF(NQ2.EQ.0)                RETURN
4360       IF(Q/Q2TAB(1).LT.1.-EPSI)   RETURN
4361       IF(Q/Q2TAB(NQ2).GT.1.+EPSI) RETURN
4362
4363       DO 10 I = 1,NQ2
4364 *mb   IF(Q2TAB(I).LE.Q+EPSI) IQ = I
4365       IF(Q2TAB(I)/Q.LE.1.+EPSI) IQ = I
4366   10  CONTINUE
4367  
4368 *mb   IF(ABS(Q2TAB(IQ)-Q).LE.EPSI) THEN
4369       IF(ABS(Q2TAB(IQ)/Q-1.).LE.EPSI) THEN
4370         IQNEARQ = IQ
4371         IQLAST  = IQ
4372       ELSE
4373         GAP     = LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
4374         DEL     = LOG(Q/Q2TAB(IQ))
4375         IF(DEL/GAP.LE.0.5) THEN
4376           IQNEARQ = -IQ
4377         ELSE
4378           IQNEARQ = -MIN(IQ+1,NQ2)
4379         ENDIF
4380         IQLAST  = IQNEARQ
4381       ENDIF
4382  
4383       RETURN
4384       END
4385
4386 CDECK  ID>, XFROMIX.
4387  
4388 C     =====================================
4389       DOUBLE PRECISION FUNCTION XFROMIX(IX)
4390 C     =====================================
4391  
4392       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4393
4394 C---  Returns x given the gridindex IX.
4395 C---  If IX is out of range [1,NXX] then XFROMIX = 0.
4396
4397  
4398       PARAMETER ( MXX = 410 )
4399       PARAMETER ( MQ2 =  120 )
4400
4401 C--   Do not set the following parameter to zero!
4402       PARAMETER ( NDFMAX = 20)
4403
4404  
4405       COMMON/QCGRID/
4406      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4407      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4408      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4409      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4410  
4411
4412 *     CALL QTRACE('XFROMIX',0)
4413  
4414       IF(IX.LE.0) THEN
4415         XFROMIX = 0.
4416       ELSEIF(IX.GT.NXX) THEN
4417         XFROMIX = 0.
4418       ELSE
4419         XFROMIX = XXTAB(IX)
4420       ENDIF
4421  
4422       RETURN
4423       END
4424
4425 CDECK  ID>, QFROMIQ.
4426 C
4427 C     =====================================
4428       DOUBLE PRECISION FUNCTION QFROMIQ(IQ)
4429 C     =====================================
4430  
4431       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4432
4433 C---  Returns Q2 given the gridindex IQ.
4434 C---  If IQ is out of range [1,NQ2] then QFROMIQ = 0.
4435  
4436  
4437       PARAMETER ( MXX = 410 )
4438       PARAMETER ( MQ2 =  120 )
4439
4440 C--   Do not set the following parameter to zero!
4441       PARAMETER ( NDFMAX = 20)
4442
4443  
4444       COMMON/QCGRID/
4445      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4446      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4447      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4448      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4449  
4450
4451 *     CALL QTRACE('QFROMIQ',0)
4452  
4453       IF(IQ.LE.0) THEN
4454         QFROMIQ = 0.
4455       ELSEIF(IQ.GT.NQ2) THEN
4456         QFROMIQ = 0.
4457       ELSE
4458         QFROMIQ = Q2TAB(IQ)
4459       ENDIF
4460  
4461       RETURN
4462       END
4463
4464 CDECK  ID>, GRCUTS.
4465  
4466 C     ====================================
4467       SUBROUTINE GRCUTS(XMI,QMI,QMA,ROOTS)
4468 C     ====================================
4469
4470 C---  GRCUTS:  user input of cuts.
4471 C---  Input :  Double precision XMI:  reject x  .lt. XMI
4472 C---                            QMI:  reject Q2 .lt. QMI
4473 C---                            QMA:  reject Q2 .gt. QMA
4474 C---                          ROOTS:  reject Q2 .gt. x * roots**2
4475 C---  Output:  XMICUT, QMICUT, QMACUT, RS2CUT in +seq,QCGRID.
4476 C---  NB    :  No cut is applied when XMI etc .le. 0 (XMICUT etc = -1.)
4477  
4478       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4479  
4480  
4481       PARAMETER ( MXX = 410 )
4482       PARAMETER ( MQ2 =  120 )
4483
4484 C--   Do not set the following parameter to zero!
4485       PARAMETER ( NDFMAX = 20)
4486
4487  
4488       COMMON/QCGRID/
4489      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4490      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4491      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4492      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4493  
4494
4495       CALL QTRACE('GRCUTS ',0)
4496
4497       IF(XMI.LE.0..OR.XMI.GE.1.) THEN
4498         XMICUT = -1.
4499       ELSE
4500         XMICUT = XMI
4501       ENDIF
4502
4503       IF(QMI.LE.0.) THEN
4504         QMICUT = -1.
4505       ELSE
4506         QMICUT = QMI
4507       ENDIF
4508
4509       IF(QMA.LE.0.) THEN
4510         QMACUT = -0.5
4511       ELSE
4512         QMACUT = QMA
4513       ENDIF
4514
4515       IF(ROOTS.LE.0.) THEN
4516         RS2CUT = -1.
4517       ELSE
4518         RS2CUT = ROOTS*ROOTS
4519       ENDIF
4520
4521       IF(QMICUT.GE.QMACUT.AND.QMACUT.GT.0.) THEN
4522
4523         WRITE(6,'(/'' ------------------------------------'')')
4524         WRITE(6,'( '' QCDNUM error in s/r GRCUTS ---> STOP'')')
4525         WRITE(6,'( '' ------------------------------------'')')
4526         WRITE(6,'( '' Input Xmin  :'',E12.5)') XMI
4527         WRITE(6,'( ''       Q2min :'',E12.5)') QMI
4528         WRITE(6,'( ''       Q2max :'',E12.5)') QMA
4529         WRITE(6,'( ''       rootS :'',E12.5)') ROOTS
4530         WRITE(6,'(/'' Value of Q2min .ge. Q2max'')')
4531
4532         CALL QTRACE('GRCUTS ',1)
4533
4534         STOP
4535
4536       ENDIF
4537
4538       CALL GRSETC
4539
4540       RETURN
4541       END
4542
4543 CDECK  ID>, GRSETC.
4544  
4545 C     =================
4546       SUBROUTINE GRSETC
4547 C     =================
4548
4549 C---  Input:  XMIN, QMIN, QMAX, RS2CUT + grid-definitions, all this
4550 C---          as stored in QCGRID.
4551 C---  Output: integer array IFAILC(IX,IQ) (see below).
4552 C---  Called  by GRCUTS (user input of cuts) and
4553 C---          by all grid definition routines (update of IFAILC).
4554
4555 C---  Fill the array IFAILC(IX,IQ) such that
4556 C---  IFAILC = 0    : gridpoint passes all cuts
4557 C---  IFAILC = ijkl : i = 0/1 no/yes fail roots cut
4558 C---                  j = 0/1 no/yes fail qmax cut
4559 C---                  k = 0/1 no/yes fail qmin cut
4560 C---                  l = 0/1 no/yes fail xmin cut
4561
4562 C---  For any  x,Q2 passing the cuts the four surrounding gridpoints
4563 C---  will also be flagged as passing the cut. This then guarantees
4564 C---  that parton distributions are available on the surrounding
4565 C---  gridpoints for interpolation purposes.
4566  
4567       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4568  
4569  
4570       LOGICAL
4571      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
4572      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
4573      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
4574      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
4575      +LFFCAL,LASOLD
4576
4577       COMMON/QCFLAG/ 
4578      +IORD,IOLAST,
4579      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
4580      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
4581      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
4582      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
4583      +LFFCAL(7,30),LASOLD
4584  
4585  
4586       PARAMETER ( MXX = 410 )
4587       PARAMETER ( MQ2 =  120 )
4588
4589 C--   Do not set the following parameter to zero!
4590       PARAMETER ( NDFMAX = 20)
4591
4592  
4593       COMMON/QCGRID/
4594      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4595      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4596      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4597      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4598  
4599  
4600       COMMON/QCPASS/
4601      +ALPHA0, Q0ALFA, ASLAST, QALAST,
4602      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
4603      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
4604      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
4605      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
4606      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
4607      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
4608      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
4609      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
4610      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
4611
4612       LOGICAL LEVDONE,LE_DONE
4613       COMMON/QCLEVL/
4614      +LEVDONE(MXX,10),LE_DONE(MXX)
4615  
4616
4617       DO IX = 1,MXX
4618         DO IQ = 1,MQ2
4619           IFAILC(IX,IQ) = 11111
4620         ENDDO
4621       ENDDO
4622       IF(NXX.LE.0)  RETURN
4623       IF(NQ2.LE.0)  RETURN
4624
4625       DO IQ = 1,NQ2
4626         DO IX = 1,NXX
4627           IXP1          = MIN(IX+1,NXX)
4628           IQP1          = MIN(IQ+1,NQ2)
4629           IQM1          = MAX(IQ-1,1)
4630           IFAILC(IX,IQ) = 0
4631           IF(XXTAB(IXP1).LE.XMICUT.AND.XMICUT.GT.0.)
4632      +       IFAILC(IX,IQ) = IFAILC(IX,IQ)+1
4633           IF(Q2TAB(IQP1).LE.QMICUT.AND.QMICUT.GT.0.)
4634      +       IFAILC(IX,IQ) = IFAILC(IX,IQ)+10
4635           IF(Q2TAB(IQM1).GE.QMACUT.AND.QMACUT.GT.0.)
4636      +       IFAILC(IX,IQ) = IFAILC(IX,IQ)+100
4637           IF(Q2TAB(IQM1).GE.XXTAB(IXP1)*RS2CUT.AND.RS2CUT.GT.0.)
4638      +       IFAILC(IX,IQ) = IFAILC(IX,IQ)+1000
4639           IF(Q2TAB(IQP1).LE.QMINAS.AND.QMINAS.GT.0.)
4640      +       IFAILC(IX,IQ) = IFAILC(IX,IQ)+10000
4641
4642         ENDDO
4643       ENDDO
4644
4645 C--   Invalidate all evolutions      
4646       CALL QNFALS(LEVDONE,MXX*10)
4647
4648       RETURN
4649       END
4650
4651 CDECK  ID>, IFAILXQ.
4652  
4653 C     =============================
4654       INTEGER FUNCTION IFAILXQ(X,Q)
4655 C     =============================
4656
4657 C---  User interface to ICUTXQ
4658  
4659       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4660
4661       CALL QTRACE('IFAILXQ',0)
4662
4663       IFAILXQ = ICUTXQ(X,Q,0)
4664
4665       RETURN
4666       END
4667
4668 CDECK  ID>, ICUTXQ.
4669  
4670 C     ==================================
4671       INTEGER FUNCTION ICUTXQ(X,Q,IPRIN)
4672 C     ==================================
4673
4674 C---  ICUTXQ = ijkl : i = 0/1  no/yes fail ROOTS cut
4675 C---                  j = 0/1  no/yes fail QMAX cut
4676 C---                  k = 0/1  no/yes fail QMIN cut
4677 C---                  l = 0/1  no/yes fail XMIN cut
4678
4679 C---  Input integer IPRIN = 0/1 no/yes printout.
4680  
4681       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4682  
4683  
4684       PARAMETER ( MXX = 410 )
4685       PARAMETER ( MQ2 =  120 )
4686
4687 C--   Do not set the following parameter to zero!
4688       PARAMETER ( NDFMAX = 20)
4689
4690  
4691       COMMON/QCGRID/
4692      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4693      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4694      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4695      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4696  
4697
4698       CHARACTER*4 PASS(0:1)
4699
4700       DATA PASS /'pass','fail'/
4701
4702 C--   No x-grid available
4703       IF(NXX.LE.0) THEN
4704         ICUTXQ = 11111
4705         RETURN
4706       ENDIF
4707 C--   No Q2 grid available
4708       IF(NQ2.LE.0) THEN
4709         ICUTXQ = 11111
4710         RETURN
4711       ENDIF
4712 C--   x > 1
4713       IF(X.GT.1.0) THEN
4714         ICUTXQ = 11111
4715         RETURN
4716       ENDIF
4717
4718       I1 = 0
4719       I2 = 0
4720       I3 = 0
4721       I4 = 0
4722       I5 = 0
4723
4724       IF((X.LT.XXTAB(1)).OR.(X.LT.XMICUT.AND.XMICUT.GT.0.))
4725      +    I1 = 1
4726       IF((Q.LT.Q2TAB(1)).OR.(Q.LT.QMICUT.AND.QMICUT.GT.0.))
4727      +    I2 = 1
4728       IF((Q.GT.Q2TAB(NQ2)).OR.(Q.GT.QMACUT.AND.QMACUT.GT.0.))
4729      +    I3 = 1
4730       IF(Q.GT.X*RS2CUT.AND.RS2CUT.GT.0.) 
4731      +    I4 = 1
4732       IF((Q.LT.Q2TAB(1)).OR.(Q.LT.QMINAS.AND.QMINAS.GT.0.))
4733      +    I5 = 1
4734
4735       ICUTXQ = 10000*I5 + 1000*I4 + 100*I3 + 10*I2 + I1
4736
4737       IF(IPRIN.EQ.1) THEN
4738
4739         XMIPR = XMICUT
4740         IF(XMICUT.LE.0.) XMIPR = XXTAB(1)
4741         QMIPR = QMICUT
4742         IF(QMICUT.LE.0.) QMIPR = Q2TAB(1)
4743         QMAPR = QMACUT
4744         IF(QMACUT.LE.0.) QMAPR = Q2TAB(NQ2)
4745         WRITE(6,'('' '')')
4746         WRITE(6,'('' x  ='',E12.5,'' xmin        = '',E12.5,
4747      +            '' pass/fail = '',A4)') X, XMIPR, PASS(I1)
4748         WRITE(6,'('' Q2 ='',E12.5,'' Qmin        = '',E12.5,
4749      +            '' pass/fail = '',A4)') Q, QMIPR, PASS(I2)
4750         WRITE(6,'('' Q2 ='',E12.5,'' Qmax        = '',E12.5,
4751      +            '' pass/fail = '',A4)') Q, QMAPR, PASS(I3)
4752         WRITE(6,'('' s  ='',E12.5,'' Smax        = '',E12.5,
4753      +            '' pass/fail = '',A4)') Q/X, RS2CUT, PASS(I4)
4754         WRITE(6,'('' Q2 ='',E12.5,'' Qmin_alphas = '',E12.5,
4755      +            '' pass/fail = '',A4)') Q, QMINAS, PASS(I5)
4756         WRITE(6,'('' '')')
4757
4758       ENDIF
4759
4760       RETURN
4761       END
4762
4763 CDECK  ID>, IFAILIJ.
4764  
4765 C     ===============================
4766       INTEGER FUNCTION IFAILIJ(IX,IQ)
4767 C     ===============================
4768
4769 C---  User interface to ICUTIJ
4770  
4771       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4772
4773       CALL QTRACE('IFAILIJ',0)
4774
4775       IFAILIJ = ICUTIJ(IX,IQ,0)
4776
4777       RETURN
4778       END
4779
4780 CDECK  ID>, ICUTIJ.
4781  
4782 C     ====================================
4783       INTEGER FUNCTION ICUTIJ(JX,JQ,IPRIN)
4784 C     ====================================
4785
4786 C---  ICUTIJ = ijklm : i = 0/1  no/yes fail QMINA cut
4787 C---                   j = 0/1  no/yes fail ROOTS cut
4788 C---                   k = 0/1  no/yes fail QMAX  cut
4789 C---                   l = 0/1  no/yes fail QMIN  cut
4790 C---                   m = 0/1  no/yes fail XMIN  cut
4791
4792 C---  ijklm is taken from array IFAILC.
4793 C---  IFAILC is set by s/r GRSETC
4794
4795 C---  Input integer IPRIN = 0/1 no/yes printout.
4796  
4797       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4798  
4799  
4800       PARAMETER ( MXX = 410 )
4801       PARAMETER ( MQ2 =  120 )
4802
4803 C--   Do not set the following parameter to zero!
4804       PARAMETER ( NDFMAX = 20)
4805
4806  
4807       COMMON/QCGRID/
4808      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4809      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4810      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4811      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4812  
4813
4814       CHARACTER*4 PASS(0:1)
4815
4816       DATA PASS /'pass','fail'/
4817
4818       ICUTIJ = 11111
4819
4820 C--   No x-grid available
4821       IF(NXX.LE.0) RETURN
4822 C--   No Q2 grid available
4823       IF(NQ2.LE.0) RETURN
4824
4825       IX     = ABS(JX)
4826       IQ     = ABS(JQ)
4827       IF(IX.GE.1.AND.IX.LE.NXX.AND.IQ.GE.1.AND.IQ.LE.NQ2)
4828      +  ICUTIJ = IFAILC(IX,IQ)
4829
4830       IF(IPRIN.EQ.1) THEN
4831
4832         IF(IX.GE.1.AND.IX.LE.NXX.AND.IQ.GE.1.AND.IQ.LE.NQ2) THEN
4833           X  =  XXTAB(IX)
4834           Q  =  Q2TAB(IQ)
4835         ELSE
4836           X  =  0.
4837           Q  =  0.
4838         ENDIF
4839         I5 =  ICUTIJ/10000.
4840         I4 = (ICUTIJ-10000*I5)/1000.
4841         I3 = (ICUTIJ-10000*I5-1000*I4)/100.
4842         I2 = (ICUTIJ-10000*I5-1000*I4-100*I3)/10.
4843         I1 =  ICUTIJ-10000*I5-1000*I4-100*I3-10*I2
4844
4845         XMIPR = XMICUT
4846         IF(XMICUT.LE.0.) XMIPR = XXTAB(1)
4847         QMIPR = QMICUT
4848         IF(QMICUT.LE.0.) QMIPR = Q2TAB(1)
4849         QMAPR = QMACUT
4850         IF(QMACUT.LE.0.) QMAPR = Q2TAB(NQ2)
4851         WRITE(6,'('' '')')
4852         WRITE(6,'('' IX = '',I5,'' x  ='',E12.5,'' xmin        = '',
4853      +  E12.5,'' pass/fail = '',A4)') IX, X, XMIPR, PASS(I1)
4854         WRITE(6,'('' IQ = '',I5,'' Q2 ='',E12.5,'' Qmin        = '',
4855      +  E12.5,'' pass/fail = '',A4)') IQ, Q, QMIPR, PASS(I2)
4856         WRITE(6,'('' IQ = '',I5,'' Q2 ='',E12.5,'' Qmax        = '',
4857      +  E12.5,'' pass/fail = '',A4)') IQ, Q, QMAPR, PASS(I3)
4858         WRITE(6,'(''      '',5X,'' s  ='',E12.5,'' Smax        = '',
4859      +  E12.5,'' pass/fail = '',A4)') Q/X, RS2CUT, PASS(I4)
4860         WRITE(6,'('' IQ = '',I5,'' Q2 ='',E12.5,'' Qmin_alphas = '',
4861      +  E12.5,'' pass/fail = '',A4)') IQ, Q, QMINAS, PASS(I5)
4862         WRITE(6,'('' '')')
4863
4864       ENDIF
4865
4866       RETURN
4867       END
4868
4869 CDECK  ID>, QTHRES.
4870  
4871 C     ==========================
4872       SUBROUTINE QTHRES(T34,T45)
4873 C     ==========================
4874
4875 C---  QTHRES:  user input of flavour thresholds.
4876 C---  Input :  Double precision T34:  Q2 .lt. T34 --> f = 3
4877 C---                                  Q2 .ge. T34 --> f = 4
4878 C---                            T45:  Q2 .lt. T45 --> f = 4
4879 C---                                  Q2 .ge. T45 --> f = 5
4880 C---  Output:  THRS34 and THRS45 in +seq,QCGRID.
4881 C---  NB1   :  Default THRS34 = -huge, THRS45 = +huge --> f = 4.
4882 C---  NB2   :  The array NFMAP(Q2) = 3,4,5 is setup here through a
4883 C---           call to QNSETT and maintained further in the grid
4884 C---           defining routines.
4885  
4886       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4887  
4888  
4889       PARAMETER ( MXX = 410 )
4890       PARAMETER ( MQ2 =  120 )
4891
4892 C--   Do not set the following parameter to zero!
4893       PARAMETER ( NDFMAX = 20)
4894
4895  
4896       COMMON/QCGRID/
4897      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4898      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4899      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4900      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4901  
4902
4903       CALL QTRACE('QTHRES ',0)
4904
4905       IF(T34.GE.T45) THEN
4906         IERR = 1
4907         GOTO 500
4908       ENDIF
4909
4910       THRS34 = T34
4911       THRS45 = T45
4912
4913 C---  Fill the flavour map
4914       CALL QNSETT
4915
4916       RETURN
4917
4918  500  CONTINUE
4919
4920       WRITE(6,'(/'' ------------------------------------'')')
4921       WRITE(6,'( '' QCDNUM error in s/r QTHRES ---> STOP'')')
4922       WRITE(6,'( '' ------------------------------------'')')
4923       WRITE(6,'( '' Input Threshold34 :'',E12.5)') T34
4924       WRITE(6,'( ''       Threshold45 :'',E12.5)') T45
4925       WRITE(6,'(/'' Value of T34 .ge. T45'')')
4926
4927       CALL QTRACE('QTHRES ',1)
4928
4929       STOP
4930
4931       END
4932
4933 CDECK  ID>, QNSETT.
4934  
4935 C     =================
4936       SUBROUTINE QNSETT
4937 C     =================
4938
4939 C---  Input:  THRS34 and THRS45 + grid-definitions, all this
4940 C---          as stored in QCGRID.
4941 C---  Output: integer array NFMAP(IQ) = 3,4,5
4942 C---  Called  by QTHRES (user input of thresholds) and
4943 C---          by all grid definition routines (update of NFMAP).
4944
4945       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
4946  
4947  
4948       LOGICAL
4949      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
4950      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
4951      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
4952      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
4953      +LFFCAL,LASOLD
4954
4955       COMMON/QCFLAG/ 
4956      +IORD,IOLAST,
4957      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
4958      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
4959      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
4960      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
4961      +LFFCAL(7,30),LASOLD
4962  
4963  
4964       PARAMETER ( MXX = 410 )
4965       PARAMETER ( MQ2 =  120 )
4966
4967 C--   Do not set the following parameter to zero!
4968       PARAMETER ( NDFMAX = 20)
4969
4970  
4971       COMMON/QCGRID/
4972      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
4973      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
4974      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
4975      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
4976  
4977  
4978       COMMON/QCPASS/
4979      +ALPHA0, Q0ALFA, ASLAST, QALAST,
4980      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
4981      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
4982      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
4983      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
4984      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
4985      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
4986      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
4987      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
4988      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
4989
4990       LOGICAL LEVDONE,LE_DONE
4991       COMMON/QCLEVL/
4992      +LEVDONE(MXX,10),LE_DONE(MXX)
4993  
4994
4995       IF(NQ2.LE.0) THEN
4996         DO IQ = 1,MQ2
4997           NFMAP(IQ) = 4
4998         ENDDO
4999         RETURN
5000       ENDIF
5001
5002       DO IQ = 1,NQ2
5003                                 NFMAP(IQ) = 4
5004         IF(Q2TAB(IQ).LT.THRS34) NFMAP(IQ) = 3
5005         IF(Q2TAB(IQ).GE.THRS45) NFMAP(IQ) = 5
5006       ENDDO
5007
5008 C--   Invalidate all evolutions      
5009       CALL QNFALS(LEVDONE,MXX*10)
5010
5011       RETURN
5012       END
5013  
5014 CDECK  ID>, QNFMAP.
5015  
5016 C     ==============================
5017       SUBROUTINE QNFMAP(OPT,T34,T45)
5018 C     ==============================
5019  
5020       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5021  
5022       CHARACTER*(*) OPT
5023  
5024  
5025 C---  Obsolete 17/07/96: use QTHRES instead
5026
5027       CALL QTHRES(T34,T45)
5028
5029       RETURN
5030  
5031       END
5032  
5033 CDECK  ID>, QNFSET.
5034  
5035 C     ===========================
5036       SUBROUTINE QNFSET(IX,IQ,NF)   
5037 C     ===========================
5038  
5039       WRITE(6,'(/'' QNFSET: this routine is not available'',
5040      +           '' ---> STOP'')')
5041       STOP
5042  
5043       END
5044  
5045 CDECK  ID>, QNFNUL.
5046  
5047 C     =================
5048       SUBROUTINE QNFNUL
5049 C     =================
5050  
5051       WRITE(6,'(/'' QNFNUL: this routine is not available'',
5052      +           '' ---> STOP'')')
5053       STOP
5054  
5055       END
5056
5057 CDECK  ID>, NFLGET.
5058  
5059 C     ===========================
5060       INTEGER FUNCTION NFLGET(IQ)
5061 C     ===========================
5062  
5063       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5064  
5065  
5066       PARAMETER ( MXX = 410 )
5067       PARAMETER ( MQ2 =  120 )
5068
5069 C--   Do not set the following parameter to zero!
5070       PARAMETER ( NDFMAX = 20)
5071
5072  
5073       COMMON/QCGRID/
5074      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5075      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5076      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5077      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5078  
5079
5080       CALL QTRACE('NFLGET ',0)
5081  
5082       NFLGET = 0
5083       IF(IQ.GE.1.AND.IQ.LE.NQ2) THEN
5084         NFLGET = NFMAP(IQ)
5085       ELSE
5086         WRITE(6,'(/'' ------------------------------------'')')
5087         WRITE(6,'( '' QCDNUM error in s/r NFLGET ---> STOP'')')
5088         WRITE(6,'( '' ------------------------------------'')')
5089         WRITE(6,'( '' Input IQ :'',I10)') IQ
5090         WRITE(6,'(/'' IQ outside grid boundary'')')
5091         CALL QTRACE('NFLGET ',1)
5092         STOP
5093       ENDIF
5094  
5095       RETURN
5096       END
5097
5098 CDECK  ID>, QPGRID.
5099  
5100 C     ======================
5101       SUBROUTINE QPGRID(LUN)
5102 C     ======================
5103  
5104       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5105  
5106  
5107       PARAMETER ( MXX = 410 )
5108       PARAMETER ( MQ2 =  120 )
5109
5110 C--   Do not set the following parameter to zero!
5111       PARAMETER ( NDFMAX = 20)
5112
5113  
5114       COMMON/QCGRID/
5115      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5116      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5117      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5118      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5119  
5120  
5121 C--   Write x-Q2 evolution grid
5122 C--   -------------------------
5123
5124       WRITE(LUN,'(/'' QCDNUM x-Q2 evolution grid'')')
5125       WRITE(LUN,'( '' --------------------------'')')
5126
5127       CALL GRGIVE(N_X,X_MI,X_MA,N_Q,Q_MI,Q_MA)
5128      
5129       WRITE(LUN,'(/''   nx      xmin      xmax'',
5130      +             ''   nq      qmin      qmax'')')
5131       WRITE(LUN,'(I5,2F10.7,I5,2F10.2)') 
5132      +            N_X,X_MI,X_MA,N_Q,Q_MI,Q_MA
5133       WRITE(LUN,'(/'' Xgrid (heavy quarks)'')')
5134       WRITE(LUN,'(5(I4,E12.5))') (I,XHTAB(I),I=1,NXX)
5135       WRITE(LUN,'(/'' Xgrid'')')
5136       WRITE(LUN,'(5(I4,E12.5))') (I,XXTAB(I),I=1,NXX)
5137       WRITE(LUN,'(/'' Qgrid'')')
5138       WRITE(LUN,'(5(I4,E12.5))') (I,Q2TAB(I),I=1,NQ2)
5139       IF(RS2CUT.GE.0.) THEN
5140         RS2C = SQRT(RS2CUT)
5141       ELSE
5142         RS2C = RS2CUT
5143       ENDIF
5144       WRITE(LUN,'(/'' Thresholds and cuts''/
5145      +             '' Q2  charm .......: '',E12.5/
5146      +             '' Q2 bottom .......: '',E12.5/
5147      +             '' Xmin  cut .......: '',E12.5/
5148      +             '' Qmin  cut .......: '',E12.5/
5149      +             '' Qmax  cut .......: '',E12.5/
5150      +             '' Roots cut .......: '',E12.5/
5151      +             '' Qmin  alpha_s ...: '',E12.5/)')
5152      +             THRS34,THRS45,XMICUT,QMICUT,QMACUT,RS2C,QMINAS
5153
5154       RETURN
5155       END
5156  
5157 CDECK  ID>, QDELQ2.
5158  
5159 C     =================
5160       SUBROUTINE QDELQ2
5161 C     =================
5162  
5163       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5164  
5165  
5166       LOGICAL
5167      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5168      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5169      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5170      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5171      +LFFCAL,LASOLD
5172
5173       COMMON/QCFLAG/ 
5174      +IORD,IOLAST,
5175      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5176      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5177      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5178      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5179      +LFFCAL(7,30),LASOLD
5180  
5181  
5182       PARAMETER ( MXX = 410 )
5183       PARAMETER ( MQ2 =  120 )
5184
5185 C--   Do not set the following parameter to zero!
5186       PARAMETER ( NDFMAX = 20)
5187
5188  
5189       COMMON/QCGRID/
5190      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5191      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5192      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5193      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5194  
5195  
5196       COMMON/QCPASS/
5197      +ALPHA0, Q0ALFA, ASLAST, QALAST,
5198      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
5199      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
5200      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
5201      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
5202      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
5203      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
5204      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
5205      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
5206      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
5207
5208       LOGICAL LEVDONE,LE_DONE
5209       COMMON/QCLEVL/
5210      +LEVDONE(MXX,10),LE_DONE(MXX)
5211  
5212
5213 C--   Pre-calculate log distance in Q2 for up and down evolution
5214
5215       DO 10 IQ = 2,NQ2
5216         DELUP(IQ) = LOG(Q2TAB(IQ)/Q2TAB(IQ-1))
5217   10  CONTINUE
5218       DO 20 IQ = NQ2-1,1,-1
5219         DELDN(IQ) = LOG(Q2TAB(IQ)/Q2TAB(IQ+1))
5220   20  CONTINUE
5221
5222       LDQ2OK = .TRUE. 
5223
5224       RETURN
5225       END
5226  
5227 CDECK  ID>, QFMARK.
5228  
5229 C     ======================
5230       SUBROUTINE QFMARK(X,Q)
5231 C     ======================
5232  
5233       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5234
5235  
5236       LOGICAL
5237      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5238      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5239      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5240      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5241      +LFFCAL,LASOLD
5242
5243       COMMON/QCFLAG/ 
5244      +IORD,IOLAST,
5245      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5246      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5247      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5248      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5249      +LFFCAL(7,30),LASOLD
5250  
5251  
5252       PARAMETER ( MXX = 410 )
5253       PARAMETER ( MQ2 =  120 )
5254
5255 C--   Do not set the following parameter to zero!
5256       PARAMETER ( NDFMAX = 20)
5257
5258  
5259       COMMON/QCGRID/
5260      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5261      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5262      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5263      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5264  
5265  
5266       COMMON/QCPASS/
5267      +ALPHA0, Q0ALFA, ASLAST, QALAST,
5268      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
5269      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
5270      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
5271      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
5272      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
5273      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
5274      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
5275      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
5276      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
5277
5278       LOGICAL LEVDONE,LE_DONE
5279       COMMON/QCLEVL/
5280      +LEVDONE(MXX,10),LE_DONE(MXX)
5281  
5282
5283       CALL QTRACE('QFMARK ',0)
5284
5285 C--   Mark gridpoints for fast structure function calculation
5286
5287       IERR = 0
5288       IF(X.LE.0. .OR. X.GT.1.) THEN
5289         IERR = 1
5290         GOTO 500
5291       ENDIF
5292       IF(Q.LE.0.) THEN
5293         IERR = 2
5294         GOTO 500
5295       ENDIF
5296
5297 C--   Mark the evolution grid
5298
5299       IX = IXFROMX(X)
5300       IQ = IQFROMQ(Q)
5301       IF(IX.EQ.0.OR.IQ.EQ.0) THEN
5302         IERR = 3
5303         GOTO 500
5304       ELSEIF(IX.GT.0.AND.IQ.GT.0) THEN
5305         MARKFF(IX,IQ)    = 1
5306         MARKQQ(IQ)       = 1
5307         LMARK            = .TRUE.
5308       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
5309         MARKFF(-IX,IQ)   = 1
5310         MARKFF(-IX+1,IQ) = 1
5311         MARKQQ(IQ)       = 1
5312         LMARK            = .TRUE.
5313       ELSEIF(IX.GT.0.AND.IQ.LT.0) THEN
5314         MARKFF(IX,-IQ)   = 1
5315         MARKFF(IX,-IQ+1) = 1
5316         MARKQQ(-IQ)      = 1
5317         MARKQQ(-IQ+1)    = 1
5318         LMARK            = .TRUE.
5319       ELSEIF(IX.LT.0.AND.IQ.LT.0) THEN
5320         MARKFF(-IX,-IQ)     = 1
5321         MARKFF(-IX+1,-IQ)   = 1
5322         MARKFF(-IX,-IQ+1)   = 1
5323         MARKFF(-IX+1,-IQ+1) = 1
5324         MARKQQ(-IQ)         = 1
5325         MARKQQ(-IQ+1)       = 1
5326         LMARK               = .TRUE.
5327       ENDIF
5328
5329 C--   Mark the heavy quark grid
5330
5331       IX = IHFROMH(X)
5332       IQ = IQFROMQ(Q)
5333       IF(IX.EQ.0.OR.IQ.EQ.0) THEN
5334         IERR = 3
5335         GOTO 500
5336       ELSEIF(IX.GT.0.AND.IQ.GT.0) THEN
5337         MARKFH(IX,IQ)    = 1
5338       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
5339         MARKFH(-IX,IQ)   = 1
5340         MARKFH(-IX+1,IQ) = 1
5341       ELSEIF(IX.GT.0.AND.IQ.LT.0) THEN
5342         MARKFH(IX,-IQ)   = 1
5343         MARKFH(IX,-IQ+1) = 1
5344       ELSEIF(IX.LT.0.AND.IQ.LT.0) THEN
5345         MARKFH(-IX,-IQ)     = 1
5346         MARKFH(-IX+1,-IQ)   = 1
5347         MARKFH(-IX,-IQ+1)   = 1
5348         MARKFH(-IX+1,-IQ+1) = 1
5349       ENDIF
5350
5351       RETURN
5352
5353  500  CONTINUE
5354
5355       DO I = 1,30
5356         DO J = 1,7
5357           LFFCAL(J,I)  = .FALSE.
5358         ENDDO
5359       ENDDO
5360
5361       WRITE(6,'(/'' ------------------------------------'')')
5362       WRITE(6,'( '' QCDNUM error in s/r QFMARK ---> STOP'')')
5363       WRITE(6,'( '' ------------------------------------'')')
5364       WRITE(6,'( '' Input x  :'',E12.5)') X
5365       WRITE(6,'( '' Input Q2 :'',E12.5)') Q
5366       IF(IERR.EQ.1) THEN
5367         WRITE(6,'(/'' Value of x outside allowed range [0,1]'')')
5368       ELSEIF(IERR.EQ.2) THEN
5369         WRITE(6,'(/'' Value of Q2 outside allowed range > 0'')')
5370       ELSEIF(IERR.EQ.3) THEN
5371         WRITE(6,'(/'' Value of x and/or Q2 outside grid'')')
5372         IDUM = ICUTXQ(X,Q,1)
5373       ENDIF
5374
5375       CALL QTRACE('QFMARK ',1)
5376
5377       STOP
5378
5379       END
5380  
5381 CDECK  ID>, QFMNUL.
5382  
5383 C     =================
5384       SUBROUTINE QFMNUL
5385 C     =================
5386  
5387       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5388
5389  
5390       LOGICAL
5391      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5392      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5393      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5394      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5395      +LFFCAL,LASOLD
5396
5397       COMMON/QCFLAG/ 
5398      +IORD,IOLAST,
5399      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5400      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5401      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5402      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5403      +LFFCAL(7,30),LASOLD
5404  
5405  
5406       PARAMETER ( MXX = 410 )
5407       PARAMETER ( MQ2 =  120 )
5408
5409 C--   Do not set the following parameter to zero!
5410       PARAMETER ( NDFMAX = 20)
5411
5412  
5413       COMMON/QCGRID/
5414      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5415      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5416      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5417      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5418  
5419  
5420       COMMON/QCPASS/
5421      +ALPHA0, Q0ALFA, ASLAST, QALAST,
5422      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
5423      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
5424      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
5425      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
5426      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
5427      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
5428      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
5429      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
5430      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
5431
5432       LOGICAL LEVDONE,LE_DONE
5433       COMMON/QCLEVL/
5434      +LEVDONE(MXX,10),LE_DONE(MXX)
5435  
5436
5437       CALL QTRACE('QFMNUL ',0)
5438
5439 C--   Clear gridpoints for fast structure function calculation
5440
5441       CALL QNINUL(MARKFF,MXX*MQ2)
5442       CALL QNINUL(MARKQQ,MQ2)
5443       CALL QNINUL(IDFAST,7*30)
5444       NDFAST = 30
5445       LMARK  = .FALSE.
5446
5447       DO I = 1,30
5448         DO J = 1,7
5449           LFFCAL(J,I)  = .FALSE.
5450         ENDDO
5451       ENDDO
5452
5453       RETURN
5454       END
5455  
5456 CDECK  ID>, STFCLR.
5457  
5458 C     =================
5459       SUBROUTINE STFCLR
5460 C     =================
5461  
5462       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5463
5464  
5465       LOGICAL
5466      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5467      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5468      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5469      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5470      +LFFCAL,LASOLD
5471
5472       COMMON/QCFLAG/ 
5473      +IORD,IOLAST,
5474      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5475      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5476      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5477      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5478      +LFFCAL(7,30),LASOLD
5479  
5480  
5481       PARAMETER ( MXX = 410 )
5482       PARAMETER ( MQ2 =  120 )
5483
5484 C--   Do not set the following parameter to zero!
5485       PARAMETER ( NDFMAX = 20)
5486
5487  
5488       COMMON/QCGRID/
5489      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5490      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5491      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5492      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5493  
5494  
5495       COMMON/QCPASS/
5496      +ALPHA0, Q0ALFA, ASLAST, QALAST,
5497      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
5498      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
5499      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
5500      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
5501      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
5502      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
5503      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
5504      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
5505      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
5506
5507       LOGICAL LEVDONE,LE_DONE
5508       COMMON/QCLEVL/
5509      +LEVDONE(MXX,10),LE_DONE(MXX)
5510  
5511
5512 C--   Clear memory allocation for STFAST
5513
5514       CALL QTRACE('STFCLR ',0)
5515
5516       CALL QNINUL(IDFAST,7*30)
5517       NDFAST = 30
5518
5519       DO I = 1,30
5520         DO J = 1,7
5521           LFFCAL(J,I)  = .FALSE.
5522         ENDDO
5523       ENDDO
5524
5525       RETURN
5526       END
5527  
5528 CDECK  ID>, QNFILW.
5529  
5530 C     ================================
5531       SUBROUTINE QNFILW(IQLIST,NQLIST)
5532 C     ================================
5533  
5534       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5535  
5536  
5537       LOGICAL LTIME  
5538       REAL T_START,T_END,T_SPENT
5539       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
5540      +E_CALLS(10),LTIME
5541       COMMON/QCFCNT/IFCNT(-1:1,5)
5542
5543  
5544       COMMON/QCCONS/
5545      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
5546      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
5547      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
5548      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
5549      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
5550      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
5551  
5552  
5553  
5554       LOGICAL
5555      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5556      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5557      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5558      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5559      +LFFCAL,LASOLD
5560
5561       COMMON/QCFLAG/ 
5562      +IORD,IOLAST,
5563      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
5564      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
5565      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
5566      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
5567      +LFFCAL(7,30),LASOLD
5568  
5569  
5570       PARAMETER ( MXX = 410 )
5571       PARAMETER ( MQ2 =  120 )
5572
5573 C--   Do not set the following parameter to zero!
5574       PARAMETER ( NDFMAX = 20)
5575
5576  
5577       COMMON/QCGRID/
5578      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5579      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5580      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5581      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5582  
5583  
5584       COMMON/QCPASS/
5585      +ALPHA0, Q0ALFA, ASLAST, QALAST,
5586      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
5587      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
5588      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
5589      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
5590      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
5591      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
5592      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
5593      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
5594      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
5595
5596       LOGICAL LEVDONE,LE_DONE
5597       COMMON/QCLEVL/
5598      +LEVDONE(MXX,10),LE_DONE(MXX)
5599  
5600  
5601       REAL
5602      +WGTFF1,WGTFG1,
5603      +WGTGF1,WGTGG1,
5604      +WGTPP2,WGTPM2,WGTNS2,
5605      +WGTFF2,WGTFG2,
5606      +WGTGF2,WGTGG2,
5607      +WGTC2Q,WGTC2G,YNTC2Q,
5608      +WGTCLQ,WGTCLG,WGTC3Q
5609
5610       COMMON/QCWEIT/
5611      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
5612      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
5613      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
5614      +WGTNS2(MXX*(MXX+1)/2,3:5),
5615      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
5616      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
5617      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
5618      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
5619      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
5620
5621       COMMON/QCWADR/ IWADR(MXX,MXX)
5622
5623
5624       DIMENSION IQLIST(*)
5625  
5626       IF(LTIME) CALL TIMEX_LHA(T_START(2))
5627
5628       CALL QTRACE('QNFILW ',0)
5629
5630       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
5631         IERR = 1
5632         GOTO 500
5633       ENDIF
5634
5635 C--   Invalidate all evolutions      
5636       CALL QNFALS(LEVDONE,MXX*10)
5637
5638 C--   Setup the adresses
5639       DO IX0 = 1,MXX
5640         DO IX = IX0,MXX
5641           IWADR(IX,IX0) = IWTAD(IX,IX0)
5642         ENDDO
5643       ENDDO
5644  
5645 C--   Now calculate weights
5646       IF(LW1ANA) THEN
5647         DO 30 NF = 3,5
5648         CALL FILLO1(NF)
5649   30    CONTINUE
5650         LW1NUM = .FALSE.
5651         LWT1OK = .TRUE. 
5652         WRITE(6,'(/'' QNFILW: Calculate LO weights analytically'')')
5653       ENDIF
5654  
5655       I1 = 0
5656       I2 = 0
5657       I3 = 0
5658       IF(LW1NUM) THEN
5659         I1     = 1
5660         LWT1OK = .TRUE. 
5661         WRITE(6,'(/'' QNFILW: Calculate LO weights numerically'')')
5662       ENDIF
5663       IF(LW2NUM) THEN
5664         I2     = 1
5665         LWT2OK = .TRUE. 
5666         WRITE(6,'(/'' QNFILW: Calculate NLO weights'')')
5667       ENDIF
5668       IF(LW2STF) THEN
5669         I3     = 1
5670         LWTFOK = .TRUE. 
5671         WRITE(6,'(/'' QNFILW: Calculate F2 weights'')')
5672       ENDIF
5673  
5674       DO 40 NF = 3,5
5675       CALL FILLWF(I1,I2,I3,NF)
5676   40  CONTINUE
5677  
5678       IF(LWF2C.OR.LWF2B.OR.LWFLC.OR.LWFLB) THEN
5679
5680 C---    Check charm, bottom mass
5681         IF(.NOT.(0..LT.CBMSTF(4) .AND. CBMSTF(4).EQ.CBMSTF(5) .AND.
5682      +    CBMSTF(4).LT.CBMSTF(6) .AND. CBMSTF(6).EQ.CBMSTF(7))) THEN
5683           IERR = 2
5684           GOTO 500
5685         ENDIF
5686
5687         IF(LWF2C) THEN
5688           LWFCOK = .TRUE. 
5689           CALL FIL_F2H(4)
5690           WRITE(6,'(/'' QNFILW: Calculate F2c weights'')')   
5691         ENDIF
5692         IF(LWF2B) THEN
5693           LWFBOK = .TRUE. 
5694           CALL FIL_F2H(6)
5695           WRITE(6,'(/'' QNFILW: Calculate F2b weights'')')   
5696         ENDIF
5697         IF(LWFLC) THEN
5698           LWLCOK = .TRUE. 
5699           CALL FIL_FLH(5)
5700           WRITE(6,'(/'' QNFILW: Calculate FLc weights'')')   
5701         ENDIF
5702         IF(LWFLB) THEN
5703           LWLBOK = .TRUE. 
5704           CALL FIL_FLH(7)
5705           WRITE(6,'(/'' QNFILW: Calculate FLb weights'')')   
5706         ENDIF
5707
5708       ENDIF
5709  
5710       WRITE(6,'(/)') 
5711
5712       IF(LTIME) THEN
5713         CALL TIMEX_LHA(T_END(2))
5714         T_SPENT(2) = T_SPENT(2)+T_END(2)-T_START(2)
5715         N_CALLS(2) = N_CALLS(2)+1
5716       ENDIF
5717
5718       RETURN
5719
5720  500  CONTINUE
5721       WRITE(6,'(/'' ------------------------------------'')')
5722       WRITE(6,'( '' QCDNUM error in s/r QNFILW ---> STOP'')')
5723       WRITE(6,'( '' ------------------------------------'')')
5724       IF(IERR.EQ.1) THEN
5725         WRITE(6,'(/'' No x-Q2 grid available'')')
5726       ENDIF
5727       IF(IERR.EQ.2) THEN
5728         WRITE(6,'( '' Cmass (F2c,FLc) ='',2E12.5)') CBMSTF(4),CBMSTF(5)
5729         WRITE(6,'( '' Bmass (F2b,FLb) ='',2E12.5)') CBMSTF(6),CBMSTF(7)
5730         WRITE(6,'(/'' Masses not in ascending order or not equal'',
5731      +             '' for F2 and FL'')')
5732       ENDIF
5733
5734       CALL QTRACE('QNFILW ',1)
5735
5736       STOP
5737
5738       END
5739       
5740 CDECK  ID>, QNGETW.
5741  
5742 C     ===============================================
5743       DOUBLE PRECISION FUNCTION QNGETW(OPT,IX0,IX,IQ)
5744 C     ===============================================
5745  
5746       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5747
5748  
5749       PARAMETER ( MXX = 410 )
5750       PARAMETER ( MQ2 =  120 )
5751
5752 C--   Do not set the following parameter to zero!
5753       PARAMETER ( NDFMAX = 20)
5754
5755  
5756       COMMON/QCGRID/
5757      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
5758      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
5759      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
5760      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
5761  
5762  
5763       REAL
5764      +WGTFF1,WGTFG1,
5765      +WGTGF1,WGTGG1,
5766      +WGTPP2,WGTPM2,WGTNS2,
5767      +WGTFF2,WGTFG2,
5768      +WGTGF2,WGTGG2,
5769      +WGTC2Q,WGTC2G,YNTC2Q,
5770      +WGTCLQ,WGTCLG,WGTC3Q
5771
5772       COMMON/QCWEIT/
5773      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
5774      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
5775      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
5776      +WGTNS2(MXX*(MXX+1)/2,3:5),
5777      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
5778      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
5779      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
5780      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
5781      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
5782
5783       COMMON/QCWADR/ IWADR(MXX,MXX)
5784
5785
5786       REAL
5787      +WH_C0KG,WH_C1KG,WH_C1BKG,
5788      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
5789
5790       COMMON/QCHWGT/
5791      +WH_C0KG(0:MXX,MQ2,4:7),
5792      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
5793      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
5794      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
5795
5796
5797       CHARACTER*(*) OPT
5798       CHARACTER*8   OPT8
5799
5800       CALL QTRACE('QNGETW ',0)
5801
5802       IERR = 0
5803       IF(IX0.LE.0.OR.IX0.GT.MXX-1) THEN
5804         IERR = 1
5805         GOTO 500
5806       ENDIF
5807       IF(IX.LE.0.OR.IX.GT.MXX-1) THEN
5808         IERR = 1
5809         GOTO 500
5810       ENDIF
5811       IF(IQ.LE.0.OR.IQ.GT.MQ2-1) THEN
5812         IERR = 1
5813         GOTO 500
5814       ENDIF
5815  
5816       NF  = NFMAP(IQ)
5817       IF(NF.LT.3.OR.NF.GT.5) THEN
5818         IERR = 2
5819         GOTO 500
5820       ENDIF
5821
5822       IF(IX.LT.IX0) THEN
5823         QNGETW = 0.
5824         RETURN
5825       ENDIF
5826
5827       LEN = MIN(LENOCC_LHA(OPT),8)
5828       OPT8(1:LEN) = OPT(1:LEN)
5829       CALL CLTOU_LHA(OPT8)
5830      
5831       IF(OPT8(1:6).EQ.'WGTFF1') THEN                
5832         QNGETW = WGTFF1(IWTAD(IX,IX0))       
5833       ELSEIF(OPT8(1:6).EQ.'WGTFG1') THEN                
5834         QNGETW = WGTFG1(IWTAD(IX,IX0),NF)   
5835       ELSEIF(OPT8(1:6).EQ.'WGTGF1') THEN                
5836         QNGETW = WGTGF1(IWTAD(IX,IX0))        
5837       ELSEIF(OPT8(1:6).EQ.'WGTGG1') THEN                
5838         QNGETW = WGTGG1(IWTAD(IX,IX0),NF)   
5839       ELSEIF(OPT8(1:6).EQ.'WGTPP2') THEN                
5840         QNGETW = WGTPP2(IWTAD(IX,IX0),NF)   
5841       ELSEIF(OPT8(1:6).EQ.'WGTPM2') THEN                
5842         QNGETW = WGTPM2(IWTAD(IX,IX0),NF)   
5843       ELSEIF(OPT8(1:6).EQ.'WGTNS2') THEN                
5844         QNGETW = WGTNS2(IWTAD(IX,IX0),NF)   
5845       ELSEIF(OPT8(1:6).EQ.'WGTFF2') THEN                
5846         QNGETW = WGTFF2(IWTAD(IX,IX0),NF)   
5847       ELSEIF(OPT8(1:6).EQ.'WGTFG2') THEN                
5848         QNGETW = WGTFG2(IWTAD(IX,IX0),NF)   
5849       ELSEIF(OPT8(1:6).EQ.'WGTGF2') THEN                
5850         QNGETW = WGTGF2(IWTAD(IX,IX0),NF)   
5851       ELSEIF(OPT8(1:6).EQ.'WGTGG2') THEN                
5852         QNGETW = WGTGG2(IWTAD(IX,IX0),NF)   
5853       ELSEIF(OPT8(1:6).EQ.'WGTC2Q') THEN                
5854         QNGETW = WGTC2Q(IWTAD(IX,IX0))        
5855       ELSEIF(OPT8(1:6).EQ.'WGTC2G') THEN                
5856         QNGETW = WGTC2G(IWTAD(IX,IX0),NF)   
5857       ELSEIF(OPT8(1:6).EQ.'WGTCLQ') THEN                
5858         QNGETW = WGTCLQ(IWTAD(IX,IX0))        
5859       ELSEIF(OPT8(1:6).EQ.'WGTCLG') THEN                
5860         QNGETW = WGTCLG(IWTAD(IX,IX0),NF)   
5861       ELSEIF(OPT8(1:6).EQ.'WGTC3Q') THEN                
5862         QNGETW = WGTC3Q(IWTAD(IX,IX0))        
5863       ELSEIF(OPT8(1:7).EQ.'WH_C02G') THEN                
5864         QNGETW = WH_C0KG(IX-IX0,IQ,4)
5865       ELSEIF(OPT8(1:7).EQ.'WH_C12G') THEN                
5866         QNGETW = WH_C1KG(IX-IX0,IQ,4)
5867       ELSEIF(OPT8(1:8).EQ.'WH_C1B2G') THEN                
5868         QNGETW = WH_C1BKG(IX-IX0,IQ,4)
5869       ELSEIF(OPT8(1:7).EQ.'WH_C12Q') THEN                
5870         QNGETW = WH_C1KQ(IX-IX0,IQ,4)
5871       ELSEIF(OPT8(1:8).EQ.'WH_C1B2Q') THEN                
5872         QNGETW = WH_C1BKQ(IX-IX0,IQ,4)
5873       ELSEIF(OPT8(1:7).EQ.'WH_D12Q') THEN                
5874         QNGETW = WH_D1KQ(IX-IX0,IQ,4)
5875       ELSEIF(OPT8(1:8).EQ.'WH_D1B2Q') THEN                
5876         QNGETW = WH_D1BKQ(IX-IX0,IQ,4)
5877       ELSEIF(OPT8(1:7).EQ.'WH_C0LG') THEN                
5878         QNGETW = WH_C0KG(IX-IX0,IQ,5)
5879       ELSEIF(OPT8(1:7).EQ.'WH_C1LG') THEN                
5880         QNGETW = WH_C1KG(IX-IX0,IQ,5)
5881       ELSEIF(OPT8(1:8).EQ.'WH_C1BLG') THEN                
5882         QNGETW = WH_C1BKG(IX-IX0,IQ,5)
5883       ELSEIF(OPT8(1:7).EQ.'WH_C1LQ') THEN                
5884         QNGETW = WH_C1KQ(IX-IX0,IQ,5)
5885       ELSEIF(OPT8(1:8).EQ.'WH_C1BLQ') THEN                
5886         QNGETW = WH_C1BKQ(IX-IX0,IQ,5)
5887       ELSEIF(OPT8(1:7).EQ.'WH_D1LQ') THEN                
5888         QNGETW = WH_D1KQ(IX-IX0,IQ,5)
5889       ELSEIF(OPT8(1:8).EQ.'WH_D1BLQ') THEN                
5890         QNGETW = WH_D1BKQ(IX-IX0,IQ,5)
5891       ELSE
5892         IERR = 3
5893         GOTO 500
5894       ENDIF
5895
5896       RETURN
5897
5898  500  CONTINUE
5899       WRITE(6,'(/'' ------------------------------------'')')
5900       WRITE(6,'( '' QCDNUM error in s/r QNGETW ---> STOP'')')
5901       WRITE(6,'( '' ------------------------------------'')')
5902       WRITE(6,'( '' Input OPT      :'',A)') OPT       
5903       WRITE(6,'( ''       IX0      :'',I10)') IX0       
5904       WRITE(6,'( ''       IX       :'',I10)') IX     
5905       WRITE(6,'( ''       IQ       :'',I10)') IQ     
5906       IF(IERR.EQ.1) THEN
5907         WRITE(6,'(/'' IX0, IX and/or IQ outside allowed range'')')
5908       ELSEIF(IERR.EQ.2) THEN
5909         WRITE(6,'(/'' NF(IX,IQ) ='',I3,'' outside allowed range'')') NF
5910       ELSEIF(IERR.EQ.3) THEN
5911         WRITE(6,'(/'' Unknown option'')')
5912       ENDIF
5913
5914       CALL QTRACE('QNGETW ',1)
5915
5916       STOP
5917
5918       END
5919       
5920 CDECK  ID>, QSTRIP.
5921  
5922 C     =================================
5923       SUBROUTINE QSTRIP(NAMEIN,NAMEOUT)
5924 C     =================================
5925  
5926 C---  Truncate NAMEIN to 5 characters and convert to upper case
5927  
5928       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5929  
5930       CHARACTER*(*) NAMEIN
5931       CHARACTER*5   NAMEOUT
5932
5933       LEN            = MIN(LENOCC_LHA(NAMEIN),5)
5934       NAMEOUT        = '     '
5935       NAMEOUT(1:LEN) = NAMEIN(1:LEN)
5936       CALL CLTOU_LHA(NAMEOUT)
5937
5938       RETURN
5939       END
5940       
5941 CDECK  ID>, CHKNAM.
5942  
5943 C     ====================================
5944       SUBROUTINE CHKNAM(ID,NAME,SNAME,NAM)
5945 C     ====================================
5946  
5947       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
5948  
5949  
5950       CHARACTER*5 PNAM,STFNAM
5951       LOGICAL     LNFP
5952       COMMON /QCLNFP/ LNFP(0:30,3:5)
5953       COMMON /QCPNAM/ PNAM(0:30)
5954       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
5955       COMMON /QCFNAM/ STFNAM(7)
5956  
5957  
5958       CHARACTER*(*) NAME, SNAME
5959       CHARACTER*5 NAM
5960
5961       LEN = MIN(LENOCC_LHA(NAME),5)
5962       NAM = '     '
5963       NAM(1:LEN) = NAME(1:LEN)
5964       CALL CLTOU_LHA(NAM)
5965
5966       IF(NAM.EQ.'     ') THEN
5967         IERR = 1
5968         GOTO 500
5969       ENDIF
5970  
5971       IF(NAM.EQ.'FREE ') THEN
5972         PNAM(ID)      =  NAM
5973         LNFP(ID,3)    = .FALSE.
5974         LNFP(ID,4)    = .FALSE.
5975         LNFP(ID,5)    = .FALSE.
5976         IF(ID.LE.10) THEN
5977           DO JD = 0,30
5978             PWGT(ID,JD,3) = 0.
5979             PWGT(ID,JD,4) = 0.
5980             PWGT(ID,JD,5) = 0.
5981           ENDDO
5982         ELSE
5983           DO JD = 0,10
5984             PWGT(JD,ID,3) = 0.
5985             PWGT(JD,ID,4) = 0.
5986             PWGT(JD,ID,5) = 0.
5987           ENDDO
5988         ENDIF
5989         RETURN
5990       ENDIF
5991  
5992       IF(PNAM(ID).NE.'FREE '.AND.PNAM(ID).NE.NAM) THEN
5993         IERR = 2
5994         GOTO 500
5995       ENDIF
5996  
5997       DO 10 JD = 0,30
5998         IF(JD.EQ.ID) GOTO 10
5999         IF(PNAM(JD).EQ.NAM) THEN
6000           IERR = 3
6001           GOTO 500
6002         ENDIF
6003   10  CONTINUE
6004
6005       RETURN
6006
6007  500  CONTINUE
6008       WRITE(6,'(/'' ------------------------------------'')')
6009       WRITE(6,'( '' QCDNUM error in s/r '',A,'' ---> STOP'')')
6010      +              SNAME
6011       WRITE(6,'( '' ------------------------------------'')')
6012       WRITE(6,'( '' Input ID   :'',I10)') ID
6013       WRITE(6,'( '' Input NAME :'',A)') NAM
6014       IF(IERR.EQ.1) THEN
6015         WRITE(6,'(/'' Blank name not allowed'')') 
6016       ELSEIF(IERR.EQ.2) THEN
6017         WRITE(6,'(/'' ID already booked'')')
6018       ELSEIF(IERR.EQ.3) THEN
6019         WRITE(6,'(/'' NAME already used'')')
6020       ENDIF
6021
6022       CALL QTRACE('CHKNAM ',1)
6023
6024       STOP
6025  
6026       END
6027       
6028 CDECK  ID>, QNBOOK.
6029  
6030 C     ==========================
6031       SUBROUTINE QNBOOK(ID,NAME)
6032 C     ==========================
6033  
6034       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6035  
6036  
6037       CHARACTER*5 PNAM,STFNAM
6038       LOGICAL     LNFP
6039       COMMON /QCLNFP/ LNFP(0:30,3:5)
6040       COMMON /QCPNAM/ PNAM(0:30)
6041       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6042       COMMON /QCFNAM/ STFNAM(7)
6043  
6044  
6045       CHARACTER*(*) NAME
6046       CHARACTER*5    NAM
6047
6048       CALL QTRACE('QNBOOK ',0)
6049  
6050       CALL CHKNAM(ID,NAME,'QNBOOK',NAM)
6051  
6052       PNAM(ID)      =  NAM
6053       LNFP(ID,3)    = .TRUE.
6054       LNFP(ID,4)    = .TRUE.
6055       LNFP(ID,5)    = .TRUE.
6056       PWGT(ID,ID,3) = 1.
6057       PWGT(ID,ID,4) = 1.
6058       PWGT(ID,ID,5) = 1.
6059  
6060       RETURN
6061       END
6062  
6063 CDECK  ID>, QNLINC.
6064  
6065 C     ===================================
6066       SUBROUTINE QNLINC(ID,NAME,NF,WEITS)
6067 C     ===================================
6068  
6069       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6070  
6071  
6072       CHARACTER*5 PNAM,STFNAM
6073       LOGICAL     LNFP
6074       COMMON /QCLNFP/ LNFP(0:30,3:5)
6075       COMMON /QCPNAM/ PNAM(0:30)
6076       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6077       COMMON /QCFNAM/ STFNAM(7)
6078  
6079  
6080       CHARACTER*(*) NAME
6081       CHARACTER*5   NAM
6082       DIMENSION     WEITS(10)
6083
6084       CALL QTRACE('QNLINC ',0)
6085  
6086       IF(ID.LE.10.OR.ID.GE.31) THEN
6087         IERR = 1
6088         GOTO 500
6089       ENDIF
6090  
6091       IF(NF.LT.3 .OR.NF.GT.5 ) THEN
6092         IERR = 2
6093         GOTO 500
6094       ENDIF
6095
6096       CALL CHKNAM(ID,NAME,'QNLINC',NAM)
6097  
6098       PNAM(ID)    = NAM
6099       LNFP(ID,NF) = .TRUE.
6100       DO 20 I=1,10
6101         PWGT(I,ID,NF) = WEITS(I)
6102   20  CONTINUE
6103  
6104       RETURN
6105
6106  500  CONTINUE
6107       WRITE(6,'(/'' ------------------------------------'')')
6108       WRITE(6,'( '' QCDNUM error in s/r QNLINC ---> STOP'')')
6109       WRITE(6,'( '' ------------------------------------'')')
6110       WRITE(6,'( '' Input ID        :'',I0)') ID
6111       WRITE(6,'( ''       NAME      :'',A)') NAME
6112       WRITE(6,'( ''       NF        :'',I0)') NF
6113       WRITE(6,'( ''       FACTORS(1):'',E12.5)') WEITS(1)
6114       IF(IERR.EQ.1) THEN
6115         WRITE(6,'(/'' ID outside allowed range [11,30]'')')
6116       ELSEIF(IERR.EQ.2) THEN
6117         WRITE(6,'(/'' NF outside allowed range [3,5]'')')
6118       ENDIF
6119
6120       CALL QTRACE('QNLINC ',1)
6121
6122       STOP
6123
6124       END
6125  
6126 CDECK  ID>, QNGIVE.
6127  
6128 C     ===================================
6129       SUBROUTINE QNGIVE(ID,NF,NAME,WEITS)
6130 C     ===================================
6131  
6132       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6133  
6134  
6135       CHARACTER*5 PNAM,STFNAM
6136       LOGICAL     LNFP
6137       COMMON /QCLNFP/ LNFP(0:30,3:5)
6138       COMMON /QCPNAM/ PNAM(0:30)
6139       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6140       COMMON /QCFNAM/ STFNAM(7)
6141  
6142  
6143       CHARACTER*5 NAME
6144       DIMENSION   WEITS(10)
6145
6146       CALL QTRACE('QNGIVE ',1)
6147  
6148       IF(ID.LT.0.OR.ID.GT.30.OR.NF.LT.3.OR.NF.GT.5) THEN
6149  
6150         NAME = 'NULL '
6151         DO 10 I=1,10
6152           WEITS(I) = 0.
6153   10    CONTINUE
6154  
6155       ELSE
6156  
6157         NAME = PNAM(ID)
6158         DO 15 I=1,10
6159           WEITS(I) = PWGT(I,ID,NF)
6160   15    CONTINUE
6161  
6162       ENDIF
6163  
6164       RETURN
6165       END
6166
6167 CDECK  ID>, IDCHEK.
6168  
6169 C     =============================
6170       INTEGER FUNCTION IPDFID(UNAM)
6171 C     =============================
6172
6173 C---  IPDFID = identifier of memory resident quark distn
6174  
6175       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6176  
6177       CHARACTER*(*) UNAM
6178       CHARACTER*5   NAM
6179  
6180  
6181       CHARACTER*5 PNAM,STFNAM
6182       LOGICAL     LNFP
6183       COMMON /QCLNFP/ LNFP(0:30,3:5)
6184       COMMON /QCPNAM/ PNAM(0:30)
6185       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6186       COMMON /QCFNAM/ STFNAM(7)
6187  
6188
6189       CALL QTRACE('IPDFID ',0)
6190  
6191       CALL QSTRIP(UNAM,NAM)
6192
6193       IF(NAM.EQ.'     '.OR.NAM.EQ.'FREE ') THEN
6194         GOTO 500
6195       ENDIF
6196  
6197       ID = -1
6198       DO I = 1,10
6199         IF(NAM.EQ.PNAM(I)) ID = I
6200       ENDDO   
6201  
6202       IPDFID = ID
6203  
6204       IF(ID.EQ.-1) THEN  
6205         GOTO 500
6206       ENDIF
6207  
6208       RETURN
6209
6210  500  CONTINUE
6211       WRITE(6,'(/'' ------------------------------------'')')
6212       WRITE(6,'( '' QCDNUM error in s/r IPDFID ---> STOP'')')
6213       WRITE(6,'( '' ------------------------------------'')')
6214       WRITE(6,'( '' Input NAME      :'',A)') UNAM
6215       WRITE(6,'(/'' NAME not booked at all or NAME does not refer''/
6216      +           '' to a memory resident quark distribution'')')
6217       IF(NAM(1:1).EQ.' ')
6218      +WRITE(6,'(/'' WARNING: NAME has one or more leading blanks'')')
6219
6220       CALL QTRACE('IPDFID ',1)
6221
6222       STOP
6223       END
6224  
6225
6226 CDECK  ID>, IDCHEK.
6227  
6228 C     ============================================
6229       INTEGER FUNCTION IDCHEK(NAM,NF,SRNAME,ISTOP)
6230 C     ============================================
6231  
6232       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6233  
6234       CHARACTER*6   SRNAME
6235       CHARACTER*5   NAMLAST,NAM
6236  
6237  
6238       CHARACTER*5 PNAM,STFNAM
6239       LOGICAL     LNFP
6240       COMMON /QCLNFP/ LNFP(0:30,3:5)
6241       COMMON /QCPNAM/ PNAM(0:30)
6242       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6243       COMMON /QCFNAM/ STFNAM(7)
6244  
6245  
6246       SAVE IDLAST,NAMLAST
6247  
6248       DATA IDLAST      /   0    /
6249       DATA NAMLAST     / '    ' /
6250  
6251       IDCHEK = -1
6252  
6253       IF(NAM.EQ.'     '.OR.NAM.EQ.'FREE '.OR.
6254      +   NF.LT.3.OR.NF.GT.5)                       THEN
6255         IF(ISTOP.EQ.1) THEN
6256           IERR = 1
6257           GOTO 500
6258         ENDIF
6259         RETURN
6260       ENDIF
6261  
6262       ID = -1
6263       IF(NAM.EQ.NAMLAST.AND.LNFP(IDLAST,NF)) THEN
6264         ID     = IDLAST
6265       ELSE
6266         DO 10 I = 0,30
6267           IF(NAM.EQ.PNAM(I).AND.LNFP(I,NF)) ID = I
6268   10    CONTINUE
6269         IDLAST  = ID
6270         NAMLAST = NAM
6271       ENDIF
6272  
6273       IDCHEK = ID
6274  
6275       IF(ID.EQ.-1.AND.ISTOP.EQ.1) THEN  
6276         IERR = 2
6277         GOTO 500
6278       ENDIF
6279  
6280       RETURN
6281
6282  500  CONTINUE
6283       WRITE(6,'(/'' ------------------------------------'')')
6284       WRITE(6,'( '' QCDNUM error in s/r '',A,'' ---> STOP'')')
6285      +              SRNAME
6286       WRITE(6,'( '' ------------------------------------'')')
6287       WRITE(6,'( '' Input NAME      :'',A)') NAM
6288       WRITE(6,'( ''       NF        :'',I10)') NF
6289       IF(IERR.EQ.1) THEN
6290         WRITE(6,'(/'' Input name not allowed and/or NF outside'',
6291      +             '' the allowed range [3,5]'')')
6292       ELSEIF(IERR.EQ.2) THEN
6293         WRITE(6,'(/'' NAME not booked at all or, if NAME refers to''/
6294      +             '' a linear combination, it might not have been''/
6295      +             '' booked for NF flavours'')')
6296         IF(NAM(1:1).EQ.' ')
6297      +  WRITE(6,'(/'' WARNING: NAME has one or more leading blanks'')')
6298       ENDIF
6299
6300       CALL QTRACE('IDCHEK ',1)
6301
6302       STOP
6303       END
6304  
6305 CDECK  ID>, QNLIST.
6306  
6307 C     ======================
6308       SUBROUTINE QNLIST(LUN)
6309 C     ======================
6310  
6311       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6312  
6313       CHARACTER*5 NAM
6314       CHARACTER*3 II
6315  
6316  
6317       CHARACTER*5 PNAM,STFNAM
6318       LOGICAL     LNFP
6319       COMMON /QCLNFP/ LNFP(0:30,3:5)
6320       COMMON /QCPNAM/ PNAM(0:30)
6321       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6322       COMMON /QCFNAM/ STFNAM(7)
6323  
6324  
6325       WRITE(LUN,'(////)')
6326       WRITE(LUN,'(1X,''+'',13(''-''),''+'',60(''-''),''+'')')
6327       WRITE(LUN,'('' |             | W_'',I2,
6328      +           9(''  W_'',I2),'' |'')') (J, J=1,10)
6329       WRITE(LUN,'('' | ID NAME  nf | '',A4,
6330      +           9(2X,A4),'' |'')') (PNAM(J),J=1,10)
6331       WRITE(LUN,'(1X,''+'',13(''-''),''+'',60(''-''),''+'')')
6332       DO 10 I = 0,10
6333         IF(IDCHEK(PNAM(I),3,'      ',0).EQ.-1) GOTO 10
6334         WRITE(LUN,'('' |'',I3,1X,A5,''    |'',F5.2,
6335      +             9(F6.2),'' |'')') I, PNAM(I),(PWGT(J,I,3),J=1,10)
6336   10  CONTINUE
6337       WRITE(LUN,'(1X,''+'',13(''-''),''+'',60(''-''),''+'')')
6338       DO 20 I = 11,30
6339         NAM = PNAM(I)
6340         WRITE(II,'(I3)') I
6341         IF(IDCHEK(PNAM(I),3,'      ',0).NE.-1) THEN
6342         WRITE(LUN,'('' |'',A3,1X,A5,''  3 |'',F5.2,
6343      +             9(F6.2),'' |'')') II, NAM,(PWGT(J,I,3),J=1,10)
6344         NAM = '     '
6345         II  = '   '
6346         ENDIF
6347         IF(IDCHEK(PNAM(I),4,'      ',0).NE.-1) THEN
6348         WRITE(LUN,'('' |'',A3,1X,A5,''  4 |'',F5.2,
6349      +             9(F6.2),'' |'')') II, NAM,(PWGT(J,I,4),J=1,10)
6350         NAM = '     '
6351         II  = '   '
6352         ENDIF
6353         IF(IDCHEK(PNAM(I),5,'      ',0).NE.-1) THEN
6354         WRITE(LUN,'('' |'',A3,1X,A5,''  5 |'',F5.2,
6355      +             9(F6.2),'' |'')') II, NAM, (PWGT(J,I,5),J=1,10)
6356         NAM = '     '
6357         II  = '   '
6358         ENDIF
6359   20  CONTINUE
6360       WRITE(LUN,'(1X,''+'',13(''-''),''+'',60(''-''),''+'')')
6361       WRITE(LUN,'(////)')
6362  
6363       RETURN
6364       END
6365  
6366 CDECK  ID>, QNPSET.
6367 C     ================================= 
6368       SUBROUTINE QNPSET(UNAM,IX,IQ,VAL) 
6369 C     ================================= 
6370
6371       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6372  
6373       CHARACTER*(*) UNAM
6374       CHARACTER*5   NAME
6375  
6376  
6377       LOGICAL
6378      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6379      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6380      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6381      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6382      +LFFCAL,LASOLD
6383
6384       COMMON/QCFLAG/ 
6385      +IORD,IOLAST,
6386      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6387      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6388      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6389      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6390      +LFFCAL(7,30),LASOLD
6391  
6392  
6393       CHARACTER*5 PNAM,STFNAM
6394       LOGICAL     LNFP
6395       COMMON /QCLNFP/ LNFP(0:30,3:5)
6396       COMMON /QCPNAM/ PNAM(0:30)
6397       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6398       COMMON /QCFNAM/ STFNAM(7)
6399  
6400  
6401       PARAMETER ( MXX = 410 )
6402       PARAMETER ( MQ2 =  120 )
6403
6404 C--   Do not set the following parameter to zero!
6405       PARAMETER ( NDFMAX = 20)
6406
6407  
6408       COMMON/QCGRID/
6409      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
6410      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
6411      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
6412      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
6413  
6414  
6415       COMMON/QCPASS/
6416      +ALPHA0, Q0ALFA, ASLAST, QALAST,
6417      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
6418      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
6419      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
6420      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
6421      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
6422      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
6423      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
6424      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
6425      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
6426
6427       LOGICAL LEVDONE,LE_DONE
6428       COMMON/QCLEVL/
6429      +LEVDONE(MXX,10),LE_DONE(MXX)
6430  
6431
6432       CALL QTRACE('QNPSET ',0)
6433  
6434       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
6435         IERR = 1
6436         GOTO 500
6437       ENDIF
6438  
6439       CALL QSTRIP(UNAM,NAME)
6440  
6441       ID = IDCHEK(NAME,4,'QNPSET',1)
6442  
6443       IF(ID.EQ.-1) RETURN
6444  
6445       IF(IX.LT.1.OR.IX.GT.NXX) THEN
6446         IERR = 2
6447         GOTO 500
6448       ENDIF
6449  
6450       IF(IQ.LT.1.OR.IQ.GT.NQ2) THEN
6451         IERR = 2
6452         GOTO 500
6453       ENDIF
6454  
6455       IF(ID.LT.0.OR.ID.GT.10) THEN
6456         IERR = 3
6457         GOTO 500
6458       ENDIF
6459
6460 C--   If a different input value, invalidate evolution for this
6461 C--   and all lower x-grid points
6462       IF(VAL.NE.PDFQCD(IX,IQ,ID)) THEN
6463         DO JX = 1,IX
6464           LEVDONE(JX,MAX(ID,1)) = .FALSE.
6465         ENDDO
6466       ENDIF
6467  
6468       PDFQCD(IX,IQ,ID) = VAL
6469
6470       DO I = 1,30
6471         DO J = 1,7
6472           LFFCAL(J,I)  = .FALSE.
6473         ENDDO
6474       ENDDO
6475  
6476       RETURN
6477
6478  500  CONTINUE
6479       WRITE(6,'(/'' ------------------------------------'')')
6480       WRITE(6,'( '' QCDNUM error in s/r QNPSET ---> STOP'')')
6481       WRITE(6,'( '' ------------------------------------'')')
6482       WRITE(6,'( '' Input NAME :'',A)') UNAM
6483       WRITE(6,'( ''         IX :'',I10)') IX
6484       WRITE(6,'( ''         IQ :'',I10)') IQ
6485       WRITE(6,'( ''      Value :'',E12.5)') VAL
6486       IF(IERR.EQ.1) THEN
6487         WRITE(6,'(/'' No x-Q2 grid available'')')
6488       ELSEIF(IERR.EQ.2) THEN
6489         WRITE(6,'(/'' IX and/or IQ outside grid boundary'')')
6490       ELSEIF(IERR.EQ.3) THEN
6491         WRITE(6,'(/'' Apparently you try to assign a value'',
6492      +             '' to a linear combination: no thank you'')')
6493       ENDIF
6494
6495       CALL QTRACE('QNPSET ',1)
6496
6497       STOP
6498
6499       END
6500  
6501 CDECK  ID>, QADDSI.
6502  
6503 C     =================================
6504       SUBROUTINE QADDSI(UNAM,IQ,FACTOR)
6505 C     =================================
6506  
6507       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6508  
6509       CHARACTER*(*) UNAM
6510       CHARACTER*5   NAME
6511  
6512  
6513       LOGICAL
6514      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6515      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6516      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6517      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6518      +LFFCAL,LASOLD
6519
6520       COMMON/QCFLAG/ 
6521      +IORD,IOLAST,
6522      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6523      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6524      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6525      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6526      +LFFCAL(7,30),LASOLD
6527  
6528  
6529       CHARACTER*5 PNAM,STFNAM
6530       LOGICAL     LNFP
6531       COMMON /QCLNFP/ LNFP(0:30,3:5)
6532       COMMON /QCPNAM/ PNAM(0:30)
6533       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6534       COMMON /QCFNAM/ STFNAM(7)
6535  
6536  
6537       PARAMETER ( MXX = 410 )
6538       PARAMETER ( MQ2 =  120 )
6539
6540 C--   Do not set the following parameter to zero!
6541       PARAMETER ( NDFMAX = 20)
6542
6543  
6544       COMMON/QCGRID/
6545      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
6546      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
6547      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
6548      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
6549  
6550  
6551       COMMON/QCPASS/
6552      +ALPHA0, Q0ALFA, ASLAST, QALAST,
6553      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
6554      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
6555      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
6556      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
6557      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
6558      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
6559      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
6560      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
6561      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
6562
6563       LOGICAL LEVDONE,LE_DONE
6564       COMMON/QCLEVL/
6565      +LEVDONE(MXX,10),LE_DONE(MXX)
6566  
6567
6568       CALL QTRACE('QADDSI ',0)
6569  
6570       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
6571         IERR = 1
6572         GOTO 500
6573       ENDIF
6574  
6575       CALL QSTRIP(UNAM,NAME)
6576  
6577       ID = IDCHEK(NAME,4,'QADDSI',1)
6578  
6579       IF(ID.EQ.-1) RETURN
6580
6581       IF(ID.EQ.0.OR.ID.EQ.1) THEN
6582         IERR = 2
6583         GOTO 500
6584       ENDIF
6585  
6586       IF(IQ.LT.1.OR.IQ.GT.NQ2) THEN
6587         IERR = 3
6588         GOTO 500
6589       ENDIF
6590  
6591       IF(ID.LT.0.OR.ID.GT.10) THEN
6592         IERR = 4
6593         GOTO 500
6594       ENDIF
6595  
6596       DO IX = 1,NXX
6597 C--     Invalidate evolution of this pdf
6598         LEVDONE(IX,MAX(ID,1)) = .FALSE.
6599         PDFQCD(IX,IQ,ID) = PDFQCD(IX,IQ,ID)+
6600      +                     FACTOR*PDFQCD(IX,IQ,1)
6601       ENDDO
6602
6603       DO I = 1,30
6604         DO J = 1,7
6605           LFFCAL(J,I)  = .FALSE.
6606         ENDDO
6607       ENDDO
6608  
6609       RETURN
6610
6611  500  CONTINUE
6612       WRITE(6,'(/'' ------------------------------------'')')
6613       WRITE(6,'( '' QCDNUM error in s/r QADDSI ---> STOP'')')
6614       WRITE(6,'( '' ------------------------------------'')')
6615       WRITE(6,'( '' Input NAME :'',A)') UNAM
6616       WRITE(6,'( ''         IQ :'',I10)') IQ
6617       WRITE(6,'( ''     Factor :'',E12.5)') FACTOR
6618       IF(IERR.EQ.1) THEN
6619         WRITE(6,'(/'' No x-Q2 grid available'')')
6620       ELSEIF(IERR.EQ.2) THEN
6621         WRITE(6,'(/'' This routine cannot be used'',
6622      +             '' for singlet or gluon'')')
6623       ELSEIF(IERR.EQ.3) THEN
6624         WRITE(6,'(/'' IX and/or IQ outside grid boundary'')')
6625       ELSEIF(IERR.EQ.4) THEN
6626         WRITE(6,'(/'' Apparently you try to assign a value'',
6627      +             '' to a linear combination: no thank you'')')
6628       ENDIF
6629
6630       CALL QTRACE('QADDSI ',1)
6631
6632       STOP
6633
6634       END
6635  
6636 CDECK  ID>, QNPNUL.
6637  
6638 C     =======================
6639       SUBROUTINE QNPNUL(UNAM)
6640 C     =======================
6641
6642 C---  Set parton distribution 'NAME' to zero.
6643 C---  Called by user.
6644  
6645       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6646  
6647       CHARACTER*(*) UNAM
6648       CHARACTER*5   NAME
6649  
6650  
6651       LOGICAL
6652      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6653      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6654      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6655      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6656      +LFFCAL,LASOLD
6657
6658       COMMON/QCFLAG/ 
6659      +IORD,IOLAST,
6660      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6661      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6662      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6663      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6664      +LFFCAL(7,30),LASOLD
6665  
6666  
6667       CHARACTER*5 PNAM,STFNAM
6668       LOGICAL     LNFP
6669       COMMON /QCLNFP/ LNFP(0:30,3:5)
6670       COMMON /QCPNAM/ PNAM(0:30)
6671       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6672       COMMON /QCFNAM/ STFNAM(7)
6673  
6674  
6675       PARAMETER ( MXX = 410 )
6676       PARAMETER ( MQ2 =  120 )
6677
6678 C--   Do not set the following parameter to zero!
6679       PARAMETER ( NDFMAX = 20)
6680
6681  
6682       COMMON/QCGRID/
6683      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
6684      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
6685      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
6686      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
6687  
6688  
6689       COMMON/QCPASS/
6690      +ALPHA0, Q0ALFA, ASLAST, QALAST,
6691      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
6692      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
6693      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
6694      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
6695      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
6696      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
6697      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
6698      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
6699      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
6700
6701       LOGICAL LEVDONE,LE_DONE
6702       COMMON/QCLEVL/
6703      +LEVDONE(MXX,10),LE_DONE(MXX)
6704  
6705
6706       CALL QTRACE('QNPNUL ',0)
6707  
6708       CALL QSTRIP(UNAM,NAME)
6709  
6710       ID = IDCHEK(NAME,4,'QNPNUL',1)
6711  
6712       IF(ID.EQ.-1) RETURN
6713  
6714       IF(ID.LT.0.OR.ID.GT.10) THEN
6715         GOTO 500
6716       ENDIF
6717  
6718       DO IX = 1,MXX
6719         DO IQ = 1,MQ2
6720           PDFQCD(IX,IQ,ID) = 0.
6721         ENDDO
6722       ENDDO
6723
6724 C--   Invalidate all evolutions      
6725       CALL QNFALS(LEVDONE,MXX*10)
6726
6727       DO I = 1,30
6728         DO J = 1,7
6729           LFFCAL(J,I)  = .FALSE.
6730         ENDDO
6731       ENDDO
6732  
6733       RETURN
6734
6735  500  CONTINUE
6736       WRITE(6,'(/'' ------------------------------------'')')
6737       WRITE(6,'( '' QCDNUM error in s/r QNPNUL ---> STOP'')')
6738       WRITE(6,'( '' ------------------------------------'')')
6739       WRITE(6,'( '' Input NAME :'',A)') UNAM
6740       WRITE(6,'(/'' Apparently you try to clear'',
6741      +           '' a linear combination: no thank you'')')
6742
6743       CALL QTRACE('QNPNUL ',1)
6744
6745       STOP
6746
6747       END
6748  
6749 CDECK  ID>, IX1CHK.
6750  
6751 C     ==============================
6752       INTEGER FUNCTION IX1CHK(ISTOP)
6753 C     ==============================
6754
6755 C---  Check all pdfs are zero at NXX+1 (x = 1).
6756 C---  IX1CHK = 0    : All ok.
6757 C---         = 1    : Nonzero entry in gluon or singlet.
6758 C---         = 2-10 : Nonzero entry in PDF 2-10.
6759 C---  Called by user.
6760  
6761       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6762  
6763  
6764       LOGICAL
6765      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6766      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6767      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6768      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6769      +LFFCAL,LASOLD
6770
6771       COMMON/QCFLAG/ 
6772      +IORD,IOLAST,
6773      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6774      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6775      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6776      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6777      +LFFCAL(7,30),LASOLD
6778  
6779  
6780       CHARACTER*5 PNAM,STFNAM
6781       LOGICAL     LNFP
6782       COMMON /QCLNFP/ LNFP(0:30,3:5)
6783       COMMON /QCPNAM/ PNAM(0:30)
6784       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
6785       COMMON /QCFNAM/ STFNAM(7)
6786  
6787  
6788       PARAMETER ( MXX = 410 )
6789       PARAMETER ( MQ2 =  120 )
6790
6791 C--   Do not set the following parameter to zero!
6792       PARAMETER ( NDFMAX = 20)
6793
6794  
6795       COMMON/QCGRID/
6796      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
6797      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
6798      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
6799      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
6800  
6801  
6802       COMMON/QCPASS/
6803      +ALPHA0, Q0ALFA, ASLAST, QALAST,
6804      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
6805      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
6806      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
6807      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
6808      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
6809      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
6810      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
6811      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
6812      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
6813
6814       LOGICAL LEVDONE,LE_DONE
6815       COMMON/QCLEVL/
6816      +LEVDONE(MXX,10),LE_DONE(MXX)
6817  
6818
6819       CALL QTRACE('IX1CHK ',0)
6820
6821       IERR = -1
6822       JQ   =  0
6823
6824       DO ID = 0,10 
6825         DO IQ = 1,NQ2
6826           IF(ABS(PDFQCD(NXX+1,IQ,ID)).GT.1.E-11) THEN
6827             IERR = ID
6828             JQ   = IQ
6829           ENDIF
6830         ENDDO
6831       ENDDO
6832
6833       IF(IERR.EQ.-1) THEN
6834         IX1CHK = 0
6835         RETURN
6836       ENDIF
6837
6838       IX1CHK = MAX(IERR,1)
6839       IF(ISTOP.EQ.0) RETURN
6840  
6841       WRITE(6,'(/'' ------------------------------------'')')
6842       WRITE(6,'( '' QCDNUM error in s/r IX1CHK ---> STOP'')')
6843       WRITE(6,'( '' ------------------------------------'')')
6844       WRITE(6,'( '' Pdf identifier  ID :'',I5)') IERR
6845       WRITE(6,'( '' X = 1 gridpoint IX :'',I5)') NXX+1
6846       WRITE(6,'( '' Q2    gridpoint IQ :'',I5)') JQ
6847       WRITE(6,'(/'' Pdf nonzero at x = 1;''/        
6848      +           '' this should never happen....'')')
6849
6850       CALL QTRACE('IX1CHK ',1)
6851
6852       STOP
6853
6854       END
6855  
6856 CDECK  ID>, EVOLSG.
6857
6858 C     ================================ 
6859       SUBROUTINE EVOLSG(IQ0,IUQL,IUQH) 
6860 C     ================================
6861  
6862       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
6863  
6864  
6865       LOGICAL
6866      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6867      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6868      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6869      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6870      +LFFCAL,LASOLD
6871
6872       COMMON/QCFLAG/ 
6873      +IORD,IOLAST,
6874      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
6875      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
6876      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
6877      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
6878      +LFFCAL(7,30),LASOLD
6879  
6880  
6881       PARAMETER ( MXX = 410 )
6882       PARAMETER ( MQ2 =  120 )
6883
6884 C--   Do not set the following parameter to zero!
6885       PARAMETER ( NDFMAX = 20)
6886
6887  
6888       COMMON/QCGRID/
6889      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
6890      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
6891      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
6892      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
6893  
6894  
6895       COMMON/QCPASS/
6896      +ALPHA0, Q0ALFA, ASLAST, QALAST,
6897      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
6898      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
6899      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
6900      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
6901      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
6902      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
6903      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
6904      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
6905      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
6906
6907       LOGICAL LEVDONE,LE_DONE
6908       COMMON/QCLEVL/
6909      +LEVDONE(MXX,10),LE_DONE(MXX)
6910  
6911  
6912       LOGICAL LTIME  
6913       REAL T_START,T_END,T_SPENT
6914       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
6915      +E_CALLS(10),LTIME
6916       COMMON/QCFCNT/IFCNT(-1:1,5)
6917
6918  
6919       IF(LTIME) CALL TIMEX_LHA(T_START(5))
6920
6921       CALL QTRACE('EVOLSG ',0)
6922  
6923       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
6924         IERR = 1
6925         GOTO 500
6926       ENDIF
6927
6928       IQL = IUQL
6929       IQH = IUQH
6930
6931       IXL = MAX(ABS(IXFROMX(XMICUT)),1)
6932       IQD = ABS(IQFROMQ(QMICUT))
6933       IQD = MAX(IQD,ABS(IQFROMQ(QMINAS)))
6934       IQU = ABS(IQFROMQ(QMACUT))
6935       IF(IQD.NE.0) IQL = MAX(IQD,IQL)
6936       IF(IQU.NE.0) IQH = MIN(IQU+1,IQH)
6937  
6938       IF(IQL.LE.0) IQL = 1
6939       IF(IQH.LE.0.OR.IQH.GT.NQ2) IQH = NQ2
6940       IF(IQL.EQ.IQ0.AND.IQH.EQ.IQ0) RETURN
6941       IF(IQL.GE.IQH) THEN
6942         IERR = 2
6943         GOTO 500
6944       ENDIF
6945       IF(IQL.LT.1.OR.IQL.GE.NQ2) THEN
6946         IERR = 3
6947         GOTO 500
6948       ENDIF
6949       IF(IQH.LE.1.OR.IQH.GT.NQ2) THEN
6950         IERR = 3
6951         GOTO 500
6952       ENDIF
6953       IF(IQ0.LT.IQL.OR.IQ0.GT.IQH) THEN
6954         IERR = 4
6955         GOTO 500
6956       ENDIF
6957       IF(.NOT.LWT1OK) THEN
6958         IERR = 5
6959         GOTO 500
6960       ENDIF
6961       IF(IORD.EQ.2.AND..NOT.LWT2OK) THEN
6962         IERR = 6
6963         GOTO 500
6964       ENDIF
6965
6966       IRUN = 0
6967       IF(.NOT.LALFOK) THEN
6968         CALL QFILAS('EVOLSG')
6969         IRUN = 1
6970       ENDIF
6971       IF(.NOT.LDQ2OK) THEN
6972         CALL QDELQ2
6973         IRUN = 1
6974       ENDIF
6975  
6976       DO IX = 1,NXX
6977       LE_DONE(IX) = LEVDONE(IX,1)
6978       DO IQ = 1,NQ2
6979         FGLQCD(IX,IQ) = PDFQCD(IX,IQ,0)
6980         FSIQCD(IX,IQ) = PDFQCD(IX,IQ,1)
6981       ENDDO   
6982       ENDDO   
6983  
6984       IF(IQ0.NE.IQ0_LAST(1) .OR.
6985      +   IQL.NE.IQL_LAST(1) .OR.
6986      +   IQH.NE.IQH_LAST(1)     ) IRUN = 1
6987
6988       CALL APSI(IXL,IQ0,IQL,IQH,IRUN,EVL)
6989
6990       IQ0_LAST(1) = IQ0
6991       IQL_LAST(1) = IQL
6992       IQH_LAST(1) = IQH
6993  
6994       DO IX = 1,NXX
6995       LEVDONE(IX,1) = LE_DONE(IX) 
6996       DO IQ = 1,NQ2
6997         PDFQCD(IX,IQ,0) = FGLQCD(IX,IQ)
6998         PDFQCD(IX,IQ,1) = FSIQCD(IX,IQ)
6999       ENDDO   
7000       ENDDO   
7001  
7002       DO I = 1,30
7003         DO J = 1,7
7004           LFFCAL(J,I)  = .FALSE.
7005         ENDDO
7006       ENDDO
7007  
7008       IF(LTIME) THEN
7009         CALL TIMEX_LHA(T_END(5))
7010         T_SPENT(5) = T_SPENT(5)+T_END(5)-T_START(5)
7011         N_CALLS(5) = N_CALLS(5)+1
7012         E_CALLS(5) = E_CALLS(5)+EVL
7013       ENDIF
7014  
7015       RETURN
7016
7017  500  CONTINUE
7018       WRITE(6,'(/'' ------------------------------------'')')
7019       WRITE(6,'( '' QCDNUM error in s/r EVOLSG ---> STOP'')')
7020       WRITE(6,'( '' ------------------------------------'')')
7021       WRITE(6,'( '' Input      IQ0      :'',I5)') IQ0
7022       WRITE(6,'( ''            IQLow    :'',I5)') IUQL
7023       WRITE(6,'( ''            IQHigh   :'',I5)') IUQH
7024       IF(IERR.NE.1) THEN
7025         WRITE(6,'(/'' After cuts IQ0, Q20 :'',I5,E12.5)') IQ0,Q2TAB(IQ0)
7026         WRITE(6,'( ''            IQL, Q2L :'',I5,E12.5)') IQL,Q2TAB(IQL)
7027         WRITE(6,'( ''            IQH, Q2H :'',I5,E12.5)') IQH,Q2TAB(IQH)
7028       ENDIF
7029       IF(IERR.EQ.1) THEN
7030         WRITE(6,'(/'' No x-Q2 grid available'')')
7031       ELSEIF(IERR.EQ.2) THEN
7032         WRITE(6,'(/'' Value of IQL .ge. IQH'',
7033      +             '' (after applying Q2 cuts, if any)'')')
7034       ELSEIF(IERR.EQ.3) THEN
7035         WRITE(6,'(/'' IQL and/or IQH outside grid boundary'')')
7036       ELSEIF(IERR.EQ.4) THEN
7037         WRITE(6,'(/'' IQ0 outside the range [IQL,IQH]'',
7038      +             '' (after applying Q2 cuts, if any)'')')
7039       ELSEIF(IERR.EQ.5) THEN
7040         WRITE(6,'(/'' No LO weight tables available'',
7041      +             '' (please call s/r QNFILW)'')')
7042       ELSEIF(IERR.EQ.6) THEN
7043         WRITE(6,'(/'' No NLO weight tables available'',
7044      +             '' (please call s/r QNFILW)'')')
7045       ENDIF
7046
7047       CALL QTRACE('EVOLSG ',1)
7048
7049       STOP
7050
7051       END
7052  
7053  
7054 CDECK  ID>, APSI.
7055 C     ========================================= 
7056       SUBROUTINE APSI(IXL,IQ0,IQL,IQH,IRUN,EVL) 
7057 C     ========================================= 
7058
7059       IMPLICIT DOUBLE PRECISION (A-H,O-Z) 
7060  
7061       COMMON/QCCONS/
7062      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
7063      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
7064      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
7065      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
7066      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
7067      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
7068  
7069  
7070  
7071       LOGICAL
7072      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7073      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7074      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7075      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7076      +LFFCAL,LASOLD
7077
7078       COMMON/QCFLAG/ 
7079      +IORD,IOLAST,
7080      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7081      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7082      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7083      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7084      +LFFCAL(7,30),LASOLD
7085  
7086  
7087       PARAMETER ( MXX = 410 )
7088       PARAMETER ( MQ2 =  120 )
7089
7090 C--   Do not set the following parameter to zero!
7091       PARAMETER ( NDFMAX = 20)
7092
7093  
7094       COMMON/QCGRID/
7095      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
7096      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
7097      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
7098      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
7099  
7100  
7101       REAL
7102      +WGTFF1,WGTFG1,
7103      +WGTGF1,WGTGG1,
7104      +WGTPP2,WGTPM2,WGTNS2,
7105      +WGTFF2,WGTFG2,
7106      +WGTGF2,WGTGG2,
7107      +WGTC2Q,WGTC2G,YNTC2Q,
7108      +WGTCLQ,WGTCLG,WGTC3Q
7109
7110       COMMON/QCWEIT/
7111      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
7112      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
7113      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
7114      +WGTNS2(MXX*(MXX+1)/2,3:5),
7115      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
7116      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
7117      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
7118      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
7119      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
7120
7121       COMMON/QCWADR/ IWADR(MXX,MXX)
7122
7123  
7124       COMMON/QCPASS/
7125      +ALPHA0, Q0ALFA, ASLAST, QALAST,
7126      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
7127      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
7128      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
7129      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
7130      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
7131      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
7132      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
7133      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
7134      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
7135
7136       LOGICAL LEVDONE,LE_DONE
7137       COMMON/QCLEVL/
7138      +LEVDONE(MXX,10),LE_DONE(MXX)
7139  
7140  
7141       LOGICAL LTIME  
7142       REAL T_START,T_END,T_SPENT
7143       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
7144      +E_CALLS(10),LTIME
7145       COMMON/QCFCNT/IFCNT(-1:1,5)
7146
7147
7148       EVL = 0.
7149
7150       FSI = FSIQCD(NXX,IQ0)
7151       FGL = FGLQCD(NXX,IQ0)
7152 C     -------------------------------------------
7153       IF(.NOT.LE_DONE(NXX) .OR. IRUN.EQ.1) THEN !
7154 C     -------------------------------------------
7155  
7156         NF  = NFMAP(IQ0)
7157
7158         WQQ = ALFAPQ(IQ0) * WGTFF1(IWADR(NXX,NXX))    +
7159      +        ALFA2Q(IQ0) * WGTFF2(IWADR(NXX,NXX),NF)
7160         WQG = ALFAPQ(IQ0) * WGTFG1(IWADR(NXX,NXX),NF) +
7161      +        ALFA2Q(IQ0) * WGTFG2(IWADR(NXX,NXX),NF)
7162         WGQ = ALFAPQ(IQ0) * WGTGF1(IWADR(NXX,NXX))    +
7163      +        ALFA2Q(IQ0) * WGTGF2(IWADR(NXX,NXX),NF)
7164         WGG = ALFAPQ(IQ0) * WGTGG1(IWADR(NXX,NXX),NF) +
7165      +        ALFA2Q(IQ0) * WGTGG2(IWADR(NXX,NXX),NF)
7166  
7167         DSI = WQQ*FSI+WQG*FGL
7168         DGL = WGQ*FSI+WGG*FGL
7169  
7170         FSI0 = FSI
7171         DSI0 = DSI
7172         FGL0 = FGL
7173         DGL0 = DGL
7174         FSIQCD(NXX,IQ0) = FSI
7175         DSIQCD(NXX,IQ0) = DSI
7176         FGLQCD(NXX,IQ0) = FGL
7177         DGGQCD(NXX,IQ0) = DGL
7178         EVL             = EVL+1.
7179  
7180         DO 100 IQ = IQ0+1,IQH
7181           DEL = DELUP(IQ)
7182           NF  = NFMAP(IQ)
7183           WQQ = ALFAPQ(IQ) * WGTFF1(IWADR(NXX,NXX))    +
7184      +          ALFA2Q(IQ) * WGTFF2(IWADR(NXX,NXX),NF)
7185           WQG = ALFAPQ(IQ) * WGTFG1(IWADR(NXX,NXX),NF) +
7186      +          ALFA2Q(IQ) * WGTFG2(IWADR(NXX,NXX),NF)
7187           WGQ = ALFAPQ(IQ) * WGTGF1(IWADR(NXX,NXX))    +
7188      +          ALFA2Q(IQ) * WGTGF2(IWADR(NXX,NXX),NF)
7189           WGG = ALFAPQ(IQ) * WGTGG1(IWADR(NXX,NXX),NF) +
7190      +          ALFA2Q(IQ) * WGTGG2(IWADR(NXX,NXX),NF)
7191           AAS = 2.*FSI + DSI*DEL
7192           BBS = 2. - WQQ*DEL
7193           AAG = 2.*FGL + DGL*DEL
7194           BBG = 2. - WGG*DEL
7195           FSI = (AAS*BBG+WQG*AAG*DEL) / (BBS*BBG-WQG*WGQ*DEL*DEL)
7196           FGL = (AAG*BBS+WGQ*AAS*DEL) / (BBG*BBS-WGQ*WQG*DEL*DEL)
7197           DSI = WQQ*FSI+WQG*FGL
7198           DGL = WGQ*FSI+WGG*FGL
7199           FSIQCD(NXX,IQ) = FSI
7200           DSIQCD(NXX,IQ) = DSI
7201           FGLQCD(NXX,IQ) = FGL
7202           DGGQCD(NXX,IQ) = DGL
7203  100    CONTINUE
7204         EVL = EVL+IQH-IQ0
7205  
7206         FSI = FSI0
7207         DSI = DSI0
7208         FGL = FGL0
7209         DGL = DGL0
7210  
7211         DO 200 IQ = IQ0-1,IQL,-1
7212           DEL = DELDN(IQ)
7213           NF  = NFMAP(IQ)
7214           WQQ = ALFAPQ(IQ) * WGTFF1(IWADR(NXX,NXX))    +
7215      +          ALFA2Q(IQ) * WGTFF2(IWADR(NXX,NXX),NF)
7216           WQG = ALFAPQ(IQ) * WGTFG1(IWADR(NXX,NXX),NF) +
7217      +          ALFA2Q(IQ) * WGTFG2(IWADR(NXX,NXX),NF)
7218           WGQ = ALFAPQ(IQ) * WGTGF1(IWADR(NXX,NXX))    +
7219      +          ALFA2Q(IQ) * WGTGF2(IWADR(NXX,NXX),NF)
7220           WGG = ALFAPQ(IQ) * WGTGG1(IWADR(NXX,NXX),NF) +
7221      +          ALFA2Q(IQ) * WGTGG2(IWADR(NXX,NXX),NF)
7222           AAS = 2.*FSI + DSI*DEL
7223           BBS = 2. - WQQ*DEL
7224           AAG = 2.*FGL + DGL*DEL
7225           BBG = 2. - WGG*DEL
7226           FSI = (AAS*BBG+WQG*AAG*DEL) / (BBS*BBG-WQG*WGQ*DEL*DEL)
7227           FGL = (AAG*BBS+WGQ*AAS*DEL) / (BBG*BBS-WGQ*WQG*DEL*DEL)
7228           DSI = WQQ*FSI+WQG*FGL
7229           DGL = WGQ*FSI+WGG*FGL
7230           FSIQCD(NXX,IQ) = FSI
7231           DSIQCD(NXX,IQ) = DSI
7232           FGLQCD(NXX,IQ) = FGL
7233           DGGQCD(NXX,IQ) = DGL
7234  200    CONTINUE
7235         EVL = EVL+IQ0-IQL
7236  
7237 C     -------
7238       ENDIF !
7239 C     -------
7240  
7241 C     ---------------------------
7242       DO 300 IX0 = NXX-1,IXL,-1 !
7243 C     ---------------------------
7244  
7245         FSI = FSIQCD(IX0,IQ0)
7246         FGL = FGLQCD(IX0,IQ0)
7247         IF(LE_DONE(IX0) .AND. IRUN.EQ.0) GOTO 300
7248         ALF = ALFAPQ(IQ0)
7249         AL2 = ALFA2Q(IQ0)
7250         SQQ1 = 0.
7251         SQG1 = 0.
7252         SGQ1 = 0.
7253         SGG1 = 0.
7254         SQQ2 = 0.
7255         SQG2 = 0.
7256         SGQ2 = 0.
7257         SGG2 = 0.
7258         NF  = NFMAP(IQ0)
7259         DO 220 IX = NXX,IX0+1,-1
7260           IADR = IWADR(IX,IX0)
7261           SQQ1 = SQQ1 + WGTFF1(IADR)      * FSIQCD(IX,IQ0)
7262           SQQ2 = SQQ2 + WGTFF2(IADR,NF)   * FSIQCD(IX,IQ0)
7263           SQG1 = SQG1 + WGTFG1(IADR,NF)   * FGLQCD(IX,IQ0)
7264           SQG2 = SQG2 + WGTFG2(IADR,NF)   * FGLQCD(IX,IQ0)
7265           SGQ1 = SGQ1 + WGTGF1(IADR)      * FSIQCD(IX,IQ0)
7266           SGQ2 = SGQ2 + WGTGF2(IADR,NF)   * FSIQCD(IX,IQ0)
7267           SGG1 = SGG1 + WGTGG1(IADR,NF)   * FGLQCD(IX,IQ0)
7268           SGG2 = SGG2 + WGTGG2(IADR,NF)   * FGLQCD(IX,IQ0)
7269  220    CONTINUE
7270         IAD = IWADR(IX0,IX0)
7271         SQQ = ALF*SQQ1 + AL2*SQQ2
7272         SQG = ALF*SQG1 + AL2*SQG2
7273         SGQ = ALF*SGQ1 + AL2*SGQ2
7274         SGG = ALF*SGG1 + AL2*SGG2
7275         WQQ = ALF* WGTFF1(IAD)        + AL2*WGTFF2(IAD,NF)    
7276         WQG = ALF* WGTFG1(IAD,NF)     + AL2*WGTFG2(IAD,NF)    
7277         WGQ = ALF* WGTGF1(IAD)        + AL2*WGTGF2(IAD,NF)    
7278         WGG = ALF* WGTGG1(IAD,NF)     + AL2*WGTGG2(IAD,NF)    
7279         DSI = WQQ*FSI+SQQ+WQG*FGL+SQG
7280         DGL = WGQ*FSI+SGQ+WGG*FGL+SGG
7281  
7282         FSI0 = FSI
7283         DSI0 = DSI
7284         FGL0 = FGL
7285         DGL0 = DGL
7286         FSIQCD(IX0,IQ0) = FSI
7287         DSIQCD(IX0,IQ0) = DSI
7288         FGLQCD(IX0,IQ0) = FGL
7289         DGGQCD(IX0,IQ0) = DGL
7290         EVL             = EVL+NXX-IX0+1
7291  
7292         DO 250 IQ = IQ0+1,IQH
7293           IF(IFAILC(IX0,IQ).NE.0) GOTO 250
7294           ALF = ALFAPQ(IQ)
7295           AL2 = ALFA2Q(IQ)
7296           DEL = DELUP(IQ)
7297           SQQ1 = 0.
7298           SQG1 = 0.
7299           SGQ1 = 0.
7300           SGG1 = 0.
7301           SQQ2 = 0.
7302           SQG2 = 0.
7303           SGQ2 = 0.
7304           SGG2 = 0.
7305           NF  = NFMAP(IQ)
7306           DO 230 IX = NXX,IX0+1,-1
7307             IADR = IWADR(IX,IX0)
7308             SQQ1 = SQQ1 + WGTFF1(IADR)      * FSIQCD(IX,IQ)
7309             SQQ2 = SQQ2 + WGTFF2(IADR,NF)   * FSIQCD(IX,IQ)
7310             SQG1 = SQG1 + WGTFG1(IADR,NF)   * FGLQCD(IX,IQ)
7311             SQG2 = SQG2 + WGTFG2(IADR,NF)   * FGLQCD(IX,IQ)
7312             SGQ1 = SGQ1 + WGTGF1(IADR)      * FSIQCD(IX,IQ)
7313             SGQ2 = SGQ2 + WGTGF2(IADR,NF)   * FSIQCD(IX,IQ)
7314             SGG1 = SGG1 + WGTGG1(IADR,NF)   * FGLQCD(IX,IQ)
7315             SGG2 = SGG2 + WGTGG2(IADR,NF)   * FGLQCD(IX,IQ)
7316  230      CONTINUE
7317           IAD = IWADR(IX0,IX0)
7318           SQQ = ALF*SQQ1 + AL2*SQQ2
7319           SQG = ALF*SQG1 + AL2*SQG2
7320           SGQ = ALF*SGQ1 + AL2*SGQ2
7321           SGG = ALF*SGG1 + AL2*SGG2
7322           WQQ = ALF* WGTFF1(IAD)        + AL2*WGTFF2(IAD,NF)    
7323           WQG = ALF* WGTFG1(IAD,NF)     + AL2*WGTFG2(IAD,NF)    
7324           WGQ = ALF* WGTGF1(IAD)        + AL2*WGTGF2(IAD,NF)    
7325           WGG = ALF* WGTGG1(IAD,NF)     + AL2*WGTGG2(IAD,NF)    
7326           AAS = 2.*FSI + (DSI+SQQ+SQG)*DEL
7327           BBS = 2. - WQQ*DEL
7328           AAG = 2.*FGL + (DGL+SGQ+SGG)*DEL
7329           BBG = 2. - WGG*DEL
7330           FSI = (AAS*BBG+WQG*AAG*DEL) / (BBS*BBG-WQG*WGQ*DEL*DEL)
7331           FGL = (AAG*BBS+WGQ*AAS*DEL) / (BBG*BBS-WGQ*WQG*DEL*DEL)
7332           DSI = WQQ*FSI+SQQ+WQG*FGL+SQG
7333           DGL = WGQ*FSI+SGQ+WGG*FGL+SGG
7334           FSIQCD(IX0,IQ) = FSI
7335           DSIQCD(IX0,IQ) = DSI
7336           FGLQCD(IX0,IQ) = FGL
7337           DGGQCD(IX0,IQ) = DGL
7338           EVL            = EVL+NXX-IX0+1
7339  250    CONTINUE
7340  
7341         FSI = FSI0
7342         DSI = DSI0
7343         FGL = FGL0
7344         DGL = DGL0
7345  
7346         DO 270 IQ = IQ0-1,IQL,-1
7347           ALF = ALFAPQ(IQ)
7348           AL2 = ALFA2Q(IQ)
7349           DEL = DELDN(IQ)
7350           SQQ1 = 0.
7351           SQG1 = 0.
7352           SGQ1 = 0.
7353           SGG1 = 0.
7354           SQQ2 = 0.
7355           SQG2 = 0.
7356           SGQ2 = 0.
7357           SGG2 = 0.
7358           NF  = NFMAP(IQ)
7359           DO 260 IX = NXX,IX0+1,-1
7360             IADR = IWADR(IX,IX0)
7361             SQQ1 = SQQ1 + WGTFF1(IADR)      * FSIQCD(IX,IQ)
7362             SQQ2 = SQQ2 + WGTFF2(IADR,NF)   * FSIQCD(IX,IQ)
7363             SQG1 = SQG1 + WGTFG1(IADR,NF)   * FGLQCD(IX,IQ)
7364             SQG2 = SQG2 + WGTFG2(IADR,NF)   * FGLQCD(IX,IQ)
7365             SGQ1 = SGQ1 + WGTGF1(IADR)      * FSIQCD(IX,IQ)
7366             SGQ2 = SGQ2 + WGTGF2(IADR,NF)   * FSIQCD(IX,IQ)
7367             SGG1 = SGG1 + WGTGG1(IADR,NF)   * FGLQCD(IX,IQ)
7368             SGG2 = SGG2 + WGTGG2(IADR,NF)   * FGLQCD(IX,IQ)
7369  260      CONTINUE
7370           IAD = IWADR(IX0,IX0)
7371           SQQ = ALF*SQQ1 + AL2*SQQ2
7372           SQG = ALF*SQG1 + AL2*SQG2
7373           SGQ = ALF*SGQ1 + AL2*SGQ2
7374           SGG = ALF*SGG1 + AL2*SGG2
7375           WQQ = ALF* WGTFF1(IAD)        + AL2*WGTFF2(IAD,NF)    
7376           WQG = ALF* WGTFG1(IAD,NF)     + AL2*WGTFG2(IAD,NF)    
7377           WGQ = ALF* WGTGF1(IAD)        + AL2*WGTGF2(IAD,NF)    
7378           WGG = ALF* WGTGG1(IAD,NF)     + AL2*WGTGG2(IAD,NF)    
7379           AAS = 2.*FSI + (DSI+SQQ+SQG)*DEL
7380           BBS = 2. - WQQ*DEL
7381           AAG = 2.*FGL + (DGL+SGQ+SGG)*DEL
7382           BBG = 2. - WGG*DEL
7383           FSI = (AAS*BBG+WQG*AAG*DEL) / (BBS*BBG-WQG*WGQ*DEL*DEL)
7384           FGL = (AAG*BBS+WGQ*AAS*DEL) / (BBG*BBS-WGQ*WQG*DEL*DEL)
7385           DSI = WQQ*FSI+SQQ+WQG*FGL+SQG
7386           DGL = WGQ*FSI+SGQ+WGG*FGL+SGG
7387           FSIQCD(IX0,IQ) = FSI
7388           DSIQCD(IX0,IQ) = DSI
7389           FGLQCD(IX0,IQ) = FGL
7390           DGGQCD(IX0,IQ) = DGL
7391           EVL            = EVL+NXX-IX0+1
7392  270    CONTINUE
7393  
7394 C     ----------
7395  300  CONTINUE !
7396 C     ----------
7397
7398       EVL = EVL*2./(NXX*(NXX+1)*NQ2)
7399
7400       CALL QNTRUE(LE_DONE,NXX)
7401  
7402       RETURN
7403       END
7404  
7405 CDECK  ID>, EVOLNM.
7406  
7407 C     =====================================
7408       SUBROUTINE EVOLNM(UNAM,IQ0,IUQL,IUQH)
7409 C     =====================================
7410  
7411       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
7412  
7413       CHARACTER*(*) UNAM
7414       CHARACTER*5   NAME
7415  
7416  
7417       CHARACTER*5 PNAM,STFNAM
7418       LOGICAL     LNFP
7419       COMMON /QCLNFP/ LNFP(0:30,3:5)
7420       COMMON /QCPNAM/ PNAM(0:30)
7421       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
7422       COMMON /QCFNAM/ STFNAM(7)
7423  
7424  
7425       PARAMETER ( MXX = 410 )
7426       PARAMETER ( MQ2 =  120 )
7427
7428 C--   Do not set the following parameter to zero!
7429       PARAMETER ( NDFMAX = 20)
7430
7431  
7432       COMMON/QCGRID/
7433      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
7434      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
7435      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
7436      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
7437  
7438  
7439       LOGICAL
7440      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7441      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7442      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7443      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7444      +LFFCAL,LASOLD
7445
7446       COMMON/QCFLAG/ 
7447      +IORD,IOLAST,
7448      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7449      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7450      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7451      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7452      +LFFCAL(7,30),LASOLD
7453  
7454  
7455       COMMON/QCPASS/
7456      +ALPHA0, Q0ALFA, ASLAST, QALAST,
7457      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
7458      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
7459      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
7460      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
7461      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
7462      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
7463      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
7464      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
7465      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
7466
7467       LOGICAL LEVDONE,LE_DONE
7468       COMMON/QCLEVL/
7469      +LEVDONE(MXX,10),LE_DONE(MXX)
7470  
7471  
7472       REAL
7473      +WGTFF1,WGTFG1,
7474      +WGTGF1,WGTGG1,
7475      +WGTPP2,WGTPM2,WGTNS2,
7476      +WGTFF2,WGTFG2,
7477      +WGTGF2,WGTGG2,
7478      +WGTC2Q,WGTC2G,YNTC2Q,
7479      +WGTCLQ,WGTCLG,WGTC3Q
7480
7481       COMMON/QCWEIT/
7482      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
7483      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
7484      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
7485      +WGTNS2(MXX*(MXX+1)/2,3:5),
7486      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
7487      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
7488      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
7489      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
7490      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
7491
7492       COMMON/QCWADR/ IWADR(MXX,MXX)
7493
7494  
7495       LOGICAL LTIME  
7496       REAL T_START,T_END,T_SPENT
7497       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
7498      +E_CALLS(10),LTIME
7499       COMMON/QCFCNT/IFCNT(-1:1,5)
7500
7501  
7502       IF(LTIME) CALL TIMEX_LHA(T_START(3))
7503
7504       CALL QTRACE('EVOLNM ',0)
7505  
7506       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
7507         IERR = 1
7508         GOTO 500
7509       ENDIF
7510
7511       IQL = IUQL
7512       IQH = IUQH
7513
7514       IXL = MAX(ABS(IXFROMX(XMICUT)),1)
7515       IQD = ABS(IQFROMQ(QMICUT))
7516       IQD = MAX(IQD,ABS(IQFROMQ(QMINAS)))
7517       IQU = ABS(IQFROMQ(QMACUT))
7518       IF(IQD.NE.0) IQL = MAX(IQD,IQL)
7519       IF(IQU.NE.0) IQH = MIN(IQU+1,IQH)
7520  
7521       IF(IQL.LE.0) IQL = 1
7522       IF(IQH.LE.0.OR.IQH.GT.NQ2) IQH = NQ2
7523       IF(IQL.EQ.IQ0.AND.IQH.EQ.IQ0) RETURN
7524       IF(IQL.GE.IQH) THEN
7525         IERR = 2
7526         GOTO 500
7527       ENDIF
7528       IF(IQL.LT.1.OR.IQL.GE.NQ2) THEN
7529         IERR = 3
7530         GOTO 500
7531       ENDIF
7532       IF(IQH.LE.1.OR.IQH.GT.NQ2) THEN
7533         IERR = 3
7534         GOTO 500
7535       ENDIF
7536       IF(IQ0.LT.IQL.OR.IQ0.GT.IQH) THEN
7537         IERR = 4
7538         GOTO 500
7539       ENDIF
7540       IF(.NOT.LWT1OK) THEN
7541         IERR = 5
7542         GOTO 500
7543       ENDIF
7544       IF(IORD.EQ.2.AND..NOT.LWT2OK) THEN
7545         IERR = 6
7546         GOTO 500
7547       ENDIF
7548  
7549       CALL QSTRIP(UNAM,NAME)
7550  
7551       NFMI = 9
7552       NFMA = 0
7553       DO 15 IQ = IQL,IQH
7554       NFMI = MIN(NFMI,NFMAP(IQ))
7555       NFMA = MAX(NFMA,NFMAP(IQ))
7556   15  CONTINUE
7557  
7558       DO 16 NF = NFMI,NFMA
7559         ID = IDCHEK(NAME,NF,'EVOLNM',1)
7560   16  CONTINUE
7561  
7562       IRUN = 0
7563       IF(LPLUS) THEN
7564         DO 19 NF = 3,5
7565         DO 18 IX0 = 1,NXX
7566         DO 17 IX  = IX0,NXX
7567           WGTNS2(IWADR(IX,IX0),NF) = WGTPM2(IWADR(IX,IX0),NF)
7568   17    CONTINUE
7569   18    CONTINUE
7570   19    CONTINUE
7571         IRUN = 1
7572       ENDIF
7573       LPLUS = .FALSE.
7574
7575       IF(.NOT.LALFOK) THEN
7576         CALL QFILAS('EVOLNM')
7577         IRUN = 1
7578       ENDIF
7579       IF(.NOT.LDQ2OK) THEN
7580         CALL QDELQ2
7581         IRUN = 1
7582       ENDIF
7583  
7584       DO IX = 1,NXX
7585       LE_DONE(IX) = LEVDONE(IX,ID)
7586       DO IQ = 1,NQ2
7587         FNSQCD(IX,IQ) = PDFQCD(IX,IQ,ID)
7588       ENDDO   
7589       ENDDO   
7590  
7591       IF(IQ0.NE.IQ0_LAST(ID) .OR.
7592      +   IQL.NE.IQL_LAST(ID) .OR.
7593      +   IQH.NE.IQH_LAST(ID)     ) IRUN = 1
7594  
7595       CALL APNS(IXL,IQ0,IQL,IQH,IRUN,EVL)
7596
7597       IQ0_LAST(ID) = IQ0
7598       IQL_LAST(ID) = IQL
7599       IQH_LAST(ID) = IQH
7600  
7601       DO IX = 1,NXX
7602       LEVDONE(IX,ID) = LE_DONE(IX)
7603       DO IQ = 1,NQ2
7604         PDFQCD(IX,IQ,ID) = FNSQCD(IX,IQ)
7605       ENDDO   
7606       ENDDO   
7607
7608       DO I = 1,30
7609         DO J = 1,7
7610           LFFCAL(J,I)  = .FALSE.
7611         ENDDO
7612       ENDDO
7613  
7614       IF(LTIME) THEN
7615         CALL TIMEX_LHA(T_END(3))
7616         T_SPENT(3) = T_SPENT(3)+T_END(3)-T_START(3)
7617         N_CALLS(3) = N_CALLS(3)+1
7618         E_CALLS(3) = E_CALLS(3)+EVL
7619       ENDIF
7620  
7621       RETURN
7622
7623  500  CONTINUE
7624       WRITE(6,'(/'' ------------------------------------'')')
7625       WRITE(6,'( '' QCDNUM error in s/r EVOLNM ---> STOP'')')
7626       WRITE(6,'( '' ------------------------------------'')')
7627       WRITE(6,'( '' Input      NAME     :'',A)')  UNAM
7628       WRITE(6,'( ''            IQ0      :'',I5)') IQ0
7629       WRITE(6,'( ''            IQLow    :'',I5)') IUQL
7630       WRITE(6,'( ''            IQHigh   :'',I5)') IUQH
7631       IF(IERR.NE.1) THEN
7632         WRITE(6,'(/'' After cuts IQ0, Q20 :'',I5,E12.5)') IQ0,Q2TAB(IQ0)
7633         WRITE(6,'( ''            IQL, Q2L :'',I5,E12.5)') IQL,Q2TAB(IQL)
7634         WRITE(6,'( ''            IQH, Q2H :'',I5,E12.5)') IQH,Q2TAB(IQH)
7635       ENDIF
7636       IF(IERR.EQ.1) THEN
7637         WRITE(6,'(/'' No x-Q2 grid available'')')
7638       ELSEIF(IERR.EQ.2) THEN
7639         WRITE(6,'(/'' Value of IQL .ge. IQH'',
7640      +             '' (after applying Q2 cuts, if any)'')')
7641       ELSEIF(IERR.EQ.3) THEN
7642         WRITE(6,'(/'' IQL and/or IQH outside grid boundary'')')
7643       ELSEIF(IERR.EQ.4) THEN
7644         WRITE(6,'(/'' IQ0 outside the range [IQL,IQH]'',
7645      +             '' (after applying Q2 cuts, if any)'')')
7646       ELSEIF(IERR.EQ.5) THEN
7647         WRITE(6,'(/'' No LO weight tables available'',
7648      +             '' (please call s/r QNFILW)'')')
7649       ELSEIF(IERR.EQ.6) THEN
7650         WRITE(6,'(/'' No NLO weight tables available'',
7651      +             '' (please call s/r QNFILW)'')')
7652       ENDIF
7653
7654       CALL QTRACE('EVOLNM ',1)
7655
7656       STOP
7657
7658       END
7659  
7660 CDECK  ID>, EVOLNP.
7661  
7662 C     =====================================
7663       SUBROUTINE EVOLNP(UNAM,IQ0,IUQL,IUQH)
7664 C     =====================================
7665  
7666       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
7667  
7668       CHARACTER*(*) UNAM
7669       CHARACTER*5   NAME
7670  
7671  
7672       CHARACTER*5 PNAM,STFNAM
7673       LOGICAL     LNFP
7674       COMMON /QCLNFP/ LNFP(0:30,3:5)
7675       COMMON /QCPNAM/ PNAM(0:30)
7676       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
7677       COMMON /QCFNAM/ STFNAM(7)
7678  
7679  
7680       PARAMETER ( MXX = 410 )
7681       PARAMETER ( MQ2 =  120 )
7682
7683 C--   Do not set the following parameter to zero!
7684       PARAMETER ( NDFMAX = 20)
7685
7686  
7687       COMMON/QCGRID/
7688      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
7689      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
7690      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
7691      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
7692  
7693  
7694       LOGICAL
7695      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7696      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7697      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7698      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7699      +LFFCAL,LASOLD
7700
7701       COMMON/QCFLAG/ 
7702      +IORD,IOLAST,
7703      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7704      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7705      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7706      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7707      +LFFCAL(7,30),LASOLD
7708  
7709  
7710       COMMON/QCPASS/
7711      +ALPHA0, Q0ALFA, ASLAST, QALAST,
7712      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
7713      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
7714      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
7715      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
7716      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
7717      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
7718      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
7719      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
7720      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
7721
7722       LOGICAL LEVDONE,LE_DONE
7723       COMMON/QCLEVL/
7724      +LEVDONE(MXX,10),LE_DONE(MXX)
7725  
7726  
7727       REAL
7728      +WGTFF1,WGTFG1,
7729      +WGTGF1,WGTGG1,
7730      +WGTPP2,WGTPM2,WGTNS2,
7731      +WGTFF2,WGTFG2,
7732      +WGTGF2,WGTGG2,
7733      +WGTC2Q,WGTC2G,YNTC2Q,
7734      +WGTCLQ,WGTCLG,WGTC3Q
7735
7736       COMMON/QCWEIT/
7737      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
7738      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
7739      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
7740      +WGTNS2(MXX*(MXX+1)/2,3:5),
7741      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
7742      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
7743      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
7744      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
7745      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
7746
7747       COMMON/QCWADR/ IWADR(MXX,MXX)
7748
7749  
7750       LOGICAL LTIME  
7751       REAL T_START,T_END,T_SPENT
7752       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
7753      +E_CALLS(10),LTIME
7754       COMMON/QCFCNT/IFCNT(-1:1,5)
7755
7756  
7757       IF(LTIME) CALL TIMEX_LHA(T_START(4))
7758
7759       CALL QTRACE('EVOLNP ',0)
7760  
7761       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
7762         IERR = 1
7763         GOTO 500
7764       ENDIF
7765
7766       IQL = IUQL
7767       IQH = IUQH
7768
7769       IXL = MAX(ABS(IXFROMX(XMICUT)),1)
7770       IQD = ABS(IQFROMQ(QMICUT))
7771       IQD = MAX(IQD,ABS(IQFROMQ(QMINAS)))
7772       IQU = ABS(IQFROMQ(QMACUT))
7773       IF(IQD.NE.0) IQL = MAX(IQD,IQL)
7774       IF(IQU.NE.0) IQH = MIN(IQU+1,IQH)
7775  
7776       IF(IQL.LE.0) IQL = 1
7777       IF(IQH.LE.0.OR.IQH.GT.NQ2) IQH = NQ2
7778       IF(IQL.EQ.IQ0.AND.IQH.EQ.IQ0) RETURN
7779       IF(IQL.GE.IQH) THEN
7780         IERR = 2
7781         GOTO 500
7782       ENDIF
7783       IF(IQL.LT.1.OR.IQL.GE.NQ2) THEN
7784         IERR = 3
7785         GOTO 500
7786       ENDIF
7787       IF(IQH.LE.1.OR.IQH.GT.NQ2) THEN
7788         IERR = 3
7789         GOTO 500
7790       ENDIF
7791       IF(IQ0.LT.IQL.OR.IQ0.GT.IQH) THEN
7792         IERR = 4
7793         GOTO 500
7794       ENDIF
7795       IF(.NOT.LWT1OK) THEN
7796         IERR = 5
7797         GOTO 500
7798       ENDIF
7799       IF(IORD.EQ.2.AND..NOT.LWT2OK) THEN
7800         IERR = 6
7801         GOTO 500
7802       ENDIF
7803  
7804       CALL QSTRIP(UNAM,NAME)
7805  
7806       NFMI = 9
7807       NFMA = 0
7808       DO 15 IQ = IQL,IQH
7809       NFMI = MIN(NFMI,NFMAP(IQ))
7810       NFMA = MAX(NFMA,NFMAP(IQ))
7811   15  CONTINUE
7812  
7813       DO 16 NF = NFMI,NFMA
7814         ID = IDCHEK(NAME,NF,'EVOLNP',1)
7815   16  CONTINUE
7816  
7817       IRUN = 0
7818       IF(.NOT.LPLUS) THEN
7819         DO 19 NF  = 3,5
7820         DO 18 IX0 = 1,NXX
7821         DO 17 IX  = IX0,NXX
7822           WGTNS2(IWADR(IX,IX0),NF) = WGTPP2(IWADR(IX,IX0),NF)
7823   17    CONTINUE
7824   18    CONTINUE
7825   19    CONTINUE
7826         IRUN = 1
7827       ENDIF
7828       LPLUS = .TRUE.
7829
7830       IF(.NOT.LALFOK) THEN
7831         CALL QFILAS('EVOLNP')
7832         IRUN = 1
7833       ENDIF
7834       IF(.NOT.LDQ2OK) THEN
7835         CALL QDELQ2
7836         IRUN = 1
7837       ENDIF
7838  
7839       DO 25 IX = 1,NXX
7840       DO 20 IQ = 1,NQ2
7841   20  CONTINUE
7842   25  CONTINUE
7843  
7844       DO IX = 1,NXX
7845       LE_DONE(IX) = LEVDONE(IX,ID)
7846       DO IQ = 1,NQ2
7847         FNSQCD(IX,IQ) = PDFQCD(IX,IQ,ID)
7848       ENDDO   
7849       ENDDO   
7850  
7851       IF(IQ0.NE.IQ0_LAST(ID) .OR.
7852      +   IQL.NE.IQL_LAST(ID) .OR.
7853      +   IQH.NE.IQH_LAST(ID)     ) IRUN = 1
7854  
7855       CALL APNS(IXL,IQ0,IQL,IQH,IRUN,EVL)
7856
7857       IQ0_LAST(ID) = IQ0
7858       IQL_LAST(ID) = IQL
7859       IQH_LAST(ID) = IQH
7860  
7861       DO IX = 1,NXX
7862       LEVDONE(IX,ID) = LE_DONE(IX)
7863       DO IQ = 1,NQ2
7864         PDFQCD(IX,IQ,ID) = FNSQCD(IX,IQ)
7865       ENDDO   
7866       ENDDO   
7867
7868       DO I = 1,30
7869         DO J = 1,7
7870           LFFCAL(J,I)  = .FALSE.
7871         ENDDO
7872       ENDDO
7873  
7874       IF(LTIME) THEN
7875         CALL TIMEX_LHA(T_END(4))
7876         T_SPENT(4) = T_SPENT(4)+T_END(4)-T_START(4)
7877         N_CALLS(4) = N_CALLS(4)+1
7878         E_CALLS(4) = E_CALLS(4)+EVL
7879       ENDIF
7880  
7881       RETURN
7882
7883  500  CONTINUE
7884       WRITE(6,'(/'' ------------------------------------'')')
7885       WRITE(6,'( '' QCDNUM error in s/r EVOLNP ---> STOP'')')
7886       WRITE(6,'( '' ------------------------------------'')')
7887       WRITE(6,'( '' Input      NAME     :'',A)')  UNAM
7888       WRITE(6,'( ''            IQ0      :'',I5)') IQ0
7889       WRITE(6,'( ''            IQLow    :'',I5)') IUQL
7890       WRITE(6,'( ''            IQHigh   :'',I5)') IUQH
7891       IF(IERR.NE.1) THEN
7892         WRITE(6,'(/'' After cuts IQ0, Q20 :'',I5,E12.5)') IQ0,Q2TAB(IQ0)
7893         WRITE(6,'( ''            IQL, Q2L :'',I5,E12.5)') IQL,Q2TAB(IQL)
7894         WRITE(6,'( ''            IQH, Q2H :'',I5,E12.5)') IQH,Q2TAB(IQH)
7895       ENDIF
7896       IF(IERR.EQ.1) THEN
7897         WRITE(6,'(/'' No x-Q2 grid available'')')
7898       ELSEIF(IERR.EQ.2) THEN
7899         WRITE(6,'(/'' Value of IQL .ge. IQH'',
7900      +             '' (after applying Q2 cuts, if any)'')')
7901       ELSEIF(IERR.EQ.3) THEN
7902         WRITE(6,'(/'' IQL and/or IQH outside grid boundary'')')
7903       ELSEIF(IERR.EQ.4) THEN
7904         WRITE(6,'(/'' IQ0 outside the range [IQL,IQH]'',
7905      +             '' (after applying Q2 cuts, if any)'')')
7906       ELSEIF(IERR.EQ.5) THEN
7907         WRITE(6,'(/'' No LO weight tables available'',
7908      +             '' (please call s/r QNFILW)'')')
7909       ELSEIF(IERR.EQ.6) THEN
7910         WRITE(6,'(/'' No NLO weight tables available'',
7911      +             '' (please call s/r QNFILW)'')')
7912       ENDIF
7913
7914       CALL QTRACE('EVOLNP ',1)
7915
7916       STOP
7917
7918       END
7919  
7920 CDECK  ID>, EVPLUS.
7921  
7922 C     =====================================
7923       SUBROUTINE EVPLUS(UNAM,IQ0,IUQL,IUQH)
7924 C     =====================================
7925  
7926       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
7927  
7928       CHARACTER*(*) UNAM
7929       CHARACTER*5   NAME
7930  
7931  
7932       CHARACTER*5 PNAM,STFNAM
7933       LOGICAL     LNFP
7934       COMMON /QCLNFP/ LNFP(0:30,3:5)
7935       COMMON /QCPNAM/ PNAM(0:30)
7936       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
7937       COMMON /QCFNAM/ STFNAM(7)
7938  
7939  
7940       PARAMETER ( MXX = 410 )
7941       PARAMETER ( MQ2 =  120 )
7942
7943 C--   Do not set the following parameter to zero!
7944       PARAMETER ( NDFMAX = 20)
7945
7946  
7947       COMMON/QCGRID/
7948      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
7949      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
7950      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
7951      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
7952  
7953  
7954       LOGICAL
7955      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7956      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7957      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7958      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7959      +LFFCAL,LASOLD
7960
7961       COMMON/QCFLAG/ 
7962      +IORD,IOLAST,
7963      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
7964      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
7965      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
7966      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
7967      +LFFCAL(7,30),LASOLD
7968  
7969  
7970       COMMON/QCPASS/
7971      +ALPHA0, Q0ALFA, ASLAST, QALAST,
7972      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
7973      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
7974      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
7975      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
7976      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
7977      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
7978      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
7979      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
7980      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
7981
7982       LOGICAL LEVDONE,LE_DONE
7983       COMMON/QCLEVL/
7984      +LEVDONE(MXX,10),LE_DONE(MXX)
7985  
7986  
7987       REAL
7988      +WGTFF1,WGTFG1,
7989      +WGTGF1,WGTGG1,
7990      +WGTPP2,WGTPM2,WGTNS2,
7991      +WGTFF2,WGTFG2,
7992      +WGTGF2,WGTGG2,
7993      +WGTC2Q,WGTC2G,YNTC2Q,
7994      +WGTCLQ,WGTCLG,WGTC3Q
7995
7996       COMMON/QCWEIT/
7997      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
7998      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
7999      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
8000      +WGTNS2(MXX*(MXX+1)/2,3:5),
8001      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
8002      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
8003      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
8004      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
8005      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
8006
8007       COMMON/QCWADR/ IWADR(MXX,MXX)
8008
8009  
8010       LOGICAL LTIME  
8011       REAL T_START,T_END,T_SPENT
8012       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
8013      +E_CALLS(10),LTIME
8014       COMMON/QCFCNT/IFCNT(-1:1,5)
8015
8016  
8017       IF(LTIME) CALL TIMEX_LHA(T_START(4))
8018
8019       CALL QTRACE('EVPLUS ',0)
8020  
8021       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
8022         IERR = 1
8023         GOTO 500
8024       ENDIF
8025
8026       IQL = IUQL
8027       IQH = IUQH
8028
8029       IXL = MAX(ABS(IXFROMX(XMICUT)),1)
8030       IQD = ABS(IQFROMQ(QMICUT))
8031       IQD = MAX(IQD,ABS(IQFROMQ(QMINAS)))
8032       IQU = ABS(IQFROMQ(QMACUT))
8033       IF(IQD.NE.0) IQL = MAX(IQD,IQL)
8034       IF(IQU.NE.0) IQH = MIN(IQU+1,IQH)
8035  
8036       IF(IQL.LE.0) IQL = 1
8037       IF(IQH.LE.0.OR.IQH.GT.NQ2) IQH = NQ2
8038       IF(IQL.EQ.IQ0.AND.IQH.EQ.IQ0) RETURN
8039       IF(IQL.GE.IQH) THEN
8040         IERR = 2
8041         GOTO 500
8042       ENDIF
8043       IF(IQL.LT.1.OR.IQL.GE.NQ2) THEN
8044         IERR = 3
8045         GOTO 500
8046       ENDIF
8047       IF(IQH.LE.1.OR.IQH.GT.NQ2) THEN
8048         IERR = 3
8049         GOTO 500
8050       ENDIF
8051       IF(IQ0.LT.IQL.OR.IQ0.GT.IQH) THEN
8052         IERR = 4
8053         GOTO 500
8054       ENDIF
8055       IF(NFMAP(IQL).NE.NFMAP(IQH-1)) THEN
8056         IERR = 5
8057         GOTO 500
8058       ENDIF
8059       IF(.NOT.LWT1OK) THEN
8060         IERR = 6
8061         GOTO 500
8062       ENDIF
8063       IF(IORD.EQ.2.AND..NOT.LWT2OK) THEN
8064         IERR = 7
8065         GOTO 500
8066       ENDIF
8067  
8068       CALL QSTRIP(UNAM,NAME)
8069  
8070       NFMI = 9
8071       NFMA = 0
8072       DO 15 IQ = IQL,IQH
8073       NFMI = MIN(NFMI,NFMAP(IQ))
8074       NFMA = MAX(NFMA,NFMAP(IQ))
8075   15  CONTINUE
8076  
8077       DO 16 NF = NFMI,NFMA
8078         ID = IDCHEK(NAME,NF,'EVPLUS',1)
8079   16  CONTINUE
8080  
8081       IRUN = 0
8082       IF(.NOT.LPLUS) THEN
8083         DO 19 NF  = 3,5
8084         DO 18 IX0 = 1,NXX
8085         DO 17 IX  = IX0,NXX
8086           WGTNS2(IWADR(IX,IX0),NF) = WGTPP2(IWADR(IX,IX0),NF)
8087   17    CONTINUE
8088   18    CONTINUE
8089   19    CONTINUE
8090         IRUN = 1
8091       ENDIF
8092       LPLUS = .TRUE.
8093
8094       IF(.NOT.LALFOK) THEN
8095         CALL QFILAS('EVPLUS')
8096         IRUN = 1
8097       ENDIF
8098       IF(.NOT.LDQ2OK) THEN
8099         CALL QDELQ2
8100         IRUN = 1
8101       ENDIF
8102  
8103       DO IX = 1,NXX
8104       LE_DONE(IX) = LEVDONE(IX,ID)
8105       DO IQ = 1,NQ2
8106         FNSQCD(IX,IQ) = PDFQCD(IX,IQ,ID)
8107       ENDDO   
8108       ENDDO   
8109  
8110       IF(IQ0.NE.IQ0_LAST(ID) .OR.
8111      +   IQL.NE.IQL_LAST(ID) .OR.
8112      +   IQH.NE.IQH_LAST(ID)     ) IRUN = 1
8113  
8114       CALL APNS(IXL,IQ0,IQL,IQH,IRUN,EVL)
8115
8116       IQ0_LAST(ID) = IQ0
8117       IQL_LAST(ID) = IQL
8118       IQH_LAST(ID) = IQH
8119  
8120       DO IX = 1,NXX
8121       LEVDONE(IX,ID) = LE_DONE(IX)
8122       DO IQ = 1,NQ2
8123         PDFQCD(IX,IQ,ID) = FNSQCD(IX,IQ)
8124       ENDDO   
8125       ENDDO   
8126
8127       DO I = 1,30
8128         DO J = 1,7
8129           LFFCAL(J,I)  = .FALSE.
8130         ENDDO
8131       ENDDO
8132  
8133       IF(LTIME) THEN
8134         CALL TIMEX_LHA(T_END(4))
8135         T_SPENT(4) = T_SPENT(4)+T_END(4)-T_START(4)
8136         N_CALLS(4) = N_CALLS(4)+1
8137         E_CALLS(4) = E_CALLS(4)+EVL
8138       ENDIF
8139  
8140       RETURN
8141
8142  500  CONTINUE
8143       WRITE(6,'(/'' ------------------------------------'')')
8144       WRITE(6,'( '' QCDNUM error in s/r EVPLUS ---> STOP'')')
8145       WRITE(6,'( '' ------------------------------------'')')
8146       WRITE(6,'( '' Input NAME   :'',A)') UNAM
8147       WRITE(6,'( '' Input IQ0    :'',I10)') IQ0
8148       WRITE(6,'( ''       IQLow  :'',I10)') IUQL
8149       WRITE(6,'( ''       IQHigh :'',I10)') IUQH
8150       IF(IERR.NE.1) THEN
8151         WRITE(6,'(/'' After cuts IQ0, Q20 :'',I5,E12.5)') IQ0,Q2TAB(IQ0)
8152         WRITE(6,'( ''            IQL, Q2L :'',I5,E12.5)') IQL,Q2TAB(IQL)
8153         WRITE(6,'( ''            IQH, Q2H :'',I5,E12.5)') IQH,Q2TAB(IQH)
8154       ENDIF
8155       IF(IERR.EQ.1) THEN
8156         WRITE(6,'(/'' No x-Q2 grid available'')')
8157       ELSEIF(IERR.EQ.2) THEN
8158         WRITE(6,'(/'' Value of IQL .ge. IQH'',
8159      +             '' (after applying Q2 cuts, if any)'')')
8160       ELSEIF(IERR.EQ.3) THEN
8161         WRITE(6,'(/'' IQL and/or IQH outside grid boundary'')')
8162       ELSEIF(IERR.EQ.4) THEN
8163         WRITE(6,'(/'' IQ0 outside the range [IQL,IQH]'')')
8164       ELSEIF(IERR.EQ.5) THEN
8165         WRITE(6,'(/'' [IQL,IQH} crosses a flavour threshold'')')
8166       ELSEIF(IERR.EQ.6) THEN
8167         WRITE(6,'(/'' No LO weight tables available'',
8168      +             '' (please call s/r QNFILW)'')')
8169       ELSEIF(IERR.EQ.7) THEN
8170         WRITE(6,'(/'' No NLO weight tables available'',
8171      +             '' (please call s/r QNFILW)'')')
8172       ENDIF
8173
8174       CALL QTRACE('EVPLUS ',1)
8175
8176       STOP
8177
8178       END
8179  
8180 CDECK  ID>, APNS.
8181  
8182 C     =========================================
8183       SUBROUTINE APNS(IXL,IQ0,IQL,IQH,IRUN,EVL)
8184 C     =========================================
8185  
8186       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8187
8188  
8189       COMMON/QCCONS/
8190      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
8191      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
8192      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
8193      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
8194      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
8195      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
8196  
8197  
8198  
8199       LOGICAL
8200      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8201      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8202      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8203      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8204      +LFFCAL,LASOLD
8205
8206       COMMON/QCFLAG/ 
8207      +IORD,IOLAST,
8208      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8209      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8210      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8211      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8212      +LFFCAL(7,30),LASOLD
8213  
8214  
8215       PARAMETER ( MXX = 410 )
8216       PARAMETER ( MQ2 =  120 )
8217
8218 C--   Do not set the following parameter to zero!
8219       PARAMETER ( NDFMAX = 20)
8220
8221  
8222       COMMON/QCGRID/
8223      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8224      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8225      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8226      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8227  
8228  
8229       REAL
8230      +WGTFF1,WGTFG1,
8231      +WGTGF1,WGTGG1,
8232      +WGTPP2,WGTPM2,WGTNS2,
8233      +WGTFF2,WGTFG2,
8234      +WGTGF2,WGTGG2,
8235      +WGTC2Q,WGTC2G,YNTC2Q,
8236      +WGTCLQ,WGTCLG,WGTC3Q
8237
8238       COMMON/QCWEIT/
8239      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
8240      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
8241      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
8242      +WGTNS2(MXX*(MXX+1)/2,3:5),
8243      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
8244      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
8245      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
8246      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
8247      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
8248
8249       COMMON/QCWADR/ IWADR(MXX,MXX)
8250
8251  
8252       COMMON/QCPASS/
8253      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8254      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8255      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8256      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8257      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8258      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8259      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8260      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8261      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8262      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8263
8264       LOGICAL LEVDONE,LE_DONE
8265       COMMON/QCLEVL/
8266      +LEVDONE(MXX,10),LE_DONE(MXX)
8267  
8268  
8269       LOGICAL LTIME  
8270       REAL T_START,T_END,T_SPENT
8271       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
8272      +E_CALLS(10),LTIME
8273       COMMON/QCFCNT/IFCNT(-1:1,5)
8274
8275  
8276       EVL = 0.
8277  
8278       FNS = FNSQCD(NXX,IQ0)
8279 C     -------------------------------------------
8280       IF(.NOT.LE_DONE(NXX) .OR. IRUN.EQ.1) THEN !
8281 C     -------------------------------------------
8282  
8283         NF   = NFMAP(IQ0)
8284         WGT  = ALFAPQ(IQ0)*WGTFF1(IWADR(NXX,NXX)) +
8285      +         ALFA2Q(IQ0)*WGTNS2(IWADR(NXX,NXX),NF)
8286         DNS  = WGT*FNS
8287         FNS0 = FNS
8288         DNS0 = DNS
8289         FNSQCD(NXX,IQ0) = FNS
8290         DNSQCD(NXX,IQ0) = DNS
8291         EVL             = EVL+1.
8292  
8293         DO 100 IQ = IQ0+1,IQH
8294           NF   = NFMAP(IQ)
8295           WGT  = ALFAPQ(IQ)*WGTFF1(IWADR(NXX,NXX)) +
8296      +           ALFA2Q(IQ)*WGTNS2(IWADR(NXX,NXX),NF)
8297           FNS = ( 2.*FNS + DNS*DELUP(IQ) ) / ( 2. - WGT*DELUP(IQ) )
8298           DNS = WGT*FNS
8299           FNSQCD(NXX,IQ) = FNS
8300           DNSQCD(NXX,IQ) = DNS
8301  100    CONTINUE
8302         EVL = EVL+IQH-IQ0
8303  
8304         FNS = FNS0
8305         DNS = DNS0
8306  
8307         DO 200 IQ = IQ0-1,IQL,-1
8308           NF   = NFMAP(IQ)
8309           WGT  = ALFAPQ(IQ)*WGTFF1(IWADR(NXX,NXX)) +
8310      +           ALFA2Q(IQ)*WGTNS2(IWADR(NXX,NXX),NF)
8311           FNS = ( 2.*FNS + DNS*DELDN(IQ) ) / ( 2. - WGT*DELDN(IQ) )
8312           DNS = WGT*FNS
8313           FNSQCD(NXX,IQ) = FNS
8314           DNSQCD(NXX,IQ) = DNS
8315  200    CONTINUE
8316         EVL = EVL+IQ0-IQL
8317  
8318 C     -------
8319       ENDIF !
8320 C     -------
8321  
8322 C     ---------------------------
8323       DO 300 IX0 = NXX-1,IXL,-1 !
8324 C     ---------------------------
8325  
8326         FNS = FNSQCD(IX0,IQ0)
8327         IF(LE_DONE(IX0).AND.IRUN.EQ.0) GOTO 300
8328         ALFAS = ALFAPQ(IQ0)
8329         ALFA2 = ALFA2Q(IQ0)
8330         SUM   = 0.
8331         NF    = NFMAP(IQ0)
8332         DO 220 IX = NXX,IX0+1,-1
8333           WFF1  = WGTFF1(IWADR(IX,IX0))
8334           WNS2  = WGTNS2(IWADR(IX,IX0),NF)
8335           SUM   = SUM + (ALFAS*WFF1+ALFA2*WNS2) * FNSQCD(IX,IQ0)
8336  220    CONTINUE
8337         WGT = ALFAS*WGTFF1(IWADR(IX0,IX0)) +
8338      +        ALFA2*WGTNS2(IWADR(IX0,IX0),NF)
8339         DNS = WGT*FNS + SUM
8340  
8341         FNS0 = FNS
8342         DNS0 = DNS
8343         FNSQCD(IX0,IQ0) = FNS
8344         DNSQCD(IX0,IQ0) = DNS
8345         EVL             = EVL+NXX-IX0+1
8346  
8347         DO 250 IQ = IQ0+1,IQH
8348           IF(IFAILC(IX0,IQ).NE.0) GOTO 250
8349           ALFAS = ALFAPQ(IQ)
8350           ALFA2 = ALFA2Q(IQ)
8351           DELIQ = DELUP(IQ)
8352           SUM   = 0.
8353           NF    = NFMAP(IQ)
8354           DO 230 IX = NXX,IX0+1,-1
8355             WFF1  = WGTFF1(IWADR(IX,IX0))
8356             WNS2  = WGTNS2(IWADR(IX,IX0),NF)
8357             SUM   = SUM + (ALFAS*WFF1+ALFA2*WNS2) *  FNSQCD(IX,IQ)
8358  230      CONTINUE
8359           WGT = ALFAS*WGTFF1(IWADR(IX0,IX0)) +
8360      +          ALFA2*WGTNS2(IWADR(IX0,IX0),NF)
8361           FNS = ( 2.*FNS + (DNS+SUM)*DELIQ ) / ( 2. - WGT*DELIQ )
8362           DNS = WGT*FNS + SUM
8363           FNSQCD(IX0,IQ) = FNS
8364           DNSQCD(IX0,IQ) = DNS
8365           EVL            = EVL+NXX-IX0+1
8366  250    CONTINUE
8367  
8368         FNS = FNS0
8369         DNS = DNS0
8370  
8371         DO 270 IQ = IQ0-1,IQL,-1
8372           ALFAS = ALFAPQ(IQ)
8373           ALFA2 = ALFA2Q(IQ)
8374           DELIQ = DELDN(IQ)
8375           SUM   = 0.
8376           NF  = NFMAP(IQ)
8377           DO 260 IX = NXX,IX0+1,-1
8378             WFF1  = WGTFF1(IWADR(IX,IX0))
8379             WNS2  = WGTNS2(IWADR(IX,IX0),NF)
8380             SUM   = SUM + (ALFAS*WFF1+ALFA2*WNS2) * FNSQCD(IX,IQ)
8381  260      CONTINUE
8382           WGT = ALFAS*WGTFF1(IWADR(IX0,IX0)) +
8383      +          ALFA2*WGTNS2(IWADR(IX0,IX0),NF)
8384           FNS = ( 2.*FNS + (DNS+SUM)*DELIQ ) / ( 2. - WGT*DELIQ )
8385           DNS = WGT*FNS + SUM
8386           FNSQCD(IX0,IQ) = FNS
8387           DNSQCD(IX0,IQ) = DNS
8388           EVL            = EVL+NXX-IX0+1
8389  270    CONTINUE
8390  
8391 C     ----------
8392  300  CONTINUE !
8393 C     ----------
8394
8395       EVL = EVL*2./(NXX*(NXX+1)*NQ2)
8396
8397       CALL QNTRUE(LE_DONE,NXX)
8398  
8399       RETURN
8400       END
8401  
8402 CDECK  ID>, QNPGET.
8403  
8404 C     ============================================
8405       DOUBLE PRECISION FUNCTION QNPGET(NAME,IX,IQ)
8406 C     ============================================
8407  
8408       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8409  
8410       CHARACTER*(*) NAME
8411
8412 C---  Obsolete (21/05/96): use QPDFIJ instead
8413
8414       QNPGET = QPDFIJ(NAME,IX,IQ,IFL)
8415
8416       RETURN
8417       END
8418  
8419 CDECK  ID>, QPDFIJ.
8420  
8421 C     ================================================
8422       DOUBLE PRECISION FUNCTION QPDFIJ(UNAM,IX,IQ,IFL)
8423 C     ================================================
8424  
8425       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8426  
8427 C---  Returns parton distribution 'NAME' at gridpoint IX,IQ
8428 C---  Output IFL =  0 : Inside grid or cuts
8429 C---               -1 : Outside grid or cuts
8430  
8431       CHARACTER*(*) UNAM
8432       CHARACTER*5   NAME
8433  
8434  
8435       LOGICAL
8436      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8437      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8438      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8439      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8440      +LFFCAL,LASOLD
8441
8442       COMMON/QCFLAG/ 
8443      +IORD,IOLAST,
8444      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8445      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8446      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8447      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8448      +LFFCAL(7,30),LASOLD
8449  
8450  
8451       CHARACTER*5 PNAM,STFNAM
8452       LOGICAL     LNFP
8453       COMMON /QCLNFP/ LNFP(0:30,3:5)
8454       COMMON /QCPNAM/ PNAM(0:30)
8455       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
8456       COMMON /QCFNAM/ STFNAM(7)
8457  
8458  
8459       PARAMETER ( MXX = 410 )
8460       PARAMETER ( MQ2 =  120 )
8461
8462 C--   Do not set the following parameter to zero!
8463       PARAMETER ( NDFMAX = 20)
8464
8465  
8466       COMMON/QCGRID/
8467      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8468      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8469      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8470      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8471  
8472  
8473       COMMON/QCPASS/
8474      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8475      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8476      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8477      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8478      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8479      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8480      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8481      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8482      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8483      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8484
8485       LOGICAL LEVDONE,LE_DONE
8486       COMMON/QCLEVL/
8487      +LEVDONE(MXX,10),LE_DONE(MXX)
8488  
8489
8490       CALL QTRACE('QPDFIJ ',0)
8491  
8492       QPDFIJ = 0.
8493       IERR   = 0
8494       IFL    = 0
8495  
8496       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
8497         IERR = 1
8498         GOTO 500
8499       ENDIF
8500       IF(IX.LT.1.OR.IX.GT.MXX-1 .OR.
8501      +   IQ.LT.1.OR.IQ.GT.MQ2-1) THEN
8502         IERR =  2
8503         IFL  = -1
8504         IF(LIMCK) GOTO 500
8505         RETURN
8506       ENDIF
8507       IF(IFAILC(IX,IQ).NE.0)   THEN
8508         IERR =  2
8509         IFL  = -1
8510         IF(LIMCK) GOTO 500
8511         RETURN
8512       ENDIF
8513  
8514       CALL QSTRIP(UNAM,NAME)
8515  
8516       NF = NFMAP(IQ)
8517       ID = IDCHEK(NAME,NF,'QPDFIJ',1)
8518  
8519       IF(ID.EQ.-1) RETURN
8520  
8521       QPDFIJ = GET_PDFIJ(ID,IX,IQ)
8522
8523       RETURN
8524
8525  500  CONTINUE
8526
8527       WRITE(6,'(/'' ------------------------------------'')')
8528       WRITE(6,'( '' QCDNUM error in s/r QPDFIJ ---> STOP'')')
8529       WRITE(6,'( '' ------------------------------------'')')
8530       WRITE(6,'( '' Input NAME : '',A)') UNAM
8531       WRITE(6,'( ''       IX   : '',I5)') IX
8532       WRITE(6,'( ''       IQ   : '',I5)') IQ
8533       IF(IERR.EQ.1) THEN
8534         WRITE(6,'(/'' No x-Q2 grid defined'')')
8535       ELSEIF(IERR.EQ.2) THEN
8536         WRITE(6,'(/'' IX and/or IQ outside grid or cuts'')')
8537         IDUM = ICUTIJ(IX,IQ,1)
8538       ENDIF
8539
8540       CALL QTRACE('QPDFIJ ',1)
8541
8542       STOP
8543  
8544       END
8545  
8546 CDECK  ID>, PARTXQ.
8547  
8548 C     ===================================
8549       SUBROUTINE PARTXQ(NAME,X,Q,VAL,IFL)
8550 C     ===================================
8551  
8552       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8553  
8554       CHARACTER*(*) NAME
8555
8556 C---  Obsolete (21/05/96): use QPDFXQ instead
8557
8558       VAL = QPDFXQ(NAME,X,Q,IFL)
8559
8560       RETURN
8561       END
8562  
8563 CDECK  ID>, QPDFXQ.
8564  
8565 C     ==============================================
8566       DOUBLE PRECISION FUNCTION QPDFXQ(UNAM,X,Q,IFL)
8567 C     ==============================================
8568  
8569       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8570  
8571 C---  Returns parton distribution 'NAME' at X,Q
8572 C---  Output IFL =  0 : Inside grid
8573 C---               -1 : Outside grid or cuts
8574  
8575       CHARACTER*(*) UNAM
8576       CHARACTER*5   NAME
8577  
8578  
8579       LOGICAL
8580      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8581      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8582      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8583      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8584      +LFFCAL,LASOLD
8585
8586       COMMON/QCFLAG/ 
8587      +IORD,IOLAST,
8588      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8589      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8590      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8591      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8592      +LFFCAL(7,30),LASOLD
8593  
8594  
8595       CHARACTER*5 PNAM,STFNAM
8596       LOGICAL     LNFP
8597       COMMON /QCLNFP/ LNFP(0:30,3:5)
8598       COMMON /QCPNAM/ PNAM(0:30)
8599       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
8600       COMMON /QCFNAM/ STFNAM(7)
8601  
8602  
8603       PARAMETER ( MXX = 410 )
8604       PARAMETER ( MQ2 =  120 )
8605
8606 C--   Do not set the following parameter to zero!
8607       PARAMETER ( NDFMAX = 20)
8608
8609  
8610       COMMON/QCGRID/
8611      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8612      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8613      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8614      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8615  
8616  
8617       COMMON/QCPASS/
8618      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8619      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8620      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8621      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8622      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8623      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8624      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8625      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8626      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8627      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8628
8629       LOGICAL LEVDONE,LE_DONE
8630       COMMON/QCLEVL/
8631      +LEVDONE(MXX,10),LE_DONE(MXX)
8632  
8633       
8634       CALL QTRACE('QPDFXQ ',0)
8635  
8636       VAL    = 0.
8637       IFL    = 0
8638       QPDFXQ = 0.
8639  
8640       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
8641         IERR =  1
8642         IFL  = -1
8643         GOTO 500
8644       ENDIF
8645       JFL = ICUTXQ(X,Q,0)
8646       IF(JFL.NE.0) THEN
8647         IERR =  2
8648         IFL  = -1
8649         IF(LIMCK) GOTO 500
8650         RETURN
8651       ENDIF
8652  
8653       IX  = ABS(IXFROMX(X))
8654       IQ  = MIN(ABS(IQFROMQ(Q)),NQ2-1)
8655  
8656       CALL QSTRIP(UNAM,NAME)
8657      
8658       NF  = NFMAP(IQ)
8659       ID  = IDCHEK(NAME,NF,'QPDFXQ',1)
8660  
8661       IF(.NOT.LDQ2OK) CALL QDELQ2
8662
8663       TX  = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
8664       TQ  = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
8665
8666       QPDFXQ = GET_PDFXQ(ID,IX,IQ,TX,TQ)
8667  
8668       RETURN
8669
8670  500  CONTINUE
8671
8672       WRITE(6,'(/'' ------------------------------------'')')
8673       WRITE(6,'( '' QCDNUM error in s/r QPDFXQ ---> STOP'')')
8674       WRITE(6,'( '' ------------------------------------'')')
8675       WRITE(6,'( '' Input NAME : '',A)') UNAM
8676       WRITE(6,'( ''       X    : '',E12.5)') X
8677       WRITE(6,'( ''       Q2   : '',E12.5)') Q
8678       IF(IERR.EQ.1) THEN
8679         WRITE(6,'(/'' No x-Q2 grid defined'')')
8680       ELSEIF(IERR.EQ.2) THEN
8681         WRITE(6,'(/'' X and/or Q2 outside grid or cuts'')')
8682         IDUM = ICUTXQ(X,Q,1)
8683       ENDIF
8684       
8685       CALL QTRACE('QPDFXQ ',1)
8686
8687       STOP
8688       END
8689  
8690 CDECK  ID>, GET_PDFIJ.
8691  
8692 C     =============================================
8693       DOUBLE PRECISION FUNCTION GET_PDFIJ(ID,IX,IQ)
8694 C     =============================================
8695  
8696       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8697
8698 C--   Return parton distribution ID at IX,IQ.
8699 C--   IX should be in the range 1,...NXX.
8700 C--   IQ should be in the range 1,...NQ2.
8701  
8702  
8703       CHARACTER*5 PNAM,STFNAM
8704       LOGICAL     LNFP
8705       COMMON /QCLNFP/ LNFP(0:30,3:5)
8706       COMMON /QCPNAM/ PNAM(0:30)
8707       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
8708       COMMON /QCFNAM/ STFNAM(7)
8709  
8710  
8711       PARAMETER ( MXX = 410 )
8712       PARAMETER ( MQ2 =  120 )
8713
8714 C--   Do not set the following parameter to zero!
8715       PARAMETER ( NDFMAX = 20)
8716
8717  
8718       COMMON/QCGRID/
8719      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8720      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8721      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8722      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8723  
8724  
8725       COMMON/QCPASS/
8726      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8727      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8728      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8729      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8730      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8731      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8732      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8733      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8734      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8735      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8736
8737       LOGICAL LEVDONE,LE_DONE
8738       COMMON/QCLEVL/
8739      +LEVDONE(MXX,10),LE_DONE(MXX)
8740  
8741  
8742       GET_PDFIJ = 0.
8743  
8744       NF = NFMAP(IQ)
8745  
8746       DO I = 0,10
8747         GET_PDFIJ = GET_PDFIJ + PWGT(I,ID,NF)*PDFQCD(IX,IQ,I)
8748       ENDDO   
8749  
8750       RETURN
8751       END
8752  
8753 CDECK  ID>, GET_PDFXQ.
8754  
8755 C     ===================================================
8756       DOUBLE PRECISION FUNCTION GET_PDFXQ(ID,IX,IQ,TX,TQ)
8757 C     ===================================================
8758  
8759       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8760
8761 C--   Return parton distribution ID at X,Q.
8762 C--   IX gridpoint at or below x; should be in the range 1,...NXX.
8763 C--   IQ gridpoint at or below Q; should be in the range 1,...NQ2-1.
8764  
8765  
8766       CHARACTER*5 PNAM,STFNAM
8767       LOGICAL     LNFP
8768       COMMON /QCLNFP/ LNFP(0:30,3:5)
8769       COMMON /QCPNAM/ PNAM(0:30)
8770       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
8771       COMMON /QCFNAM/ STFNAM(7)
8772  
8773  
8774       PARAMETER ( MXX = 410 )
8775       PARAMETER ( MQ2 =  120 )
8776
8777 C--   Do not set the following parameter to zero!
8778       PARAMETER ( NDFMAX = 20)
8779
8780  
8781       COMMON/QCGRID/
8782      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8783      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8784      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8785      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8786  
8787  
8788       COMMON/QCPASS/
8789      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8790      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8791      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8792      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8793      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8794      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8795      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8796      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8797      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8798      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8799
8800       LOGICAL LEVDONE,LE_DONE
8801       COMMON/QCLEVL/
8802      +LEVDONE(MXX,10),LE_DONE(MXX)
8803  
8804
8805       F11  = GET_PDFIJ(ID,IX,IQ)
8806       F12  = GET_PDFIJ(ID,IX,IQ+1)
8807       F21  = GET_PDFIJ(ID,IX+1,IQ)
8808       F22  = GET_PDFIJ(ID,IX+1,IQ+1)
8809       F1   = (1.-TQ)*F11 + TQ*F12
8810       F2   = (1.-TQ)*F21 + TQ*F22
8811
8812       GET_PDFXQ  = (1.-TX)*F1 + TX*F2
8813
8814       RETURN
8815       END
8816  
8817 CDECK  ID>, BKFAST.
8818  
8819 C     ==============================
8820       SUBROUTINE BKFAST(IDF,ID,IERR)
8821 C     ==============================
8822
8823 C---  Book the NDFMAX arrays available for STFAST storage.
8824 C---  Called by STFAST.
8825 C---  Input  : IDF = structure function identifier;
8826 C---            1  2   3   4   5   6   7
8827 C---           F2 FL xF3 F2c Flc F2b Flb
8828 C---           ID = parton dist identifier (1-30).
8829 C---  Output : set IDFAST(IDF,ID) = j; the results of
8830 C---           STFAST for the combination IDF,ID are
8831 C---           stored in FSTORE(ix,iq,j).
8832 C---           If j.gt.NDFMAX (no more space) then BKFAST
8833 C---           acts as a do-nothing & sets ierr .ne. 0.
8834  
8835       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8836  
8837  
8838       PARAMETER ( MXX = 410 )
8839       PARAMETER ( MQ2 =  120 )
8840
8841 C--   Do not set the following parameter to zero!
8842       PARAMETER ( NDFMAX = 20)
8843
8844  
8845       COMMON/QCPASS/
8846      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8847      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8848      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8849      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8850      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8851      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8852      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8853      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8854      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8855      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8856
8857       LOGICAL LEVDONE,LE_DONE
8858       COMMON/QCLEVL/
8859      +LEVDONE(MXX,10),LE_DONE(MXX)
8860  
8861
8862       IERR = 0
8863       IF(IDFAST(IDF,ID).EQ.0) THEN
8864         IF(NDFAST.EQ.30+NDFMAX) THEN
8865           IERR = 1
8866           RETURN
8867         ENDIF
8868         NDFAST = NDFAST + 1
8869         IDFAST(IDF,ID) = NDFAST
8870         ISTFID(NDFAST) = IDF
8871         IPDFID(NDFAST) = ID
8872       ENDIF
8873
8874       RETURN
8875       END
8876  
8877 CDECK  ID>, STFAST.
8878  
8879 C     ===========================
8880       SUBROUTINE STFAST(OPT,UNAM)
8881 C     ===========================
8882  
8883       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
8884  
8885       CHARACTER*(*) OPT,UNAM
8886       CHARACTER*5   NAME
8887       CHARACTER*5   OPT5 
8888
8889  
8890       LOGICAL LTIME  
8891       REAL T_START,T_END,T_SPENT
8892       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
8893      +E_CALLS(10),LTIME
8894       COMMON/QCFCNT/IFCNT(-1:1,5)
8895
8896  
8897       LOGICAL
8898      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8899      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8900      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8901      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8902      +LFFCAL,LASOLD
8903
8904       COMMON/QCFLAG/ 
8905      +IORD,IOLAST,
8906      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
8907      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
8908      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
8909      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
8910      +LFFCAL(7,30),LASOLD
8911  
8912  
8913       PARAMETER ( MXX = 410 )
8914       PARAMETER ( MQ2 =  120 )
8915
8916 C--   Do not set the following parameter to zero!
8917       PARAMETER ( NDFMAX = 20)
8918
8919  
8920       COMMON/QCGRID/
8921      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
8922      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
8923      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
8924      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
8925  
8926  
8927       COMMON/QCPASS/
8928      +ALPHA0, Q0ALFA, ASLAST, QALAST,
8929      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
8930      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
8931      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
8932      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
8933      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
8934      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
8935      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
8936      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
8937      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
8938
8939       LOGICAL LEVDONE,LE_DONE
8940       COMMON/QCLEVL/
8941      +LEVDONE(MXX,10),LE_DONE(MXX)
8942  
8943  
8944       IF(LTIME) CALL TIMEX_LHA(T_START(6))
8945       
8946       CALL QTRACE('STFAST ',0)
8947
8948       IERR = 0
8949       IF(.NOT.LMARK) THEN
8950         IERR = 1
8951         GOTO 500
8952       ENDIF
8953  
8954       CALL QSTRIP(UNAM,NAME)
8955       CALL QSTRIP(OPT ,OPT5)
8956  
8957       JX  = 0
8958       JQ  = 0
8959       XX  = 0.
8960       QQ  = 0.
8961       IDF = IFCHEK(OPT5,NAME,JX,JQ,XX,QQ,'STFAST',1,ID) 
8962
8963       IF(.NOT.LALFOK) CALL QFILAS('STFAST')
8964       IF(.NOT.LDQ2OK) CALL QDELQ2
8965  
8966       IF(IDF.GE.1.AND.IDF.LE.7) THEN
8967         CALL BKFAST(IDF,ID,IERR)
8968         IF(IERR.NE.0) THEN
8969           LFFCAL(IDF,ID) = .FALSE.
8970           RETURN
8971         ENDIF
8972       ELSE
8973         IERR = 10
8974         GOTO 500
8975       ENDIF
8976
8977       IF    (IDF.EQ.1)  THEN
8978         CALL FASTF2(ID)
8979       ELSEIF(IDF.EQ.2)  THEN
8980         CALL FASTFL(ID)
8981       ELSEIF(IDF.EQ.3)  THEN
8982         CALL FASTF3(ID)
8983       ELSE
8984         CALL FASTFKH(IDF,ID)
8985       ENDIF
8986
8987       IF(LTIME) THEN
8988         CALL TIMEX_LHA(T_END(6))
8989         T_SPENT(6) = T_SPENT(6)+T_END(6)-T_START(6)
8990         N_CALLS(6) = N_CALLS(6)+1
8991       ENDIF
8992
8993       RETURN
8994
8995  500  CONTINUE
8996
8997       WRITE(6,'(/'' ------------------------------------'')')
8998       WRITE(6,'( '' QCDNUM error in s/r STFAST ---> STOP'')')
8999       WRITE(6,'( '' ------------------------------------'')')
9000       WRITE(6,'( '' Input OPT  : '',A)') OPT
9001       WRITE(6,'( '' Input NAME : '',A)') UNAM
9002       IF(IERR.EQ.1) THEN
9003         WRITE(6,
9004      +  '(/'' No gridpoints marked for fast calculation''/
9005      +     '' Please call s/r QFMARK before STFAST'')')
9006       ELSEIF(IERR.EQ.10) THEN
9007         WRITE(6,'(/'' Unknown input option OPT'')')
9008       ENDIF
9009       
9010       CALL QTRACE('STFAST ',1)
9011
9012       STOP
9013  
9014       END
9015  
9016 CDECK  ID>, FASTF2.
9017  
9018 C     =====================
9019       SUBROUTINE FASTF2(ID)
9020 C     =====================
9021  
9022       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9023  
9024  
9025       COMMON/QCCONS/
9026      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
9027      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
9028      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
9029      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
9030      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
9031      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
9032  
9033  
9034  
9035       LOGICAL
9036      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9037      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9038      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9039      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9040      +LFFCAL,LASOLD
9041
9042       COMMON/QCFLAG/ 
9043      +IORD,IOLAST,
9044      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9045      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9046      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9047      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9048      +LFFCAL(7,30),LASOLD
9049  
9050  
9051       CHARACTER*5 PNAM,STFNAM
9052       LOGICAL     LNFP
9053       COMMON /QCLNFP/ LNFP(0:30,3:5)
9054       COMMON /QCPNAM/ PNAM(0:30)
9055       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
9056       COMMON /QCFNAM/ STFNAM(7)
9057  
9058  
9059       PARAMETER ( MXX = 410 )
9060       PARAMETER ( MQ2 =  120 )
9061
9062 C--   Do not set the following parameter to zero!
9063       PARAMETER ( NDFMAX = 20)
9064
9065  
9066       COMMON/QCGRID/
9067      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9068      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9069      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9070      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9071  
9072  
9073       REAL
9074      +WGTFF1,WGTFG1,
9075      +WGTGF1,WGTGG1,
9076      +WGTPP2,WGTPM2,WGTNS2,
9077      +WGTFF2,WGTFG2,
9078      +WGTGF2,WGTGG2,
9079      +WGTC2Q,WGTC2G,YNTC2Q,
9080      +WGTCLQ,WGTCLG,WGTC3Q
9081
9082       COMMON/QCWEIT/
9083      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
9084      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
9085      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
9086      +WGTNS2(MXX*(MXX+1)/2,3:5),
9087      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
9088      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
9089      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
9090      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
9091      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
9092
9093       COMMON/QCWADR/ IWADR(MXX,MXX)
9094
9095  
9096       COMMON/QCPASS/
9097      +ALPHA0, Q0ALFA, ASLAST, QALAST,
9098      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
9099      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
9100      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
9101      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
9102      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
9103      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
9104      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
9105      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
9106      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
9107
9108       LOGICAL LEVDONE,LE_DONE
9109       COMMON/QCLEVL/
9110      +LEVDONE(MXX,10),LE_DONE(MXX)
9111  
9112
9113       DIMENSION QUARKS(MXX),GLUONS(MXX)
9114
9115 C--   Get adress where to store F2
9116       JD = IDFAST(1,ID)
9117
9118 C--   Loop over all Q2 gridpoints
9119       DO 100 IQ = 1,NQ2
9120
9121 C--     Initialise FSTORE and get minimum value of x
9122         IXMIN = 999999
9123         DO IX = 1,NXX
9124           FSTORE(IX,IQ,JD) = -401.
9125           IF(MARKFF(IX,IQ).EQ.1) IXMIN = MIN(IXMIN,IX)
9126         ENDDO
9127
9128 C--     Is this Q2 gridpoint marked?
9129         IF(MARKQQ(IQ).NE.1) GOTO 100
9130
9131 C--     Get scale and check if inside Q2 gridboundaries
9132         QMU   = Q2TAB(IQ)*AAM2L + BBM2L
9133         IMU   = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
9134         IF(IMU.EQ.0) GOTO 100
9135         QR2   = QMU*AAAR2 + BBBR2
9136         IR2   = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
9137         IF(IR2.EQ.0) GOTO 100
9138  
9139 C--     Calculate F2 for all marked gridpoints
9140         FACT = LOG(Q2TAB(IQ)/QMU)
9141         NF   = NFMAP(IMU)
9142         TX   = 0.
9143         TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
9144         TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
9145         AS   = GET_AS(IR2,TR)
9146         DO IX0 = NXX,IXMIN,-1
9147           GLUONS(IX0) = GET_PDFXQ( 0,IX0,IMU,TX,TQ)       
9148           QUARKS(IX0) = GET_PDFXQ(ID,IX0,IMU,TX,TQ)       
9149           IF(MARKFF(IX0,IQ).EQ.1) THEN
9150             FFF0 = QUARKS(IX0) 
9151             IF(IORD.EQ.1) THEN
9152               FSTORE(IX0,IQ,JD) = FFF0
9153             ELSE
9154               FF = 0.
9155               DO IX = IX0,NXX
9156                 FF = FF +
9157      +              (WGTC2Q(IWADR(IX,IX0))+
9158      +               WGTFF1(IWADR(IX,IX0))*FACT)*QUARKS(IX) +
9159      +              (WGTC2G(IWADR(IX,IX0),NF)+
9160      +               WGTFG1(IWADR(IX,IX0),NF)*FACT)*
9161      +               GLUONS(IX)*PWGT(1,ID,NF)
9162               ENDDO
9163               FSTORE(IX0,IQ,JD) = FFF0 + AS*FF
9164             ENDIF
9165           ENDIF
9166         ENDDO
9167         FSTORE(NXX+1,IQ,JD) = 0.
9168
9169  100  CONTINUE
9170
9171 C--   Mark F2 calculated for pdf ID
9172       LFFCAL(1,ID) = .TRUE.
9173
9174       RETURN
9175       END
9176
9177 CDECK  ID>, FASTFL.
9178  
9179 C     =====================
9180       SUBROUTINE FASTFL(ID)
9181 C     =====================
9182  
9183       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9184
9185  
9186       COMMON/QCCONS/
9187      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
9188      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
9189      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
9190      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
9191      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
9192      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
9193  
9194  
9195  
9196       LOGICAL
9197      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9198      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9199      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9200      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9201      +LFFCAL,LASOLD
9202
9203       COMMON/QCFLAG/ 
9204      +IORD,IOLAST,
9205      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9206      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9207      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9208      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9209      +LFFCAL(7,30),LASOLD
9210  
9211  
9212       CHARACTER*5 PNAM,STFNAM
9213       LOGICAL     LNFP
9214       COMMON /QCLNFP/ LNFP(0:30,3:5)
9215       COMMON /QCPNAM/ PNAM(0:30)
9216       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
9217       COMMON /QCFNAM/ STFNAM(7)
9218  
9219  
9220       PARAMETER ( MXX = 410 )
9221       PARAMETER ( MQ2 =  120 )
9222
9223 C--   Do not set the following parameter to zero!
9224       PARAMETER ( NDFMAX = 20)
9225
9226  
9227       COMMON/QCGRID/
9228      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9229      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9230      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9231      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9232  
9233  
9234       REAL
9235      +WGTFF1,WGTFG1,
9236      +WGTGF1,WGTGG1,
9237      +WGTPP2,WGTPM2,WGTNS2,
9238      +WGTFF2,WGTFG2,
9239      +WGTGF2,WGTGG2,
9240      +WGTC2Q,WGTC2G,YNTC2Q,
9241      +WGTCLQ,WGTCLG,WGTC3Q
9242
9243       COMMON/QCWEIT/
9244      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
9245      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
9246      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
9247      +WGTNS2(MXX*(MXX+1)/2,3:5),
9248      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
9249      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
9250      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
9251      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
9252      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
9253
9254       COMMON/QCWADR/ IWADR(MXX,MXX)
9255
9256  
9257       COMMON/QCPASS/
9258      +ALPHA0, Q0ALFA, ASLAST, QALAST,
9259      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
9260      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
9261      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
9262      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
9263      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
9264      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
9265      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
9266      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
9267      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
9268
9269       LOGICAL LEVDONE,LE_DONE
9270       COMMON/QCLEVL/
9271      +LEVDONE(MXX,10),LE_DONE(MXX)
9272  
9273
9274       DIMENSION QUARKS(MXX),GLUONS(MXX)
9275
9276 C--   Get adress where to store FL
9277       JD = IDFAST(2,ID)
9278
9279 C--   Loop over all Q2 gridpoints
9280       DO 100 IQ = 1,NQ2
9281
9282 C--     Initialise FSTORE and get minimum value of x
9283         IXMIN = 999999
9284         DO IX = 1,NXX
9285           FSTORE(IX,IQ,JD) = -401.
9286           IF(MARKFF(IX,IQ).EQ.1) IXMIN = MIN(IXMIN,IX)
9287         ENDDO
9288
9289 C--     Is this Q2 gridpoint marked?
9290         IF(MARKQQ(IQ).NE.1) GOTO 100
9291
9292 C--     Get scale and check if inside Q2 gridboundaries
9293         QMU  = Q2TAB(IQ)*AAM2L + BBM2L
9294         IMU  = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
9295         IF(IMU.EQ.0) GOTO 100
9296         QR2   = QMU*AAAR2 + BBBR2
9297         IR2   = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
9298         IF(IR2.EQ.0) GOTO 100
9299
9300 C--     Calculate FL for all marked gridpoints
9301         FACT = LOG(Q2TAB(IQ)/QMU)*FL_FAC
9302         NF   = NFMAP(IMU)
9303         TX   = 0.
9304         TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
9305         TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
9306         AS   = GET_AS(IR2,TR)
9307         DO IX0 = NXX,IXMIN,-1 
9308           GLUONS(IX0) = GET_PDFXQ( 0,IX0,IMU,TX,TQ)         
9309           QUARKS(IX0) = GET_PDFXQ(ID,IX0,IMU,TX,TQ)         
9310           IF(MARKFF(IX0,IQ).EQ.1) THEN
9311             FFF0 = 0.
9312             IF(IORD.EQ.1) THEN
9313               FSTORE(IX0,IQ,JD) = 0.
9314             ELSE
9315               FF = 0.
9316               DO IX = IX0,NXX
9317                 FF = FF +
9318      +              (WGTCLQ(IWADR(IX,IX0))+
9319      +               WGTFF1(IWADR(IX,IX0))*FACT)*QUARKS(IX) +
9320      +              (WGTCLG(IWADR(IX,IX0),NF)+
9321      +               WGTFG1(IWADR(IX,IX0),NF)*FACT)*
9322      +               GLUONS(IX)*PWGT(1,ID,NF)
9323               ENDDO
9324               FSTORE(IX0,IQ,JD) = FFF0 + AS*FF
9325             ENDIF
9326           ENDIF
9327         ENDDO
9328         FSTORE(NXX+1,IQ,JD) = 0.
9329
9330  100  CONTINUE
9331
9332 C--   Mark FL calculated for pdf ID
9333       LFFCAL(2,ID) = .TRUE.
9334
9335       RETURN
9336       END
9337  
9338 CDECK  ID>, FASTF3.
9339  
9340 C     =====================
9341       SUBROUTINE FASTF3(ID)
9342 C     =====================
9343  
9344       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9345  
9346  
9347       COMMON/QCCONS/
9348      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
9349      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
9350      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
9351      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
9352      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
9353      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
9354  
9355  
9356  
9357       LOGICAL
9358      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9359      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9360      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9361      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9362      +LFFCAL,LASOLD
9363
9364       COMMON/QCFLAG/ 
9365      +IORD,IOLAST,
9366      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9367      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9368      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9369      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9370      +LFFCAL(7,30),LASOLD
9371  
9372  
9373       CHARACTER*5 PNAM,STFNAM
9374       LOGICAL     LNFP
9375       COMMON /QCLNFP/ LNFP(0:30,3:5)
9376       COMMON /QCPNAM/ PNAM(0:30)
9377       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
9378       COMMON /QCFNAM/ STFNAM(7)
9379  
9380  
9381       PARAMETER ( MXX = 410 )
9382       PARAMETER ( MQ2 =  120 )
9383
9384 C--   Do not set the following parameter to zero!
9385       PARAMETER ( NDFMAX = 20)
9386
9387  
9388       COMMON/QCGRID/
9389      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9390      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9391      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9392      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9393  
9394  
9395       REAL
9396      +WGTFF1,WGTFG1,
9397      +WGTGF1,WGTGG1,
9398      +WGTPP2,WGTPM2,WGTNS2,
9399      +WGTFF2,WGTFG2,
9400      +WGTGF2,WGTGG2,
9401      +WGTC2Q,WGTC2G,YNTC2Q,
9402      +WGTCLQ,WGTCLG,WGTC3Q
9403
9404       COMMON/QCWEIT/
9405      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
9406      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
9407      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
9408      +WGTNS2(MXX*(MXX+1)/2,3:5),
9409      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
9410      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
9411      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
9412      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
9413      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
9414
9415       COMMON/QCWADR/ IWADR(MXX,MXX)
9416
9417  
9418       COMMON/QCPASS/
9419      +ALPHA0, Q0ALFA, ASLAST, QALAST,
9420      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
9421      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
9422      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
9423      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
9424      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
9425      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
9426      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
9427      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
9428      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
9429
9430       LOGICAL LEVDONE,LE_DONE
9431       COMMON/QCLEVL/
9432      +LEVDONE(MXX,10),LE_DONE(MXX)
9433  
9434
9435       DIMENSION QUARKS(MXX)
9436
9437 C--   Get adress where to store F3
9438       JD = IDFAST(3,ID)
9439
9440 C--   Loop over all Q2 gridpoints
9441       DO 100 IQ = 1,NQ2
9442
9443 C--     Initialise FSTORE and get minimum value of x
9444         IXMIN = 999999
9445         DO IX = 1,NXX
9446           FSTORE(IX,IQ,JD) = -401.
9447           IF(MARKFF(IX,IQ).EQ.1) IXMIN = MIN(IXMIN,IX)
9448         ENDDO
9449
9450 C--     Is this Q2 gridpoint marked?
9451         IF(MARKQQ(IQ).NE.1) GOTO 100
9452
9453 C--     Get scale and check if inside Q2 gridboundaries
9454         QMU  = Q2TAB(IQ)*AAM2L + BBM2L
9455         IMU  = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
9456         IF(IMU.EQ.0) GOTO 100
9457         QR2   = QMU*AAAR2 + BBBR2
9458         IR2   = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
9459         IF(IR2.EQ.0) GOTO 100
9460
9461 C--     Calculate F3 for all marked gridpoints
9462         FACT = LOG(Q2TAB(IQ)/QMU)
9463         TX   = 0.
9464         TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
9465         TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
9466         AS   = GET_AS(IR2,TR)
9467         DO IX0 = NXX,IXMIN,-1
9468           QUARKS(IX0) = GET_PDFXQ(ID,IX0,IMU,TX,TQ)         
9469           IF(MARKFF(IX0,IQ).EQ.1) THEN
9470             FFF0 = QUARKS(IX0) 
9471             IF(IORD.EQ.1) THEN
9472               FSTORE(IX0,IQ,JD) = FFF0
9473             ELSE
9474               FF = 0.
9475               DO IX = IX0,NXX
9476                 FF = FF +
9477      +              (WGTC3Q(IWADR(IX,IX0))+
9478      +               WGTFF1(IWADR(IX,IX0))*FACT)*QUARKS(IX)
9479               ENDDO
9480               FSTORE(IX0,IQ,JD) = FFF0 + AS*FF
9481             ENDIF
9482           ENDIF
9483         ENDDO
9484         FSTORE(NXX+1,IQ,JD) = 0.
9485
9486  100  CONTINUE
9487
9488 C--   Mark F3 calculated for pdf ID
9489       LFFCAL(3,ID) = .TRUE.
9490
9491       RETURN
9492       END
9493  
9494 CDECK  ID>, FASTFKH.
9495  
9496 C     ==========================
9497       SUBROUTINE FASTFKH(IDF,ID)
9498 C     ==========================
9499
9500 C--   IDF   = 4,5,6,7 for F2c,FLc,F2b,FLb
9501
9502       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9503  
9504
9505  
9506       COMMON/QCCONS/
9507      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
9508      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
9509      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
9510      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
9511      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
9512      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
9513  
9514  
9515  
9516       LOGICAL
9517      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9518      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9519      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9520      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9521      +LFFCAL,LASOLD
9522
9523       COMMON/QCFLAG/ 
9524      +IORD,IOLAST,
9525      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9526      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9527      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9528      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9529      +LFFCAL(7,30),LASOLD
9530  
9531  
9532       CHARACTER*5 PNAM,STFNAM
9533       LOGICAL     LNFP
9534       COMMON /QCLNFP/ LNFP(0:30,3:5)
9535       COMMON /QCPNAM/ PNAM(0:30)
9536       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
9537       COMMON /QCFNAM/ STFNAM(7)
9538  
9539  
9540       PARAMETER ( MXX = 410 )
9541       PARAMETER ( MQ2 =  120 )
9542
9543 C--   Do not set the following parameter to zero!
9544       PARAMETER ( NDFMAX = 20)
9545
9546  
9547       COMMON/QCGRID/
9548      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9549      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9550      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9551      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9552  
9553
9554       REAL
9555      +WH_C0KG,WH_C1KG,WH_C1BKG,
9556      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
9557
9558       COMMON/QCHWGT/
9559      +WH_C0KG(0:MXX,MQ2,4:7),
9560      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
9561      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
9562      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
9563
9564  
9565       COMMON/QCPASS/
9566      +ALPHA0, Q0ALFA, ASLAST, QALAST,
9567      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
9568      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
9569      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
9570      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
9571      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
9572      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
9573      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
9574      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
9575      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
9576
9577       LOGICAL LEVDONE,LE_DONE
9578       COMMON/QCLEVL/
9579      +LEVDONE(MXX,10),LE_DONE(MXX)
9580  
9581
9582       DIMENSION QU(MXX),GL(MXX),SI(MXX)
9583
9584 C--   Correct quark mass
9585       QMASS = CBMSTF(IDF)
9586       CCCC  = CHARGE(IDF)
9587
9588 C--   Get adress where to store FKH
9589       JD = IDFAST(IDF,ID)
9590  
9591 C--   FKH in LO
9592       IF(IORD.EQ.1) THEN
9593
9594         DO 100 IQ = 1,NQ2
9595           IXMIN = 999999
9596           DO IX = 1,NXX
9597             FSTORE(IX,IQ,JD) = -401.
9598             IF(MARKFH(IX,IQ).EQ.1) IXMIN = MIN(IXMIN,IX)
9599           ENDDO
9600           IF(MARKQQ(IQ).NE.1) GOTO 100
9601           QMU = Q2TAB(IQ)*AAM2H + BBM2H
9602           IMU = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
9603           IF(IMU.EQ.0) GOTO 100
9604           QR2 = QMU*AAAR2 + BBBR2
9605           IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
9606           IF(IR2.EQ.0) GOTO 100
9607           TQ = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
9608           TR = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
9609           AS = GET_AS(IR2,TR)
9610           DO IX0 = NXX,IXMIN,-1
9611             IXL     = IHTAB(IX0)
9612             X       = XHTAB(IX0)
9613             TX      = (X-XXTAB(IXL))/(XXTAB(IXL+1)-XXTAB(IXL))
9614             GL(IX0) = GET_PDFXQ( 0,IXL,IMU,TX,TQ)
9615             IF(MARKFH(IX0,IQ).EQ.1) THEN
9616               FF   = 0.
9617               DO IX = IX0,NXX
9618                 FF     = FF   +  
9619      +            WH_C0KG(IX-IX0,IQ,IDF)*GL(IX)
9620               ENDDO   
9621               FSTORE(IX0,IQ,JD) = CCCC*AS*FF   
9622             ENDIF
9623           ENDDO
9624           FSTORE(NXX+1,IQ,JD) = 0.
9625  100    CONTINUE
9626
9627  
9628 C--   FKH in NLO
9629       ELSE
9630
9631         DO 200 IQ = 1,NQ2
9632           IXMIN = 999999
9633           DO IX = 1,NXX
9634             FSTORE(IX,IQ,JD) = -401.
9635             IF(MARKFH(IX,IQ).EQ.1) IXMIN = MIN(IXMIN,IX)
9636           ENDDO
9637           IF(MARKQQ(IQ).NE.1) GOTO 200
9638           QMU = Q2TAB(IQ)*AAM2H + BBM2H
9639           IMU = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
9640           IF(IMU.EQ.0) GOTO 200
9641           QR2 = QMU*AAAR2 + BBBR2
9642           IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
9643           IF(IR2.EQ.0) GOTO 200
9644           TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
9645           TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
9646           AS   = GET_AS(IR2,TR)
9647           FACT = LOG(QMU/(QMASS*QMASS))         
9648           DO IX0 = NXX,IXMIN,-1
9649             IXL     = IHTAB(IX0)
9650             X       = XHTAB(IX0)
9651             TX      = (X-XXTAB(IXL))/(XXTAB(IXL+1)-XXTAB(IXL))
9652             GL(IX0) = GET_PDFXQ( 0,IXL,IMU,TX,TQ)
9653             SI(IX0) = GET_PDFXQ( 1,IXL,IMU,TX,TQ)
9654             QU(IX0) = GET_PDFXQ(ID,IXL,IMU,TX,TQ)
9655             IF(MARKFH(IX0,IQ).EQ.1) THEN
9656               F1 = 0.
9657               F2 = 0.
9658               F3 = 0.
9659               F4 = 0.
9660               DO IX = IX0,NXX
9661                 I    = IX-IX0
9662                 F1   = F1 +  
9663      +          WH_C0KG(I,IQ,IDF)*GL(IX)
9664                 F2   = F2 + 
9665      +         (WH_C1KG(I,IQ,IDF)+WH_C1BKG(I,IQ,IDF)*FACT)*GL(IX)
9666                 F3   = F3 + 
9667      +         (WH_C1KQ(I,IQ,IDF)+WH_C1BKQ(I,IQ,IDF)*FACT)*SI(IX)
9668                 F4   = F4 + 
9669      +         (WH_D1KQ(I,IQ,IDF)+WH_D1BKQ(I,IQ,IDF)*FACT)*QU(IX)
9670               ENDDO   
9671               FSTORE(IX0,IQ,JD) = CCCC * 
9672      +          (AS*F1+AS*AS*(F2+F3)) + AS*AS*F4
9673             ENDIF
9674           ENDDO
9675           FSTORE(NXX+1,IQ,JD) = 0.
9676  200    CONTINUE
9677
9678       ENDIF
9679
9680       LFFCAL(IDF,ID) = .TRUE.
9681
9682  
9683       RETURN
9684       END
9685  
9686 CDECK  ID>, QNFGET.
9687  
9688 C     ================================================
9689       DOUBLE PRECISION FUNCTION QNFGET(OPT,NAME,IX,IQ)
9690 C     ================================================
9691  
9692       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9693  
9694       CHARACTER*(*) OPT,NAME
9695
9696 C---  Obsolete (16/07/96): use QSTFIJ instead
9697
9698       QNFGET = QSTFIJ(OPT,NAME,IX,IQ,IFL)
9699
9700       RETURN
9701       END
9702  
9703 CDECK  ID>, QSTFIJ.
9704  
9705 C     ====================================================
9706       DOUBLE PRECISION FUNCTION QSTFIJ(OPT,UNAM,IX,IQ,IFL)
9707 C     ====================================================
9708  
9709       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9710  
9711 C---  Returns stf 'OPT' from pdf 'NAME' at gridpoint IX,IQ
9712 C---  IFL =  0 : F2 sucessfully calculated
9713 C---         1 : Fast calculation
9714 C---        -1 : Scale mu outside grid
9715  
9716       CHARACTER*(*) OPT,UNAM
9717       CHARACTER*5   NAME
9718       CHARACTER*5   OPT5 
9719  
9720  
9721       LOGICAL LTIME  
9722       REAL T_START,T_END,T_SPENT
9723       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
9724      +E_CALLS(10),LTIME
9725       COMMON/QCFCNT/IFCNT(-1:1,5)
9726
9727  
9728       LOGICAL
9729      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9730      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9731      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9732      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9733      +LFFCAL,LASOLD
9734
9735       COMMON/QCFLAG/ 
9736      +IORD,IOLAST,
9737      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9738      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9739      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9740      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9741      +LFFCAL(7,30),LASOLD
9742  
9743  
9744       CHARACTER*5 PNAM,STFNAM
9745       LOGICAL     LNFP
9746       COMMON /QCLNFP/ LNFP(0:30,3:5)
9747       COMMON /QCPNAM/ PNAM(0:30)
9748       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
9749       COMMON /QCFNAM/ STFNAM(7)
9750  
9751  
9752       PARAMETER ( MXX = 410 )
9753       PARAMETER ( MQ2 =  120 )
9754
9755 C--   Do not set the following parameter to zero!
9756       PARAMETER ( NDFMAX = 20)
9757
9758  
9759       COMMON/QCGRID/
9760      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9761      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9762      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9763      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9764  
9765       
9766       CALL QTRACE('QSTFIJ ',0)
9767  
9768       CALL QSTRIP(UNAM,NAME)
9769       CALL QSTRIP(OPT ,OPT5)
9770  
9771       QSTFIJ = 0.
9772       IFL    = 0
9773       X      = 0.
9774       Q      = 0.
9775       IERR   = IFCHEK(OPT5,NAME,IX,IQ,X,Q,'QSTFIJ',1,ID)
9776
9777 C--   Outside grid or cuts?
9778       IF(IERR.EQ.-2) THEN
9779         IFL  = -1
9780         RETURN
9781       ENDIF
9782  
9783       IF(.NOT.LALFOK) CALL QFILAS('QSTFIJ')
9784       IF(.NOT.LDQ2OK) CALL QDELQ2
9785  
9786       IF(IERR.EQ.1) THEN                      
9787         QSTFIJ = GET_F2(ID,IX,IQ,IFL) 
9788         IFCNT(IFL,1) = IFCNT(IFL,1)+1
9789       ELSEIF(IERR.EQ.2) THEN                      
9790         QSTFIJ = GET_FL(ID,IX,IQ,IFL) 
9791         IFCNT(IFL,2) = IFCNT(IFL,2)+1
9792       ELSEIF(IERR.EQ.3) THEN                      
9793         QSTFIJ = GET_F3(ID,IX,IQ,IFL) 
9794         IFCNT(IFL,3) = IFCNT(IFL,3)+1
9795 C---  Use GETFKH instead of GET_FKH for the heavy quarks since 
9796 C---  we have to interpolate on the heavy quark grid.
9797       ELSEIF(IERR.EQ.4) THEN
9798         CALL GETFKH(4,ID,XXTAB(IX),Q2TAB(IQ),QSTFIJ,IFL) 
9799         IFCNT(IFL,4) = IFCNT(IFL,4)+1
9800       ELSEIF(IERR.EQ.5) THEN
9801         CALL GETFKH(5,ID,XXTAB(IX),Q2TAB(IQ),QSTFIJ,IFL) 
9802         IFCNT(IFL,5) = IFCNT(IFL,5)+1
9803       ELSEIF(IERR.EQ.6) THEN
9804         CALL GETFKH(6,ID,XXTAB(IX),Q2TAB(IQ),QSTFIJ,IFL) 
9805         IFCNT(IFL,4) = IFCNT(IFL,4)+1
9806       ELSEIF(IERR.EQ.7) THEN
9807         CALL GETFKH(7,ID,XXTAB(IX),Q2TAB(IQ),QSTFIJ,IFL) 
9808         IFCNT(IFL,5) = IFCNT(IFL,5)+1
9809       ENDIF
9810
9811       RETURN
9812
9813       END
9814  
9815 CDECK  ID>, STRFXQ.
9816  
9817 C     =======================================
9818       SUBROUTINE STRFXQ(OPT,NAME,X,Q,VAL,IFL)
9819 C     =======================================
9820  
9821       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9822  
9823       CHARACTER*(*) OPT,NAME
9824
9825 C---  Obsolete (16/07/96): use QSTFXQ instead
9826
9827       VAL = QSTFXQ(OPT,NAME,X,Q,IFL)
9828
9829       RETURN
9830       END
9831  
9832 CDECK  ID>, QSTFXQ.
9833  
9834 C     ==================================================
9835       DOUBLE PRECISION FUNCTION QSTFXQ(OPT,UNAM,X,Q,IFL)
9836 C     ==================================================
9837  
9838       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9839  
9840  
9841 C---  IFL =  0 : F2 sucessfully calculated
9842 C---         1 : Fast calculation
9843 C---        -1 : Scale mu outside grid
9844  
9845       CHARACTER*(*) OPT,UNAM
9846       CHARACTER*5   NAME
9847       CHARACTER*5   OPT5 
9848
9849  
9850       LOGICAL LTIME  
9851       REAL T_START,T_END,T_SPENT
9852       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
9853      +E_CALLS(10),LTIME
9854       COMMON/QCFCNT/IFCNT(-1:1,5)
9855
9856  
9857       LOGICAL
9858      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9859      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9860      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9861      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9862      +LFFCAL,LASOLD
9863
9864       COMMON/QCFLAG/ 
9865      +IORD,IOLAST,
9866      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9867      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9868      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9869      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9870      +LFFCAL(7,30),LASOLD
9871  
9872  
9873       PARAMETER ( MXX = 410 )
9874       PARAMETER ( MQ2 =  120 )
9875
9876 C--   Do not set the following parameter to zero!
9877       PARAMETER ( NDFMAX = 20)
9878
9879  
9880       COMMON/QCGRID/
9881      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9882      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
9883      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
9884      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
9885  
9886       
9887       CALL QTRACE('QSTFXQ ',0)
9888  
9889       CALL QSTRIP(UNAM,NAME)
9890       CALL QSTRIP(OPT ,OPT5)
9891  
9892       QSTFXQ = 0.
9893       IFL    = 0
9894       IERR   = IFCHEK(OPT5,NAME,0,0,X,Q,'QSTFXQ',1,ID)
9895
9896 C--   Outside grid or cuts?
9897       IF(IERR.EQ.-2) THEN
9898         IFL = -1
9899         RETURN
9900       ENDIF
9901
9902       IF(.NOT.LALFOK) CALL QFILAS('QSTFXQ')
9903       IF(.NOT.LDQ2OK) CALL QDELQ2
9904  
9905       IF    (IERR.EQ.1) THEN                        
9906         CALL GETF2(ID,X,Q,STRF,IFL)
9907         IFCNT(IFL,1) = IFCNT(IFL,1)+1
9908       ELSEIF(IERR.EQ.2) THEN                        
9909         CALL GETFL(ID,X,Q,STRF,IFL)
9910         IFCNT(IFL,2) = IFCNT(IFL,2)+1
9911       ELSEIF(IERR.EQ.3) THEN                        
9912         CALL GETF3(ID,X,Q,STRF,IFL)
9913         IFCNT(IFL,3) = IFCNT(IFL,3)+1
9914       ELSEIF(IERR.EQ.4) THEN                        
9915         CALL GETFKH(4,ID,X,Q,STRF,IFL)
9916         IFCNT(IFL,4) = IFCNT(IFL,4)+1
9917       ELSEIF(IERR.EQ.5) THEN                        
9918         CALL GETFKH(5,ID,X,Q,STRF,IFL)
9919         IFCNT(IFL,5) = IFCNT(IFL,5)+1
9920       ELSEIF(IERR.EQ.6) THEN                        
9921         CALL GETFKH(6,ID,X,Q,STRF,IFL)
9922         IFCNT(IFL,4) = IFCNT(IFL,4)+1
9923       ELSEIF(IERR.EQ.7) THEN                        
9924         CALL GETFKH(7,ID,X,Q,STRF,IFL)
9925         IFCNT(IFL,5) = IFCNT(IFL,5)+1
9926       ENDIF
9927
9928       QSTFXQ = STRF
9929
9930       RETURN
9931
9932       END
9933  
9934 CDECK  ID>, IFCHEK.
9935  
9936 C     ============================================================
9937       INTEGER FUNCTION IFCHEK(OPT,NAME,JX,JQ,XX,QQ,SRNAM,ISTOP,ID)
9938 C     ============================================================
9939
9940 C---  Check for structure function calculation
9941
9942 C---  IFCHEK = -5: Q2 < 1.5 GeV2 for heavy quark stfs
9943 C---           -4: No weight tables
9944 C---           -3: Input NAME corresponds to gluon
9945 C---           -2: x,Q2,M2,R2 outside grid or cuts
9946 C---           -1: No x,Q2 grid available
9947 C---            0: Unknown option
9948 C---          1-7: F2, FL, xF3, F2c, FLc, F2b, FLb
9949
9950       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
9951  
9952       CHARACTER*5   OPT
9953       CHARACTER*5   NAME
9954       CHARACTER*6   SRNAM
9955
9956  
9957       COMMON/QCCONS/
9958      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
9959      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
9960      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
9961      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
9962      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
9963      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
9964  
9965  
9966  
9967       LOGICAL LTIME  
9968       REAL T_START,T_END,T_SPENT
9969       COMMON/QCTIME/T_START(10),T_END(10),T_SPENT(10),N_CALLS(10),
9970      +E_CALLS(10),LTIME
9971       COMMON/QCFCNT/IFCNT(-1:1,5)
9972
9973  
9974       LOGICAL
9975      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9976      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9977      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9978      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9979      +LFFCAL,LASOLD
9980
9981       COMMON/QCFLAG/ 
9982      +IORD,IOLAST,
9983      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
9984      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
9985      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
9986      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
9987      +LFFCAL(7,30),LASOLD
9988  
9989  
9990       PARAMETER ( MXX = 410 )
9991       PARAMETER ( MQ2 =  120 )
9992
9993 C--   Do not set the following parameter to zero!
9994       PARAMETER ( NDFMAX = 20)
9995
9996  
9997       COMMON/QCGRID/
9998      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
9999      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10000      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10001      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10002  
10003
10004  
10005 C--   Check if valid option 
10006       IERR   = IDFCHK(OPT)
10007       IF(IERR.EQ.0) GOTO 500
10008       JJ = IERR
10009       IF(IERR.EQ.6) JJ = 4
10010       IF(IERR.EQ.7) JJ = 5
10011
10012 C--   Check x,Q2 grid available
10013       IF(NXX.EQ.0.OR.NQ2.EQ.0) THEN
10014         IERR = -1
10015         GOTO 500
10016       ENDIF
10017
10018       IF(SRNAM.NE.'STFAST') THEN
10019 C--   --------------------------
10020
10021 C--     Get x, Q2 
10022         IF(SRNAM.EQ.'QSTFIJ') THEN
10023           X = XFROMIX(JX)
10024           Q = QFROMIQ(JQ)
10025         ELSE
10026           X = XX
10027           Q = QQ
10028         ENDIF
10029
10030 C--     Check x,Q2 inside grid
10031         QP  = Q
10032         IX  = ABS(IXFROMX(X))
10033         IQ  = MIN(ABS(IQFROMQ(Q)),NQ2-1)
10034         IF(IX.EQ.0.OR.IQ.EQ.0)  THEN
10035           IFCNT(-1,JJ) = IFCNT(-1,JJ)+1
10036           IERR = -2
10037           GOTO 500
10038         ENDIF
10039
10040 C--     Check factorisation scale inside grid or cuts
10041         IF(IERR.LE.3) THEN
10042           QM = AAM2L*Q + BBM2L
10043         ELSE
10044           QM = AAM2H*Q + BBM2H
10045         ENDIF
10046         QP   = QM
10047         IFLG = ICUTXQ(X,QP,0)
10048         IF(IFLG.NE.0) THEN
10049           IFCNT(-1,JJ) = IFCNT(-1,JJ)+1
10050           IERR = -2
10051           GOTO 500
10052         ENDIF
10053         IM2 = MIN(ABS(IQFROMQ(QM)),NQ2-1)
10054
10055 C--     Check renormalisation scale inside grid and above Lamba2
10056         QR  = AAAR2*QM + BBBR2
10057         QP  = QR
10058         IR2 = MIN(ABS(IQFROMQ(QR)),NQ2-1)
10059         IF(IR2.EQ.0 .OR. IFLG.GE.10000)  THEN
10060           IFCNT(-1,JJ) = IFCNT(-1,JJ)+1
10061           IERR = -2
10062           GOTO 500
10063         ENDIF
10064  
10065 C--     Check if the parton distribution is booked
10066         ID = IDCHEK(NAME,NFMAP(IQ)   ,SRNAM,1)
10067         ID = IDCHEK(NAME,NFMAP(IQ+1) ,SRNAM,1)
10068         ID = IDCHEK(NAME,NFMAP(IM2)  ,SRNAM,1)
10069         ID = IDCHEK(NAME,NFMAP(IM2+1),SRNAM,1)
10070         ID = IDCHEK(NAME,NFMAP(IR2)  ,SRNAM,1)
10071         ID = IDCHEK(NAME,NFMAP(IR2+1),SRNAM,1)
10072
10073       ELSE 
10074 C--   ----
10075
10076 C--     Check if the parton distribution is booked
10077         NFMIN = NFMAP(1)
10078         NFMAX = NFMAP(NQ2)
10079         DO NF = NFMIN,NFMAX
10080           ID = IDCHEK(NAME,NF,'STFAST',1)
10081         ENDDO
10082
10083       ENDIF
10084 C--   -----
10085
10086 C--   No structure functions from the gluon
10087       IF(ID.EQ.0) THEN
10088         IERR = -3
10089         GOTO 500
10090       ENDIF
10091
10092 C--   Check if the weight tables are available
10093       IF(IERR.LE.3) THEN
10094         IF(IORD.EQ.2.AND..NOT.LWTFOK) THEN
10095           IERR = -4
10096           GOTO 500
10097         ENDIF
10098       ELSEIF(IERR.EQ.4) THEN
10099         IF(.NOT.LWFCOK) THEN
10100           IERR = -4
10101           GOTO 500
10102         ENDIF
10103       ELSEIF(IERR.EQ.5) THEN
10104         IF(.NOT.LWLCOK) THEN
10105           IERR = -4
10106           GOTO 500
10107         ENDIF
10108       ELSEIF(IERR.EQ.6) THEN
10109         IF(.NOT.LWFBOK) THEN
10110           IERR = -4
10111           GOTO 500
10112         ENDIF
10113       ELSEIF(IERR.EQ.7) THEN
10114         IF(.NOT.LWLBOK) THEN
10115           IERR = -4
10116           GOTO 500
10117         ENDIF
10118       ENDIF
10119
10120 C--   Check low Q2 for heavy quarks
10121       IF(SRNAM.NE.'STFAST') THEN
10122         IF(IERR.GE.4) THEN
10123           IF(LCLOWQ.AND.Q.LE.1.5) THEN
10124             IERR = -5
10125             GOTO 500
10126           ENDIF
10127         ENDIF
10128       ENDIF
10129
10130       IFCHEK = IERR
10131
10132       RETURN
10133
10134  500  CONTINUE
10135
10136       IFCHEK = IERR
10137
10138 C--   Stop?
10139       IF(ISTOP.EQ.0) RETURN
10140       IF(.NOT.LIMCK.AND.IERR.EQ.-2) RETURN
10141
10142       WRITE(6,'(/'' ------------------------------------'')')
10143       WRITE(6,'( '' QCDNUM error in s/r '',A6,'' ---> STOP'')')
10144      +      SRNAM
10145       WRITE(6,'( '' ------------------------------------'')')
10146       WRITE(6,'( '' Input Opt  : '',A)')     OPT
10147       WRITE(6,'( ''       Name : '',A)')     NAME
10148       IF(SRNAM.NE.'STFAST') THEN
10149         IF(SRNAM.EQ.'QSTFIJ') THEN
10150           WRITE(6,'( ''       IX   : '',I10  )') JX
10151           WRITE(6,'( ''       IQ   : '',I10  )') JQ
10152         ELSE
10153           WRITE(6,'( ''       x    : '',E12.5)') XX
10154           WRITE(6,'( ''       Q2   : '',E12.5)') QQ
10155         ENDIF
10156       ENDIF
10157       IF(IERR.EQ.0) THEN
10158         WRITE(6,'(/'' Unknown option'')')
10159       ELSEIF(IERR.EQ.-1) THEN
10160         WRITE(6,'(/'' No x-Q2 grid available'')')
10161       ELSEIF(IERR.EQ.-2) THEN
10162         WRITE(6,'(/'' X, Q2 or mu2 outside grid or cuts'')')
10163         IDUM = ICUTXQ(X,QP,1)
10164       ELSEIF(IERR.EQ.-3) THEN
10165         WRITE(6,'(/'' Strf from the gluon, no thank you'')')
10166       ELSEIF(IERR.EQ.-4) THEN
10167         WRITE(6,'(/'' No weight tables available'')')
10168       ELSEIF(IERR.EQ.-5) THEN
10169         WRITE(6,'(/'' Cannot calculate F2h, FLh for Q2 < 1.5 GeV2'')')
10170       ENDIF
10171       
10172       CALL QTRACE('IFCHEK ',1)
10173
10174       STOP
10175
10176       END
10177  
10178 CDECK  ID>, IDFCHK.
10179  
10180 C     =============================
10181       INTEGER FUNCTION IDFCHK(OPT5)
10182 C     =============================
10183
10184 C--   Returns 1,2,3,4,5,6,7 for F2,Fl,xF3,F2c,FLc,F2b,FLb.
10185 C--   Returns 0 if no valid OPT is given on input.
10186
10187       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10188  
10189       CHARACTER*5   OPT5 
10190  
10191       IDFCHK = 0
10192  
10193       IF    (OPT5(1:3).EQ.'F2 ')  THEN
10194         IDFCHK = 1
10195       ELSEIF(OPT5(1:3).EQ.'FL ')  THEN
10196         IDFCHK = 2
10197       ELSEIF(OPT5(1:3).EQ.'XF3')  THEN
10198         IDFCHK = 3
10199       ELSEIF(OPT5(1:3).EQ.'F2C')  THEN
10200         IDFCHK = 4
10201       ELSEIF(OPT5(1:3).EQ.'FLC')  THEN
10202         IDFCHK = 5
10203       ELSEIF(OPT5(1:3).EQ.'F2B')  THEN
10204         IDFCHK = 6
10205       ELSEIF(OPT5(1:3).EQ.'FLB')  THEN
10206         IDFCHK = 7
10207       ENDIF
10208
10209       RETURN
10210       END
10211  
10212 CDECK  ID>, GETF2.
10213  
10214 C     ================================
10215       SUBROUTINE GETF2(ID,X,Q,VAL,IFL)
10216 C     ================================
10217  
10218 C---  IFL =  0 : F2 sucessfully calculated
10219 C---         1 : Fast calculation
10220 C---        -1 : Scale mu outside grid
10221  
10222       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10223  
10224  
10225       COMMON/QCCONS/
10226      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10227      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10228      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
10229      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
10230      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
10231      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
10232  
10233  
10234  
10235       LOGICAL
10236      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10237      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10238      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10239      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10240      +LFFCAL,LASOLD
10241
10242       COMMON/QCFLAG/ 
10243      +IORD,IOLAST,
10244      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10245      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10246      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10247      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10248      +LFFCAL(7,30),LASOLD
10249  
10250  
10251       CHARACTER*5 PNAM,STFNAM
10252       LOGICAL     LNFP
10253       COMMON /QCLNFP/ LNFP(0:30,3:5)
10254       COMMON /QCPNAM/ PNAM(0:30)
10255       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
10256       COMMON /QCFNAM/ STFNAM(7)
10257  
10258  
10259       PARAMETER ( MXX = 410 )
10260       PARAMETER ( MQ2 =  120 )
10261
10262 C--   Do not set the following parameter to zero!
10263       PARAMETER ( NDFMAX = 20)
10264
10265  
10266       COMMON/QCGRID/
10267      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
10268      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10269      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10270      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10271  
10272  
10273       REAL
10274      +WGTFF1,WGTFG1,
10275      +WGTGF1,WGTGG1,
10276      +WGTPP2,WGTPM2,WGTNS2,
10277      +WGTFF2,WGTFG2,
10278      +WGTGF2,WGTGG2,
10279      +WGTC2Q,WGTC2G,YNTC2Q,
10280      +WGTCLQ,WGTCLG,WGTC3Q
10281
10282       COMMON/QCWEIT/
10283      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
10284      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
10285      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
10286      +WGTNS2(MXX*(MXX+1)/2,3:5),
10287      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
10288      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
10289      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
10290      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
10291      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
10292
10293       COMMON/QCWADR/ IWADR(MXX,MXX)
10294
10295  
10296       COMMON/QCPASS/
10297      +ALPHA0, Q0ALFA, ASLAST, QALAST,
10298      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
10299      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
10300      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
10301      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
10302      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
10303      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
10304      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
10305      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
10306      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
10307
10308       LOGICAL LEVDONE,LE_DONE
10309       COMMON/QCLEVL/
10310      +LEVDONE(MXX,10),LE_DONE(MXX)
10311  
10312
10313       VAL =  0.
10314       JER =  1
10315       IFL = -1
10316       IX = IXFROMX(X)
10317       IQ = IQFROMQ(Q)
10318
10319       IF(IX.GT.0.AND.IQ.GT.0) THEN
10320         VAL = GET_F2(ID,IX,IQ,IERR)
10321         JER = MIN(JER,IERR)
10322       ELSEIF(IX.GT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10323         IQ   = -IQ
10324         VAL1 = GET_F2(ID,IX,IQ,IERR)
10325         JER  = MIN(JER,IERR)
10326         VAL2 = GET_F2(ID,IX,IQ+1,IERR)
10327         JER  = MIN(JER,IERR)
10328         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10329         VAL  = (1.-TQ)*VAL1 + TQ*VAL2
10330       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
10331         IX   = -IX
10332         VAL1 = GET_F2(ID,IX,IQ,IERR)
10333         JER  = MIN(JER,IERR)
10334         VAL2 = GET_F2(ID,IX+1,IQ,IERR)
10335         JER  = MIN(JER,IERR)
10336         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10337         VAL  = (1.-TX)*VAL1 + TX*VAL2
10338       ELSEIF(IX.LT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10339         IX   = -IX
10340         IQ   = -IQ
10341         VAL1 = GET_F2(ID,IX,IQ,IERR)
10342         JER  = MIN(JER,IERR)
10343         VAL2 = GET_F2(ID,IX,IQ+1,IERR)
10344         JER  = MIN(JER,IERR)
10345         VAL3 = GET_F2(ID,IX+1,IQ,IERR)
10346         JER  = MIN(JER,IERR)
10347         VAL4 = GET_F2(ID,IX+1,IQ+1,IERR)
10348         JER  = MIN(JER,IERR)
10349         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10350         VAL1 = (1.-TQ)*VAL1 + TQ*VAL2
10351         VAL2 = (1.-TQ)*VAL3 + TQ*VAL4
10352         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10353         VAL  = (1.-TX)*VAL1 + TX*VAL2
10354       ELSE
10355         VAL  =  0.
10356         JER  = -1
10357       ENDIF
10358  
10359       IFL = JER                  
10360  
10361       RETURN
10362       END
10363  
10364 CDECK  ID>, GET_F2.
10365  
10366 C     ================================================
10367       DOUBLE PRECISION FUNCTION GET_F2(ID,IX0,IQ,IERR)
10368 C     ================================================
10369  
10370       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10371
10372 C--   Input:  ID      parton distribution identifier
10373 C--           IX0     x gridpoint
10374 C--           Q       Q2 value    
10375 C--   Output: IERR =  0 F2 successfully calculated
10376 C--                =  1 Fast calculation
10377 C--                = -1 Scale mu outside grid 
10378  
10379  
10380       COMMON/QCCONS/
10381      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10382      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10383      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
10384      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
10385      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
10386      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
10387  
10388  
10389  
10390       LOGICAL
10391      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10392      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10393      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10394      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10395      +LFFCAL,LASOLD
10396
10397       COMMON/QCFLAG/ 
10398      +IORD,IOLAST,
10399      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10400      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10401      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10402      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10403      +LFFCAL(7,30),LASOLD
10404  
10405  
10406       CHARACTER*5 PNAM,STFNAM
10407       LOGICAL     LNFP
10408       COMMON /QCLNFP/ LNFP(0:30,3:5)
10409       COMMON /QCPNAM/ PNAM(0:30)
10410       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
10411       COMMON /QCFNAM/ STFNAM(7)
10412  
10413  
10414       PARAMETER ( MXX = 410 )
10415       PARAMETER ( MQ2 =  120 )
10416
10417 C--   Do not set the following parameter to zero!
10418       PARAMETER ( NDFMAX = 20)
10419
10420  
10421       COMMON/QCGRID/
10422      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
10423      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10424      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10425      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10426  
10427  
10428       REAL
10429      +WGTFF1,WGTFG1,
10430      +WGTGF1,WGTGG1,
10431      +WGTPP2,WGTPM2,WGTNS2,
10432      +WGTFF2,WGTFG2,
10433      +WGTGF2,WGTGG2,
10434      +WGTC2Q,WGTC2G,YNTC2Q,
10435      +WGTCLQ,WGTCLG,WGTC3Q
10436
10437       COMMON/QCWEIT/
10438      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
10439      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
10440      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
10441      +WGTNS2(MXX*(MXX+1)/2,3:5),
10442      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
10443      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
10444      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
10445      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
10446      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
10447
10448       COMMON/QCWADR/ IWADR(MXX,MXX)
10449
10450  
10451       COMMON/QCPASS/
10452      +ALPHA0, Q0ALFA, ASLAST, QALAST,
10453      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
10454      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
10455      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
10456      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
10457      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
10458      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
10459      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
10460      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
10461      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
10462
10463       LOGICAL LEVDONE,LE_DONE
10464       COMMON/QCLEVL/
10465      +LEVDONE(MXX,10),LE_DONE(MXX)
10466  
10467  
10468       GET_F2 = 0.
10469
10470       IF(LFFCAL(1,ID)) THEN
10471         IERR = 1
10472         JD   = IDFAST(1,ID)
10473         GET_F2 = FSTORE(IX0,IQ,JD)
10474         IF(GET_F2.GE.-99.) RETURN
10475       ENDIF
10476  
10477       IERR = 0
10478       QMU = AAM2L*Q2TAB(IQ) + BBM2L 
10479       IMU = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
10480       IF(IMU.EQ.0) THEN
10481         IERR = -1
10482         RETURN
10483       ENDIF
10484
10485       TX   = 0.
10486       TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
10487       FFF0 = GET_PDFXQ(ID,IX0,IMU,TX,TQ)           
10488  
10489       IF(IORD.EQ.1) THEN
10490         GET_F2 = FFF0
10491         RETURN
10492       ENDIF
10493
10494       QR2 = QMU*AAAR2 + BBBR2
10495       IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
10496       IF(IR2.EQ.0) THEN
10497         IERR = -1
10498         RETURN
10499       ENDIF
10500       TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
10501  
10502       NF   = NFMAP(IMU)
10503       FACT = LOG(Q2TAB(IQ)/QMU)
10504       F2   = 0.
10505       DO IX = IX0,NXX
10506         QU = GET_PDFXQ(ID,IX,IMU,TX,TQ)         
10507         GL = GET_PDFXQ( 0,IX,IMU,TX,TQ)         
10508         F2 = F2 + 
10509      +      (WGTC2Q(IWADR(IX,IX0))+
10510      +       WGTFF1(IWADR(IX,IX0))*FACT)*QU +
10511      +      (WGTC2G(IWADR(IX,IX0),NF)+
10512      +       WGTFG1(IWADR(IX,IX0),NF)*FACT)*GL*PWGT(1,ID,NF)
10513       ENDDO    
10514       GET_F2 = FFF0 + GET_AS(IR2,TR)*F2
10515
10516       RETURN
10517       END
10518
10519 CDECK  ID>, GETFL.
10520  
10521 C     ================================
10522       SUBROUTINE GETFL(ID,X,Q,VAL,IFL)
10523 C     ================================
10524  
10525  
10526 C---  IFL =  0 : F2 sucessfully calculated
10527 C---         1 : Fast calculation
10528 C---        -1 : Scale mu outside grid
10529  
10530       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10531  
10532  
10533       COMMON/QCCONS/
10534      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10535      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10536      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
10537      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
10538      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
10539      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
10540  
10541  
10542  
10543       LOGICAL
10544      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10545      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10546      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10547      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10548      +LFFCAL,LASOLD
10549
10550       COMMON/QCFLAG/ 
10551      +IORD,IOLAST,
10552      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10553      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10554      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10555      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10556      +LFFCAL(7,30),LASOLD
10557  
10558  
10559       CHARACTER*5 PNAM,STFNAM
10560       LOGICAL     LNFP
10561       COMMON /QCLNFP/ LNFP(0:30,3:5)
10562       COMMON /QCPNAM/ PNAM(0:30)
10563       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
10564       COMMON /QCFNAM/ STFNAM(7)
10565  
10566  
10567       PARAMETER ( MXX = 410 )
10568       PARAMETER ( MQ2 =  120 )
10569
10570 C--   Do not set the following parameter to zero!
10571       PARAMETER ( NDFMAX = 20)
10572
10573  
10574       COMMON/QCGRID/
10575      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
10576      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10577      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10578      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10579  
10580  
10581       REAL
10582      +WGTFF1,WGTFG1,
10583      +WGTGF1,WGTGG1,
10584      +WGTPP2,WGTPM2,WGTNS2,
10585      +WGTFF2,WGTFG2,
10586      +WGTGF2,WGTGG2,
10587      +WGTC2Q,WGTC2G,YNTC2Q,
10588      +WGTCLQ,WGTCLG,WGTC3Q
10589
10590       COMMON/QCWEIT/
10591      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
10592      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
10593      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
10594      +WGTNS2(MXX*(MXX+1)/2,3:5),
10595      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
10596      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
10597      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
10598      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
10599      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
10600
10601       COMMON/QCWADR/ IWADR(MXX,MXX)
10602
10603  
10604       COMMON/QCPASS/
10605      +ALPHA0, Q0ALFA, ASLAST, QALAST,
10606      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
10607      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
10608      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
10609      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
10610      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
10611      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
10612      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
10613      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
10614      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
10615
10616       LOGICAL LEVDONE,LE_DONE
10617       COMMON/QCLEVL/
10618      +LEVDONE(MXX,10),LE_DONE(MXX)
10619  
10620
10621       VAL =  0.
10622       JER =  1
10623       IFL = -1
10624       IX = IXFROMX(X)
10625       IQ = IQFROMQ(Q)
10626  
10627       IF(IX.GT.0.AND.IQ.GT.0) THEN
10628         VAL = GET_FL(ID,IX,IQ,IERR)
10629         JER = MIN(JER,IERR)
10630       ELSEIF(IX.GT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10631         IQ   = -IQ
10632         VAL1 = GET_FL(ID,IX,IQ,IERR)
10633         JER  = MIN(JER,IERR)
10634         VAL2 = GET_FL(ID,IX,IQ+1,IERR)
10635         JER  = MIN(JER,IERR)
10636         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10637         VAL  = (1.-TQ)*VAL1 + TQ*VAL2
10638       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
10639         IX   = -IX
10640         VAL1 = GET_FL(ID,IX,IQ,IERR)
10641         JER  = MIN(JER,IERR)
10642         VAL2 = GET_FL(ID,IX+1,IQ,IERR)
10643         JER  = MIN(JER,IERR)
10644         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10645         VAL  = (1.-TX)*VAL1 + TX*VAL2
10646       ELSEIF(IX.LT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10647         IX   = -IX
10648         IQ   = -IQ
10649         VAL1 = GET_FL(ID,IX,IQ,IERR)
10650         JER  = MIN(JER,IERR)
10651         VAL2 = GET_FL(ID,IX,IQ+1,IERR)
10652         JER  = MIN(JER,IERR)
10653         VAL3 = GET_FL(ID,IX+1,IQ,IERR)
10654         JER  = MIN(JER,IERR)
10655         VAL4 = GET_FL(ID,IX+1,IQ+1,IERR)
10656         JER  = MIN(JER,IERR)
10657         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10658         VAL1 = (1.-TQ)*VAL1 + TQ*VAL2
10659         VAL2 = (1.-TQ)*VAL3 + TQ*VAL4
10660         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10661         VAL  = (1.-TX)*VAL1 + TX*VAL2
10662       ELSE
10663         VAL  =  0.
10664         JER  = -1
10665       ENDIF
10666  
10667       IFL = JER
10668  
10669       RETURN
10670       END
10671  
10672 CDECK  ID>, GET_FL.
10673  
10674 C     ================================================
10675       DOUBLE PRECISION FUNCTION GET_FL(ID,IX0,IQ,IERR)
10676 C     ================================================
10677  
10678       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10679
10680 C--   Input:  ID      parton distribution identifier
10681 C--           IX0     x gridpoint
10682 C--           Q       Q2 value    
10683 C--   Output: IERR =  0 FL successfully calculated
10684 C--                =  1 Fast calculation
10685 C--                = -1 Scale mu outside grid 
10686  
10687  
10688       COMMON/QCCONS/
10689      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10690      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10691      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
10692      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
10693      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
10694      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
10695  
10696  
10697  
10698       LOGICAL
10699      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10700      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10701      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10702      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10703      +LFFCAL,LASOLD
10704
10705       COMMON/QCFLAG/ 
10706      +IORD,IOLAST,
10707      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10708      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10709      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10710      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10711      +LFFCAL(7,30),LASOLD
10712  
10713  
10714       CHARACTER*5 PNAM,STFNAM
10715       LOGICAL     LNFP
10716       COMMON /QCLNFP/ LNFP(0:30,3:5)
10717       COMMON /QCPNAM/ PNAM(0:30)
10718       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
10719       COMMON /QCFNAM/ STFNAM(7)
10720  
10721  
10722       PARAMETER ( MXX = 410 )
10723       PARAMETER ( MQ2 =  120 )
10724
10725 C--   Do not set the following parameter to zero!
10726       PARAMETER ( NDFMAX = 20)
10727
10728  
10729       COMMON/QCGRID/
10730      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
10731      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10732      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10733      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10734  
10735  
10736       REAL
10737      +WGTFF1,WGTFG1,
10738      +WGTGF1,WGTGG1,
10739      +WGTPP2,WGTPM2,WGTNS2,
10740      +WGTFF2,WGTFG2,
10741      +WGTGF2,WGTGG2,
10742      +WGTC2Q,WGTC2G,YNTC2Q,
10743      +WGTCLQ,WGTCLG,WGTC3Q
10744
10745       COMMON/QCWEIT/
10746      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
10747      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
10748      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
10749      +WGTNS2(MXX*(MXX+1)/2,3:5),
10750      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
10751      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
10752      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
10753      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
10754      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
10755
10756       COMMON/QCWADR/ IWADR(MXX,MXX)
10757
10758  
10759       COMMON/QCPASS/
10760      +ALPHA0, Q0ALFA, ASLAST, QALAST,
10761      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
10762      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
10763      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
10764      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
10765      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
10766      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
10767      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
10768      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
10769      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
10770
10771       LOGICAL LEVDONE,LE_DONE
10772       COMMON/QCLEVL/
10773      +LEVDONE(MXX,10),LE_DONE(MXX)
10774  
10775  
10776       GET_FL = 0.
10777
10778       IF(LFFCAL(2,ID)) THEN
10779         IERR = 1
10780         JD   = IDFAST(2,ID)
10781         GET_FL = FSTORE(IX0,IQ,JD)
10782         IF(GET_FL.GE.-99.) RETURN
10783       ENDIF
10784  
10785       IERR = 0
10786
10787       IF(IORD.EQ.1) THEN
10788         GET_FL = 0.
10789         RETURN
10790       ENDIF
10791  
10792       QMU = AAM2L*Q2TAB(IQ) + BBM2L 
10793       IMU = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
10794       IF(IMU.EQ.0) THEN
10795         IERR = -1
10796         RETURN
10797       ENDIF
10798
10799       QR2 = QMU*AAAR2 + BBBR2
10800       IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
10801       IF(IR2.EQ.0) THEN
10802         IERR = -1
10803         RETURN
10804       ENDIF
10805  
10806       TX   = 0.
10807       TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
10808       TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
10809
10810       NF   = NFMAP(IMU)
10811       FACT = LOG(Q2TAB(IQ)/QMU)*FL_FAC
10812       FL   = 0.
10813       DO IX = IX0,NXX
10814         QU = GET_PDFXQ(ID,IX,IMU,TX,TQ)          
10815         GL = GET_PDFXQ( 0,IX,IMU,TX,TQ)          
10816         FL = FL + 
10817      +      (WGTCLQ(IWADR(IX,IX0))+
10818      +       WGTFF1(IWADR(IX,IX0))*FACT)*QU +
10819      +      (WGTCLG(IWADR(IX,IX0),NF)+
10820      +       WGTFG1(IWADR(IX,IX0),NF)*FACT)*GL*PWGT(1,ID,NF)
10821       ENDDO    
10822       GET_FL = GET_AS(IR2,TR)*FL
10823
10824       RETURN
10825       END
10826
10827 CDECK  ID>, GETF3.
10828  
10829 C     ================================
10830       SUBROUTINE GETF3(ID,X,Q,VAL,IFL)
10831 C     ================================
10832  
10833  
10834 C---  IFL =  0 : F2 sucessfully calculated
10835 C---         1 : Fast calculation
10836 C---        -1 : Scale mu outside grid
10837  
10838       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10839  
10840  
10841       COMMON/QCCONS/
10842      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10843      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10844      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
10845      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
10846      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
10847      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
10848  
10849  
10850  
10851       LOGICAL
10852      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10853      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10854      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10855      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10856      +LFFCAL,LASOLD
10857
10858       COMMON/QCFLAG/ 
10859      +IORD,IOLAST,
10860      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
10861      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
10862      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
10863      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
10864      +LFFCAL(7,30),LASOLD
10865  
10866  
10867       CHARACTER*5 PNAM,STFNAM
10868       LOGICAL     LNFP
10869       COMMON /QCLNFP/ LNFP(0:30,3:5)
10870       COMMON /QCPNAM/ PNAM(0:30)
10871       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
10872       COMMON /QCFNAM/ STFNAM(7)
10873  
10874  
10875       PARAMETER ( MXX = 410 )
10876       PARAMETER ( MQ2 =  120 )
10877
10878 C--   Do not set the following parameter to zero!
10879       PARAMETER ( NDFMAX = 20)
10880
10881  
10882       COMMON/QCGRID/
10883      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
10884      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
10885      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
10886      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
10887  
10888  
10889       REAL
10890      +WGTFF1,WGTFG1,
10891      +WGTGF1,WGTGG1,
10892      +WGTPP2,WGTPM2,WGTNS2,
10893      +WGTFF2,WGTFG2,
10894      +WGTGF2,WGTGG2,
10895      +WGTC2Q,WGTC2G,YNTC2Q,
10896      +WGTCLQ,WGTCLG,WGTC3Q
10897
10898       COMMON/QCWEIT/
10899      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
10900      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
10901      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
10902      +WGTNS2(MXX*(MXX+1)/2,3:5),
10903      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
10904      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
10905      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
10906      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
10907      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
10908
10909       COMMON/QCWADR/ IWADR(MXX,MXX)
10910
10911  
10912       COMMON/QCPASS/
10913      +ALPHA0, Q0ALFA, ASLAST, QALAST,
10914      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
10915      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
10916      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
10917      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
10918      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
10919      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
10920      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
10921      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
10922      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
10923
10924       LOGICAL LEVDONE,LE_DONE
10925       COMMON/QCLEVL/
10926      +LEVDONE(MXX,10),LE_DONE(MXX)
10927  
10928
10929       VAL =  0.
10930       JER =  1
10931       IFL = -1
10932       IX = IXFROMX(X)
10933       IQ = IQFROMQ(Q)
10934  
10935       IF(IX.GT.0.AND.IQ.GT.0) THEN
10936         VAL = GET_F3(ID,IX,IQ,IERR)
10937         JER = MIN(JER,IERR)
10938       ELSEIF(IX.GT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10939         IQ   = -IQ
10940         VAL1 = GET_F3(ID,IX,IQ,IERR)
10941         JER  = MIN(JER,IERR)
10942         VAL2 = GET_F3(ID,IX,IQ+1,IERR)
10943         JER  = MIN(JER,IERR)
10944         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10945         VAL  = (1.-TQ)*VAL1 + TQ*VAL2
10946       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
10947         IX   = -IX
10948         VAL1 = GET_F3(ID,IX,IQ,IERR)
10949         JER  = MIN(JER,IERR)
10950         VAL2 = GET_F3(ID,IX+1,IQ,IERR)
10951         JER  = MIN(JER,IERR)
10952         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10953         VAL  = (1.-TX)*VAL1 + TX*VAL2
10954       ELSEIF(IX.LT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
10955         IX   = -IX
10956         IQ   = -IQ
10957         VAL1 = GET_F3(ID,IX,IQ,IERR)
10958         JER  = MIN(JER,IERR)
10959         VAL2 = GET_F3(ID,IX,IQ+1,IERR)
10960         JER  = MIN(JER,IERR)
10961         VAL3 = GET_F3(ID,IX+1,IQ,IERR)
10962         JER  = MIN(JER,IERR)
10963         VAL4 = GET_F3(ID,IX+1,IQ+1,IERR)
10964         JER  = MIN(JER,IERR)
10965         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
10966         VAL1 = (1.-TQ)*VAL1 + TQ*VAL2
10967         VAL2 = (1.-TQ)*VAL3 + TQ*VAL4
10968         TX   = (X-XXTAB(IX))/(XXTAB(IX+1)-XXTAB(IX))
10969         VAL  = (1.-TX)*VAL1 + TX*VAL2
10970       ELSE
10971         VAL  =  0.
10972         JER  = -1
10973       ENDIF
10974  
10975       IFL = JER                   
10976  
10977       RETURN
10978       END
10979  
10980 CDECK  ID>, GET_F3.
10981  
10982 C     ================================================
10983       DOUBLE PRECISION FUNCTION GET_F3(ID,IX0,IQ,IERR)
10984 C     ================================================
10985  
10986       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
10987
10988 C--   Input:  ID      parton distribution identifier
10989 C--           IX0     x gridpoint
10990 C--           Q       Q2 value    
10991 C--   Output: IERR =  0 F3 successfully calculated
10992 C--                =  1 Fast calculation
10993 C--                = -1 Scale mu outside grid 
10994  
10995  
10996       COMMON/QCCONS/
10997      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
10998      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
10999      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11000      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11001      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11002      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11003  
11004  
11005  
11006       LOGICAL
11007      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11008      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11009      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11010      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11011      +LFFCAL,LASOLD
11012
11013       COMMON/QCFLAG/ 
11014      +IORD,IOLAST,
11015      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11016      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11017      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11018      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11019      +LFFCAL(7,30),LASOLD
11020  
11021  
11022       CHARACTER*5 PNAM,STFNAM
11023       LOGICAL     LNFP
11024       COMMON /QCLNFP/ LNFP(0:30,3:5)
11025       COMMON /QCPNAM/ PNAM(0:30)
11026       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
11027       COMMON /QCFNAM/ STFNAM(7)
11028  
11029  
11030       PARAMETER ( MXX = 410 )
11031       PARAMETER ( MQ2 =  120 )
11032
11033 C--   Do not set the following parameter to zero!
11034       PARAMETER ( NDFMAX = 20)
11035
11036  
11037       COMMON/QCGRID/
11038      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
11039      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
11040      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
11041      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
11042  
11043  
11044       REAL
11045      +WGTFF1,WGTFG1,
11046      +WGTGF1,WGTGG1,
11047      +WGTPP2,WGTPM2,WGTNS2,
11048      +WGTFF2,WGTFG2,
11049      +WGTGF2,WGTGG2,
11050      +WGTC2Q,WGTC2G,YNTC2Q,
11051      +WGTCLQ,WGTCLG,WGTC3Q
11052
11053       COMMON/QCWEIT/
11054      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
11055      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
11056      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
11057      +WGTNS2(MXX*(MXX+1)/2,3:5),
11058      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
11059      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
11060      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
11061      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
11062      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
11063
11064       COMMON/QCWADR/ IWADR(MXX,MXX)
11065
11066  
11067       COMMON/QCPASS/
11068      +ALPHA0, Q0ALFA, ASLAST, QALAST,
11069      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
11070      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
11071      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
11072      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
11073      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
11074      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
11075      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
11076      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
11077      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
11078
11079       LOGICAL LEVDONE,LE_DONE
11080       COMMON/QCLEVL/
11081      +LEVDONE(MXX,10),LE_DONE(MXX)
11082  
11083  
11084       GET_F3 = 0.
11085
11086       IF(LFFCAL(3,ID)) THEN
11087         IERR = 1
11088         JD   = IDFAST(3,ID)
11089         GET_F3 = FSTORE(IX0,IQ,JD)
11090         IF(GET_F3.GE.-99.) RETURN
11091       ENDIF
11092
11093       IERR = 0
11094
11095       QMU = AAM2L*Q2TAB(IQ) + BBM2L 
11096       IMU = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
11097       IF(IMU.EQ.0) THEN
11098         IERR = -1
11099         RETURN
11100       ENDIF
11101
11102       TX   = 0.
11103       TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
11104       FFF0 = GET_PDFXQ(ID,IX0,IMU,TX,TQ)         
11105  
11106       IF(IORD.EQ.1) THEN
11107         GET_F3 = FFF0
11108         RETURN
11109       ENDIF
11110
11111       QR2 = QMU*AAAR2 + BBBR2
11112       IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
11113       IF(IR2.EQ.0) THEN
11114         IERR = -1
11115         RETURN
11116       ENDIF
11117       TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))
11118  
11119       F3   = 0.
11120       FACT = LOG(Q2TAB(IQ)/QMU)
11121       DO IX = IX0,NXX
11122         QU = GET_PDFXQ(ID,IX,IMU,TX,TQ)         
11123         F3 = F3 + 
11124      +      (WGTC3Q(IWADR(IX,IX0))+
11125      +       WGTFF1(IWADR(IX,IX0))*FACT)*QU
11126       ENDDO    
11127       GET_F3 = FFF0 + GET_AS(IR2,TR)*F3
11128
11129       RETURN
11130       END
11131  
11132 CDECK  ID>, GETFKH.
11133  
11134 C     =====================================
11135       SUBROUTINE GETFKH(IDF,ID,X,Q,VAL,IFL)
11136 C     =====================================
11137
11138 C---  Input : IDF = 4,5,6,7 for F2c,FLc,F2b,Flb
11139 C---          ID  = parton distribution identifier
11140 C---          X   = x value
11141 C---          Q   = Q2 value
11142
11143 C---  Output: VAL = heavy quark structure function
11144 C---          IFL =  0 : F2 sucessfully calculated
11145 C---                 1 : Fast calculation
11146 C---                -1 : Scale mu outside grid
11147  
11148       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11149  
11150  
11151       COMMON/QCCONS/
11152      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
11153      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
11154      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11155      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11156      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11157      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11158  
11159  
11160  
11161       LOGICAL
11162      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11163      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11164      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11165      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11166      +LFFCAL,LASOLD
11167
11168       COMMON/QCFLAG/ 
11169      +IORD,IOLAST,
11170      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11171      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11172      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11173      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11174      +LFFCAL(7,30),LASOLD
11175  
11176  
11177       CHARACTER*5 PNAM,STFNAM
11178       LOGICAL     LNFP
11179       COMMON /QCLNFP/ LNFP(0:30,3:5)
11180       COMMON /QCPNAM/ PNAM(0:30)
11181       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
11182       COMMON /QCFNAM/ STFNAM(7)
11183  
11184  
11185       PARAMETER ( MXX = 410 )
11186       PARAMETER ( MQ2 =  120 )
11187
11188 C--   Do not set the following parameter to zero!
11189       PARAMETER ( NDFMAX = 20)
11190
11191  
11192       COMMON/QCGRID/
11193      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
11194      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
11195      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
11196      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
11197  
11198  
11199       REAL
11200      +WGTFF1,WGTFG1,
11201      +WGTGF1,WGTGG1,
11202      +WGTPP2,WGTPM2,WGTNS2,
11203      +WGTFF2,WGTFG2,
11204      +WGTGF2,WGTGG2,
11205      +WGTC2Q,WGTC2G,YNTC2Q,
11206      +WGTCLQ,WGTCLG,WGTC3Q
11207
11208       COMMON/QCWEIT/
11209      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
11210      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
11211      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
11212      +WGTNS2(MXX*(MXX+1)/2,3:5),
11213      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
11214      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
11215      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
11216      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
11217      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
11218
11219       COMMON/QCWADR/ IWADR(MXX,MXX)
11220
11221  
11222       COMMON/QCPASS/
11223      +ALPHA0, Q0ALFA, ASLAST, QALAST,
11224      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
11225      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
11226      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
11227      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
11228      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
11229      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
11230      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
11231      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
11232      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
11233
11234       LOGICAL LEVDONE,LE_DONE
11235       COMMON/QCLEVL/
11236      +LEVDONE(MXX,10),LE_DONE(MXX)
11237  
11238
11239       VAL =  0.
11240       IFL = -1
11241
11242       JER = 1
11243       IX  = IHFROMH(X)
11244       IQ  = IQFROMQ(Q)
11245  
11246       IF(IX.GT.0.AND.IQ.GT.0) THEN
11247         VAL = GET_FKH(IDF,ID,IX,IQ,IERR)
11248         JER = MIN(JER,IERR)
11249       ELSEIF(IX.GT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
11250         IQ   = -IQ
11251         VAL1 = GET_FKH(IDF,ID,IX,IQ,IERR)
11252         JER  = MIN(JER,IERR)
11253         VAL2 = GET_FKH(IDF,ID,IX,IQ+1,IERR)
11254         JER  = MIN(JER,IERR)
11255         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
11256         VAL  = (1.-TQ)*VAL1 + TQ*VAL2
11257       ELSEIF(IX.LT.0.AND.IQ.GT.0) THEN
11258         IX   = -IX
11259         VAL1 = GET_FKH(IDF,ID,IX,IQ,IERR)
11260         JER  = MIN(JER,IERR)
11261         VAL2 = GET_FKH(IDF,ID,IX+1,IQ,IERR)
11262         JER  = MIN(JER,IERR)
11263         TX   = (X-XHTAB(IX))/(XHTAB(IX+1)-XHTAB(IX))
11264         VAL  = (1.-TX)*VAL1 + TX*VAL2
11265       ELSEIF(IX.LT.0.AND.IQ.LT.0.AND.IQ.NE.-NQ2) THEN
11266         IX   = -IX
11267         IQ   = -IQ
11268         VAL1 = GET_FKH(IDF,ID,IX,IQ,IERR)
11269         JER  = MIN(JER,IERR)
11270         VAL2 = GET_FKH(IDF,ID,IX,IQ+1,IERR)
11271         JER  = MIN(JER,IERR)
11272         VAL3 = GET_FKH(IDF,ID,IX+1,IQ,IERR)
11273         JER  = MIN(JER,IERR)
11274         VAL4 = GET_FKH(IDF,ID,IX+1,IQ+1,IERR)
11275         JER  = MIN(JER,IERR)
11276         TQ   = LOG(Q/Q2TAB(IQ))/LOG(Q2TAB(IQ+1)/Q2TAB(IQ))
11277         VAL1 = (1.-TQ)*VAL1 + TQ*VAL2
11278         VAL2 = (1.-TQ)*VAL3 + TQ*VAL4
11279         TX   = (X-XHTAB(IX))/(XHTAB(IX+1)-XHTAB(IX))
11280         VAL  = (1.-TX)*VAL1 + TX*VAL2
11281       ELSE
11282         VAL  =  0.
11283         JER  = -1
11284       ENDIF
11285  
11286       IFL = JER                  
11287
11288  
11289       RETURN
11290       END
11291  
11292 CDECK  ID>, FILLWF.
11293  
11294 C     ====================================
11295       SUBROUTINE FILLWF(IO1,IO2,IF2,NFLAV)
11296 C     ====================================
11297  
11298       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11299  
11300       COMMON/QCCONS/
11301      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
11302      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
11303      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11304      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11305      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11306      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11307  
11308  
11309  
11310       LOGICAL
11311      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11312      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11313      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11314      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11315      +LFFCAL,LASOLD
11316
11317       COMMON/QCFLAG/ 
11318      +IORD,IOLAST,
11319      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
11320      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
11321      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
11322      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
11323      +LFFCAL(7,30),LASOLD
11324  
11325  
11326       PARAMETER ( MXX = 410 )
11327       PARAMETER ( MQ2 =  120 )
11328
11329 C--   Do not set the following parameter to zero!
11330       PARAMETER ( NDFMAX = 20)
11331
11332  
11333       COMMON/QCGRID/
11334      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
11335      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
11336      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
11337      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
11338  
11339  
11340       REAL
11341      +WGTFF1,WGTFG1,
11342      +WGTGF1,WGTGG1,
11343      +WGTPP2,WGTPM2,WGTNS2,
11344      +WGTFF2,WGTFG2,
11345      +WGTGF2,WGTGG2,
11346      +WGTC2Q,WGTC2G,YNTC2Q,
11347      +WGTCLQ,WGTCLG,WGTC3Q
11348
11349       COMMON/QCWEIT/
11350      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
11351      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
11352      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
11353      +WGTNS2(MXX*(MXX+1)/2,3:5),
11354      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
11355      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
11356      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
11357      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
11358      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
11359
11360       COMMON/QCWADR/ IWADR(MXX,MXX)
11361
11362  
11363       EXTERNAL C2Q, C2QX0, C2G, CLQ, CLG, D3Q
11364       EXTERNAL PQGLO, PGQLO, PQQLO, PQQX0, PGGLO, PGGX0
11365       EXTERNAL PP1SFUN, PP1SX0, PM1SFUN, PM1SX0
11366       EXTERNAL FF1SFUN, FF1SX0, GF1SFUN, XP1TFUN
11367       EXTERNAL GG1SFUN, GG1SX0, FG1SFUN, XG1TFUN
11368  
11369       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
11370  
11371       EGAUSS = 0.0001
11372       NF     = NFLAV
11373  
11374       CWFGG  = 6.*(11./12.-NF/18.) - 6.
11375  
11376       DO 90 IX0 = 1,NXX
11377  
11378         X0 = XXTAB(IX0)
11379  
11380         YNTC2Q(IX0) = DGAUSS_LHA(C2Q,0.D0,X0,EGAUSS)
11381  
11382         SI = X0/XXTAB(IX0)
11383         SP = X0/XXTAB(IX0+1)
11384  
11385         IF(IO1.NE.0) THEN
11386           CALL S1FUNC(PQGLO  ,SP,SI,S1PQG)
11387           WGTFG1(IWADR(IX0,IX0),NF) =   S1PQG
11388           CALL S1FUNC(PGQLO  ,SP,SI,S1PGQ)
11389           WGTGF1(IWADR(IX0,IX0)) =   S1PGQ
11390           CALL S1FUNC(PQQX0  ,SP,SI,S1PQQ)
11391           WGTFF1(IWADR(IX0,IX0)) =   S1PQQ+2.+(8./3.)*LOG(1.-SP)
11392           CALL S1FUNC(PGGX0  ,SP,SI,S1PGG)
11393           WGTGG1(IWADR(IX0,IX0),NF) =   S1PGG+6.*LOG(1.-SP)+CWFGG
11394         ENDIF
11395  
11396         IF(IO2.NE.0) THEN
11397           TERM1 = DGAUSS_LHA(PM1SFUN,0.D0,SP,EGAUSS)
11398           TERM2 = DGAUSS_LHA(XP1TFUN,0.D0,SP,EGAUSS)
11399           TERM3 = DGAUSS_LHA(XG1TFUN,0.D0,SP,EGAUSS)
11400           CALL S1FUNC(PP1SX0 ,SP,SI,S1NS2)
11401           WGTPP2(IWADR(IX0,IX0),NF) =   S1NS2 - TERM1
11402           WGTNS2(IWADR(IX0,IX0),NF) =   S1NS2 - TERM1
11403           LPLUS                     =   .TRUE.
11404           CALL S1FUNC(PM1SX0 ,SP,SI,S1F32)
11405           WGTPM2(IWADR(IX0,IX0),NF) =   S1F32 - TERM1
11406           CALL S1FUNC(FF1SX0 ,SP,SI,S1FF2)
11407           WGTFF2(IWADR(IX0,IX0),NF) =   S1FF2 - TERM2
11408           CALL S1FUNC(GF1SFUN,SP,SI,S1FG2)
11409           WGTFG2(IWADR(IX0,IX0),NF) =   S1FG2
11410           CALL S1FUNC(GG1SX0 ,SP,SI,S1GG2)
11411           WGTGG2(IWADR(IX0,IX0),NF) =   S1GG2 - TERM3
11412           CALL S1FUNC(FG1SFUN,SP,SI,S1GF2)
11413           WGTGF2(IWADR(IX0,IX0),NF) =   S1GF2
11414         ENDIF
11415  
11416         IF(IF2.NE.0) THEN
11417           TERM = DGAUSS_LHA(C2Q,0.D0,SP,EGAUSS)
11418           CALL S1FUNC(C2QX0  ,SP,SI,S1C2Q)
11419           WGTC2Q(IWADR(IX0,IX0))    =   S1C2Q - TERM
11420           CALL S1FUNC(C2G    ,SP,SI,S1C2G)
11421           WGTC2G(IWADR(IX0,IX0),NF) =   S1C2G
11422           CALL S1FUNC(CLQ    ,SP,SI,S1CLQ)
11423           WGTCLQ(IWADR(IX0,IX0))    =   S1CLQ
11424           CALL S1FUNC(CLG    ,SP,SI,S1CLG)
11425           WGTCLG(IWADR(IX0,IX0),NF) =   S1CLG
11426           CALL S1FUNC(D3Q    ,SP,SI,S1D3Q)
11427           WGTC3Q(IWADR(IX0,IX0))    =   S1C2Q - TERM - S1D3Q
11428         ENDIF
11429  
11430         DO 80 IX = IX0+1,NXX
11431  
11432           SI = X0/XXTAB(IX)
11433           SP = X0/XXTAB(IX+1)
11434           SM = X0/XXTAB(IX-1)
11435  
11436           IF(IO1.NE.0) THEN
11437             CALL S1FUNC(PQGLO  ,SP,SI,S1PQG)
11438             CALL S2FUNC(PQGLO  ,SI,SM,S2PQG)
11439             WGTFG1(IWADR(IX,IX0),NF) =   (S1PQG-S2PQG)
11440             CALL S1FUNC(PGQLO  ,SP,SI,S1PGQ)
11441             CALL S2FUNC(PGQLO  ,SI,SM,S2PGQ)
11442             WGTGF1(IWADR(IX,IX0)) =    S1PGQ-S2PGQ
11443             CALL S1FUNC(PQQLO  ,SP,SI,S1PQQ)
11444             CALL S2FUNC(PQQLO  ,SI,SM,S2PQQ)
11445             WGTFF1(IWADR(IX,IX0)) =    S1PQQ-S2PQQ
11446             CALL S1FUNC(PGGLO  ,SP,SI,S1PGG)
11447             CALL S2FUNC(PGGLO  ,SI,SM,S2PGG)
11448             WGTGG1(IWADR(IX,IX0),NF) =    S1PGG-S2PGG
11449           ENDIF
11450  
11451           IF(IO2.NE.0) THEN
11452             CALL S1FUNC(PP1SFUN,SP,SI,S1NS2)
11453             CALL S2FUNC(PP1SFUN,SI,SM,S2NS2)
11454             WGTPP2(IWADR(IX,IX0),NF) =    S1NS2-S2NS2
11455             WGTNS2(IWADR(IX,IX0),NF) =    S1NS2-S2NS2
11456             CALL S1FUNC(PM1SFUN,SP,SI,S1F32)
11457             CALL S2FUNC(PM1SFUN,SI,SM,S2F32)
11458             WGTPM2(IWADR(IX,IX0),NF) =    S1F32-S2F32
11459             CALL S1FUNC(FF1SFUN,SP,SI,S1FF2)
11460             CALL S2FUNC(FF1SFUN,SI,SM,S2FF2)
11461             WGTFF2(IWADR(IX,IX0),NF) =    S1FF2-S2FF2
11462             CALL S1FUNC(GF1SFUN,SP,SI,S1FG2)
11463             CALL S2FUNC(GF1SFUN,SI,SM,S2FG2)
11464             WGTFG2(IWADR(IX,IX0),NF) =    S1FG2-S2FG2
11465             CALL S1FUNC(GG1SFUN,SP,SI,S1GG2)
11466             CALL S2FUNC(GG1SFUN,SI,SM,S2GG2)
11467             WGTGG2(IWADR(IX,IX0),NF) =    S1GG2-S2GG2
11468             CALL S1FUNC(FG1SFUN,SP,SI,S1GF2)
11469             CALL S2FUNC(FG1SFUN,SI,SM,S2GF2)
11470             WGTGF2(IWADR(IX,IX0),NF) =    S1GF2-S2GF2
11471           ENDIF
11472  
11473           IF(IF2.NE.0) THEN
11474             CALL S1FUNC(C2Q    ,SP,SI,S1C2Q)
11475             CALL S2FUNC(C2Q    ,SI,SM,S2C2Q)
11476             WGTC2Q(IWADR(IX,IX0))    =    S1C2Q-S2C2Q
11477             CALL S1FUNC(C2G    ,SP,SI,S1C2G)
11478             CALL S2FUNC(C2G    ,SI,SM,S2C2G)
11479             WGTC2G(IWADR(IX,IX0),NF) =    S1C2G-S2C2G
11480             CALL S1FUNC(CLQ    ,SP,SI,S1CLQ)
11481             CALL S2FUNC(CLQ    ,SI,SM,S2CLQ)
11482             WGTCLQ(IWADR(IX,IX0))    =    S1CLQ-S2CLQ
11483             CALL S1FUNC(CLG    ,SP,SI,S1CLG)
11484             CALL S2FUNC(CLG    ,SI,SM,S2CLG)
11485             WGTCLG(IWADR(IX,IX0),NF) =    S1CLG-S2CLG
11486             CALL S1FUNC(D3Q    ,SP,SI,S1D3Q)
11487             CALL S2FUNC(D3Q    ,SI,SM,S2D3Q)
11488             WGTC3Q(IWADR(IX,IX0)) = S1C2Q-S2C2Q-S1D3Q+S2D3Q
11489           ENDIF
11490  
11491   80    CONTINUE
11492  
11493   90  CONTINUE
11494  
11495       YWGT = 0.
11496  
11497       RETURN
11498       END
11499  
11500 CDECK  ID>, IWTADR.
11501
11502       INTEGER FUNCTION IWTADR(I,J,K)
11503
11504 C---  Upper diagonal storage: I .ge. J (!)
11505
11506  
11507       PARAMETER ( MXX = 410 )
11508       PARAMETER ( MQ2 =  120 )
11509
11510 C--   Do not set the following parameter to zero!
11511       PARAMETER ( NDFMAX = 20)
11512
11513
11514       IWTADR = 1 + (J-1)*(MXX+1) -
11515      +         (J*(J-1))/2 + (I-J) + (K-1)*(MXX*(MXX+1))/2
11516
11517       RETURN
11518       END
11519  
11520 CDECK  ID>, IWTAD.
11521
11522       INTEGER FUNCTION IWTAD(I,J)
11523
11524 C---  Upper diagonal storage: I .ge. J (!)
11525
11526  
11527       PARAMETER ( MXX = 410 )
11528       PARAMETER ( MQ2 =  120 )
11529
11530 C--   Do not set the following parameter to zero!
11531       PARAMETER ( NDFMAX = 20)
11532
11533
11534       IWTAD = 1 + (J-1)*(MXX+1) - (J*(J-1))/2 + (I-J)
11535
11536       RETURN
11537       END
11538
11539 CDECK  ID>, S1FUNC.
11540  
11541 C     ================================
11542       SUBROUTINE S1FUNC(FUN,U,V,S1FUN)
11543 C     ================================
11544  
11545       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11546  
11547       EXTERNAL FUN
11548  
11549       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
11550  
11551       YWGT  = U
11552       S1FUN = DGAUSS_LHA(FUN,U,V,EGAUSS)*V/(V-U)
11553  
11554       YWGT = 0.
11555  
11556       RETURN
11557       END
11558  
11559 CDECK  ID>, S2FUNC.
11560  
11561 C     ================================
11562       SUBROUTINE S2FUNC(FUN,U,V,S2FUN)
11563 C     ================================
11564  
11565       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11566  
11567       EXTERNAL FUN
11568  
11569       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
11570  
11571       YWGT  = V
11572       S2FUN = DGAUSS_LHA(FUN,U,V,EGAUSS)*U/(V-U)
11573  
11574       YWGT = 0.
11575  
11576       RETURN
11577       END
11578  
11579 CDECK  ID>, FILLO1.
11580  
11581 C     =====================
11582       SUBROUTINE FILLO1(NF)
11583 C     =====================
11584  
11585       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11586  
11587 C-----          | F |     | WGTFF WGTFG |  | F |
11588 C-----  d/dLnQ2 |   |  =  |             |  |   |
11589 C-----          | G |     | WGTGF WGTGG |  | G |
11590  
11591  
11592       COMMON/QCCONS/
11593      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
11594      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
11595      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11596      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11597      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11598      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11599  
11600  
11601  
11602       PARAMETER ( MXX = 410 )
11603       PARAMETER ( MQ2 =  120 )
11604
11605 C--   Do not set the following parameter to zero!
11606       PARAMETER ( NDFMAX = 20)
11607
11608  
11609       COMMON/QCGRID/
11610      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
11611      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
11612      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
11613      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
11614  
11615  
11616       REAL
11617      +WGTFF1,WGTFG1,
11618      +WGTGF1,WGTGG1,
11619      +WGTPP2,WGTPM2,WGTNS2,
11620      +WGTFF2,WGTFG2,
11621      +WGTGF2,WGTGG2,
11622      +WGTC2Q,WGTC2G,YNTC2Q,
11623      +WGTCLQ,WGTCLG,WGTC3Q
11624
11625       COMMON/QCWEIT/
11626      +WGTFF1(MXX*(MXX+1)/2)    ,WGTFG1(MXX*(MXX+1)/2,3:5),
11627      +WGTGF1(MXX*(MXX+1)/2)    ,WGTGG1(MXX*(MXX+1)/2,3:5),
11628      +WGTPP2(MXX*(MXX+1)/2,3:5),WGTPM2(MXX*(MXX+1)/2,3:5),
11629      +WGTNS2(MXX*(MXX+1)/2,3:5),
11630      +WGTFF2(MXX*(MXX+1)/2,3:5),WGTFG2(MXX*(MXX+1)/2,3:5),
11631      +WGTGF2(MXX*(MXX+1)/2,3:5),WGTGG2(MXX*(MXX+1)/2,3:5),
11632      +WGTC2Q(MXX*(MXX+1)/2)    ,WGTC2G(MXX*(MXX+1)/2,3:5),
11633      +WGTCLQ(MXX*(MXX+1)/2)    ,WGTCLG(MXX*(MXX+1)/2,3:5),
11634      +WGTC3Q(MXX*(MXX+1)/2)    ,YNTC2Q(MXX)
11635
11636       COMMON/QCWADR/ IWADR(MXX,MXX)
11637
11638  
11639       DO 100 IX0=1,NXX
11640       X0  = XXTAB(IX0)
11641  
11642       DO 100 IXI=IX0,NXX
11643       SI  = X0 / XXTAB(IXI)
11644       SP  = X0 / XXTAB(IXI+1)
11645       IF(IXI.EQ.IX0) THEN
11646          SSP = LOG(SP) / (1.-SP)
11647          WPQQV = SP + 4.*LOG(1.-SP)+ 2.*SP*SSP
11648          WPQGV = 3. - (1.-SP)**2   + 3.*SP*SSP
11649          WPGQV = - 7. - SP    - 4.*(1.+SP)*SSP
11650          WPGGV = - 12.5 - NF/3. + 6.*LOG(1.-SP) + (1.-SP)**2
11651      +                        - 6.*(1.+SP)*SSP
11652       ELSEIF(IXI.EQ.IX0+1) THEN
11653          SSI = LOG(SI) / (1.-SI)
11654          WPQQV =  SP-1.              +   SQQ(SI,SP)            - 2.*SSI
11655          WPQGV = (SP-1.)*(2.-SI-SP) - 3.*SP*LOG(SP/SI)/(SP-SI) - 3.*SSI
11656          WPGQV =  1.-SP        + 4.*(SP+1.)*LOG(SP/SI)/(SP-SI) + 8.*SSI
11657          WPGGV = (1.-SP)*(2.-SI-SP) + 6.*SGG(SI,SP)           + 12.*SSI
11658       ELSE
11659          SM  = X0 / XXTAB(IXI-1)
11660          WPQQV =  SP-SM                     + SQQ(SI,SP) - SQQ(SI,SM)
11661          WPQGV = (SP-SM)*(3.-SM-SI-SP) - 3.*SP*LOG(SP/SI)/(SP-SI)
11662      +                                 + 3.*SM*LOG(SM/SI)/(SM-SI)
11663          WPGQV =  SM-SP           + 4.*(SP+1.)*LOG(SP/SI)/(SP-SI)
11664      +                            - 4.*(SM+1.)*LOG(SM/SI)/(SM-SI)
11665          WPGGV = (SM-SP)*(3.-SM-SI-SP) + 6.*( SGG(SI,SP) - SGG(SI,SM) )
11666       ENDIF
11667  
11668       WGTFF1(IWADR(IXI,IX0))    =      2./3.    * SI * WPQQV
11669  
11670       WGTFG1(IWADR(IXI,IX0),NF) =      1./6.    * SI * WPQGV * 2.*NF
11671  
11672       WGTGF1(IWADR(IXI,IX0))    =      2./3.    * SI * WPGQV
11673  
11674       WGTGG1(IWADR(IXI,IX0),NF) =                 SI * WPGGV
11675  
11676 100   CONTINUE
11677  
11678       RETURN
11679       END
11680
11681 CDECK  ID>, SQQ.
11682  
11683 C     ==================================
11684       DOUBLE PRECISION FUNCTION SQQ(X,Y)
11685 C     ==================================
11686       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11687  
11688       SQQ = 2./(Y-X) * ( 2.*(Y-1.)*LOG((1.-Y)/(1.-X)) - Y*LOG(Y/X) )
11689  
11690       RETURN
11691       END
11692
11693 CDECK  ID>, SGG.
11694  
11695 C     ==================================
11696       DOUBLE PRECISION FUNCTION SGG(X,Y)
11697 C     ==================================
11698       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11699  
11700       SGG = ( (1.+Y)*LOG(Y/X) - (1.-Y)*LOG((1.-Y)/(1.-X)) ) / (Y-X)
11701  
11702       RETURN
11703       END
11704  
11705 CDECK  ID>, QNSPLF.
11706  
11707 C     ===============================================
11708       DOUBLE PRECISION FUNCTION QNSPLF(OPT,X,Q,NFLAV)
11709 C     ===============================================
11710       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11711
11712       CHARACTER*(*) OPT
11713       CHARACTER*10  OPT1
11714  
11715       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11716
11717       DATA OPT1 /'          '/
11718  
11719       YWGT   = 0.
11720       NF     = NFLAV
11721       QNSPLF = 0.
11722       QPCG   = Q
11723       CALL QNRGET('CMASS',QMASS)
11724  
11725       LEN  = LENOCC_LHA(OPT)
11726       IF(LEN.GT.10 .OR. LEN.LE.0) GOTO 550
11727 C--   Avoid changing input parameter
11728       OPT1(1:LEN) = OPT(1:LEN)
11729       CALL CLTOU_LHA(OPT1)
11730
11731       IF    (LEN.GE.4.AND.OPT1(1:4).EQ.'PFF1') THEN
11732         IF(X.GE.1..OR.X.LT.0.)      RETURN
11733         QNSPLF = PQQLO(X)
11734       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PFG1') THEN
11735         IF(NF.LE.0) GOTO 500
11736         IF(X.GT.1..OR.X.LT.0.)      RETURN
11737         QNSPLF = PQGLO(X)
11738       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PGF1') THEN
11739         IF(X.GT.1..OR.X.LT.0.)      RETURN
11740         QNSPLF = PGQLO(X)
11741       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PGG1') THEN
11742         IF(X.GE.1..OR.X.LT.0.)      RETURN
11743         QNSPLF = PGGLO(X)
11744       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PPL2') THEN
11745         IF(NF.LE.0) GOTO 500
11746         IF(X.GE.1..OR.X.LT.0.)      RETURN
11747         QNSPLF = PP1SFUN(X)
11748       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PMI2') THEN
11749         IF(NF.LE.0) GOTO 500
11750         IF(X.GE.1..OR.X.LT.0.)      RETURN
11751         QNSPLF = PM1SFUN(X)
11752       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PFF2') THEN
11753         IF(NF.LE.0) GOTO 500
11754         IF(X.GE.1..OR.X.LT.0.)      RETURN
11755         QNSPLF = FF1SFUN(X)
11756       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PFG2') THEN
11757         IF(NF.LE.0) GOTO 500
11758         IF(X.GE.1..OR.X.LT.0.)      RETURN
11759         QNSPLF = FG1SFUN(X)
11760       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PGF2') THEN
11761         IF(NF.LE.0) GOTO 500
11762         IF(X.GE.1..OR.X.LT.0.)      RETURN
11763         QNSPLF = GF1SFUN(X)
11764       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'PGG2') THEN
11765         IF(NF.LE.0) GOTO 500
11766         IF(X.GE.1..OR.X.LT.0.)      RETURN
11767         QNSPLF = GG1SFUN(X)
11768       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'C1Q')  THEN
11769         IF(X.GE.1..OR.X.LT.0.)      RETURN
11770         QNSPLF = C2Q(X)-CLQ(X)
11771       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'C1G')  THEN
11772         IF(NF.LE.0) GOTO 500
11773         IF(X.GE.1..OR.X.LT.0.)      RETURN
11774         QNSPLF = C2G(X)-CLG(X)
11775       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'C2Q')  THEN
11776         IF(X.GE.1..OR.X.LT.0.)      RETURN
11777         QNSPLF = C2Q(X)
11778       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'C2G')  THEN
11779         IF(NF.LE.0) GOTO 500
11780         IF(X.GE.1..OR.X.LT.0.)      RETURN
11781         QNSPLF = C2G(X)
11782       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'CLQ')  THEN
11783         IF(X.GE.1..OR.X.LT.0.)      RETURN
11784         QNSPLF = CLQ(X)
11785       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'CLG')  THEN
11786         IF(NF.LE.0) GOTO 500
11787         IF(X.GE.1..OR.X.LT.0.)      RETURN
11788         QNSPLF = CLG(X)
11789       ELSEIF(LEN.GE.3.AND.OPT1(1:3).EQ.'C3Q')  THEN
11790         IF(X.GE.1..OR.X.LT.0.)      RETURN
11791         QNSPLF = C2Q(X)-D3Q(X)
11792       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'C02G')  THEN
11793         IF(X.GE.1..OR.X.LT.0.)      RETURN
11794         QNSPLF = X*C02G_FUN(X)
11795       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'C12G')  THEN
11796         IF(X.GE.1..OR.X.LT.0.)      RETURN
11797         QNSPLF = X*C12G_FUN(X)
11798       ELSEIF(LEN.GE.5.AND.OPT1(1:5).EQ.'C1B2G')  THEN
11799         IF(X.GE.1..OR.X.LT.0.)      RETURN
11800         QNSPLF = X*C1B2G_FUN(X)
11801       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'C12Q')  THEN
11802         IF(X.GE.1..OR.X.LT.0.)      RETURN
11803         QNSPLF = X*C12Q_FUN(X)
11804       ELSEIF(LEN.GE.5.AND.OPT1(1:5).EQ.'C1B2Q')  THEN
11805         IF(X.GE.1..OR.X.LT.0.)      RETURN
11806         QNSPLF = X*C1B2Q_FUN(X)
11807       ELSEIF(LEN.GE.4.AND.OPT1(1:4).EQ.'D12Q')  THEN
11808         IF(X.GE.1..OR.X.LT.0.)      RETURN
11809         QNSPLF = X*D12Q_FUN(X)
11810       ELSEIF(LEN.GE.5.AND.OPT1(1:5).EQ.'D1B2Q')  THEN
11811         IF(X.GE.1..OR.X.LT.0.)      RETURN
11812         QNSPLF = X*D1B2Q_FUN(X)
11813       ELSE
11814         GOTO 550
11815       ENDIF
11816  
11817       RETURN
11818
11819  500  CONTINUE
11820       WRITE(6,'('' QNSPLF: NF not allowed'',I10, 
11821      +          '' ---> STOP'')') NF
11822       STOP
11823
11824  550  CONTINUE
11825       WRITE(6,'('' QNSPLF: undefined option '',A,
11826      +          '' ---> STOP'')') OPT
11827       STOP
11828
11829       END
11830  
11831 CDECK  ID>, PQGLO.
11832  
11833 C     ==================================
11834       DOUBLE PRECISION FUNCTION PQGLO(X)
11835 C     ==================================
11836       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11837  
11838  
11839       COMMON/QCCONS/
11840      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
11841      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
11842      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11843      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11844      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11845      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11846  
11847  
11848  
11849       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11850  
11851       PQG   = NF * ( X*X + (1.-X)*(1.-X) )
11852  
11853       PQGLO = (X-YWGT)*PQG/X
11854  
11855       RETURN
11856       END
11857  
11858 CDECK  ID>, PGQLO.
11859  
11860 C     ==================================
11861       DOUBLE PRECISION FUNCTION PGQLO(X)
11862 C     ==================================
11863       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11864  
11865       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11866  
11867       PGQ   = 4. * ( 1. + (1.-X)*(1.-X) ) / ( 3.*X )
11868  
11869       PGQLO = (X-YWGT)*PGQ/X
11870  
11871       RETURN
11872       END
11873
11874 CDECK  ID>, PQQLO.
11875 C
11876 C     ==================================
11877       DOUBLE PRECISION FUNCTION PQQLO(X)
11878 C     ==================================
11879       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11880 C
11881       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11882 C
11883       PQQ   = (4./3.) * ( 1. + X*X ) / (1.-X)
11884 C
11885       PQQLO = (X-YWGT)*PQQ/X
11886 C
11887       RETURN
11888       END
11889
11890 CDECK  ID>, PQQX0.
11891 C
11892 C     ==================================
11893       DOUBLE PRECISION FUNCTION PQQX0(X)
11894 C     ==================================
11895       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11896 C
11897       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11898 C
11899       PQQX0 = (4./3.) * ( (X-YWGT)*(1.+X*X)/X - 2.*(1.-YWGT) ) / (1.-X)
11900 C
11901       RETURN
11902       END
11903
11904 CDECK  ID>, PGGLO.
11905 C
11906 C     ==================================
11907       DOUBLE PRECISION FUNCTION PGGLO(X)
11908 C     ==================================
11909       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11910 C
11911       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11912 C
11913       PGG   = 6. * ( X/(1.-X) + (1.-X)/X + X*(1.-X) )
11914 C
11915       PGGLO = (X-YWGT)*PGG/X
11916 C
11917       RETURN
11918       END
11919
11920 CDECK  ID>, PGGX0.
11921 C
11922 C     ==================================
11923       DOUBLE PRECISION FUNCTION PGGX0(X)
11924 C     ==================================
11925       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11926 C
11927       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11928 C
11929       PGGX0 = 6. * (X-YWGT) * ( (1.-X)/(X*X) + 1. - X )
11930 C
11931       RETURN
11932       END
11933
11934 CDECK  ID>, PP1SFUN.
11935 C
11936 C     ====================================
11937       DOUBLE PRECISION FUNCTION PP1SFUN(X)
11938 C     ====================================
11939       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11940 C
11941  
11942       COMMON/QCCONS/
11943      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
11944      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
11945      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
11946      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
11947      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
11948      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
11949  
11950  
11951 C
11952       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11953 C
11954       CX2    = X**2
11955       C1PX   = 1.+X
11956       C1MX   = 1.-X
11957       CLX    = LOG(X)
11958       CLX2   = CLX**2
11959       CL1MX  = LOG(C1MX)
11960       CL1PX  = LOG(C1PX)
11961       CPFFX  = (1.+CX2) / C1MX
11962       CPFFMX = (1.+CX2) / C1PX
11963       CS3X   = -DDILOG_LHA(-X)
11964       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
11965 C
11966       AAA = - CPFFX*2.*CLX*CL1MX - (2.*X+3./C1MX)*CLX - .5*C1PX*CLX2
11967      +      - 5.*C1MX
11968       BBB =   CPFFX*(.5*CLX2+C11S6*CLX+CPIA) + C1PX*CLX + C20S3*C1MX
11969       CCC = - CPFFX*C2S3*(C5S3+CLX) - C4S3*C1MX
11970 C
11971       PQQ  = C16S9*AAA + 4.*BBB + C2S3*NF*CCC
11972       PQQB = - C4S9 * ( CPFFMX*CS2X + C1PX*CLX + 2.*C1MX )
11973 C
11974       PP1S    = PQQ + PQQB
11975       PP1SFUN = (X-YWGT)*PP1S/X
11976 C
11977       RETURN
11978       END
11979
11980 CDECK  ID>, PP1SX0.
11981 C
11982 C     ===================================
11983       DOUBLE PRECISION FUNCTION PP1SX0(X)
11984 C     ===================================
11985       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
11986 C
11987       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
11988 C
11989       YREM   = YWGT
11990       YWGT   = 0.
11991       PPLUS  = PP1SFUN(X)
11992       PMINU  = PM1SFUN(X)
11993       YWGT   = YREM
11994       PP1SX0 = (X-YWGT)*PPLUS/X - (1.-YWGT)*PMINU
11995 C
11996       RETURN
11997       END
11998
11999 CDECK  ID>, PM1SFUN.
12000 C
12001 C     ====================================
12002       DOUBLE PRECISION FUNCTION PM1SFUN(X)
12003 C     ====================================
12004       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12005 C
12006  
12007       COMMON/QCCONS/
12008      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12009      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12010      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12011      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12012      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12013      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12014  
12015  
12016 C
12017       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12018 C
12019       CX2    = X**2
12020       C1PX   = 1.+X
12021       C1MX   = 1.-X
12022       CLX    = LOG(X)
12023       CLX2   = CLX**2
12024       CL1MX  = LOG(C1MX)
12025       CL1PX  = LOG(C1PX)
12026       CPFFX  = (1.+CX2) / C1MX
12027       CPFFMX = (1.+CX2) / C1PX
12028       CS3X   = -DDILOG_LHA(-X)
12029       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12030 C
12031       AAA = - CPFFX*2.*CLX*CL1MX - (2.*X+3./C1MX)*CLX - .5*C1PX*CLX2
12032      +      - 5.*C1MX
12033       BBB =   CPFFX*(.5*CLX2+C11S6*CLX+CPIA) + C1PX*CLX + C20S3*C1MX
12034       CCC = - CPFFX*C2S3*(C5S3+CLX) - C4S3*C1MX
12035 C
12036       PQQ  = C16S9*AAA + 4.*BBB + C2S3*NF*CCC
12037       PQQB = - C4S9 * ( CPFFMX*CS2X + C1PX*CLX + 2.*C1MX )
12038 C
12039       PM1S    = PQQ - PQQB
12040       PM1SFUN = (X-YWGT)*PM1S/X
12041 C
12042       RETURN
12043       END
12044
12045 CDECK  ID>, PM1SX0.
12046 C
12047 C     ===================================
12048       DOUBLE PRECISION FUNCTION PM1SX0(X)
12049 C     ===================================
12050       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12051 C
12052       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12053 C
12054       YREM   = YWGT
12055       YWGT   = 0.
12056       PMINU  = PM1SFUN(X)
12057       YWGT   = YREM
12058       PM1SX0 = (X-YWGT)*PMINU/X - (1.-YWGT)*PMINU
12059 C
12060       RETURN
12061       END
12062
12063 CDECK  ID>, FF1SFUN.
12064 C
12065 C     ====================================
12066       DOUBLE PRECISION FUNCTION FF1SFUN(X)
12067 C     ====================================
12068       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12069 C
12070  
12071       COMMON/QCCONS/
12072      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12073      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12074      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12075      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12076      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12077      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12078  
12079  
12080 C
12081       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12082 C
12083       CX2    = X**2
12084       C1PX   = 1.+X
12085       C1MX   = 1.-X
12086       CLX    = LOG(X)
12087       CLX2   = CLX**2
12088       CL1MX  = LOG(C1MX)
12089       CL1PX  = LOG(C1PX)
12090       CPFFX  = (1.+CX2) / C1MX
12091       CPFFMX = (1.+CX2) / C1PX
12092       CS3X   = -DDILOG_LHA(-X)
12093       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12094 C
12095       AAA = - CPFFX*CLX*(1.5+2.*CL1MX) + 2.*CPFFMX*CS2X
12096      +      - 1. + X + (.5-1.5*X)*CLX - .5*C1PX*CLX2
12097       BBB =   CPFFX*(C11S6*CLX+.5*CLX2+CPIA) - CPFFMX*CS2X
12098      +      + C14S3*C1MX
12099       CCC = - CPFFX*(C10S9+C2S3*CLX) + C40S9/X - 2.*C1PX*CLX2
12100      +      - C16S3 + C40S3*X + (10.*X+C16S3*CX2+2.)*CLX
12101      +      - C112S9*CX2
12102 C
12103       FF1S    = C16S9*AAA + 4.*BBB + C2S3*NF*CCC
12104       FF1SFUN = (X-YWGT)*FF1S/X
12105 C
12106       RETURN
12107       END
12108  
12109 CDECK  ID>, FF1SX0.
12110 C
12111 C     ===================================
12112       DOUBLE PRECISION FUNCTION FF1SX0(X)
12113 C     ===================================
12114       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12115 C
12116       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12117 C
12118       YREM   = YWGT
12119       YWGT   = 0.
12120       FF1S   = FF1SFUN(X)
12121       XP1T   = XP1TFUN(X)
12122       YWGT   = YREM
12123       FF1SX0 = (X-YWGT)*FF1S/X - (1.-YWGT)*XP1T
12124 C
12125       RETURN
12126       END
12127
12128 CDECK  ID>, GF1SFUN.
12129 C
12130 C     ====================================
12131       DOUBLE PRECISION FUNCTION GF1SFUN(X)
12132 C     ====================================
12133       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12134 C
12135  
12136       COMMON/QCCONS/
12137      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12138      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12139      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12140      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12141      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12142      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12143  
12144  
12145 C
12146       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12147 C
12148       CX2    = X**2
12149       C1PX   = 1.+X
12150       C1MX   = 1.-X
12151       CLX    = LOG(X)
12152       CLX2   = CLX**2
12153       CL1MX  = LOG(C1MX)
12154       CL1PX  = LOG(C1PX)
12155       CL1MX2 = CL1MX**2
12156       CPGFX  = CX2 + C1MX**2
12157       CPGFMX = CX2 + C1PX**2
12158       CS3X   = -DDILOG_LHA(-X)
12159       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12160 C
12161       AAA =   4. - 9.*X + (4.*X-1.)*CLX + (2.*X-1.)*CLX2
12162      +      + 4.*CL1MX
12163      +      + (2.*CLX-2.*CLX*CL1MX+CLX2-2.*CL1MX+CL1MX2+CPIE)
12164      +      * 2. * CPGFX
12165       DDD =   C182S9 + C14S9*X + C40S9/X + (C136S3*X-C38S3)*CLX
12166      +      - 4.*CL1MX - (2.+8.*X)*CLX2 + 2.*CS2X*CPGFMX
12167      +      + (C44S3*CLX-CLX2-2.*CL1MX2+4.*CL1MX+CPIF) * CPGFX
12168 C
12169       GF1S    = C2S3*NF*AAA + 1.5*NF*DDD
12170       GF1SFUN = (X-YWGT)*GF1S/X
12171 C
12172       RETURN
12173       END
12174
12175 CDECK  ID>, XP1TFUN.
12176 C
12177 C     ====================================
12178       DOUBLE PRECISION FUNCTION XP1TFUN(X)
12179 C     ====================================
12180       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12181 C
12182  
12183       COMMON/QCCONS/
12184      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12185      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12186      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12187      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12188      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12189      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12190  
12191  
12192 C
12193       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12194 C
12195       CX2    = X**2
12196       C1PX   = 1.+X
12197       C1MX   = 1.-X
12198       CLX    = LOG(X)
12199       CLX2   = CLX**2
12200       CL1MX  = LOG(C1MX)
12201       CL1PX  = LOG(C1PX)
12202       CL1MX2 = CL1MX**2
12203       CPFFX  = (1.+CX2) / C1MX
12204       CPFFMX = (1.+CX2) / C1PX
12205       CPFGX  = (1.+C1MX**2) / X
12206       CPFGMX = - (1.+C1PX**2) / X
12207       CS1X   = -DDILOG_LHA(1.D0-X)
12208       CS3X   = -DDILOG_LHA(-X)
12209       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12210 C
12211       AAA =   CPFFX*(1.5*CLX-2.*CLX2+2.*CLX*CL1MX) + 2.*CPFFMX*CS2X
12212      +      - 1. + X + (-1.5+.5*X)*CLX + .5*C1PX*CLX2
12213       BBB =   CPFFX*(C11S6*CLX+.5*CLX2+CPIA) - CPFFMX*CS2X
12214      +      + C14S3*C1MX
12215       CCC = - CPFFX*(C2S3*CLX+C10S9)
12216      +      - C52S3 + C28S3*X + C112S9*CX2 - C40S9/X
12217      +      - (10.+18.*X+C16S3*CX2)*CLX + 2.*C1PX*CLX2
12218       PFF1T = C16S9*AAA + 4.*BBB + C2S3*NF*CCC
12219 C
12220       AAA = -.5 + 4.5*X + (-8.+.5*X)*CLX + 2.*X*CL1MX
12221      +      + (1.-.5*X)*CLX2
12222      +      + (CL1MX2+4.*CLX*CL1MX-8.*CS1X-CPIB) * CPFGX
12223       BBB =   C62S9 - C35S18*X - C44S9*CX2
12224      +      + (2.+12.*X+C8S3*CX2) * CLX
12225      +      - 2.*X*CL1MX - (4.+X)*CLX2 + CPFGMX*CS2X
12226      +      + ( - 2.*CLX*CL1MX - 3.*CLX - 1.5*CLX2
12227      +      - CL1MX2 + 8.*CS1X + CPIC ) * CPFGX
12228       PFG1T = C16S9*AAA + 4.*BBB
12229 C
12230       XP1T    = X * ( PFF1T + PFG1T )
12231       XP1TFUN = (X-YWGT)*XP1T/X
12232 C
12233       RETURN
12234       END
12235
12236 CDECK  ID>, GG1SFUN.
12237 C
12238 C     ====================================
12239       DOUBLE PRECISION FUNCTION GG1SFUN(X)
12240 C     ====================================
12241       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12242 C
12243  
12244       COMMON/QCCONS/
12245      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12246      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12247      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12248      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12249      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12250      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12251  
12252  
12253 C
12254       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12255 C
12256       CX2    = X**2
12257       C1PX   = 1.+X
12258       C1MX   = 1.-X
12259       CLX    = LOG(X)
12260       CLX2   = CLX**2
12261       CL1MX  = LOG(C1MX)
12262       CL1PX  = LOG(C1PX)
12263       CL1MX2 = CL1MX**2
12264       CS3X   = -DDILOG_LHA(-X)
12265       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12266 C
12267       CPGG  = 1./C1MX + 1./X -2. + X - CX2
12268       CMPGG = 1./C1PX - 1./X -2. - X - CX2
12269 C
12270 c      AAA   = -16.+ 8.*X+ C20S3*CX2 + C4S3/X + (-6.-10.*X)*CLX +
12271       AAA   = -16.+ 8.*X+ C20S3*CX2 + C4S3/X + (-6.-10.*X)*CLX 
12272      +        -2.*C1PX*CLX2
12273       BBB   = 2.* C1MX +  26./9.*(CX2-1./X) - C4S3*C1PX*CLX -
12274      +        20./9.*CPGG       
12275       CCC   = 27./2.*C1MX + 67./9.*(CX2-1./X)+(-25./3.+11./3.*x-
12276      +        44./3.*CX2)*CLX+4.*C1PX*CLX2+(67./9.-4.*CLX*CL1MX +
12277      +        CLX2-CPI2S3)*CPGG + 2.*CMPGG*CS2X
12278 C
12279       GG1S    = C2S3*NF*AAA + 1.5*NF*BBB + 9.* CCC
12280       GG1SFUN = (X-YWGT)*GG1S/X
12281 C
12282       RETURN
12283       END
12284
12285 CDECK  ID>, GG1SX0.
12286 C
12287 C     ===================================
12288       DOUBLE PRECISION FUNCTION GG1SX0(X)
12289 C     ===================================
12290       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12291 C
12292       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12293 C
12294       YREM   = YWGT
12295       YWGT   = 0.
12296       GG1S   = GG1SFUN(X)
12297       XG1T   = XG1TFUN(X)
12298       YWGT   = YREM
12299       GG1SX0 = (X-YWGT)*GG1S/X - (1.-YWGT)*XG1T
12300 C
12301       RETURN
12302       END
12303
12304 CDECK  ID>, FG1SFUN.
12305 C
12306 C     ====================================
12307       DOUBLE PRECISION FUNCTION FG1SFUN(X)
12308 C     ====================================
12309       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12310 C
12311  
12312       COMMON/QCCONS/
12313      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12314      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12315      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12316      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12317      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12318      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12319  
12320  
12321 C
12322       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12323 C
12324       CX2    = X**2
12325       C1PX   = 1.+X
12326       C1MX   = 1.-X
12327       CLX    = LOG(X)
12328       CLX2   = CLX**2
12329       CL1MX  = LOG(C1MX)
12330       CL1PX  = LOG(C1PX)
12331       CL1MX2 = CL1MX**2
12332       CPFGX  = (1.+C1MX**2) / X
12333       CPFGMX = - (1.+C1PX**2) / X
12334       CS3X   = -DDILOG_LHA(-X)
12335       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12336 C
12337       AAA   = -5./2.- 7./2.*X+(2.+7./2.*X)*CLX+(-1.+0.5*X)*CLX2 
12338      +        -2.*X*CL1MX+ (-3.*CL1MX-CL1MX2)*CPFGX
12339       BBB   = 28./9.+65./18.*X+44./9.*CX2+(-12.-5.*X-8./3.*CX2)*CLX+
12340      +        (4.+X)*CLX2+2.*X*CL1MX+ (-2.*CLX*CL1MX+0.5*CLX2+
12341      +        11./3.*CL1MX+CL1MX2-0.5*CPI2S3+0.5)*CPFGX+CPFGMX*CS2X
12342       CCC   = -C4S3*X- (20./9.+C4S3*CL1MX)*CPFGX
12343 C
12344       FG1S    = C16S9*AAA+4.*BBB+2./3.*NF*CCC
12345       FG1SFUN = (X-YWGT)*FG1S/X
12346 C
12347       RETURN
12348       END
12349
12350 CDECK  ID>, XG1TFUN.
12351 C
12352 C     ====================================
12353       DOUBLE PRECISION FUNCTION XG1TFUN(X)
12354 C     ====================================
12355       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12356 C
12357  
12358       COMMON/QCCONS/
12359      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12360      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12361      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12362      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12363      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12364      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12365  
12366  
12367 C
12368       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12369 C
12370       CX2    = X**2
12371       C1PX   = 1.+X
12372       C1MX   = 1.-X
12373       CLX    = LOG(X)
12374       CLX2   = CLX**2
12375       CL1MX  = LOG(C1MX)
12376       CL1PX  = LOG(C1PX)
12377       CL1MX2 = CL1MX**2
12378       CPGFX  = CX2 + C1MX**2
12379       CPGFMX = CX2 + C1PX**2
12380       CS1X   = -DDILOG_LHA(1.D0-X)
12381       CS3X   = -DDILOG_LHA(-X)
12382       CS2X   = .5*(CLX2-CPI2S3) + 2.*(CS3X-CLX*CL1PX)
12383 C
12384       CPGG  = 1./C1MX + 1./X -2. + X - CX2
12385       CMPGG = 1./C1PX - 1./X -2. - X - CX2
12386 C
12387       AAA   = -4.+12.*x-164./9.*CX2+92./9./X+(10.+14.*X+C16S3*CX2+
12388      +        C16S3/X)*CLX + 2.*C1PX*CLX2
12389       BBB   = 2.-2.*X+26./9.*(CX2-1./X)-C4S3*C1PX*CLX-
12390      +        (20./9.+8./3.*CLX)*CPGG
12391       CCC   = 27./2.*(C1MX)+67./9.*(CX2-1./X)+(11./3.-25./3.*X-
12392      +        44./3./X)*CLX -4.*(C1PX) * CLX2 + (4.*CLX*CL1MX -
12393      +        3.*CLX2+22./3.*CLX-CPI2S3+67./9.)*CPGG+
12394      +        2.*CMPGG*CS2X
12395       PGG1T = 2./3.*NF*AAA+3./2.*NF*BBB+9.*CCC
12396 C
12397       AAA   = -8./3.-(16./9.+8./3.*CLX+8./3.*CL1MX)*CPGFX
12398       BBB   = -2.+3.*X+(-7.+8.*X)*CLX-4.*CL1MX + (1.-2.*X)*CLX2
12399      +        +(-4.*CLX*CL1MX-2.*CLX2-2.*CL1MX+2.*CLX-2.*CL1MX2
12400      +        +16.*CS1X+ 2.*PI*PI - 10.)*CPGFX
12401       CCC   = -152./9.+166./9.*X-40./9./X+ (-C4S3-76./3.*X)*CLX+
12402      +        4.*CL1MX + (2.+8.*X)*CLX2+ (8.*CLX*CL1MX-CLX2-
12403      +        C4S3*CLX+10./3.*CL1MX+2.*CL1MX2-16.*CS1X-7.*CPI2S3+
12404      +        178./9.)*CPGFX+2.*CPGFMX*CS2X
12405       PGF1T = (0.5*NF)**2*AAA+2./3.*NF*BBB+3./2.*NF*CCC
12406 C
12407       XG1T    = X * ( PGG1T + PGF1T )
12408       XG1TFUN = (X-YWGT)*XG1T/X
12409 C
12410       RETURN
12411       END
12412  
12413 CDECK  ID>, C2Q.
12414  
12415 C     ================================
12416       DOUBLE PRECISION FUNCTION C2Q(X)
12417 C     ================================
12418       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12419  
12420       COMMON/QCCONS/
12421      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12422      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12423      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12424      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12425      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12426      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12427  
12428  
12429  
12430       LOGICAL
12431      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12432      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12433      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12434      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12435      +LFFCAL,LASOLD
12436
12437       COMMON/QCFLAG/ 
12438      +IORD,IOLAST,
12439      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12440      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12441      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12442      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12443      +LFFCAL(7,30),LASOLD
12444  
12445  
12446       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12447  
12448       C1MX = 1.-X
12449       C2Q = 3. + C5S3*X + (C4S3*LOG(C1MX/X)-1.) * (1.+X**2) / C1MX
12450       C2Q = (X-YWGT)*C2Q/X
12451  
12452       RETURN
12453       END
12454  
12455 CDECK  ID>, C2QX0.
12456  
12457
12458 C     ==================================
12459       DOUBLE PRECISION FUNCTION C2QX0(X)
12460 C     ==================================
12461       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12462  
12463       COMMON/QCCONS/
12464      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12465      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12466      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12467      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12468      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12469      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12470  
12471  
12472  
12473       LOGICAL
12474      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12475      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12476      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12477      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12478      +LFFCAL,LASOLD
12479
12480       COMMON/QCFLAG/ 
12481      +IORD,IOLAST,
12482      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12483      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12484      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12485      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12486      +LFFCAL(7,30),LASOLD
12487  
12488  
12489       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12490  
12491       C1MX = 1.-X
12492       C2Q = 3. + C5S3*X + (C4S3*LOG(C1MX/X)-1.) * (1.+X**2) / C1MX
12493  
12494       C2QX0 = ((X-YWGT)/X+YWGT-1.)*C2Q
12495  
12496       RETURN
12497       END
12498
12499 CDECK  ID>, C2G.
12500  
12501 C     ================================
12502       DOUBLE PRECISION FUNCTION C2G(X)
12503 C     ================================
12504       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12505  
12506  
12507       COMMON/QCCONS/
12508      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12509      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12510      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12511      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12512      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12513      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12514  
12515  
12516  
12517       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12518  
12519       C1MX = 1. - X
12520       C2G = -.5 + 4.*X*C1MX + .5 * (X**2+C1MX**2) * LOG(C1MX/X)
12521       C2G = 2.*NF*(X-YWGT)*C2G/X
12522  
12523       RETURN
12524       END
12525  
12526 CDECK  ID>, CLQ.
12527  
12528 C     ================================
12529       DOUBLE PRECISION FUNCTION CLQ(X)
12530 C     ================================
12531       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12532  
12533       COMMON/QCCONS/
12534      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12535      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12536      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12537      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12538      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12539      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12540  
12541  
12542  
12543       LOGICAL
12544      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12545      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12546      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12547      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12548      +LFFCAL,LASOLD
12549
12550       COMMON/QCFLAG/ 
12551      +IORD,IOLAST,
12552      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12553      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12554      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12555      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12556      +LFFCAL(7,30),LASOLD
12557  
12558  
12559       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12560  
12561       CLQ = C8S3*X
12562       CLQ = (X-YWGT)*CLQ/X
12563  
12564       RETURN
12565       END
12566  
12567 CDECK  ID>, CLG.
12568  
12569 C     ================================
12570       DOUBLE PRECISION FUNCTION CLG(X)
12571 C     ================================
12572       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12573  
12574       COMMON/QCCONS/
12575      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12576      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12577      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12578      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12579      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12580      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12581  
12582  
12583  
12584       LOGICAL
12585      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12586      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12587      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12588      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12589      +LFFCAL,LASOLD
12590
12591       COMMON/QCFLAG/ 
12592      +IORD,IOLAST,
12593      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12594      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12595      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12596      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12597      +LFFCAL(7,30),LASOLD
12598  
12599  
12600       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12601  
12602       CLG = NF*4.*X*(1.-X)
12603       CLG = (X-YWGT)*CLG/X
12604  
12605       RETURN
12606       END
12607  
12608 CDECK  ID>, D3Q.
12609  
12610 C     ================================
12611       DOUBLE PRECISION FUNCTION D3Q(X)
12612 C     ================================
12613       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12614  
12615       COMMON/QCCONS/
12616      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12617      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12618      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12619      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12620      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12621      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12622  
12623  
12624  
12625       LOGICAL
12626      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12627      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12628      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12629      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12630      +LFFCAL,LASOLD
12631
12632       COMMON/QCFLAG/ 
12633      +IORD,IOLAST,
12634      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12635      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12636      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12637      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12638      +LFFCAL(7,30),LASOLD
12639  
12640
12641 C--   C3Q = C2Q - D3Q
12642  
12643       COMMON /QCWGTC/ YWGT,QPGC,QMASS,EGAUSS,NF
12644  
12645       D3Q = C4S3*(1.+X)
12646 C--   Fixed this bug in QCDNUM16.11 17-01-98
12647 C     D3Q = (X-YWGT)*C3Q/X
12648       D3Q = (X-YWGT)*D3Q/X
12649  
12650       RETURN
12651       END
12652  
12653 CDECK  ID>, PCGFUN.
12654  
12655 C     ===================================
12656       DOUBLE PRECISION FUNCTION PCGFUN(X)
12657 C     ===================================
12658       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12659  
12660 C--   Pcg (heavy quark) splitting function taken from
12661 C--   Glueck, Hoffmann and Reya, Z. Phys. C13(1982)119 eq. (2.6).
12662 C--   Notice that if YWGT is set to zero, PCGFUN(X) returns Pcg(x).
12663 C--   Q2 and the quark mass are passed through the common block
12664 C--   /QCWGTC/ as QPCG and QMASS respectively.
12665  
12666       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
12667  
12668       FACTOR = QMASS*QMASS/QPCG
12669       PCG    = 0.
12670       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
12671         U    = 1.-X
12672         V    = SQRT(1.-4.*FACTOR*X/(1.-X))
12673         PCG  = (1./V)*(0.5-X*U+FACTOR*X*(3.-4.*X)/U
12674      +         -16.*FACTOR*FACTOR*X*X)  -
12675      +         (2.*FACTOR*X*(1.-3.*X)-8.*FACTOR*FACTOR*X*X)
12676      +         *LOG((1.+V)/(1.-V))
12677       ENDIF
12678       PCGFUN = (X-YWGT)*PCG/X
12679  
12680       RETURN
12681       END
12682  
12683 CDECK  ID>, QASTOL.
12684  
12685 C     ==============================
12686       SUBROUTINE LFROMA(AS,Q2,QL,NF)
12687 C     ==============================
12688
12689 C---  Calculate Lambda^(nf) given alpha_s(Q^2)
12690
12691       WRITE(6,'(/'' ------------------------------------'')')
12692       WRITE(6,'( '' QCDNUM error in s/r LFROMA ---> STOP'')')
12693       WRITE(6,'( '' ------------------------------------'')')
12694       WRITE(6,'(/'' This s/r is not available......     '')')
12695
12696       STOP
12697       END
12698
12699  
12700 CDECK  ID>, AFROML.
12701  
12702 C     ==============================
12703       SUBROUTINE AFROML(QL,NF,AS,Q2)
12704 C     ==============================
12705
12706 C---  Calculate alpha_s(Q^2) given Lambda^(nf)
12707
12708       WRITE(6,'(/'' ------------------------------------'')')
12709       WRITE(6,'( '' QCDNUM error in s/r AFROML ---> STOP'')')
12710       WRITE(6,'( '' ------------------------------------'')')
12711       WRITE(6,'(/'' This s/r is not available......     '')')
12712
12713       STOP
12714       END
12715  
12716 CDECK  ID>, QNALFA.
12717  
12718 C     =====================================
12719       DOUBLE PRECISION FUNCTION QNALFA(QQ2)
12720 C     =====================================
12721  
12722       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12723  
12724  
12725       PARAMETER ( MXX = 410 )
12726       PARAMETER ( MQ2 =  120 )
12727
12728 C--   Do not set the following parameter to zero!
12729       PARAMETER ( NDFMAX = 20)
12730
12731  
12732       LOGICAL
12733      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12734      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12735      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12736      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12737      +LFFCAL,LASOLD
12738
12739       COMMON/QCFLAG/ 
12740      +IORD,IOLAST,
12741      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12742      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12743      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12744      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12745      +LFFCAL(7,30),LASOLD
12746  
12747  
12748       COMMON/QCPASS/
12749      +ALPHA0, Q0ALFA, ASLAST, QALAST,
12750      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
12751      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
12752      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
12753      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
12754      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
12755      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
12756      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
12757      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
12758      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
12759
12760       LOGICAL LEVDONE,LE_DONE
12761       COMMON/QCLEVL/
12762      +LEVDONE(MXX,10),LE_DONE(MXX)
12763  
12764
12765       IF(LBMARK) THEN
12766 c fix for rgr
12767          call rgras(qnalfa,qq2)
12768 c      print *,' 1 rgras called and NF is ',nf
12769 c        F      = 4.
12770 c        QCDL   = 0.250
12771 c        QNALFA = QNALAM(F,QQ2,QCDL,IORD)
12772       ELSEIF(LASOLD) THEN
12773         QNALFA = A0TOA1_OLD(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
12774       ELSE
12775         QNALFA = A0TOA1(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
12776       ENDIF
12777
12778       RETURN
12779       END
12780  
12781 CDECK  ID>, QALFAS.
12782  
12783 C     ===================================================
12784       DOUBLE PRECISION FUNCTION QALFAS(QQ2,QLAMB,NF,IERR)
12785 C     ===================================================
12786  
12787       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12788  
12789  
12790       PARAMETER ( MXX = 410 )
12791       PARAMETER ( MQ2 =  120 )
12792
12793 C--   Do not set the following parameter to zero!
12794       PARAMETER ( NDFMAX = 20)
12795
12796  
12797       LOGICAL
12798      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12799      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12800      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12801      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12802      +LFFCAL,LASOLD
12803
12804       COMMON/QCFLAG/ 
12805      +IORD,IOLAST,
12806      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12807      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12808      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12809      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12810      +LFFCAL(7,30),LASOLD
12811  
12812  
12813       COMMON/QCPASS/
12814      +ALPHA0, Q0ALFA, ASLAST, QALAST,
12815      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
12816      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
12817      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
12818      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
12819      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
12820      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
12821      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
12822      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
12823      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
12824
12825       LOGICAL LEVDONE,LE_DONE
12826       COMMON/QCLEVL/
12827      +LEVDONE(MXX,10),LE_DONE(MXX)
12828  
12829
12830       IF(LBMARK) THEN
12831 c fix for rgr alphas
12832 c      print *,' 2 rgras called and NF is '
12833         call rgras(qalfas,qq2)
12834         QLAMB  = SQRT(Q_LAMB2(QQ2,QALFAS,NF,IORD))
12835 c        F      = 4.
12836 c        QCDL   = 0.250
12837 c        QALFAS = QNALAM(F,QQ2,QCDL,IORD)
12838 c        NF     = F
12839 c        QLAMB  = 0.
12840       ELSEIF(LASOLD) THEN
12841         QALFAS = A0TOA1_OLD(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
12842         QLAMB  = SQRT(Q_LAMB2(QQ2,QALFAS,NF,IORD))
12843         IF(IERR.NE.0) QLAMB = 0.
12844       ELSE
12845         QALFAS = A0TOA1(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
12846         QLAMB  = SQRT(Q_LAMB2(QQ2,QALFAS,NF,IORD))
12847         IF(IERR.NE.0) QLAMB = 0.
12848       ENDIF
12849
12850       RETURN
12851       END
12852
12853 CDECK  ID>, QFILAS.
12854
12855 C     ========================
12856       SUBROUTINE QFILAS(SRNAM)
12857 C     ========================
12858  
12859       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
12860
12861  
12862       COMMON/QCCONS/
12863      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
12864      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
12865      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
12866      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
12867      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
12868      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
12869  
12870  
12871  
12872       LOGICAL
12873      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12874      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12875      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12876      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12877      +LFFCAL,LASOLD
12878
12879       COMMON/QCFLAG/ 
12880      +IORD,IOLAST,
12881      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
12882      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
12883      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
12884      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
12885      +LFFCAL(7,30),LASOLD
12886  
12887  
12888       PARAMETER ( MXX = 410 )
12889       PARAMETER ( MQ2 =  120 )
12890
12891 C--   Do not set the following parameter to zero!
12892       PARAMETER ( NDFMAX = 20)
12893
12894  
12895       COMMON/QCGRID/
12896      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
12897      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
12898      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
12899      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
12900  
12901  
12902       COMMON/QCPASS/
12903      +ALPHA0, Q0ALFA, ASLAST, QALAST,
12904      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
12905      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
12906      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
12907      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
12908      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
12909      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
12910      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
12911      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
12912      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
12913
12914       LOGICAL LEVDONE,LE_DONE
12915       COMMON/QCLEVL/
12916      +LEVDONE(MXX,10),LE_DONE(MXX)
12917  
12918
12919       CHARACTER*6 SRNAM
12920
12921 C--   Check quark masses
12922       IF(.NOT.(0.LE.UDSCBT(1) .AND. UDSCBT(1).LE.UDSCBT(2) .AND.
12923      + UDSCBT(2).LE.UDSCBT(3) .AND. UDSCBT(3).LT.UDSCBT(4) .AND.
12924      + UDSCBT(4).LT.UDSCBT(5) .AND. UDSCBT(5).LT.UDSCBT(6))) THEN
12925         IERR = 1
12926         GOTO 500
12927       ENDIF
12928
12929       IF(LBMARK) THEN
12930 c-- This is a fix to put in the RGR alphas
12931         DO IQ = 1,NQ2
12932
12933 C--       Alphas at the renormalistion scale
12934           QQ2        = Q2TAB(IQ)*AAAR2 + BBBR2
12935 c      print *,' 3 rgras called and iord is ',iord
12936           call rgras(ALF,QQ2)
12937 c      print *,nf,iord,alf,qq2
12938           BET0       = 11.-2*NF/3.
12939           ALFASQ(IQ) = ALF
12940           ALFAPQ(IQ) = ALF/(2.*PI)
12941           ALFA2Q(IQ) = 0.
12942           IF(IORD.GE.2) THEN
12943             ALFA2Q(IQ) = ALFAPQ(IQ)*ALFAPQ(IQ)
12944             FACT       = LOG(QQ2/Q2TAB(IQ))*BET0*0.5
12945             ALFAPQ(IQ) = ALFAPQ(IQ)*(1.+FACT*ALFAPQ(IQ))
12946           ENDIF
12947
12948         ENDDO   
12949
12950
12951 cC--     Alphas for benchmark tests (HERA workshop)
12952 c
12953 c        F    = 4.
12954 c        QCDL = 0.250
12955 c
12956 c        DO IQ = 1,NQ2
12957 c
12958 cC--       Alphas at the renormalistion scale
12959 c          QQ2        = Q2TAB(IQ)*AAAR2 + BBBR2
12960 c          ALFASQ(IQ) = QNALAM(F,QQ2,QCDL,IORD)
12961 c          BET0       = 11.-2.*F/3.
12962 c          ALFAPQ(IQ) = ALFASQ(IQ) /(2.*PI)
12963 c          ALFA2Q(IQ) = 0.
12964 c          IEALFA(IQ) = 0
12965 c          IF(IORD.GE.2) THEN
12966 c            ALFA2Q(IQ) = ALFAPQ(IQ)*ALFAPQ(IQ)
12967 c            FACT = LOG(QQ2/Q2TAB(IQ))*BET0*0.5
12968 c            ALFAPQ(IQ) = ALFAPQ(IQ)*(1.+FACT*ALFAPQ(IQ))
12969 c          ENDIF
12970 c
12971 c        ENDDO   
12972
12973       ELSEIF(LASOLD) THEN
12974
12975 C--     Alphas from old routine (for backwards compatibility)
12976
12977         DO IQ = 1,NQ2
12978
12979 C--       Alphas at the renormalistion scale
12980           QQ2        = Q2TAB(IQ)*AAAR2 + BBBR2
12981           ALFASQ(IQ) = A0TOA1_OLD(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
12982           BET0       = 11.-2*NF/3.
12983           IEALFA(IQ) = IERR
12984           ALFAPQ(IQ) = ALFASQ(IQ) /(2.*PI)
12985           ALFA2Q(IQ) = 0.
12986           IF(IORD.GE.2) THEN
12987             ALFA2Q(IQ) = ALFAPQ(IQ)*ALFAPQ(IQ)
12988             FACT       = LOG(QQ2/Q2TAB(IQ))*BET0*0.5
12989             ALFAPQ(IQ) = ALFAPQ(IQ)*(1.+FACT*ALFAPQ(IQ))
12990           ENDIF
12991
12992         ENDDO   
12993
12994       ELSE
12995
12996 C--     This is the alphas to be used
12997
12998         DO IQ = 1,NQ2
12999
13000 C--       Alphas at the renormalistion scale
13001           QQ2        = Q2TAB(IQ)*AAAR2 + BBBR2
13002           ALF        = A0TOA1(QQ2,Q0ALFA,ALPHA0,IORD,NF,IERR)
13003 c          print *,iord,nf,qq2,alf
13004           BET0       = 11.-2*NF/3.
13005           IEALFA(IQ) = IERR
13006           ALFASQ(IQ) = ALF
13007           ALFAPQ(IQ) = ALF/(2.*PI)
13008           ALFA2Q(IQ) = 0.
13009           IF(IORD.GE.2) THEN
13010             ALFA2Q(IQ) = ALFAPQ(IQ)*ALFAPQ(IQ)
13011             FACT       = LOG(QQ2/Q2TAB(IQ))*BET0*0.5
13012             ALFAPQ(IQ) = ALFAPQ(IQ)*(1.+FACT*ALFAPQ(IQ))
13013           ENDIF
13014
13015         ENDDO   
13016
13017       ENDIF
13018
13019       LALFOK = .TRUE.
13020 C--   Invalidate all evolutions      
13021       CALL QNFALS(LEVDONE,MXX*10)
13022
13023 C--   Find lowest Q2 for which alpha_s is calculated
13024       QMINAS = Q2TAB(NQ2)
13025       DO IQ = NQ2,1,-1
13026         IF(IEALFA(IQ).EQ.0) QMINAS = Q2TAB(IQ)
13027       ENDDO
13028
13029       RETURN
13030
13031  500  CONTINUE
13032       WRITE(6,'(/'' ------------------------------------'')')
13033       WRITE(6,'( '' QCDNUM error in s/r '',A,'' ---> STOP'')')
13034      +              SRNAM
13035       WRITE(6,'( '' ------------------------------------'')')
13036       WRITE(6,'( '' Umass           :'',E12.5)') UDSCBT(1)
13037       WRITE(6,'( '' Dmass           :'',E12.5)') UDSCBT(2)
13038       WRITE(6,'( '' Smass           :'',E12.5)') UDSCBT(3)
13039       WRITE(6,'( '' Cmass           :'',E12.5)') UDSCBT(4)
13040       WRITE(6,'( '' Bmass           :'',E12.5)') UDSCBT(5)
13041       WRITE(6,'( '' Tmass           :'',E12.5)') UDSCBT(6)
13042       IF(IERR.EQ.1) THEN
13043         WRITE(6,'(/'' Quark masses not in ascending order'')')
13044       ENDIF
13045
13046       CALL QTRACE('QFILAS ',1)
13047
13048       STOP
13049
13050       END
13051
13052 CDECK  ID>, GET_AS.
13053  
13054 C     =======================================
13055       DOUBLE PRECISION FUNCTION GET_AS(IQ,TQ)
13056 C     =======================================
13057
13058       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13059
13060 C--   Interpolation of alpha_s table: returns alpha_s/(2pi)
13061 C--   Input IQ must be in the range 1,...,NQ2-1
13062
13063  
13064       COMMON/QCCONS/
13065      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13066      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13067      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13068      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13069      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13070      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13071  
13072  
13073  
13074       PARAMETER ( MXX = 410 )
13075       PARAMETER ( MQ2 =  120 )
13076
13077 C--   Do not set the following parameter to zero!
13078       PARAMETER ( NDFMAX = 20)
13079
13080  
13081       COMMON/QCPASS/
13082      +ALPHA0, Q0ALFA, ASLAST, QALAST,
13083      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
13084      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
13085      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
13086      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
13087      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
13088      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
13089      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
13090      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
13091      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
13092
13093       LOGICAL LEVDONE,LE_DONE
13094       COMMON/QCLEVL/
13095      +LEVDONE(MXX,10),LE_DONE(MXX)
13096  
13097
13098       GET_AS = ((1.-TQ)*ALFASQ(IQ)+TQ*ALFASQ(IQ+1))/(2.*PI)
13099
13100       RETURN
13101       END
13102
13103 CDECK  ID>, QNALAM.
13104  
13105 C     =================================================
13106       DOUBLE PRECISION FUNCTION QNALAM (F,Q2,QCDL,IORD)
13107 C     =================================================
13108
13109       IMPLICIT DOUBLE PRECISION (A - Z)
13110       INTEGER IORD
13111
13112       DATA PI / 3.14159265359 /
13113
13114 C---  Calculation of alpha strong (Q**2) in NLO :
13115 C---  F    = number of flavours
13116 C---  Q2   = Q**2 in GeV**2
13117 C---  QCDL = Lambda(MSbar) in GeV
13118
13119       B0     = 11.D0 - 2.D0/3.D0 * F
13120       B0S    = B0 * B0
13121       B1     = 102.D0 - 38.D0/3.D0 * F
13122       LAM2   = QCDL * QCDL
13123       LQ2    = DLOG (Q2/LAM2)
13124       QNALAM = 1.D0/(B0 * LQ2)
13125       IF(IORD.GE.2) QNALAM = QNALAM - 1.D0/(B0 * LQ2) * 
13126      +              (B1/B0S * DLOG(LQ2)/LQ2)
13127       QNALAM = QNALAM*4.D0*PI
13128
13129       RETURN
13130       END
13131
13132 CDECK  ID>, A0TOA1.
13133  
13134 C     ===========================================================
13135       DOUBLE PRECISION FUNCTION A0TOA1(QSU,QS0,AS0,IORD,NFF,IERR)
13136 C     ===========================================================
13137  
13138       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13139  
13140  
13141       COMMON/QCCONS/
13142      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13143      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13144      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13145      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13146      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13147      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13148  
13149  
13150
13151       QS1   = QSU
13152
13153       QMU0  = SQRT(QS0)
13154       QMU1  = SQRT(QS1)
13155  
13156       DO 10 I=1,6
13157       IF(QMU0.GE.UDSCBT(I)) NF0 = I
13158       IF(QMU1.GE.UDSCBT(I)) NF1 = I
13159   10  CONTINUE
13160  
13161       IF(NF1.LT.NF0) THEN
13162         IST = -1
13163         JST =  0
13164       ELSE
13165         IST = 1
13166         JST = 1
13167       ENDIF
13168  
13169       ALFA0 = AS0
13170       Q00   = QS0
13171  
13172       DO 50 NF = NF0,NF1,IST
13173  
13174       IF(NF.NE.NF1) THEN
13175         Q21 = UDSCBT(NF+JST)*UDSCBT(NF+JST)
13176       ELSE
13177         Q21 = QS1
13178       ENDIF
13179       ALFA1 = ALPHAR(Q21,Q00,ALFA0,NF,IORD,JERR)
13180       ALFA0 = ALFA1
13181       Q00   = Q21
13182  
13183   50  CONTINUE
13184  
13185       A0TOA1 = ALFA0
13186       NFF    = NF1
13187       IERR   = JERR
13188  
13189       RETURN
13190       END
13191  
13192 C     ===============================================================
13193       DOUBLE PRECISION FUNCTION A0TOA1_OLD(QSU,QS0,AS0,IORD,NFF,IERR)
13194 C     ===============================================================
13195  
13196       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13197  
13198  
13199       COMMON/QCCONS/
13200      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13201      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13202      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13203      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13204      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13205      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13206  
13207  
13208
13209       QS1   = QSU
13210  
13211       QMU0  = SQRT(QS0)
13212       QMU1  = SQRT(QS1)
13213  
13214       DO 10 I=1,6
13215       IF(QMU0.GE.UDSCBT(I)) NF0 = I
13216       IF(QMU1.GE.UDSCBT(I)) NF1 = I
13217   10  CONTINUE
13218  
13219       IF(NF1.LT.NF0) THEN
13220         IST = -1
13221         JST =  0
13222       ELSE
13223         IST = 1
13224         JST = 1
13225       ENDIF
13226  
13227       ALFA0 = AS0
13228       Q00   = QS0
13229  
13230       DO 50 NF = NF0,NF1,IST
13231  
13232       IF(NF.NE.NF1) THEN
13233         Q21 = UDSCBT(NF+JST)*UDSCBT(NF+JST)
13234       ELSE
13235         Q21 = QS1
13236       ENDIF
13237       ALFA0 = ALPHAR_OLD(Q21,Q00,ALFA0,NF,IORD,JERR)
13238       Q00   = Q21
13239  
13240   50  CONTINUE
13241  
13242       A0TOA1_OLD = ALFA0
13243       NFF        = NF1
13244       IERR       = JERR
13245  
13246       RETURN
13247       END
13248
13249 CDECK  ID>, ALPHAR.
13250  
13251 C     ==========================================================
13252       DOUBLE PRECISION FUNCTION ALPHAR(QSQ,QS0,AS0,NF,IORD,IERR)
13253 C     ==========================================================
13254  
13255       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13256  
13257 C--   ALPHAS FROM RGE GIVEN AS0 AT QS0
13258  
13259       DATA PI / 3.14159265359 /
13260
13261       BET0 = 11.-2*NF/3.
13262       BET1 = 102.-38*NF/3.
13263       B0   = BET0/(4.*PI)
13264       B1   = BET1/(4.*PI*BET0)
13265       IERR = 0
13266
13267       TERM0 = 1./AS0+B0*LOG(QSQ/QS0)
13268       IF(TERM0.LE.0.) THEN
13269         ALPHAR = 100.
13270         IERR   = 1
13271         RETURN
13272       ENDIF
13273       ALFA0 = 1./TERM0
13274       IF(IORD.EQ.1) THEN
13275         ALPHAR = ALFA0
13276         RETURN
13277       ENDIF
13278   20  CONTINUE
13279       ARG   = (1./ALFA0+B1)/(1./AS0+B1)
13280       IF(ARG.LE.0.) THEN
13281         ALPHAR = 100.
13282         IERR   = 1
13283         RETURN
13284       ELSE 
13285         TERM  = TERM0+B1*LOG(ARG)
13286         IF(TERM.LE.0) THEN
13287           ALPHAR = 100.
13288           IERR   = 1
13289           RETURN
13290         ELSE
13291           ALFA1 = 1./TERM
13292         ENDIF
13293       ENDIF 
13294       IF(ABS(ALFA1-ALFA0).GT.1.E-6) THEN
13295         ALFA0 = ALFA1
13296         GOTO 20
13297       ENDIF
13298  
13299       ALPHAR = ALFA1
13300  
13301       RETURN
13302       END
13303  
13304 C     ==============================================================
13305       DOUBLE PRECISION FUNCTION ALPHAR_OLD(QSQ,QS0,AS0,NF,IORD,IERR)
13306 C     ==============================================================
13307  
13308       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13309  
13310 C-----MARCHIANO: ALPHAS FROM RGE GIVEN AS0 AT QS0
13311 C-----This routine uses an incorrect truncation -->
13312 C-----alpha_s is about 0.4% too low. 
13313  
13314       DATA PI    / 3.1415927 /
13315  
13316       QMU  = SQRT(QSQ)
13317       QM0  = SQRT(QS0)
13318  
13319       B3   = -(11.-2.*NF/3.)/(2.*PI)
13320       B33  = -(51.-19.*NF/3.)/(4.*PI*PI)
13321       B333 = -(2857.-5033.*NF/9.+325.*NF*NF/27.)/(64.*PI*PI*PI)
13322       IERR = 0
13323  
13324       TERM0 = 1./AS0-B3*LOG(QMU/QM0)
13325       ALFA0 = 1./TERM0
13326       IF(IORD.EQ.1) THEN
13327         ALPHAR_OLD  = ALFA0
13328         RETURN
13329       ENDIF
13330   20  CONTINUE
13331       TERM = TERM0-B33*LOG(ALFA0/AS0)/B3
13332       IF(IORD.EQ.3) TERM = TERM-(B333*B3-B33*B33)*(ALFA0-AS0)/(B3*B3)
13333       ALFA1 = 1./TERM
13334       IF(ABS(ALFA1-ALFA0).GT.1.E-6) THEN
13335         ALFA0 = ALFA1
13336         GOTO 20
13337       ENDIF
13338  
13339       ALPHAR_OLD = ALFA1
13340  
13341       RETURN
13342       END
13343
13344 CDECK  ID>, Q_LAMB2.
13345  
13346 C     ==================================================
13347       DOUBLE PRECISION FUNCTION Q_LAMB2(QS0,AS0,NF,IORD)
13348 C     ==================================================
13349  
13350       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13351  
13352 C--   Calculate lambda**2 given AS0 at QS0 
13353  
13354       DATA PI / 3.14159265359 /
13355
13356       BET0 = 11.-2*NF/3.
13357       BET1 = 102.-38*NF/3.
13358       AS   = AS0/(4.*PI)
13359
13360       Q_LAMB2 = QS0*EXP(-1./(BET0*AS))
13361
13362       IF(IORD.EQ.1) RETURN
13363
13364       ARG     = 1. + BET0/(BET1*AS)
13365       POW     = BET1/(BET0*BET0)
13366       Q_LAMB2 = Q_LAMB2*ARG**POW
13367
13368       RETURN
13369       END 
13370
13371 CDECK  ID>, QHEAVY.
13372
13373 c Heavy quark structure functions.
13374 c Heavy quark coefficient functions up to NLO are taken from the code
13375 c of S. Riemersma. For reference, see S. Riemersma, J. Smith and
13376 c W.L. van Neerven, Phys. Lett. B347(1995)143.
13377  
13378 CDECK  ID>, GET_FKH.
13379  
13380 C     =====================================================
13381       DOUBLE PRECISION FUNCTION GET_FKH(IDF,ID,IX0,IQ,IERR)
13382 C     =====================================================
13383       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13384  
13385 C--   Input:  IDF  =  4,5,6,7 for F2c,Flc,F2b,Flb
13386 C--   Input:  ID      parton distribution identifier
13387 C--           IX0     x gridpoint of heavy quark grid
13388 C--           IQ      Q2 gridpoint
13389 C--   Output: IERR =  0 FKH successfully calculated
13390 C--                =  1 Fast calculation
13391 C--                = -1 Scale mu outside grid
13392  
13393  
13394       COMMON/QCCONS/
13395      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13396      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13397      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13398      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13399      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13400      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13401  
13402  
13403  
13404       LOGICAL
13405      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
13406      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
13407      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
13408      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
13409      +LFFCAL,LASOLD
13410
13411       COMMON/QCFLAG/ 
13412      +IORD,IOLAST,
13413      +LDOUBL,LBMARK,LWF2C,LWF2B,LWFLC,LWFLB,
13414      +LW1ANA,LW1NUM,LW2NUM,LW2STF,LIMCK,LPLUS,
13415      +LALFOK,LDQ2OK,LWT1OK,LWT2OK,
13416      +LWTFOK,LWFCOK,LWLCOK,LWFBOK,LWLBOK,LMARK,LCLOWQ,
13417      +LFFCAL(7,30),LASOLD
13418  
13419  
13420       CHARACTER*5 PNAM,STFNAM
13421       LOGICAL     LNFP
13422       COMMON /QCLNFP/ LNFP(0:30,3:5)
13423       COMMON /QCPNAM/ PNAM(0:30)
13424       COMMON /QCPWGT/ PWGT(0:10,0:30,3:5)
13425       COMMON /QCFNAM/ STFNAM(7)
13426  
13427  
13428       PARAMETER ( MXX = 410 )
13429       PARAMETER ( MQ2 =  120 )
13430
13431 C--   Do not set the following parameter to zero!
13432       PARAMETER ( NDFMAX = 20)
13433
13434  
13435       COMMON/QCGRID/
13436      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
13437      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
13438      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
13439      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
13440  
13441
13442       REAL
13443      +WH_C0KG,WH_C1KG,WH_C1BKG,
13444      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
13445
13446       COMMON/QCHWGT/
13447      +WH_C0KG(0:MXX,MQ2,4:7),
13448      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
13449      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
13450      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
13451
13452  
13453       COMMON/QCPASS/
13454      +ALPHA0, Q0ALFA, ASLAST, QALAST,
13455      +ALFASQ(MQ2), ALFAPQ(MQ2), ALFA2Q(MQ2),
13456      +DELUP(MQ2), DELDN(MQ2), PDFQCD(MXX,MQ2,0:10),
13457      +FNSQCD(MXX,MQ2),DNSQCD(MXX,MQ2),
13458      +FSIQCD(MXX,MQ2),DSIQCD(MXX,MQ2),
13459      +FGLQCD(MXX,MQ2),DGGQCD(MXX,MQ2),
13460      +FSTORE(MXX,MQ2,31:30+NDFMAX),IDFAST(7,30),NDFAST,
13461      +MARKFF(MXX,MQ2),MARKFH(MXX,MQ2),MARKQQ(MQ2),
13462      +ISTFID(31:30+NDFMAX),IPDFID(31:30+NDFMAX),IEALFA(MQ2),
13463      +IQL_LAST(10),IQ0_LAST(10),IQH_LAST(10)
13464
13465       LOGICAL LEVDONE,LE_DONE
13466       COMMON/QCLEVL/
13467      +LEVDONE(MXX,10),LE_DONE(MXX)
13468  
13469
13470 C--   Correct quark mass
13471       QMASS = CBMSTF(IDF)
13472       CCCC  = CHARGE(IDF)
13473
13474       GET_FKH = 0.
13475  
13476       IF(LFFCAL(IDF,ID)) THEN
13477         IERR = 1
13478         JD   = IDFAST(IDF,ID)
13479         GET_FKH = FSTORE(IX0,IQ,JD)
13480         IF(GET_FKH.GE.-99.) RETURN
13481       ENDIF
13482  
13483       QMU  = Q2TAB(IQ)*AAM2H + BBM2H
13484       IMU  = MIN(ABS(IQFROMQ(QMU)),NQ2-1)
13485       IF(IMU.EQ.0) THEN
13486         IERR = -1
13487         RETURN
13488       ENDIF
13489       QR2 = QMU*AAAR2 + BBBR2
13490       IR2 = MIN(ABS(IQFROMQ(QR2)),NQ2-1)
13491       IF(IR2.EQ.0) THEN
13492         IERR = -1
13493         RETURN
13494       ENDIF
13495
13496       IERR = 0
13497       TQ   = LOG(QMU/Q2TAB(IMU))/LOG(Q2TAB(IMU+1)/Q2TAB(IMU))
13498       TR   = LOG(QR2/Q2TAB(IR2))/LOG(Q2TAB(IR2+1)/Q2TAB(IR2))   
13499  
13500       IF(IORD.EQ.1) THEN
13501  
13502         FF = 0.
13503         DO IX = IX0,NXX
13504           IXL = IHTAB(IX)           
13505           X   = XHTAB(IX)       
13506           TX  = (X-XXTAB(IXL))/(XXTAB(IXL+1)-XXTAB(IXL))
13507           GL  = GET_PDFXQ(0,IXL,IMU,TX,TQ)
13508           FF  = FF + WH_C0KG(IX-IX0,IQ,IDF)*GL
13509         ENDDO    
13510         GET_FKH = CCCC * GET_AS(IR2,TR) * FF
13511
13512       ELSE
13513
13514         AS = GET_AS(IR2,TR)
13515         F1 = 0.
13516         F2 = 0.
13517         F3 = 0.
13518         F4 = 0.
13519         FACT = LOG(QMU/(QMASS*QMASS))         
13520         DO IX = IX0,NXX
13521           IXL = IHTAB(IX)           
13522           X   = XHTAB(IX)       
13523           TX  = (X-XXTAB(IXL))/(XXTAB(IXL+1)-XXTAB(IXL))
13524           GL  = GET_PDFXQ( 0,IXL,IMU,TX,TQ)
13525           SI  = GET_PDFXQ( 1,IXL,IMU,TX,TQ)
13526           QU  = GET_PDFXQ(ID,IXL,IMU,TX,TQ)
13527           I   = IX-IX0
13528           F1  = F1 +  WH_C0KG(I,IQ,IDF)*GL
13529           F2  = F2 + (WH_C1KG(I,IQ,IDF)+WH_C1BKG(I,IQ,IDF)*FACT)*GL
13530           F3  = F3 + (WH_C1KQ(I,IQ,IDF)+WH_C1BKQ(I,IQ,IDF)*FACT)*SI
13531           F4  = F4 + (WH_D1KQ(I,IQ,IDF)+WH_D1BKQ(I,IQ,IDF)*FACT)*QU
13532         ENDDO    
13533         GET_FKH = CCCC * (AS*F1+AS*AS*(F2+F3)) + AS*AS*F4
13534       ENDIF
13535
13536       RETURN
13537       END
13538  
13539 CDECK  ID>, FIL_F2H.
13540  
13541 C     =======================
13542       SUBROUTINE FIL_F2H(IDF)
13543 C     =======================
13544  
13545       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13546  
13547       EXTERNAL C02G_FUN, C12G_FUN, C1B2G_FUN
13548       EXTERNAL           C12Q_FUN, C1B2Q_FUN
13549       EXTERNAL           D12Q_FUN, D1B2Q_FUN
13550  
13551       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13552  
13553  
13554       COMMON/QCCONS/
13555      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13556      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13557      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13558      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13559      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13560      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13561  
13562  
13563  
13564       PARAMETER ( MXX = 410 )
13565       PARAMETER ( MQ2 =  120 )
13566
13567 C--   Do not set the following parameter to zero!
13568       PARAMETER ( NDFMAX = 20)
13569
13570  
13571       COMMON/QCGRID/
13572      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
13573      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
13574      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
13575      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
13576  
13577
13578       REAL
13579      +WH_C0KG,WH_C1KG,WH_C1BKG,
13580      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
13581
13582       COMMON/QCHWGT/
13583      +WH_C0KG(0:MXX,MQ2,4:7),
13584      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
13585      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
13586      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
13587
13588  
13589       QMASS  = CBMSTF(IDF)
13590
13591       EGAUSS = 0.001
13592  
13593       DO 400 IQ = 1,NQ2
13594
13595         QPCG = Q2TAB(IQ)
13596         APCG = 1.+4.*QMASS*QMASS/QPCG
13597
13598         IX0 = 1
13599         X0  = XHTAB(IX0)
13600
13601 *       WRITE(6,'('' Calculate F2H weights for IX ='',I4)') IX0
13602
13603         DO 200 IX = IX0,NXX
13604
13605           XI   = XHTAB(IX)
13606           XIP1 = XHTAB(IX+1)
13607           IF(IX.GT.IX0) XIM1 = XHTAB(IX-1)
13608           IF(XIP1.LE.X0*APCG) GOTO 200
13609           XI   = MAX(XI,X0*APCG)
13610           SIP1 = X0/XIP1
13611           SI   = X0/XI
13612
13613           CALL S1FUNC(C02G_FUN,SIP1,SI,S1FUN)
13614           IF(IX.EQ.IX0) THEN
13615             WH_C0KG(IX-IX0,IQ,IDF) = S1FUN
13616           ELSE
13617             SIM1 = X0/XIM1
13618             CALL S2FUNC(C02G_FUN,SI,SIM1,S2FUN)
13619             WH_C0KG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13620           ENDIF
13621
13622           CALL S1FUNC(C12G_FUN,SIP1,SI,S1FUN)
13623           IF(IX.EQ.IX0) THEN
13624             WH_C1KG(IX-IX0,IQ,IDF) = S1FUN
13625           ELSE
13626             SIM1 = X0/XIM1
13627             CALL S2FUNC(C12G_FUN,SI,SIM1,S2FUN)
13628             WH_C1KG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13629           ENDIF
13630
13631           CALL S1FUNC(C1B2G_FUN,SIP1,SI,S1FUN)
13632           IF(IX.EQ.IX0) THEN
13633             WH_C1BKG(IX-IX0,IQ,IDF) = S1FUN
13634           ELSE
13635             SIM1 = X0/XIM1
13636             CALL S2FUNC(C1B2G_FUN,SI,SIM1,S2FUN)
13637             WH_C1BKG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13638           ENDIF
13639
13640           CALL S1FUNC(C12Q_FUN,SIP1,SI,S1FUN)
13641           IF(IX.EQ.IX0) THEN
13642             WH_C1KQ(IX-IX0,IQ,IDF) = S1FUN
13643           ELSE
13644             SIM1 = X0/XIM1
13645             CALL S2FUNC(C12Q_FUN,SI,SIM1,S2FUN)
13646             WH_C1KQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13647           ENDIF
13648
13649           CALL S1FUNC(C1B2Q_FUN,SIP1,SI,S1FUN)
13650           IF(IX.EQ.IX0) THEN
13651             WH_C1BKQ(IX-IX0,IQ,IDF) = S1FUN
13652           ELSE
13653             SIM1 = X0/XIM1
13654             CALL S2FUNC(C1B2Q_FUN,SI,SIM1,S2FUN)
13655             WH_C1BKQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13656           ENDIF
13657
13658           CALL S1FUNC(D12Q_FUN,SIP1,SI,S1FUN)
13659           IF(IX.EQ.IX0) THEN
13660             WH_D1KQ(IX-IX0,IQ,IDF) = S1FUN
13661           ELSE
13662             SIM1 = X0/XIM1
13663             CALL S2FUNC(D12Q_FUN,SI,SIM1,S2FUN)
13664             WH_D1KQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13665           ENDIF
13666
13667           CALL S1FUNC(D1B2Q_FUN,SIP1,SI,S1FUN)
13668           IF(IX.EQ.IX0) THEN
13669             WH_D1BKQ(IX-IX0,IQ,IDF) = S1FUN
13670           ELSE
13671             SIM1 = X0/XIM1
13672             CALL S2FUNC(D1B2Q_FUN,SI,SIM1,S2FUN)
13673             WH_D1BKQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
13674           ENDIF
13675
13676  200    CONTINUE
13677
13678  400  CONTINUE
13679  
13680       RETURN
13681       END
13682  
13683 CDECK  ID>, C02G_FUN.
13684  
13685 C     =====================================
13686       DOUBLE PRECISION FUNCTION C02G_FUN(X)
13687 C     =====================================
13688       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13689  
13690       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13691
13692       DATA PI       /3.14159265359/
13693  
13694       FACTOR = QMASS*QMASS/QPCG
13695       C02G    = 0.
13696       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13697         XI   = 1./FACTOR
13698         ETA  = XI * (1.-X)/(4.*X) - 1.
13699         C02G = (C0_LG(ETA,XI)+C0_TG(ETA,XI)) * XI / (2.*PI)
13700       ENDIF
13701       C02G_FUN = (X-YWGT)*C02G/(X*X)
13702  
13703       RETURN
13704       END
13705  
13706 CDECK  ID>, C12G_FUN.
13707  
13708 C     =====================================
13709       DOUBLE PRECISION FUNCTION C12G_FUN(X)
13710 C     =====================================
13711       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13712  
13713  
13714       COMMON/QCCONS/
13715      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13716      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13717      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13718      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13719      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13720      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13721  
13722  
13723
13724       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13725
13726       FACTOR = QMASS*QMASS/QPCG
13727       C12G    = 0.
13728       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13729         XI   = 1./FACTOR
13730         ETA  = XI * (1.-X)/(4.*X) - 1.
13731         BET  = SQRT(ETA/(1.+ETA))
13732         RHO  = 1./(1.+ETA)
13733         C12G = CATF * (H1_ALG(ETA,XI)+H1_ATG(ETA,XI)) +
13734      +         CFTF * (H1_FLG(ETA,XI)+H1_FTG(ETA,XI)) +
13735      +  CATF * BET  * (GFUN_L(ETA,XI)+GFUN_T(ETA,XI)) +
13736      +  CATF * RHO  * (EFUN_LA(ETA,XI)+EFUN_TA(ETA,XI)) +
13737      +  CFTF * RHO  * (EFUN_LF(ETA,XI)+EFUN_TF(ETA,XI))
13738         C12G = C12G*4.*PI/FACTOR
13739       ENDIF
13740       C12G_FUN = (X-YWGT)*C12G/(X*X)
13741  
13742       RETURN
13743       END
13744  
13745 CDECK  ID>, C1B2G_FUN.
13746  
13747 C     ======================================
13748       DOUBLE PRECISION FUNCTION C1B2G_FUN(X)
13749 C     ======================================
13750       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13751  
13752  
13753       COMMON/QCCONS/
13754      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13755      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13756      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13757      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13758      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13759      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13760  
13761  
13762
13763       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13764
13765       FACTOR = QMASS*QMASS/QPCG
13766       C1B2G    = 0.
13767       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13768         XI    = 1./FACTOR
13769         ETA   = XI * (1.-X)/(4.*X) - 1.
13770         BET   = SQRT(ETA/(1.+ETA))
13771         RHO   = 1./(1.+ETA)
13772         C1B2G = CATF * (H1BAR_LG(ETA,XI)+H1BAR_TG(ETA,XI)) +
13773      +   CATF * BET  * (GBAR_L(ETA,XI)+GBAR_T(ETA,XI)) +
13774      +   CATF * RHO  * (EBAR_LA(ETA,XI)+EBAR_TA(ETA,XI))
13775         C1B2G = C1B2G*4.*PI/FACTOR
13776       ENDIF
13777       C1B2G_FUN = (X-YWGT)*C1B2G/(X*X)
13778  
13779       RETURN
13780       END
13781  
13782 CDECK  ID>, C12Q_FUN.
13783  
13784 C     =====================================
13785       DOUBLE PRECISION FUNCTION C12Q_FUN(X)
13786 C     =====================================
13787       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13788  
13789  
13790       COMMON/QCCONS/
13791      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13792      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13793      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13794      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13795      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13796      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13797  
13798  
13799
13800       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13801
13802       FACTOR = QMASS*QMASS/QPCG
13803       C12Q    = 0.
13804       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13805         XI   = 1./FACTOR
13806         ETA  = XI * (1.-X)/(4.*X) - 1.
13807         BET  = SQRT(ETA/(1.+ETA))
13808         BET3 = BET*BET*BET
13809         RHO  = 1./(1.+ETA)
13810         C12Q = CFTF * (H1_HLQ(ETA,XI)+H1_HTQ(ETA,XI)) +
13811      +  CFTF * BET3 * (GFUN_L(ETA,XI)+GFUN_T(ETA,XI))
13812         C12Q = C12Q*4.*PI/FACTOR
13813       ENDIF
13814       C12Q_FUN = (X-YWGT)*C12Q/(X*X)
13815  
13816       RETURN
13817       END
13818  
13819 CDECK  ID>, C1B2Q_FUN.
13820  
13821 C     ======================================
13822       DOUBLE PRECISION FUNCTION C1B2Q_FUN(X)
13823 C     ======================================
13824       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13825  
13826  
13827       COMMON/QCCONS/
13828      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13829      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13830      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13831      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13832      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13833      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13834  
13835  
13836
13837       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13838
13839       FACTOR = QMASS*QMASS/QPCG
13840       C1B2Q    = 0.
13841       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13842         XI    = 1./FACTOR
13843         ETA   = XI * (1.-X)/(4.*X) - 1.
13844         BET   = SQRT(ETA/(1.+ETA))
13845         BET3  = BET*BET*BET
13846         RHO   = 1./(1.+ETA)
13847         C1B2Q = CFTF * (H1BAR_HLQ(ETA,XI)+H1BAR_HTQ(ETA,XI)) +
13848      +   CFTF * BET3 * (GBAR_L(ETA,XI)+GBAR_T(ETA,XI))
13849         C1B2Q = C1B2Q*4.*PI/FACTOR
13850       ENDIF
13851       C1B2Q_FUN = (X-YWGT)*C1B2Q/(X*X)
13852  
13853       RETURN
13854       END
13855  
13856 CDECK  ID>, D12Q_FUN.
13857  
13858 C     =====================================
13859       DOUBLE PRECISION FUNCTION D12Q_FUN(X)
13860 C     =====================================
13861       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13862  
13863  
13864       COMMON/QCCONS/
13865      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13866      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13867      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13868      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13869      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13870      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13871  
13872  
13873
13874       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13875
13876       FACTOR = QMASS*QMASS/QPCG
13877       D12Q    = 0.
13878       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13879         XI   = 1./FACTOR
13880         ETA  = XI * (1.-X)/(4.*X) - 1.
13881         IF(QPCG.LE.1.5) THEN
13882           D12Q = CFTF * (H1F_LLQ(ETA,XI)+H1F_LTQ(ETA,XI))
13883         ELSE
13884           D12Q = CFTF * (H1_LLQ(ETA,XI)+H1_LTQ(ETA,XI))
13885         ENDIF
13886         D12Q = D12Q*4.*PI/FACTOR
13887       ENDIF
13888       D12Q_FUN = (X-YWGT)*D12Q/(X*X)
13889  
13890       RETURN
13891       END
13892  
13893 CDECK  ID>, D1B2Q_FUN.
13894  
13895 C     ======================================
13896       DOUBLE PRECISION FUNCTION D1B2Q_FUN(X)
13897 C     ======================================
13898       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13899  
13900  
13901       COMMON/QCCONS/
13902      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13903      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13904      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13905      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13906      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13907      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13908  
13909  
13910
13911       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13912
13913       FACTOR = QMASS*QMASS/QPCG
13914       D1B2Q    = 0.
13915       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
13916         XI   = 1./FACTOR
13917         ETA  = XI * (1.-X)/(4.*X) - 1.
13918         IF(QPCG.LE.1.5) THEN
13919           D1B2Q = CFTF * H1BAR_LTQ(ETA,XI)
13920         ELSE
13921           D1B2Q = 0.
13922         ENDIF
13923         D1B2Q = D1B2Q*4.*PI/FACTOR
13924       ENDIF
13925       D1B2Q_FUN = (X-YWGT)*D1B2Q/(X*X)
13926  
13927       RETURN
13928       END
13929  
13930 CDECK  ID>, FIL_FLH.
13931  
13932 C     =======================
13933       SUBROUTINE FIL_FLH(IDF)
13934 C     ======================= 
13935  
13936       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
13937  
13938       EXTERNAL C0LG_FUN, C1LG_FUN, C1BLG_FUN
13939       EXTERNAL           C1LQ_FUN, C1BLQ_FUN
13940       EXTERNAL           D1LQ_FUN, D1BLQ_FUN
13941  
13942       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
13943  
13944  
13945       COMMON/QCCONS/
13946      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
13947      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
13948      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
13949      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
13950      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
13951      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
13952  
13953  
13954  
13955       PARAMETER ( MXX = 410 )
13956       PARAMETER ( MQ2 =  120 )
13957
13958 C--   Do not set the following parameter to zero!
13959       PARAMETER ( NDFMAX = 20)
13960
13961  
13962       COMMON/QCGRID/
13963      +SCAX0,SCAQ0,XMICUT,QMICUT,QMACUT,RS2CUT,QMINAS,
13964      +XXTAB(MXX),Q2TAB(MQ2),XHTAB(MXX),THRS34,THRS45,
13965      +NXX,NQ2,NGRVER,IHTAB(MXX),NFMAP(MQ2),IQF2C(MQ2),
13966      +IQF2B(MQ2),IQFLC(MQ2),IQFLB(MQ2),IFAILC(MXX,MQ2)
13967  
13968
13969       REAL
13970      +WH_C0KG,WH_C1KG,WH_C1BKG,
13971      +WH_C1KQ,WH_C1BKQ,WH_D1KQ,WH_D1BKQ
13972
13973       COMMON/QCHWGT/
13974      +WH_C0KG(0:MXX,MQ2,4:7),
13975      +WH_C1KG(0:MXX,MQ2,4:7),WH_C1BKG(0:MXX,MQ2,4:7),
13976      +WH_C1KQ(0:MXX,MQ2,4:7),WH_C1BKQ(0:MXX,MQ2,4:7),
13977      +WH_D1KQ(0:MXX,MQ2,4:7),WH_D1BKQ(0:MXX,MQ2,4:7)
13978
13979  
13980       QMASS  = CBMSTF(IDF)
13981  
13982       EGAUSS = 0.001
13983  
13984       DO 400 IQ = 1,NQ2
13985
13986         QPCG = Q2TAB(IQ)
13987         APCG = 1.+4.*QMASS*QMASS/QPCG
13988
13989         IX0 = 1
13990         X0  = XHTAB(IX0)
13991
13992 *       WRITE(6,'('' Calculate FLH weights for IX ='',I4)') IX0
13993
13994         DO 200 IX = IX0,NXX
13995
13996           XI   = XHTAB(IX)
13997           XIP1 = XHTAB(IX+1)
13998           IF(IX.GT.IX0) XIM1 = XHTAB(IX-1)
13999           IF(XIP1.LE.X0*APCG) GOTO 200
14000           XI   = MAX(XI,X0*APCG)
14001           SIP1 = X0/XIP1
14002           SI   = X0/XI
14003
14004           CALL S1FUNC(C0LG_FUN,SIP1,SI,S1FUN)
14005           IF(IX.EQ.IX0) THEN
14006             WH_C0KG(IX-IX0,IQ,IDF) = S1FUN
14007           ELSE
14008             SIM1 = X0/XIM1
14009             CALL S2FUNC(C0LG_FUN,SI,SIM1,S2FUN)
14010             WH_C0KG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14011           ENDIF
14012
14013           CALL S1FUNC(C1LG_FUN,SIP1,SI,S1FUN)
14014           IF(IX.EQ.IX0) THEN
14015             WH_C1KG(IX-IX0,IQ,IDF) = S1FUN
14016           ELSE
14017             SIM1 = X0/XIM1
14018             CALL S2FUNC(C1LG_FUN,SI,SIM1,S2FUN)
14019             WH_C1KG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14020           ENDIF
14021
14022           CALL S1FUNC(C1BLG_FUN,SIP1,SI,S1FUN)
14023           IF(IX.EQ.IX0) THEN
14024             WH_C1BKG(IX-IX0,IQ,IDF) = S1FUN
14025           ELSE
14026             SIM1 = X0/XIM1
14027             CALL S2FUNC(C1BLG_FUN,SI,SIM1,S2FUN)
14028             WH_C1BKG(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14029           ENDIF
14030
14031           CALL S1FUNC(C1LQ_FUN,SIP1,SI,S1FUN)
14032           IF(IX.EQ.IX0) THEN
14033             WH_C1KQ(IX-IX0,IQ,IDF) = S1FUN
14034           ELSE
14035             SIM1 = X0/XIM1
14036             CALL S2FUNC(C1LQ_FUN,SI,SIM1,S2FUN)
14037             WH_C1KQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14038           ENDIF
14039
14040           CALL S1FUNC(C1BLQ_FUN,SIP1,SI,S1FUN)
14041           IF(IX.EQ.IX0) THEN
14042             WH_C1BKQ(IX-IX0,IQ,IDF) = S1FUN
14043           ELSE
14044             SIM1 = X0/XIM1
14045             CALL S2FUNC(C1BLQ_FUN,SI,SIM1,S2FUN)
14046             WH_C1BKQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14047           ENDIF
14048
14049           CALL S1FUNC(D1LQ_FUN,SIP1,SI,S1FUN)
14050           IF(IX.EQ.IX0) THEN
14051             WH_D1KQ(IX-IX0,IQ,IDF) = S1FUN
14052           ELSE
14053             SIM1 = X0/XIM1
14054             CALL S2FUNC(D1LQ_FUN,SI,SIM1,S2FUN)
14055             WH_D1KQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14056           ENDIF
14057
14058 *         CALL S1FUNC(D1BLQ_FUN,SIP1,SI,S1FUN)
14059 *         IF(IX.EQ.IX0) THEN
14060 *           WH_D1BKQ(IX-IX0,IQ,IDF) = S1FUN
14061 *         ELSE
14062 *           SIM1 = X0/XIM1
14063 *           CALL S2FUNC(D1BLQ_FUN,SI,SIM1,S2FUN)
14064 *           WH_D1BKQ(IX-IX0,IQ,IDF) = S1FUN-S2FUN
14065 *         ENDIF
14066           WH_D1BKQ(IX-IX0,IQ,IDF) = 0.
14067
14068  200    CONTINUE
14069
14070  400  CONTINUE
14071  
14072       RETURN
14073       END
14074  
14075 CDECK  ID>, C0LG_FUN.
14076  
14077 C     =====================================
14078       DOUBLE PRECISION FUNCTION C0LG_FUN(X)
14079 C     =====================================
14080       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14081  
14082       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14083
14084       DATA PI       /3.14159265359/
14085  
14086       FACTOR = QMASS*QMASS/QPCG
14087       C0LG    = 0.
14088       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14089         XI   = 1./FACTOR
14090         ETA  = XI * (1.-X)/(4.*X) - 1.
14091         C0LG = C0_LG(ETA,XI) * XI / (2.*PI)
14092       ENDIF
14093       C0LG_FUN = (X-YWGT)*C0LG/(X*X)
14094  
14095       RETURN
14096       END
14097  
14098 CDECK  ID>, C1LG_FUN.
14099  
14100 C     =====================================
14101       DOUBLE PRECISION FUNCTION C1LG_FUN(X)
14102 C     =====================================
14103       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14104  
14105  
14106       COMMON/QCCONS/
14107      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14108      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14109      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14110      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14111      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14112      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14113  
14114  
14115
14116       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14117
14118       FACTOR = QMASS*QMASS/QPCG
14119       C1LG    = 0.
14120       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14121         XI   = 1./FACTOR
14122         ETA  = XI * (1.-X)/(4.*X) - 1.
14123         BET  = SQRT(ETA/(1.+ETA))
14124         RHO  = 1./(1.+ETA)
14125         C1LG = CATF * H1_ALG(ETA,XI) +
14126      +         CFTF * H1_FLG(ETA,XI) +
14127      +  CATF * BET  * GFUN_L(ETA,XI) +
14128      +  CATF * RHO  * EFUN_LA(ETA,XI) +
14129      +  CFTF * RHO  * EFUN_LF(ETA,XI)
14130         C1LG = C1LG*4.*PI/FACTOR
14131       ENDIF
14132       C1LG_FUN = (X-YWGT)*C1LG/(X*X)
14133  
14134       RETURN
14135       END
14136  
14137 CDECK  ID>, C1BLG_FUN.
14138  
14139 C     ======================================
14140       DOUBLE PRECISION FUNCTION C1BLG_FUN(X)
14141 C     ======================================
14142       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14143  
14144  
14145       COMMON/QCCONS/
14146      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14147      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14148      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14149      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14150      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14151      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14152  
14153  
14154
14155       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14156
14157       FACTOR = QMASS*QMASS/QPCG
14158       C1BLG    = 0.
14159       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14160         XI    = 1./FACTOR
14161         ETA   = XI * (1.-X)/(4.*X) - 1.
14162         BET   = SQRT(ETA/(1.+ETA))
14163         RHO   = 1./(1.+ETA)
14164         C1BLG = CATF * H1BAR_LG(ETA,XI) +
14165      +   CATF * BET  * GBAR_L(ETA,XI) +
14166      +   CATF * RHO  * EBAR_LA(ETA,XI)
14167         C1BLG = C1BLG*4.*PI/FACTOR
14168       ENDIF
14169       C1BLG_FUN = (X-YWGT)*C1BLG/(X*X)
14170  
14171       RETURN
14172       END
14173  
14174 CDECK  ID>, C1LQ_FUN.
14175  
14176 C     =====================================
14177       DOUBLE PRECISION FUNCTION C1LQ_FUN(X)
14178 C     =====================================
14179       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14180  
14181  
14182       COMMON/QCCONS/
14183      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14184      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14185      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14186      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14187      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14188      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14189  
14190  
14191
14192       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14193
14194       FACTOR = QMASS*QMASS/QPCG
14195       C1LQ    = 0.
14196       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14197         XI   = 1./FACTOR
14198         ETA  = XI * (1.-X)/(4.*X) - 1.
14199         BET  = SQRT(ETA/(1.+ETA))
14200         BET3 = BET*BET*BET
14201         RHO  = 1./(1.+ETA)
14202         C1LQ = CFTF * H1_HLQ(ETA,XI) +
14203      +  CFTF * BET3 * GFUN_L(ETA,XI)
14204         C1LQ = C1LQ*4.*PI/FACTOR
14205       ENDIF
14206       C1LQ_FUN = (X-YWGT)*C1LQ/(X*X)
14207  
14208       RETURN
14209       END
14210  
14211 CDECK  ID>, C1BLQ_FUN.
14212  
14213 C     ======================================
14214       DOUBLE PRECISION FUNCTION C1BLQ_FUN(X)
14215 C     ======================================
14216       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14217  
14218  
14219       COMMON/QCCONS/
14220      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14221      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14222      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14223      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14224      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14225      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14226  
14227  
14228
14229       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14230
14231       FACTOR = QMASS*QMASS/QPCG
14232       C1BLQ    = 0.
14233       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14234         XI    = 1./FACTOR
14235         ETA   = XI * (1.-X)/(4.*X) - 1.
14236         BET   = SQRT(ETA/(1.+ETA))
14237         BET3  = BET*BET*BET
14238         RHO   = 1./(1.+ETA)
14239         C1BLQ = CFTF * H1BAR_HLQ(ETA,XI) +
14240      +   CFTF * BET3 * GBAR_L(ETA,XI)
14241         C1BLQ = C1BLQ*4.*PI/FACTOR
14242       ENDIF
14243       C1BLQ_FUN = (X-YWGT)*C1BLQ/(X*X)
14244  
14245       RETURN
14246       END
14247  
14248 CDECK  ID>, D1LQ_FUN.
14249  
14250 C     =====================================
14251       DOUBLE PRECISION FUNCTION D1LQ_FUN(X)
14252 C     =====================================
14253       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14254  
14255  
14256       COMMON/QCCONS/
14257      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14258      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14259      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14260      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14261      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14262      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14263  
14264  
14265
14266       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14267
14268       FACTOR = QMASS*QMASS/QPCG
14269       D1LQ    = 0.
14270       IF(X.LT.(1./(1.+4.*FACTOR))) THEN
14271         XI   = 1./FACTOR
14272         ETA  = XI * (1.-X)/(4.*X) - 1.
14273         IF(QPCG.LE.1.5) THEN
14274           D1LQ = CFTF * H1F_LLQ(ETA,XI)
14275         ELSE
14276           D1LQ = CFTF * H1_LLQ(ETA,XI)
14277         ENDIF
14278         D1LQ = D1LQ*4.*PI/FACTOR
14279       ENDIF
14280       D1LQ_FUN = (X-YWGT)*D1LQ/(X*X)
14281  
14282       RETURN
14283       END
14284  
14285 CDECK  ID>, D1BLQ_FUN.
14286  
14287 C     ======================================
14288       DOUBLE PRECISION FUNCTION D1BLQ_FUN(X)
14289 C     ======================================
14290       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
14291  
14292  
14293       COMMON/QCCONS/
14294      +PI,PROTON,EUTRON,UCLEON,UDSCBT(6),AAM2H,BBM2H,AAM2L,BBM2L,
14295      +AAAR2,BBBR2,FL_FAC,CBMSTF(4:7),CHARGE(4:7),
14296      +C1S3,C2S3,C4S3,C5S3,C8S3,C11S3,C14S3,C16S3,C20S3,C22S3,C28S3,
14297      +C38S3,C40S3,C44S3,C52S3,C136S3,C11S6,C2S9,C4S9,C10S9,C14S9,C16S9,
14298      +C40S9,C44S9,C62S9,C112S9,C182S9,C11S12,C35S18,C61S12,C215S1,
14299      +C29S12,CPI2S3,CPIA,CPIB,CPIC,CPID,CPIE,CPIF,CCA,CCF,CTF,CATF,CFTF
14300  
14301  
14302
14303       COMMON /QCWGTC/ YWGT,QPCG,QMASS,EGAUSS,NF
14304
14305       D1BLQ_FUN = 0.
14306  
14307       RETURN
14308       END
14309
14310 CDECK  ID>, BORN.
14311
14312 c This gives the Born coefficients 
14313 c For QCD take tf = 1d0/2d0, for QED take  tf = 1d0.
14314 c eta = (s - 4d0*m2)/4d0/m2, s is the gamma* gluon (gamma) CM Energy
14315 c xi = Q^2/m2
14316
14317 c     =======================================
14318       double precision function C0_Lg(eta,xi)
14319 c     =======================================
14320
14321 c     Longitudinal coefficient function: PL B347(1995)143 eq. (7).
14322 c     This function is called born_l in the original code.
14323
14324       implicit none
14325       double precision eta, xi, pi, tf
14326 *     common/group/ca, cf, tf
14327       parameter(tf = 0.5d0)
14328       parameter(pi = 3.14159265359d0)
14329
14330       C0_Lg  = 0.5d0*pi*tf*xi*(1.d0 + eta + 0.25d0*xi)**(-3.d0)*
14331      #         (2.d0*dsqrt(eta*(1.d0 + eta)) -
14332      #         dlog((dsqrt(1.d0 + eta) + dsqrt(eta))/
14333      #              (dsqrt(1.d0 + eta) - dsqrt(eta))))
14334
14335       return
14336       end
14337
14338 c     =======================================
14339       double precision function C0_Tg(eta,xi)
14340 c     =======================================
14341
14342 c     Transverse coefficient function: PL B347(1995)143 eq. (8).
14343 c     This function is called born_t in the original code.
14344
14345       implicit none
14346       double precision eta, xi, pi, tf
14347 *     common/group/ca, cf, tf
14348       parameter(tf = 0.5d0)
14349       parameter(pi = 3.14159265359d0)
14350
14351       C0_Tg  = 0.5d0*pi*tf*(1.d0 + eta + 0.25d0*xi)**(-3)*
14352      #         (-2.d0*((1.d0 + eta - 0.25d0*xi)**2 + eta + 1.d0)*
14353      #         dsqrt(eta/(1.d0 + eta)) + (2.d0*(1.d0 + eta)**2 +
14354      #         0.125d0*xi**2 + 2.d0*eta + 1.d0)*
14355      #         dlog((dsqrt(1.d0 + eta) + dsqrt(eta))/
14356      #              (dsqrt(1.d0 + eta) - dsqrt(eta))))
14357
14358       return
14359       end
14360
14361 CDECK  ID>, ASYMP.
14362
14363 c These are the functions that give the asymptotic dependence of the
14364 c coefficient functions with the appropriate factors. xi = mq2/m2 (Q^2/m2) 
14365 c If xi is small, the regular routines have convergence
14366 c problems and we take the limit. (not anymore after code update 03/06/96).
14367
14368 c     ==========================================
14369       double precision function Gfun_L(dummy,xi)
14370 c     ==========================================
14371
14372 c     Longitudinal: equation (19) in PLB347 (1995) 143 - 151
14373 c     This function is called asymp_l in the original code.
14374
14375       implicit none
14376       double precision xilast, store
14377       double precision dummy
14378       double precision xi, pi, term1
14379       double precision fii, fjj
14380 *     double precision fii_lim, fjj_lim
14381       parameter (pi = 3.14159265359d0)
14382
14383       save xilast, store
14384
14385       data xilast, store /0.D0, 0.D0/
14386
14387       if(xi.eq.xilast) then
14388         Gfun_L = store
14389         return
14390       endif
14391
14392 *     term1 = 1.d0/(1.d0 + 0.25d0*xi)
14393
14394 *     if (xi .le. 1.d-1) then
14395 *        Gfun_L = 1.d0/6.d0/pi*(-4.d0/3.d0*term1 + 
14396 *    #        (1.d0  - 1.d0/6.d0*term1)*fjj_lim(xi) -
14397 *    #        2.d0* (-1.d0/3.d0 + xi/15.d0 - xi**2/70.d0) +
14398 *    #        0.25d0*term1*fii_lim(xi) -
14399 *    #        3.d0* (1.d0/3.d0 - xi/10.d0 + 11.d0*xi**2/420.d0))
14400 *     else
14401 *        Gfun_L = 1.d0/6.d0/pi*(4.d0/xi - 4.d0/3.d0*term1 
14402 *    #        + (1.d0 - 2.d0/xi - 1.d0/6.d0*term1)*fjj(xi)
14403 *    #        - (3.d0/xi + 0.25d0*term1)*fii(xi))
14404 *     endif
14405
14406       term1   = 1.d0/(1.d0 + 0.25d0*xi)
14407
14408       Gfun_L  = 1.d0/6.d0/pi*(4.d0/xi - 4.d0/3.d0*term1 
14409      #     + (1.d0 - 2.d0/xi - 1.d0/6.d0*term1)*fjj(xi)
14410      #     - (3.d0/xi + 0.25d0*term1)*fii(xi))
14411
14412       xilast = xi
14413       store  = Gfun_L
14414
14415       return
14416       end
14417
14418 c     ==========================================
14419       double precision function Gfun_T(dummy,xi)
14420 c     ==========================================
14421
14422 c     Transverse: equation (20) in PLB347 (1995) 143 - 151
14423 c     This function is called asymp_t in the original code.
14424
14425       implicit none
14426       double precision xilast, store
14427       double precision dummy
14428       double precision xi, pi, term1
14429       double precision fii, fjj
14430 *     double precision fii_lim, fjj_lim
14431       parameter (pi = 3.14159265359d0)
14432
14433       save xilast, store
14434
14435       data xilast, store /0.D0, 0.D0/
14436
14437       if(xi.eq.xilast) then
14438         Gfun_T = store
14439         return
14440       endif
14441
14442 *     term1 = 1.d0/(1.d0 + 0.25d0*xi)
14443
14444 *     if (xi .le. 1.d-1) then
14445 *        Gfun_T = 1.d0/6.d0/pi*(4.d0/3.d0*term1 + (7.d0/6.d0 +
14446 *    #        1.d0/6.d0*term1)*fjj_lim(xi) + 1/3.d0*
14447 *    #        (-1.d0/3.d0 + xi/15.d0 - xi**2/70.d0) +
14448 *    #        (1.d0 + 0.25d0*term1)*fii_lim(xi) + 2.d0*
14449 *    #        (1.d0/3.d0 - xi/10.d0 + 11.d0*xi**2/420.d0))
14450 *     else
14451 *        Gfun_T = 1.d0/6.d0/pi*(-2.d0/3.d0/xi + 4.d0/3.d0*term1
14452 *    #        + (7.d0/6.d0 + 1.d0/3.d0/xi + 1.d0/6.d0*term1)*fjj(xi)
14453 *    #        + (1.d0 + 2.d0/xi + 0.25d0*term1)*fii(xi))
14454 *     endif
14455
14456       term1   = 1.d0/(1.d0 + 0.25d0*xi)
14457
14458       Gfun_t  = 1.d0/6.d0/pi*(-2.d0/3.d0/xi + 4.d0/3.d0*term1
14459      #     + (7.d0/6.d0 + 1.d0/3.d0/xi + 1.d0/6.d0*term1)*fjj(xi)
14460      #     + (1.d0 + 2.d0/xi + 0.25d0*term1)*fii(xi))
14461
14462       xilast = xi
14463       store  = Gfun_T
14464
14465       return
14466       end
14467
14468 c     ==========================================
14469       double precision function Gbar_L(dummy,xi)
14470 c     ==========================================
14471
14472 c     Longitudinal mass factorization: (21) in PLB347 (1995) 143 - 151
14473 c     This function is called asympbar_l in the original code.
14474
14475       implicit none
14476       double precision xilast, store
14477       double precision dummy
14478       double precision xi, pi, term1
14479       double precision fjj
14480 *     double precision fjj_lim
14481       parameter (pi = 3.14159265359d0)
14482
14483       save xilast, store
14484
14485       data xilast, store /0.D0, 0.D0/
14486
14487       if(xi.eq.xilast) then
14488         Gbar_L = store
14489         return
14490       endif
14491
14492 *     term1 = 1.d0/(1.d0 + 0.25d0*xi)
14493
14494 *     if (xi .le. 1.d-1) then
14495 *        Gbar_L = 1.d0/6.d0/pi*(0.5d0*term1 + 
14496 *    #        0.25d0*term1*fjj_lim(xi) +
14497 *    #        3.d0* (-1.d0/3.d0 + xi/15.d0 - xi**2/70.d0))
14498 *     else
14499 *        Gbar_L = 1.d0/6.d0/pi*(-6.d0/xi + 0.5d0*term1
14500 *    #        + (3.d0/xi + 0.25d0*term1)*fjj(xi))
14501 *     endif
14502
14503       term1   = 1.d0/(1.d0 + 0.25d0*xi)
14504
14505       Gbar_L  = 1.d0/6.d0/pi*(-6.d0/xi + 0.5d0*term1
14506      #     + (3.d0/xi + 0.25d0*term1)*fjj(xi))
14507
14508       xilast = xi
14509       store  = Gbar_L
14510
14511       return
14512       end
14513
14514 c     ==========================================
14515       double precision function Gbar_T(dummy,xi)
14516 c     ==========================================
14517
14518 c     transverse mass factorization: (22) in PLB347 (1995) 143 - 151
14519 c     This function is called asympbar_t in the original code.
14520
14521       implicit none
14522       double precision xilast, store
14523       double precision dummy
14524       double precision xi, pi, term1
14525       double precision fjj
14526 *     double precision fjj_lim
14527       parameter (pi = 3.14159265359d0)
14528
14529       save xilast, store
14530
14531       data xilast, store /0.D0, 0.D0/
14532
14533       if(xi.eq.xilast) then
14534         Gbar_T = store
14535         return
14536       endif
14537
14538 *     term1 = 1.d0/(1.d0 + 0.25d0*xi)
14539
14540 *     if (xi .le. 1.d-1) then
14541 *        Gbar_T = 1.d0/6.d0/pi*(-.5d0*term1 -
14542 *    #        (1.d0 + 0.25d0*term1)*fjj_lim(xi) -
14543 *    #        2.d0* (-1.d0/3.d0 + xi/15.d0 - xi**2/70.d0))
14544 *     else
14545 *        Gbar_T = 1.d0/6.d0/pi*(4.d0/xi - 0.5d0*term1
14546 *    #        - (1.d0 + 2.d0/xi + 0.25d0*term1)*fjj(xi))
14547 *     endif
14548
14549       term1   = 1.d0/(1.d0 + 0.25d0*xi)
14550
14551       Gbar_T  = 1.d0/6.d0/pi*(4.d0/xi - 0.5d0*term1
14552      #     - (1.d0 + 2.d0/xi + 0.25d0*term1)*fjj(xi))
14553
14554       xilast = xi
14555       store  = Gbar_T
14556
14557       return
14558       end
14559
14560 c     =================================
14561       double precision function fii(xi)
14562 c     =================================
14563
14564 c     Equation (24) in PLB347 (1995) 143 - 151
14565
14566       implicit none
14567       double precision pi, term1, term2, xi, di_log
14568       parameter (pi = 3.14159265359d0)
14569
14570       term1 = dsqrt(xi)
14571       term2 = dsqrt(4.d0 + xi)
14572       fii = 4.d0/term1/term2*(-pi*pi/6.d0 
14573      #      - 0.5d0*(dlog((term2 + term1)/(term2 - term1)))**2
14574      #      + (dlog(0.5d0*(1.d0 - term1/term2)))**2 
14575      #      + 2.d0*di_log(0.5d0*(1.d0 - term1/term2)))
14576
14577       return
14578       end
14579
14580 c     =================================
14581       double precision function fjj(xi)
14582 c     =================================
14583
14584 c     Equation (23) in PLB347 (1995) 143 - 151
14585
14586       implicit none
14587       double precision pi, xi, term1, term2
14588       parameter (pi = 3.14159265359d0)
14589
14590       term1 = dsqrt(xi)
14591       term2 = dsqrt(4.d0 + xi)
14592       fjj = 4.d0/term1/term2*dlog((term2 + term1)/(term2 - term1))
14593
14594       return
14595       end
14596
14597 c     =====================================
14598       double precision function fii_lim(xi)
14599 c     =====================================
14600
14601 c     this gives fii(xi) in the limit that xi -> 0 up to xi**2
14602
14603       implicit none
14604       double precision xi
14605
14606       fii_lim = xi/3.d0 - xi**2/10.d0
14607
14608       return
14609       end
14610
14611 c     =====================================
14612       double precision function fjj_lim(xi)
14613 c     =====================================
14614
14615 c     this gives fjj(xi) in the limit that xi -> 0 up to xi**2
14616
14617       implicit none
14618       double precision xi
14619
14620       fjj_lim = 2.d0 - xi/3.d0 + xi**2/15.d0
14621
14622       return
14623       end
14624
14625 c     ===================================
14626       double precision function di_log(x)
14627 c     ===================================
14628
14629 c     Equation (25) in PLB347 (1995) 143 - 151
14630
14631       implicit double precision  (a-z)
14632       dimension b(8)
14633       integer ncall
14634       data ncall/0/,pi6/1.644934066848226d+00/,een,vier/1.d+00,.25d+00/
14635
14636       ncall = 0
14637       if(ncall.eq.0)go to 2
14638 1     if(x.lt.0)go to 3
14639       if(x.gt.0.5)go to 4
14640       z=-dlog(1.-x)
14641 7     z2=z*z
14642       di_log=z*(z2*(z2*(z2*(z2*(z2*(z2*(z2*b(8)+b(7))+b(6))
14643      1 +b(5))+b(4))+b(3))+b(2))+een)-z2*vier
14644       if(x.gt.een)di_log=-di_log-.5*u*u+2.*pi6
14645       return
14646 2     b(1)=een
14647       b(2)=een/36.
14648       b(3)=-een/3600.
14649       b(4)=een/211680.
14650       b(5)=-een/(30.*362880.d+00)
14651       b(6)=5./(66.*39916800.d+00)
14652       b(7)=-691./(2730.*39916800.d+00*156.)
14653       b(8)=een/(39916800.d+00*28080.)
14654       ncall=1
14655       go to 1
14656 3     if(x.gt.-een)go to 5
14657       y=een/(een-x)
14658       z=-dlog(een-y)
14659       z2=z*z
14660       u=dlog(y)
14661       di_log=z*(z2*(z2*(z2*(z2*(z2*(z2*(z2*b(8)+b(7))+b(6))
14662      1 +b(5))+b(4))+b(3))+b(2))+een)-z2*vier-u*(z+.5*u)-pi6
14663       return
14664 4     if(x.ge.een)go to 10
14665       y=een-x
14666       z=-dlog(x)
14667 6     u=dlog(y)
14668       z2=z*z
14669       di_log=-z*(z2*(z2*(z2*(z2*(z2*(z2*(z2*b(8)+b(7))+b(6))
14670      1 +b(5))+b(4))+b(3))+b(2))+een-u)+z2*vier+pi6
14671       if(x.gt.een)di_log=-di_log-.5*z*z+pi6*2.
14672       return
14673 5     y=een/(een-x)
14674       z=-dlog(y)
14675       z2=z*z
14676       di_log=-z*(z2*(z2*(z2*(z2*(z2*(z2*(z2*b(8)+b(7))+b(6))
14677      1 +b(5))+b(4))+b(3))+b(2))+een)-z2*vier
14678       return
14679 10    if(x.eq.een)go to 20
14680       xx=1./x
14681       if(x.gt.2.)go to 11
14682       z=dlog(x)
14683       y=1.-xx
14684       go to 6
14685 11    u=dlog(x)
14686       z=-dlog(1.-xx)
14687       go to 7
14688 20    di_log=pi6
14689
14690       return
14691       end
14692
14693 CDECK  ID>, THRESH.
14694
14695 c These are the functions that give the threshold dependence of the 
14696 c coefficient functions with the appropriate factors.
14697 c eta = (W^2 - 4d0*m2)/4d0/m2  where W is the CM energy of the 
14698 c gamma* parton system. xi = mq2/m2 (Q^2/m2)
14699
14700 c     =========================================
14701       double precision function Efun_LF(eta,xi)
14702 c     =========================================
14703
14704 c     Longitudinal CF group structure: eq (13) in PLB347 (195) 143 - 151
14705 c     This function is called threshf_l in the original code.
14706
14707       implicit none
14708       double precision pi, eta, xi, beta, term1
14709       parameter (pi = 3.14159265359d0)
14710
14711       beta = dsqrt(eta/(1.d0 + eta))
14712       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14713       Efun_LF = 1.d0/6.d0/pi*xi*term1**3*beta*beta*pi*pi/2.d0
14714
14715       return
14716       end
14717
14718 c     =========================================
14719       double precision function Efun_TF(eta,xi)
14720 c     =========================================
14721
14722 c     Transverse CF group structure: eq (14) in PLB347 (195) 143 - 151
14723 c     This function is called threshf_t in the original code.
14724
14725       implicit none
14726       double precision pi, eta, xi, beta, term1
14727       parameter (pi = 3.14159265359d0)
14728
14729       beta = dsqrt(eta/(1.d0 + eta))
14730       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14731       Efun_TF = 0.25d0/pi*term1*pi*pi/2.d0
14732
14733       return
14734       end
14735
14736 c     =========================================
14737       double precision function Efun_LA(eta,xi)
14738 c     =========================================
14739
14740 c     Longitudinal CA group structure: eq (15) in PLB347 (195) 143 - 151
14741 c     This function is called thresha_l in the original code.
14742
14743       implicit none
14744       double precision pi, eta, xi, beta, term1
14745       parameter (pi = 3.14159265359d0)
14746
14747       beta = dsqrt(eta/(1.d0 + eta))
14748       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14749       Efun_LA = 1.d0/6.d0/pi*xi*term1**3*beta**2*
14750      #     (beta*(dlog(8.d0*beta*beta))**2
14751      #     - 5.d0*beta*dlog(8.d0*beta*beta) - 0.25d0*pi*pi)
14752
14753       return
14754       end
14755
14756 c     =========================================
14757       double precision function Efun_TA(eta,xi)
14758 c     =========================================
14759
14760 c     Transverse CA group structure: eq (16) in PLB347 (195) 143 - 151
14761 c     This function is called thresha_t in the original code.
14762       implicit none
14763       double precision pi, eta, xi, beta, term1
14764       parameter (pi = 3.14159265359d0)
14765
14766       beta = dsqrt(eta/(1.d0 + eta))
14767       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14768       Efun_TA = 0.25d0/pi*term1*(beta*(dlog(8.d0*beta*beta))**2
14769      #     - 5.d0*beta*dlog(8.d0*beta*beta) - 0.25d0*pi*pi)
14770
14771       return
14772       end
14773
14774 c     =========================================
14775       double precision function Ebar_LA(eta,xi)
14776 c     =========================================
14777
14778 c     Longitudinal CA group structure for the mass factorization piece: 
14779 c     equation (17) in PLB347 (195) 143 - 151
14780 c     This function is called threshbar_l in the original code.
14781
14782       implicit none
14783       double precision pi, eta, xi, beta, term1
14784       parameter (pi = 3.14159265359d0)
14785
14786       beta = dsqrt(eta/(1.d0 + eta))
14787       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14788       Ebar_LA = 1.d0/6.d0/pi*xi*term1**3*beta**3*
14789      #     (-dlog(4.d0*beta*beta))
14790
14791       return
14792       end
14793
14794 c     =========================================
14795       double precision function Ebar_TA(eta,xi)
14796 c     =========================================
14797
14798 c     Transverse CA group structure for the mass factorization piece: 
14799 c     equation (18) in PLB347 (195) 143 - 151
14800 c     This function is called threshbar_t in the original code.
14801
14802       implicit none
14803       double precision pi, eta, xi, beta, term1
14804       parameter (pi = 3.14159265359d0)
14805
14806       beta = dsqrt(eta/(1.d0 + eta))
14807       term1 = 1.d0/(1.d0 + 0.25d0*xi)
14808       Ebar_TA = 0.25d0/pi*term1*beta*(-dlog(4.d0*beta*beta))
14809
14810       return
14811       end
14812
14813 CDECK  ID>, LOCATE.
14814
14815 c     ===========================
14816       Subroutine Locate(xx,n,x,j)
14817 c     ===========================
14818 c     routine taken out of Numerical Recipes
14819
14820       Integer j,n
14821       Double Precision x,xx(n)
14822       Integer jl,ju,jm
14823
14824       jl = 0
14825       ju = n+1
14826  10   If (ju - jl .gt. 1) then
14827          jm = (ju + jl)/2
14828          If ((xx(n) .gt. xx(1)) .eqv. (x .gt. xx(jm))) then
14829             jl = jm
14830          else
14831             ju = jm
14832          endif
14833          goto 10
14834       endif
14835       j = jl
14836
14837       return
14838       End
14839
14840 CDECK  ID>, GCORRT.
14841
14842 c     ========================================
14843       double precision function h1_ATg(eta,xi)
14844 c     ========================================
14845
14846 c     eq (9) in PLB347 (1995) 143 - 151 for the transverse piece
14847 c     MSbar scheme
14848 c     This routine is called subctca in the original code.
14849 c     Called sctca in updated code (03/06/96).
14850
14851       implicit none
14852       integer neta, nxi
14853       parameter (neta = 73, nxi = 49)
14854       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
14855       double precision eta, xi, dleta, dlxi
14856       double precision pxi, peta, f(-1:1), delxi, deleta
14857       integer j, ieta, ixi
14858
14859       data (calcpts(j, 1), j = 1,neta) /0.4323D-03, 0.5138D-03,
14860      #    0.6270D-03, 0.7996D-03, 0.9331D-03, 0.1128D-02, 0.1413D-02,
14861      #    0.1683D-02, 0.2046D-02, 0.2457D-02, 0.2961D-02, 0.3609D-02,
14862      #    0.4386D-02, 0.5294D-02, 0.6434D-02, 0.7763D-02, 0.9365D-02,
14863      #    0.1136D-01, 0.1370D-01, 0.1657D-01, 0.2004D-01, 0.2424D-01,
14864      #    0.2932D-01, 0.3548D-01, 0.4293D-01, 0.5192D-01, 0.6267D-01,
14865      #    0.7534D-01, 0.8988D-01, 0.1058D+00, 0.1217D+00, 0.1351D+00,
14866      #    0.1421D+00, 0.1379D+00, 0.1184D+00, 0.8306D-01, 0.3588D-01,
14867      #    -.1530D-01, -.6227D-01, -.9944D-01, -.1244D+00, -.1372D+00,
14868      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1096D+00, -.9476D-01,
14869      #    -.8013D-01, -.6655D-01, -.5451D-01, -.4402D-01, -.3519D-01,
14870      #    -.2786D-01, -.2194D-01, -.1711D-01, -.1324D-01, -.1021D-01,
14871      #    -.7860D-02, -.6008D-02, -.4529D-02, -.3433D-02, -.2592D-02,
14872      #    -.1943D-02, -.1488D-02, -.1096D-02, -.8350D-03, -.6387D-03,
14873      #    -.4413D-03, -.3097D-03, -.2442D-03, -.1783D-03, -.1122D-03,
14874      #    -.1126D-03/
14875
14876       data (calcpts(j, 2), j = 1,neta) /0.4112D-03, 0.5596D-03,
14877      #    0.6731D-03, 0.7794D-03, 0.9800D-03, 0.1176D-02, 0.1394D-02,
14878      #    0.1665D-02, 0.2028D-02, 0.2507D-02, 0.3011D-02, 0.3593D-02,
14879      #    0.4371D-02, 0.5280D-02, 0.6421D-02, 0.7751D-02, 0.9354D-02,
14880      #    0.1135D-01, 0.1370D-01, 0.1656D-01, 0.2004D-01, 0.2424D-01,
14881      #    0.2932D-01, 0.3547D-01, 0.4293D-01, 0.5191D-01, 0.6265D-01,
14882      #    0.7532D-01, 0.8986D-01, 0.1057D+00, 0.1217D+00, 0.1351D+00,
14883      #    0.1421D+00, 0.1379D+00, 0.1184D+00, 0.8304D-01, 0.3587D-01,
14884      #    -.1531D-01, -.6227D-01, -.9945D-01, -.1244D+00, -.1372D+00,
14885      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1096D+00, -.9475D-01,
14886      #    -.8011D-01, -.6660D-01, -.5450D-01, -.4401D-01, -.3518D-01,
14887      #    -.2791D-01, -.2193D-01, -.1710D-01, -.1329D-01, -.1019D-01,
14888      #    -.7845D-02, -.5992D-02, -.4581D-02, -.3485D-02, -.2577D-02,
14889      #    -.1927D-02, -.1473D-02, -.1081D-02, -.8195D-03, -.6233D-03,
14890      #    -.4258D-03, -.3609D-03, -.2288D-03, -.1629D-03, -.1634D-03,
14891      #    -.9715D-04/
14892
14893       data (calcpts(j, 3), j = 1,neta) /0.4469D-03, 0.5291D-03,
14894      #    0.6430D-03, 0.8165D-03, 0.9509D-03, 0.1147D-02, 0.1366D-02,
14895      #    0.1705D-02, 0.2069D-02, 0.2482D-02, 0.2987D-02, 0.3637D-02,
14896      #    0.4350D-02, 0.5326D-02, 0.6402D-02, 0.7734D-02, 0.9338D-02,
14897      #    0.1133D-01, 0.1370D-01, 0.1656D-01, 0.2003D-01, 0.2423D-01,
14898      #    0.2931D-01, 0.3547D-01, 0.4292D-01, 0.5190D-01, 0.6264D-01,
14899      #    0.7531D-01, 0.8984D-01, 0.1057D+00, 0.1216D+00, 0.1351D+00,
14900      #    0.1420D+00, 0.1378D+00, 0.1184D+00, 0.8300D-01, 0.3585D-01,
14901      #    -.1532D-01, -.6227D-01, -.9944D-01, -.1244D+00, -.1372D+00,
14902      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1095D+00, -.9473D-01,
14903      #    -.8016D-01, -.6658D-01, -.5447D-01, -.4405D-01, -.3522D-01,
14904      #    -.2789D-01, -.2190D-01, -.1708D-01, -.1326D-01, -.1024D-01,
14905      #    -.7822D-02, -.5970D-02, -.4558D-02, -.3462D-02, -.2621D-02,
14906      #    -.1972D-02, -.1450D-02, -.1125D-02, -.7969D-03, -.6007D-03,
14907      #    -.4699D-03, -.3383D-03, -.2728D-03, -.2069D-03, -.1408D-03,
14908      #    -.7452D-04/
14909
14910       data (calcpts(j, 4), j = 1,neta) /0.4681D-03, 0.5509D-03,
14911      #    0.6654D-03, 0.7730D-03, 0.9749D-03, 0.1172D-02, 0.1392D-02,
14912      #    0.1665D-02, 0.2031D-02, 0.2445D-02, 0.3018D-02, 0.3603D-02,
14913      #    0.4384D-02, 0.5296D-02, 0.6441D-02, 0.7775D-02, 0.9382D-02,
14914      #    0.1131D-01, 0.1370D-01, 0.1656D-01, 0.2003D-01, 0.2422D-01,
14915      #    0.2930D-01, 0.3546D-01, 0.4290D-01, 0.5188D-01, 0.6262D-01,
14916      #    0.7528D-01, 0.8980D-01, 0.1057D+00, 0.1216D+00, 0.1350D+00,
14917      #    0.1420D+00, 0.1378D+00, 0.1183D+00, 0.8296D-01, 0.3582D-01,
14918      #    -.1534D-01, -.6228D-01, -.9945D-01, -.1244D+00, -.1372D+00,
14919      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1096D+00, -.9477D-01,
14920      #    -.8013D-01, -.6655D-01, -.5451D-01, -.4402D-01, -.3519D-01,
14921      #    -.2786D-01, -.2194D-01, -.1711D-01, -.1323D-01, -.1020D-01,
14922      #    -.7856D-02, -.6003D-02, -.4525D-02, -.3429D-02, -.2588D-02,
14923      #    -.1938D-02, -.1483D-02, -.1092D-02, -.8303D-03, -.6341D-03,
14924      #    -.4366D-03, -.3050D-03, -.2395D-03, -.1737D-03, -.1076D-03,
14925      #    -.1079D-03/
14926
14927       data (calcpts(j, 5), j = 1,neta) /0.4681D-03, 0.5517D-03,
14928      #    0.6672D-03, 0.7759D-03, 0.9790D-03, 0.1178D-02, 0.1399D-02,
14929      #    0.1674D-02, 0.2041D-02, 0.2457D-02, 0.2967D-02, 0.3621D-02,
14930      #    0.4405D-02, 0.5319D-02, 0.6400D-02, 0.7738D-02, 0.9348D-02,
14931      #    0.1135D-01, 0.1369D-01, 0.1655D-01, 0.2002D-01, 0.2421D-01,
14932      #    0.2928D-01, 0.3544D-01, 0.4288D-01, 0.5185D-01, 0.6259D-01,
14933      #    0.7523D-01, 0.8975D-01, 0.1056D+00, 0.1215D+00, 0.1349D+00,
14934      #    0.1419D+00, 0.1377D+00, 0.1182D+00, 0.8289D-01, 0.3577D-01,
14935      #    -.1536D-01, -.6229D-01, -.9945D-01, -.1244D+00, -.1371D+00,
14936      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1095D+00, -.9472D-01,
14937      #    -.8015D-01, -.6657D-01, -.5446D-01, -.4404D-01, -.3521D-01,
14938      #    -.2788D-01, -.2189D-01, -.1713D-01, -.1325D-01, -.1022D-01,
14939      #    -.7874D-02, -.6021D-02, -.4543D-02, -.3447D-02, -.2605D-02,
14940      #    -.1956D-02, -.1501D-02, -.1109D-02, -.8482D-03, -.5853D-03,
14941      #    -.4545D-03, -.3229D-03, -.2574D-03, -.1916D-03, -.1254D-03,
14942      #    -.1258D-03/
14943
14944       data (calcpts(j, 6), j = 1,neta) /0.4370D-03, 0.5219D-03,
14945      #    0.6388D-03, 0.8157D-03, 0.9540D-03, 0.1155D-02, 0.1379D-02,
14946      #    0.1656D-02, 0.2026D-02, 0.2445D-02, 0.2957D-02, 0.3615D-02,
14947      #    0.4403D-02, 0.5255D-02, 0.6408D-02, 0.7750D-02, 0.9365D-02,
14948      #    0.1130D-01, 0.1368D-01, 0.1653D-01, 0.2000D-01, 0.2419D-01,
14949      #    0.2926D-01, 0.3541D-01, 0.4285D-01, 0.5181D-01, 0.6253D-01,
14950      #    0.7518D-01, 0.8967D-01, 0.1055D+00, 0.1214D+00, 0.1348D+00,
14951      #    0.1418D+00, 0.1375D+00, 0.1181D+00, 0.8279D-01, 0.3571D-01,
14952      #    -.1540D-01, -.6231D-01, -.9945D-01, -.1244D+00, -.1371D+00,
14953      #    -.1396D+00, -.1341D+00, -.1233D+00, -.1096D+00, -.9473D-01,
14954      #    -.8015D-01, -.6657D-01, -.5446D-01, -.4403D-01, -.3520D-01,
14955      #    -.2787D-01, -.2188D-01, -.1712D-01, -.1324D-01, -.1022D-01,
14956      #    -.7869D-02, -.6016D-02, -.4538D-02, -.3442D-02, -.2601D-02,
14957      #    -.1951D-02, -.1496D-02, -.1105D-02, -.8434D-03, -.5804D-03,
14958      #    -.4497D-03, -.3181D-03, -.2526D-03, -.1867D-03, -.1206D-03,
14959      #    -.1210D-03/
14960
14961       data (calcpts(j, 7), j = 1,neta) /0.4271D-03, 0.5137D-03,
14962      #    0.6327D-03, 0.8119D-03, 0.9528D-03, 0.1156D-02, 0.1384D-02,
14963      #    0.1664D-02, 0.2038D-02, 0.2462D-02, 0.2979D-02, 0.3643D-02,
14964      #    0.4369D-02, 0.5295D-02, 0.6387D-02, 0.7736D-02, 0.9359D-02,
14965      #    0.1131D-01, 0.1367D-01, 0.1652D-01, 0.1998D-01, 0.2417D-01,
14966      #    0.2923D-01, 0.3537D-01, 0.4280D-01, 0.5175D-01, 0.6246D-01,
14967      #    0.7509D-01, 0.8956D-01, 0.1054D+00, 0.1212D+00, 0.1346D+00,
14968      #    0.1415D+00, 0.1373D+00, 0.1179D+00, 0.8265D-01, 0.3561D-01,
14969      #    -.1546D-01, -.6233D-01, -.9945D-01, -.1243D+00, -.1371D+00,
14970      #    -.1395D+00, -.1341D+00, -.1233D+00, -.1095D+00, -.9470D-01,
14971      #    -.8012D-01, -.6654D-01, -.5449D-01, -.4400D-01, -.3517D-01,
14972      #    -.2790D-01, -.2191D-01, -.1709D-01, -.1327D-01, -.1025D-01,
14973      #    -.7831D-02, -.5978D-02, -.4566D-02, -.3470D-02, -.2629D-02,
14974      #    -.1980D-02, -.1458D-02, -.1066D-02, -.8051D-03, -.6089D-03,
14975      #    -.4781D-03, -.3465D-03, -.6143D-03, -.1485D-03, -.1490D-03,
14976      #    -.8274D-04/
14977
14978       data (calcpts(j, 8), j = 1,neta) /0.4171D-03, 0.5064D-03,
14979      #    0.6284D-03, 0.8110D-03, 0.9558D-03, 0.1164D-02, 0.1396D-02,
14980      #    0.1682D-02, 0.2062D-02, 0.2492D-02, 0.2950D-02, 0.3621D-02,
14981      #    0.4356D-02, 0.5291D-02, 0.6392D-02, 0.7752D-02, 0.9319D-02,
14982      #    0.1128D-01, 0.1365D-01, 0.1650D-01, 0.1995D-01, 0.2413D-01,
14983      #    0.2919D-01, 0.3531D-01, 0.4273D-01, 0.5167D-01, 0.6235D-01,
14984      #    0.7495D-01, 0.8940D-01, 0.1052D+00, 0.1210D+00, 0.1343D+00,
14985      #    0.1413D+00, 0.1370D+00, 0.1177D+00, 0.8245D-01, 0.3546D-01,
14986      #    -.1554D-01, -.6236D-01, -.9945D-01, -.1243D+00, -.1371D+00,
14987      #    -.1395D+00, -.1340D+00, -.1232D+00, -.1095D+00, -.9470D-01,
14988      #    -.8011D-01, -.6653D-01, -.5448D-01, -.4398D-01, -.3522D-01,
14989      #    -.2788D-01, -.2189D-01, -.1707D-01, -.1325D-01, -.1023D-01,
14990      #    -.7811D-02, -.6025D-02, -.4546D-02, -.3450D-02, -.2609D-02,
14991      #    -.1959D-02, -.1438D-02, -.1113D-02, -.7847D-03, -.5884D-03,
14992      #    -.4576D-03, -.3260D-03, -.2605D-03, -.1947D-03, -.1285D-03,
14993      #    -.1289D-03/
14994
14995       data (calcpts(j, 9), j = 1,neta) /0.4435D-03, 0.5367D-03,
14996      #    0.6631D-03, 0.7841D-03, 0.9344D-03, 0.1148D-02, 0.1388D-02,
14997      #    0.1681D-02, 0.2003D-02, 0.2443D-02, 0.2978D-02, 0.3594D-02,
14998      #    0.4342D-02, 0.5289D-02, 0.6406D-02, 0.7714D-02, 0.9296D-02,
14999      #    0.1127D-01, 0.1362D-01, 0.1646D-01, 0.1991D-01, 0.2407D-01,
15000      #    0.2912D-01, 0.3524D-01, 0.4263D-01, 0.5155D-01, 0.6220D-01,
15001      #    0.7476D-01, 0.8916D-01, 0.1049D+00, 0.1206D+00, 0.1339D+00,
15002      #    0.1408D+00, 0.1366D+00, 0.1173D+00, 0.8214D-01, 0.3525D-01,
15003      #    -.1566D-01, -.6242D-01, -.9946D-01, -.1243D+00, -.1371D+00,
15004      #    -.1395D+00, -.1340D+00, -.1232D+00, -.1095D+00, -.9470D-01,
15005      #    -.8011D-01, -.6651D-01, -.5446D-01, -.4403D-01, -.3520D-01,
15006      #    -.2786D-01, -.2194D-01, -.1711D-01, -.1323D-01, -.1020D-01,
15007      #    -.7853D-02, -.6000D-02, -.4521D-02, -.3425D-02, -.2584D-02,
15008      #    -.1934D-02, -.1480D-02, -.1088D-02, -.8263D-03, -.6301D-03,
15009      #    -.4326D-03, -.3010D-03, -.2355D-03, -.1696D-03, -.1035D-03,
15010      #    -.1039D-03/
15011
15012       data (calcpts(j,10), j = 1,neta) /0.4611D-03, 0.4933D-03,
15013      #    0.6262D-03, 0.7544D-03, 0.9129D-03, 0.1136D-02, 0.1386D-02,
15014      #    0.1691D-02, 0.2025D-02, 0.2479D-02, 0.2963D-02, 0.3595D-02,
15015      #    0.4361D-02, 0.5262D-02, 0.6332D-02, 0.7662D-02, 0.9268D-02,
15016      #    0.1120D-01, 0.1357D-01, 0.1641D-01, 0.1984D-01, 0.2399D-01,
15017      #    0.2902D-01, 0.3512D-01, 0.4249D-01, 0.5136D-01, 0.6198D-01,
15018      #    0.7448D-01, 0.8881D-01, 0.1045D+00, 0.1201D+00, 0.1333D+00,
15019      #    0.1402D+00, 0.1360D+00, 0.1167D+00, 0.8169D-01, 0.3495D-01,
15020      #    -.1584D-01, -.6249D-01, -.9946D-01, -.1243D+00, -.1370D+00,
15021      #    -.1394D+00, -.1339D+00, -.1231D+00, -.1095D+00, -.9468D-01,
15022      #    -.8007D-01, -.6653D-01, -.5441D-01, -.4398D-01, -.3521D-01,
15023      #    -.2787D-01, -.2188D-01, -.1711D-01, -.1323D-01, -.1021D-01,
15024      #    -.7857D-02, -.6004D-02, -.4525D-02, -.3429D-02, -.2588D-02,
15025      #    -.1938D-02, -.1483D-02, -.1091D-02, -.8300D-03, -.6337D-03,
15026      #    -.4363D-03, -.3047D-03, -.2392D-03, -.1733D-03, -.1072D-03,
15027      #    -.1076D-03/
15028
15029       data (calcpts(j,11), j = 1,neta) /0.4058D-03, 0.5130D-03,
15030      #    0.6553D-03, 0.7941D-03, 0.9646D-03, 0.1135D-02, 0.1399D-02,
15031      #    0.1654D-02, 0.2007D-02, 0.2415D-02, 0.2921D-02, 0.3578D-02,
15032      #    0.4303D-02, 0.5233D-02, 0.6333D-02, 0.7629D-02, 0.9268D-02,
15033      #    0.1117D-01, 0.1351D-01, 0.1632D-01, 0.1975D-01, 0.2388D-01,
15034      #    0.2888D-01, 0.3494D-01, 0.4227D-01, 0.5110D-01, 0.6164D-01,
15035      #    0.7406D-01, 0.8831D-01, 0.1038D+00, 0.1194D+00, 0.1325D+00,
15036      #    0.1393D+00, 0.1350D+00, 0.1159D+00, 0.8103D-01, 0.3450D-01,
15037      #    -.1609D-01, -.6259D-01, -.9947D-01, -.1242D+00, -.1369D+00,
15038      #    -.1393D+00, -.1339D+00, -.1231D+00, -.1094D+00, -.9458D-01,
15039      #    -.8003D-01, -.6648D-01, -.5441D-01, -.4397D-01, -.3513D-01,
15040      #    -.2786D-01, -.2187D-01, -.1710D-01, -.1322D-01, -.1019D-01,
15041      #    -.7843D-02, -.5989D-02, -.4577D-02, -.3481D-02, -.2572D-02,
15042      #    -.1990D-02, -.1468D-02, -.1076D-02, -.8148D-03, -.6185D-03,
15043      #    -.4210D-03, -.3561D-03, -.2239D-03, -.1580D-03, -.1586D-03,
15044      #    -.9227D-04/
15045
15046       data (calcpts(j,12), j = 1,neta) /0.4531D-03, 0.5058D-03,
15047      #    0.6618D-03, 0.7494D-03, 0.9372D-03, 0.1127D-02, 0.1346D-02,
15048      #    0.1625D-02, 0.2005D-02, 0.2442D-02, 0.2914D-02, 0.3540D-02,
15049      #    0.4304D-02, 0.5208D-02, 0.6287D-02, 0.7563D-02, 0.9184D-02,
15050      #    0.1107D-01, 0.1341D-01, 0.1621D-01, 0.1961D-01, 0.2371D-01,
15051      #    0.2867D-01, 0.3469D-01, 0.4195D-01, 0.5071D-01, 0.6116D-01,
15052      #    0.7347D-01, 0.8757D-01, 0.1029D+00, 0.1183D+00, 0.1313D+00,
15053      #    0.1379D+00, 0.1337D+00, 0.1147D+00, 0.8008D-01, 0.3385D-01,
15054      #    -.1646D-01, -.6275D-01, -.9949D-01, -.1242D+00, -.1368D+00,
15055      #    -.1392D+00, -.1337D+00, -.1230D+00, -.1093D+00, -.9456D-01,
15056      #    -.7998D-01, -.6642D-01, -.5441D-01, -.4396D-01, -.3518D-01,
15057      #    -.2783D-01, -.2190D-01, -.1707D-01, -.1325D-01, -.1022D-01,
15058      #    -.7808D-02, -.5954D-02, -.4542D-02, -.3445D-02, -.2604D-02,
15059      #    -.1954D-02, -.1499D-02, -.1107D-02, -.8456D-03, -.5826D-03,
15060      #    -.4518D-03, -.3202D-03, -.2547D-03, -.1888D-03, -.1227D-03,
15061      #    -.1231D-03/
15062
15063       data (calcpts(j,13), j = 1,neta) /0.4062D-03, 0.5431D-03,
15064      #    0.6522D-03, 0.7622D-03, 0.9086D-03, 0.1126D-02, 0.1377D-02,
15065      #    0.1625D-02, 0.1977D-02, 0.2390D-02, 0.2910D-02, 0.3520D-02,
15066      #    0.4273D-02, 0.5104D-02, 0.6247D-02, 0.7524D-02, 0.9082D-02,
15067      #    0.1098D-01, 0.1327D-01, 0.1605D-01, 0.1941D-01, 0.2347D-01,
15068      #    0.2837D-01, 0.3432D-01, 0.4151D-01, 0.5015D-01, 0.6047D-01,
15069      #    0.7261D-01, 0.8651D-01, 0.1017D+00, 0.1168D+00, 0.1295D+00,
15070      #    0.1360D+00, 0.1318D+00, 0.1130D+00, 0.7871D-01, 0.3290D-01,
15071      #    -.1700D-01, -.6298D-01, -.9950D-01, -.1241D+00, -.1367D+00,
15072      #    -.1390D+00, -.1336D+00, -.1228D+00, -.1092D+00, -.9446D-01,
15073      #    -.7991D-01, -.6638D-01, -.5436D-01, -.4389D-01, -.3511D-01,
15074      #    -.2782D-01, -.2189D-01, -.1705D-01, -.1324D-01, -.1021D-01,
15075      #    -.7855D-02, -.6000D-02, -.4521D-02, -.3424D-02, -.2582D-02,
15076      #    -.1932D-02, -.1477D-02, -.1085D-02, -.8239D-03, -.6275D-03,
15077      #    -.4300D-03, -.3650D-03, -.2329D-03, -.1670D-03, -.1009D-03,
15078      #    -.1012D-03/
15079
15080       data (calcpts(j,14), j = 1,neta) /0.4179D-03, 0.5134D-03,
15081      #    0.5844D-03, 0.7266D-03, 0.9092D-03, 0.1101D-02, 0.1331D-02,
15082      #    0.1629D-02, 0.1970D-02, 0.2379D-02, 0.2833D-02, 0.3451D-02,
15083      #    0.4151D-02, 0.5069D-02, 0.6103D-02, 0.7411D-02, 0.8938D-02,
15084      #    0.1082D-01, 0.1308D-01, 0.1581D-01, 0.1912D-01, 0.2311D-01,
15085      #    0.2795D-01, 0.3380D-01, 0.4086D-01, 0.4935D-01, 0.5947D-01,
15086      #    0.7138D-01, 0.8499D-01, 0.9979D-01, 0.1146D+00, 0.1270D+00,
15087      #    0.1333D+00, 0.1290D+00, 0.1105D+00, 0.7672D-01, 0.3154D-01,
15088      #    -.1778D-01, -.6329D-01, -.9952D-01, -.1239D+00, -.1364D+00,
15089      #    -.1388D+00, -.1333D+00, -.1226D+00, -.1090D+00, -.9429D-01,
15090      #    -.7975D-01, -.6632D-01, -.5426D-01, -.4385D-01, -.3505D-01,
15091      #    -.2783D-01, -.2182D-01, -.1705D-01, -.1323D-01, -.1020D-01,
15092      #    -.7844D-02, -.5988D-02, -.4575D-02, -.3478D-02, -.2569D-02,
15093      #    -.1986D-02, -.1464D-02, -.1072D-02, -.8103D-03, -.6139D-03,
15094      #    -.4831D-03, -.3514D-03, -.2192D-03, -.1533D-03, -.1539D-03,
15095      #    -.8758D-04/
15096
15097       data (calcpts(j,15), j = 1,neta) /0.3832D-03, 0.5148D-03,
15098      #    0.6265D-03, 0.7480D-03, 0.9156D-03, 0.1099D-02, 0.1326D-02,
15099      #    0.1563D-02, 0.1918D-02, 0.2281D-02, 0.2765D-02, 0.3356D-02,
15100      #    0.4104D-02, 0.4945D-02, 0.5978D-02, 0.7226D-02, 0.8765D-02,
15101      #    0.1059D-01, 0.1280D-01, 0.1547D-01, 0.1871D-01, 0.2261D-01,
15102      #    0.2733D-01, 0.3305D-01, 0.3994D-01, 0.4821D-01, 0.5807D-01,
15103      #    0.6963D-01, 0.8283D-01, 0.9717D-01, 0.1114D+00, 0.1234D+00,
15104      #    0.1294D+00, 0.1251D+00, 0.1069D+00, 0.7389D-01, 0.2959D-01,
15105      #    -.1888D-01, -.6375D-01, -.9952D-01, -.1236D+00, -.1361D+00,
15106      #    -.1384D+00, -.1330D+00, -.1223D+00, -.1087D+00, -.9407D-01,
15107      #    -.7959D-01, -.6617D-01, -.5415D-01, -.4378D-01, -.3503D-01,
15108      #    -.2772D-01, -.2184D-01, -.1700D-01, -.1317D-01, -.1021D-01,
15109      #    -.7786D-02, -.5996D-02, -.4515D-02, -.3418D-02, -.2575D-02,
15110      #    -.1925D-02, -.1470D-02, -.1077D-02, -.8160D-03, -.6195D-03,
15111      #    -.4219D-03, -.3569D-03, -.2247D-03, -.1588D-03, -.1594D-03,
15112      #    -.9305D-04/
15113
15114       data (calcpts(j,16), j = 1,neta) /0.3814D-03, 0.4972D-03,
15115      #    0.5997D-03, 0.7195D-03, 0.8268D-03, 0.1025D-02, 0.1277D-02,
15116      #    0.1550D-02, 0.1884D-02, 0.2238D-02, 0.2726D-02, 0.3265D-02,
15117      #    0.3976D-02, 0.4791D-02, 0.5810D-02, 0.7055D-02, 0.8466D-02,
15118      #    0.1027D-01, 0.1241D-01, 0.1500D-01, 0.1813D-01, 0.2191D-01,
15119      #    0.2647D-01, 0.3199D-01, 0.3864D-01, 0.4661D-01, 0.5610D-01,
15120      #    0.6719D-01, 0.7983D-01, 0.9351D-01, 0.1071D+00, 0.1184D+00,
15121      #    0.1239D+00, 0.1197D+00, 0.1020D+00, 0.6990D-01, 0.2683D-01,
15122      #    -.2045D-01, -.6437D-01, -.9952D-01, -.1233D+00, -.1355D+00,
15123      #    -.1378D+00, -.1324D+00, -.1218D+00, -.1083D+00, -.9371D-01,
15124      #    -.7932D-01, -.6596D-01, -.5402D-01, -.4368D-01, -.3491D-01,
15125      #    -.2772D-01, -.2176D-01, -.1698D-01, -.1321D-01, -.1018D-01,
15126      #    -.7819D-02, -.5961D-02, -.4545D-02, -.3447D-02, -.2604D-02,
15127      #    -.1953D-02, -.1431D-02, -.1105D-02, -.8437D-03, -.5805D-03,
15128      #    -.4495D-03, -.3178D-03, -.2523D-03, -.1863D-03, -.1202D-03,
15129      #    -.1205D-03/
15130
15131       data (calcpts(j,17), j = 1,neta) /0.3666D-03, 0.4863D-03,
15132      #    0.5352D-03, 0.6784D-03, 0.8203D-03, 0.9984D-03, 0.1178D-02,
15133      #    0.1458D-02, 0.1748D-02, 0.2142D-02, 0.2619D-02, 0.3166D-02,
15134      #    0.3768D-02, 0.4559D-02, 0.5569D-02, 0.6687D-02, 0.8117D-02,
15135      #    0.9818D-02, 0.1186D-01, 0.1434D-01, 0.1733D-01, 0.2093D-01,
15136      #    0.2528D-01, 0.3053D-01, 0.3685D-01, 0.4441D-01, 0.5339D-01,
15137      #    0.6385D-01, 0.7572D-01, 0.8853D-01, 0.1012D+00, 0.1116D+00,
15138      #    0.1165D+00, 0.1122D+00, 0.9512D-01, 0.6438D-01, 0.2300D-01,
15139      #    -.2262D-01, -.6522D-01, -.9947D-01, -.1227D+00, -.1347D+00,
15140      #    -.1370D+00, -.1316D+00, -.1211D+00, -.1077D+00, -.9331D-01,
15141      #    -.7897D-01, -.6564D-01, -.5376D-01, -.4350D-01, -.3483D-01,
15142      #    -.2762D-01, -.2171D-01, -.1692D-01, -.1315D-01, -.1017D-01,
15143      #    -.7809D-02, -.5949D-02, -.4532D-02, -.3432D-02, -.2588D-02,
15144      #    -.1938D-02, -.1482D-02, -.1089D-02, -.8271D-03, -.6305D-03,
15145      #    -.4328D-03, -.3010D-03, -.2354D-03, -.1695D-03, -.1033D-03,
15146      #    -.1037D-03/
15147
15148       data (calcpts(j,18), j = 1,neta) /0.3296D-03, 0.4115D-03,
15149      #    0.5016D-03, 0.6332D-03, 0.7788D-03, 0.9104D-03, 0.1128D-02,
15150      #    0.1399D-02, 0.1634D-02, 0.1996D-02, 0.2463D-02, 0.2957D-02,
15151      #    0.3596D-02, 0.4314D-02, 0.5208D-02, 0.6295D-02, 0.7644D-02,
15152      #    0.9209D-02, 0.1113D-01, 0.1344D-01, 0.1625D-01, 0.1962D-01,
15153      #    0.2368D-01, 0.2858D-01, 0.3446D-01, 0.4148D-01, 0.4977D-01,
15154      #    0.5941D-01, 0.7029D-01, 0.8195D-01, 0.9335D-01, 0.1026D+00,
15155      #    0.1068D+00, 0.1023D+00, 0.8599D-01, 0.5694D-01, 0.1780D-01,
15156      #    -.2557D-01, -.6633D-01, -.9933D-01, -.1218D+00, -.1335D+00,
15157      #    -.1357D+00, -.1305D+00, -.1201D+00, -.1069D+00, -.9263D-01,
15158      #    -.7842D-01, -.6529D-01, -.5351D-01, -.4325D-01, -.3460D-01,
15159      #    -.2749D-01, -.2163D-01, -.1689D-01, -.1311D-01, -.1012D-01,
15160      #    -.7758D-02, -.5895D-02, -.4542D-02, -.3441D-02, -.2596D-02,
15161      #    -.1945D-02, -.1488D-02, -.1095D-02, -.8333D-03, -.6366D-03,
15162      #    -.4388D-03, -.3069D-03, -.2413D-03, -.1753D-03, -.1091D-03,
15163      #    -.1095D-03/
15164
15165       data (calcpts(j,19), j = 1,neta) /0.2951D-03, 0.3689D-03,
15166      #    0.4670D-03, 0.5583D-03, 0.6835D-03, 0.8831D-03, 0.1059D-02,
15167      #    0.1247D-02, 0.1494D-02, 0.1828D-02, 0.2232D-02, 0.2694D-02,
15168      #    0.3265D-02, 0.3947D-02, 0.4766D-02, 0.5738D-02, 0.6961D-02,
15169      #    0.8415D-02, 0.1017D-01, 0.1228D-01, 0.1484D-01, 0.1791D-01,
15170      #    0.2160D-01, 0.2605D-01, 0.3136D-01, 0.3769D-01, 0.4513D-01,
15171      #    0.5373D-01, 0.6336D-01, 0.7359D-01, 0.8345D-01, 0.9125D-01,
15172      #    0.9436D-01, 0.8964D-01, 0.7425D-01, 0.4728D-01, 0.1099D-01,
15173      #    -.2944D-01, -.6772D-01, -.9898D-01, -.1205D+00, -.1318D+00,
15174      #    -.1339D+00, -.1288D+00, -.1187D+00, -.1057D+00, -.9161D-01,
15175      #    -.7767D-01, -.6468D-01, -.5304D-01, -.4296D-01, -.3438D-01,
15176      #    -.2730D-01, -.2148D-01, -.1678D-01, -.1305D-01, -.1006D-01,
15177      #    -.7689D-02, -.5888D-02, -.4466D-02, -.3430D-02, -.2584D-02,
15178      #    -.1931D-02, -.1474D-02, -.1081D-02, -.8188D-03, -.6218D-03,
15179      #    -.4239D-03, -.3586D-03, -.2263D-03, -.1602D-03, -.1607D-03,
15180      #    -.9433D-04/
15181
15182       data (calcpts(j,20), j = 1,neta) /0.2649D-03, 0.3628D-03,
15183      #    0.4389D-03, 0.5311D-03, 0.6156D-03, 0.7351D-03, 0.9273D-03,
15184      #    0.1098D-02, 0.1360D-02, 0.1614D-02, 0.1975D-02, 0.2366D-02,
15185      #    0.2840D-02, 0.3463D-02, 0.4193D-02, 0.5110D-02, 0.6146D-02,
15186      #    0.7424D-02, 0.8974D-02, 0.1083D-01, 0.1308D-01, 0.1578D-01,
15187      #    0.1902D-01, 0.2290D-01, 0.2754D-01, 0.3302D-01, 0.3944D-01,
15188      #    0.4679D-01, 0.5495D-01, 0.6349D-01, 0.7155D-01, 0.7762D-01,
15189      #    0.7945D-01, 0.7436D-01, 0.5992D-01, 0.3533D-01, 0.2460D-02,
15190      #    -.3427D-01, -.6935D-01, -.9831D-01, -.1185D+00, -.1292D+00,
15191      #    -.1312D+00, -.1263D+00, -.1166D+00, -.1040D+00, -.9026D-01,
15192      #    -.7664D-01, -.6388D-01, -.5242D-01, -.4250D-01, -.3404D-01,
15193      #    -.2704D-01, -.2125D-01, -.1666D-01, -.1292D-01, -.9981D-02,
15194      #    -.7669D-02, -.5863D-02, -.4437D-02, -.3399D-02, -.2551D-02,
15195      #    -.1897D-02, -.1440D-02, -.1046D-02, -.7831D-03, -.5859D-03,
15196      #    -.4545D-03, -.3224D-03, -.2566D-03, -.1906D-03, -.1243D-03,
15197      #    -.1246D-03/
15198
15199       data (calcpts(j,21), j = 1,neta) /0.2746D-03, 0.2937D-03,
15200      #    0.3818D-03, 0.4467D-03, 0.5340D-03, 0.6221D-03, 0.7518D-03,
15201      #    0.9649D-03, 0.1110D-02, 0.1358D-02, 0.1692D-02, 0.2035D-02,
15202      #    0.2442D-02, 0.2911D-02, 0.3557D-02, 0.4292D-02, 0.5185D-02,
15203      #    0.6263D-02, 0.7562D-02, 0.9125D-02, 0.1101D-01, 0.1327D-01,
15204      #    0.1598D-01, 0.1921D-01, 0.2306D-01, 0.2759D-01, 0.3285D-01,
15205      #    0.3881D-01, 0.4535D-01, 0.5204D-01, 0.5812D-01, 0.6231D-01,
15206      #    0.6271D-01, 0.5712D-01, 0.4360D-01, 0.2153D-01, -.7528D-02,
15207      #    -.3993D-01, -.7107D-01, -.9708D-01, -.1155D+00, -.1254D+00,
15208      #    -.1274D+00, -.1229D+00, -.1137D+00, -.1016D+00, -.8842D-01,
15209      #    -.7514D-01, -.6277D-01, -.5157D-01, -.4185D-01, -.3357D-01,
15210      #    -.2671D-01, -.2101D-01, -.1646D-01, -.1276D-01, -.9880D-02,
15211      #    -.7626D-02, -.5813D-02, -.4450D-02, -.3342D-02, -.2559D-02,
15212      #    -.1904D-02, -.1445D-02, -.1051D-02, -.7878D-03, -.5903D-03,
15213      #    -.4587D-03, -.3265D-03, -.2606D-03, -.1945D-03, -.1282D-03,
15214      #    -.1284D-03/
15215
15216       data (calcpts(j,22), j = 1,neta) /0.2248D-03, 0.2547D-03,
15217      #    0.3143D-03, 0.3815D-03, 0.4381D-03, 0.5321D-03, 0.6410D-03,
15218      #    0.7432D-03, 0.8898D-03, 0.1121D-02, 0.1291D-02, 0.1588D-02,
15219      #    0.1936D-02, 0.2333D-02, 0.2822D-02, 0.3406D-02, 0.4113D-02,
15220      #    0.4971D-02, 0.5996D-02, 0.7237D-02, 0.8724D-02, 0.1050D-01,
15221      #    0.1263D-01, 0.1517D-01, 0.1817D-01, 0.2168D-01, 0.2572D-01,
15222      #    0.3025D-01, 0.3511D-01, 0.3993D-01, 0.4403D-01, 0.4633D-01,
15223      #    0.4529D-01, 0.3915D-01, 0.2645D-01, 0.6839D-02, -.1830D-01,
15224      #    -.4602D-01, -.7264D-01, -.9510D-01, -.1113D+00, -.1203D+00,
15225      #    -.1222D+00, -.1182D+00, -.1097D+00, -.9839D-01, -.8586D-01,
15226      #    -.7318D-01, -.6123D-01, -.5042D-01, -.4101D-01, -.3296D-01,
15227      #    -.2623D-01, -.2068D-01, -.1623D-01, -.1258D-01, -.9749D-02,
15228      #    -.7485D-02, -.5732D-02, -.4364D-02, -.3319D-02, -.2534D-02,
15229      #    -.1877D-02, -.1418D-02, -.1089D-02, -.8255D-03, -.6277D-03,
15230      #    -.4292D-03, -.2969D-03, -.2309D-03, -.1647D-03, -.1650D-03,
15231      #    -.9859D-04/
15232
15233       data (calcpts(j,23), j = 1,neta) /0.1575D-03, 0.1414D-03,
15234      #    0.1837D-03, 0.2659D-03, 0.3061D-03, 0.3553D-03, 0.4615D-03,
15235      #    0.5397D-03, 0.6435D-03, 0.7975D-03, 0.9631D-03, 0.1172D-02,
15236      #    0.1414D-02, 0.1714D-02, 0.2071D-02, 0.2500D-02, 0.3019D-02,
15237      #    0.3651D-02, 0.4404D-02, 0.5304D-02, 0.6396D-02, 0.7693D-02,
15238      #    0.9237D-02, 0.1107D-01, 0.1323D-01, 0.1573D-01, 0.1859D-01,
15239      #    0.2172D-01, 0.2499D-01, 0.2807D-01, 0.3035D-01, 0.3096D-01,
15240      #    0.2865D-01, 0.2205D-01, 0.1012D-01, -.7229D-02, -.2869D-01,
15241      #    -.5179D-01, -.7370D-01, -.9219D-01, -.1057D+00, -.1135D+00,
15242      #    -.1154D+00, -.1120D+00, -.1044D+00, -.9415D-01, -.8249D-01,
15243      #    -.7063D-01, -.5927D-01, -.4896D-01, -.3987D-01, -.3211D-01,
15244      #    -.2564D-01, -.2024D-01, -.1589D-01, -.1234D-01, -.9563D-02,
15245      #    -.7355D-02, -.5661D-02, -.4288D-02, -.3306D-02, -.2452D-02,
15246      #    -.1861D-02, -.1400D-02, -.1070D-02, -.8064D-03, -.6082D-03,
15247      #    -.4095D-03, -.3437D-03, -.2109D-03, -.1447D-03, -.1449D-03,
15248      #    -.7844D-04/
15249
15250       data (calcpts(j,24), j = 1,neta) /0.9565D-04, 0.1144D-03,
15251      #    0.1394D-03, 0.1691D-03, 0.2046D-03, 0.2465D-03, 0.2996D-03,
15252      #    0.3624D-03, 0.4374D-03, 0.5335D-03, 0.6405D-03, 0.7778D-03,
15253      #    0.9370D-03, 0.1136D-02, 0.1376D-02, 0.1657D-02, 0.2002D-02,
15254      #    0.2416D-02, 0.2906D-02, 0.3499D-02, 0.4216D-02, 0.5063D-02,
15255      #    0.6065D-02, 0.7252D-02, 0.8636D-02, 0.1023D-01, 0.1200D-01,
15256      #    0.1390D-01, 0.1578D-01, 0.1735D-01, 0.1812D-01, 0.1736D-01,
15257      #    0.1409D-01, 0.7257D-02, -.3859D-02, -.1916D-01, -.3737D-01,
15258      #    -.5634D-01, -.7382D-01, -.8828D-01, -.9890D-01, -.1052D+00,
15259      #    -.1070D+00, -.1043D+00, -.9787D-01, -.8882D-01, -.7832D-01,
15260      #    -.6740D-01, -.5686D-01, -.4712D-01, -.3854D-01, -.3114D-01,
15261      #    -.2486D-01, -.1968D-01, -.1550D-01, -.1206D-01, -.9400D-02,
15262      #    -.7247D-02, -.5546D-02, -.4235D-02, -.3250D-02, -.2460D-02,
15263      #    -.1867D-02, -.1405D-02, -.1008D-02, -.8105D-03, -.6120D-03,
15264      #    -.4130D-03, -.3470D-03, -.2141D-03, -.1478D-03, -.1480D-03,
15265      #    -.8150D-04/
15266
15267       data (calcpts(j,25), j = 1,neta) /0.4989D-04, 0.6372D-04,
15268      #    0.7586D-04, 0.9470D-04, 0.1172D-03, 0.1402D-03, 0.1717D-03,
15269      #    0.2067D-03, 0.2498D-03, 0.3003D-03, 0.3632D-03, 0.4391D-03,
15270      #    0.5342D-03, 0.6391D-03, 0.7736D-03, 0.9330D-03, 0.1122D-02,
15271      #    0.1355D-02, 0.1626D-02, 0.1957D-02, 0.2347D-02, 0.2812D-02,
15272      #    0.3356D-02, 0.3994D-02, 0.4725D-02, 0.5546D-02, 0.6430D-02,
15273      #    0.7312D-02, 0.8061D-02, 0.8431D-02, 0.8039D-02, 0.6292D-02,
15274      #    0.2426D-02, -.4343D-02, -.1454D-01, -.2794D-01, -.4336D-01,
15275      #    -.5888D-01, -.7259D-01, -.8343D-01, -.9112D-01, -.9571D-01,
15276      #    -.9709D-01, -.9512D-01, -.9001D-01, -.8241D-01, -.7327D-01,
15277      #    -.6351D-01, -.5389D-01, -.4489D-01, -.3690D-01, -.2994D-01,
15278      #    -.2399D-01, -.1903D-01, -.1502D-01, -.1176D-01, -.9151D-02,
15279      #    -.7055D-02, -.5414D-02, -.4165D-02, -.3177D-02, -.2385D-02,
15280      #    -.1790D-02, -.1394D-02, -.9966D-03, -.7984D-03, -.5996D-03,
15281      #    -.4004D-03, -.3342D-03, -.2013D-03, -.2015D-03, -.1350D-03,
15282      #    -.6850D-04/
15283
15284       data (calcpts(j,26), j = 1,neta) /0.1907D-04, 0.1918D-04,
15285      #    0.2593D-04, 0.3718D-04, 0.4555D-04, 0.5013D-04, 0.6176D-04,
15286      #    0.7818D-04, 0.9929D-04, 0.1208D-03, 0.1428D-03, 0.1736D-03,
15287      #    0.2073D-03, 0.2545D-03, 0.3059D-03, 0.3685D-03, 0.4413D-03,
15288      #    0.5237D-03, 0.6323D-03, 0.7488D-03, 0.8974D-03, 0.1060D-02,
15289      #    0.1249D-02, 0.1461D-02, 0.1691D-02, 0.1922D-02, 0.2125D-02,
15290      #    0.2235D-02, 0.2139D-02, 0.1643D-02, 0.4357D-03, -.1939D-02,
15291      #    -.6063D-02, -.1252D-01, -.2168D-01, -.3329D-01, -.4632D-01,
15292      #    -.5906D-01, -.6983D-01, -.7774D-01, -.8286D-01, -.8565D-01,
15293      #    -.8639D-01, -.8491D-01, -.8106D-01, -.7502D-01, -.6742D-01,
15294      #    -.5900D-01, -.5047D-01, -.4236D-01, -.3498D-01, -.2847D-01,
15295      #    -.2293D-01, -.1833D-01, -.1449D-01, -.1135D-01, -.8859D-02,
15296      #    -.6821D-02, -.5307D-02, -.4054D-02, -.3063D-02, -.2336D-02,
15297      #    -.1740D-02, -.1343D-02, -.1012D-02, -.7464D-03, -.5473D-03,
15298      #    -.4146D-03, -.2817D-03, -.2153D-03, -.1489D-03, -.1490D-03,
15299      #    -.8244D-04/
15300
15301       data (calcpts(j,27), j = 1,neta) /0.2006D-05, 0.2856D-05,
15302      #    0.1167D-05, 0.3743D-05, 0.5087D-05, -.4811D-06, 0.1882D-06,
15303      #    0.3604D-06, 0.1543D-05, -.4601D-05, -.3152D-05, -.4930D-05,
15304      #    -.8063D-05, -.1520D-04, -.1737D-04, -.2860D-04, -.4090D-04,
15305      #    -.5485D-04, -.6813D-04, -.9724D-04, -.1257D-03, -.1702D-03,
15306      #    -.2322D-03, -.3168D-03, -.4380D-03, -.6165D-03, -.8839D-03,
15307      #    -.1301D-02, -.1962D-02, -.3024D-02, -.4730D-02, -.7424D-02,
15308      #    -.1154D-01, -.1752D-01, -.2560D-01, -.3554D-01, -.4649D-01,
15309      #    -.5701D-01, -.6561D-01, -.7144D-01, -.7456D-01, -.7573D-01,
15310      #    -.7560D-01, -.7426D-01, -.7142D-01, -.6691D-01, -.6092D-01,
15311      #    -.5396D-01, -.4665D-01, -.3949D-01, -.3285D-01, -.2693D-01,
15312      #    -.2181D-01, -.1747D-01, -.1388D-01, -.1092D-01, -.8556D-02,
15313      #    -.6645D-02, -.5126D-02, -.3936D-02, -.3010D-02, -.2281D-02,
15314      #    -.1751D-02, -.1286D-02, -.1021D-02, -.7556D-03, -.5563D-03,
15315      #    -.4235D-03, -.2904D-03, -.2240D-03, -.1575D-03, -.1576D-03,
15316      #    -.9097D-04/
15317
15318       data (calcpts(j,28), j = 1,neta) /-.1237D-04, -.1446D-04,
15319      #    -.1884D-04, -.2362D-04, -.3282D-04, -.3729D-04, -.4875D-04,
15320      #    -.5886D-04, -.7149D-04, -.8621D-04, -.1070D-03, -.1237D-03,
15321      #    -.1536D-03, -.1859D-03, -.2326D-03, -.2819D-03, -.3422D-03,
15322      #    -.4187D-03, -.5150D-03, -.6270D-03, -.7669D-03, -.9413D-03,
15323      #    -.1158D-02, -.1426D-02, -.1763D-02, -.2192D-02, -.2745D-02,
15324      #    -.3476D-02, -.4466D-02, -.5839D-02, -.7781D-02, -.1055D-01,
15325      #    -.1448D-01, -.1986D-01, -.2687D-01, -.3531D-01, -.4447D-01,
15326      #    -.5320D-01, -.6021D-01, -.6468D-01, -.6654D-01, -.6648D-01,
15327      #    -.6542D-01, -.6384D-01, -.6161D-01, -.5836D-01, -.5391D-01,
15328      #    -.4846D-01, -.4244D-01, -.3633D-01, -.3050D-01, -.2519D-01,
15329      #    -.2053D-01, -.1653D-01, -.1318D-01, -.1042D-01, -.8179D-02,
15330      #    -.6375D-02, -.4933D-02, -.3800D-02, -.2919D-02, -.2222D-02,
15331      #    -.1691D-02, -.1279D-02, -.9605D-03, -.7213D-03, -.5418D-03,
15332      #    -.4088D-03, -.3024D-03, -.2292D-03, -.1693D-03, -.1227D-03,
15333      #    -.9611D-04/
15334
15335       data (calcpts(j,29), j = 1,neta) /-.2297D-04, -.2752D-04,
15336      #    -.3754D-04, -.4311D-04, -.5382D-04, -.5937D-04, -.7678D-04,
15337      #    -.8971D-04, -.1077D-03, -.1287D-03, -.1558D-03, -.1915D-03,
15338      #    -.2322D-03, -.2801D-03, -.3415D-03, -.4181D-03, -.5071D-03,
15339      #    -.6130D-03, -.7460D-03, -.9078D-03, -.1104D-02, -.1346D-02,
15340      #    -.1642D-02, -.2004D-02, -.2451D-02, -.3006D-02, -.3698D-02,
15341      #    -.4577D-02, -.5709D-02, -.7193D-02, -.9172D-02, -.1184D-01,
15342      #    -.1544D-01, -.2018D-01, -.2618D-01, -.3327D-01, -.4091D-01,
15343      #    -.4818D-01, -.5404D-01, -.5768D-01, -.5890D-01, -.5817D-01,
15344      #    -.5640D-01, -.5434D-01, -.5225D-01, -.4982D-01, -.4667D-01,
15345      #    -.4265D-01, -.3795D-01, -.3293D-01, -.2797D-01, -.2331D-01,
15346      #    -.1914D-01, -.1551D-01, -.1244D-01, -.9882D-02, -.7787D-02,
15347      #    -.6085D-02, -.4727D-02, -.3652D-02, -.2803D-02, -.2145D-02,
15348      #    -.1627D-02, -.1235D-02, -.9289D-03, -.6028D-03, -.5232D-03,
15349      #    -.3901D-03, -.2903D-03, -.2171D-03, -.1572D-03, -.1172D-03,
15350      #    -.8393D-04/
15351
15352       data (calcpts(j,30), j = 1,neta) /-.2720D-04, -.2861D-04,
15353      #    -.3471D-04, -.4794D-04, -.5707D-04, -.6429D-04, -.7893D-04,
15354      #    -.9699D-04, -.1206D-03, -.1465D-03, -.1769D-03, -.2139D-03,
15355      #    -.2600D-03, -.3148D-03, -.3814D-03, -.4633D-03, -.5624D-03,
15356      #    -.6828D-03, -.8292D-03, -.1008D-02, -.1224D-02, -.1489D-02,
15357      #    -.1811D-02, -.2204D-02, -.2684D-02, -.3275D-02, -.4004D-02,
15358      #    -.4911D-02, -.6053D-02, -.7509D-02, -.9389D-02, -.1184D-01,
15359      #    -.1503D-01, -.1911D-01, -.2418D-01, -.3008D-01, -.3642D-01,
15360      #    -.4249D-01, -.4745D-01, -.5062D-01, -.5165D-01, -.5077D-01,
15361      #    -.4867D-01, -.4620D-01, -.4390D-01, -.4181D-01, -.3953D-01,
15362      #    -.3672D-01, -.3327D-01, -.2936D-01, -.2529D-01, -.2133D-01,
15363      #    -.1768D-01, -.1444D-01, -.1165D-01, -.9313D-02, -.7372D-02,
15364      #    -.5788D-02, -.4514D-02, -.3498D-02, -.2694D-02, -.2069D-02,
15365      #    -.1577D-02, -.1198D-02, -.9051D-03, -.6122D-03, -.5125D-03,
15366      #    -.3860D-03, -.2861D-03, -.2129D-03, -.1596D-03, -.1197D-03,
15367      #    -.8635D-04/
15368
15369       data (calcpts(j,31), j = 1,neta) /-.2258D-04, -.3019D-04,
15370      #    -.3714D-04, -.4516D-04, -.5510D-04, -.6652D-04, -.8066D-04,
15371      #    -.9812D-04, -.1185D-03, -.1435D-03, -.1744D-03, -.2112D-03,
15372      #    -.2566D-03, -.3107D-03, -.3767D-03, -.4573D-03, -.5548D-03,
15373      #    -.6731D-03, -.8174D-03, -.9925D-03, -.1204D-02, -.1462D-02,
15374      #    -.1777D-02, -.2159D-02, -.2625D-02, -.3194D-02, -.3891D-02,
15375      #    -.4753D-02, -.5822D-02, -.7163D-02, -.8859D-02, -.1102D-01,
15376      #    -.1377D-01, -.1723D-01, -.2144D-01, -.2631D-01, -.3153D-01,
15377      #    -.3657D-01, -.4081D-01, -.4365D-01, -.4473D-01, -.4408D-01,
15378      #    -.4210D-01, -.3948D-01, -.3692D-01, -.3476D-01, -.3289D-01,
15379      #    -.3091D-01, -.2852D-01, -.2566D-01, -.2249D-01, -.1924D-01,
15380      #    -.1614D-01, -.1332D-01, -.1083D-01, -.8710D-02, -.6933D-02,
15381      #    -.5472D-02, -.4283D-02, -.3333D-02, -.2582D-02, -.1983D-02,
15382      #    -.1517D-02, -.1158D-02, -.8784D-03, -.6120D-03, -.4989D-03,
15383      #    -.3724D-03, -.2791D-03, -.2059D-03, -.1526D-03, -.1126D-03,
15384      #    -.8596D-04/
15385
15386       data (calcpts(j,32), j = 1,neta) /-.2433D-04, -.2931D-04,
15387      #    -.3516D-04, -.4244D-04, -.5156D-04, -.6163D-04, -.7470D-04,
15388      #    -.9082D-04, -.1098D-03, -.1328D-03, -.1611D-03, -.1946D-03,
15389      #    -.2361D-03, -.2861D-03, -.3465D-03, -.4206D-03, -.5098D-03,
15390      #    -.6182D-03, -.7499D-03, -.9101D-03, -.1103D-02, -.1340D-02,
15391      #    -.1626D-02, -.1974D-02, -.2397D-02, -.2912D-02, -.3542D-02,
15392      #    -.4314D-02, -.5266D-02, -.6446D-02, -.7921D-02, -.9772D-02,
15393      #    -.1209D-01, -.1496D-01, -.1841D-01, -.2238D-01, -.2663D-01,
15394      #    -.3079D-01, -.3438D-01, -.3695D-01, -.3815D-01, -.3789D-01,
15395      #    -.3633D-01, -.3394D-01, -.3131D-01, -.2897D-01, -.2711D-01,
15396      #    -.2553D-01, -.2389D-01, -.2192D-01, -.1961D-01, -.1709D-01,
15397      #    -.1455D-01, -.1214D-01, -.9967D-02, -.8077D-02, -.6471D-02,
15398      #    -.5135D-02, -.4045D-02, -.3161D-02, -.2449D-02, -.1896D-02,
15399      #    -.1457D-02, -.1111D-02, -.8444D-03, -.6046D-03, -.4781D-03,
15400      #    -.3582D-03, -.2716D-03, -.1983D-03, -.1450D-03, -.1117D-03,
15401      #    -.7837D-04/
15402
15403       data (calcpts(j,33), j = 1,neta) /-.1992D-04, -.2417D-04,
15404      #    -.2929D-04, -.3614D-04, -.4347D-04, -.5343D-04, -.6432D-04,
15405      #    -.7849D-04, -.9477D-04, -.1151D-03, -.1399D-03, -.1700D-03,
15406      #    -.2059D-03, -.2498D-03, -.3031D-03, -.3675D-03, -.4459D-03,
15407      #    -.5409D-03, -.6558D-03, -.7954D-03, -.9646D-03, -.1171D-02,
15408      #    -.1420D-02, -.1723D-02, -.2091D-02, -.2539D-02, -.3083D-02,
15409      #    -.3749D-02, -.4566D-02, -.5572D-02, -.6817D-02, -.8362D-02,
15410      #    -.1027D-01, -.1262D-01, -.1541D-01, -.1860D-01, -.2204D-01,
15411      #    -.2544D-01, -.2845D-01, -.3073D-01, -.3201D-01, -.3213D-01,
15412      #    -.3112D-01, -.2920D-01, -.2681D-01, -.2443D-01, -.2244D-01,
15413      #    -.2090D-01, -.1963D-01, -.1830D-01, -.1671D-01, -.1488D-01,
15414      #    -.1290D-01, -.1093D-01, -.9078D-02, -.7432D-02, -.6003D-02,
15415      #    -.4793D-02, -.3795D-02, -.2984D-02, -.2325D-02, -.1805D-02,
15416      #    -.1393D-02, -.1066D-02, -.8131D-03, -.5933D-03, -.4667D-03,
15417      #    -.3535D-03, -.2668D-03, -.2002D-03, -.1469D-03, -.1136D-03,
15418      #    -.8026D-04/
15419
15420       data (calcpts(j,34), j = 1,neta) /-.1712D-04, -.2071D-04,
15421      #    -.2527D-04, -.3077D-04, -.3773D-04, -.4540D-04, -.5514D-04,
15422      #    -.6700D-04, -.8094D-04, -.9790D-04, -.1186D-03, -.1438D-03,
15423      #    -.1749D-03, -.2115D-03, -.2566D-03, -.3113D-03, -.3772D-03,
15424      #    -.4571D-03, -.5546D-03, -.6724D-03, -.8150D-03, -.9890D-03,
15425      #    -.1199D-02, -.1454D-02, -.1765D-02, -.2141D-02, -.2598D-02,
15426      #    -.3156D-02, -.3838D-02, -.4672D-02, -.5699D-02, -.6963D-02,
15427      #    -.8515D-02, -.1040D-01, -.1263D-01, -.1518D-01, -.1792D-01,
15428      #    -.2066D-01, -.2314D-01, -.2513D-01, -.2639D-01, -.2679D-01,
15429      #    -.2629D-01, -.2496D-01, -.2303D-01, -.2086D-01, -.1882D-01,
15430      #    -.1719D-01, -.1597D-01, -.1496D-01, -.1390D-01, -.1265D-01,
15431      #    -.1121D-01, -.9674D-02, -.8164D-02, -.6756D-02, -.5513D-02,
15432      #    -.4435D-02, -.3537D-02, -.2791D-02, -.2192D-02, -.1706D-02,
15433      #    -.1319D-02, -.1013D-02, -.7732D-03, -.5733D-03, -.4467D-03,
15434      #    -.3401D-03, -.2535D-03, -.1935D-03, -.1402D-03, -.1068D-03,
15435      #    -.8018D-04/
15436
15437       data (calcpts(j,35), j = 1,neta) /-.1442D-04, -.1761D-04,
15438      #    -.2114D-04, -.2543D-04, -.3088D-04, -.3788D-04, -.4561D-04,
15439      #    -.5524D-04, -.6656D-04, -.8093D-04, -.9821D-04, -.1189D-03,
15440      #    -.1444D-03, -.1747D-03, -.2120D-03, -.2566D-03, -.3108D-03,
15441      #    -.3768D-03, -.4572D-03, -.5540D-03, -.6717D-03, -.8145D-03,
15442      #    -.9876D-03, -.1197D-02, -.1452D-02, -.1761D-02, -.2136D-02,
15443      #    -.2592D-02, -.3149D-02, -.3828D-02, -.4659D-02, -.5676D-02,
15444      #    -.6916D-02, -.8412D-02, -.1018D-01, -.1218D-01, -.1435D-01,
15445      #    -.1653D-01, -.1855D-01, -.2023D-01, -.2142D-01, -.2198D-01,
15446      #    -.2186D-01, -.2106D-01, -.1968D-01, -.1791D-01, -.1604D-01,
15447      #    -.1436D-01, -.1306D-01, -.1210D-01, -.1132D-01, -.1049D-01,
15448      #    -.9515D-02, -.8398D-02, -.7220D-02, -.6068D-02, -.5007D-02,
15449      #    -.4069D-02, -.3270D-02, -.2598D-02, -.2052D-02, -.1605D-02,
15450      #    -.1246D-02, -.9591D-03, -.7326D-03, -.5526D-03, -.4260D-03,
15451      #    -.3261D-03, -.2461D-03, -.1861D-03, -.1395D-03, -.1061D-03,
15452      #    -.7946D-04/
15453
15454       data (calcpts(j,36), j = 1,neta) /-.1137D-04, -.1382D-04,
15455      #    -.1702D-04, -.2062D-04, -.2489D-04, -.3011D-04, -.3664D-04,
15456      #    -.4486D-04, -.5375D-04, -.6514D-04, -.7944D-04, -.9638D-04,
15457      #    -.1165D-03, -.1415D-03, -.1711D-03, -.2073D-03, -.2513D-03,
15458      #    -.3046D-03, -.3692D-03, -.4476D-03, -.5425D-03, -.6577D-03,
15459      #    -.7973D-03, -.9666D-03, -.1172D-02, -.1421D-02, -.1723D-02,
15460      #    -.2090D-02, -.2536D-02, -.3079D-02, -.3741D-02, -.4548D-02,
15461      #    -.5527D-02, -.6701D-02, -.8081D-02, -.9647D-02, -.1134D-01,
15462      #    -.1306D-01, -.1468D-01, -.1608D-01, -.1713D-01, -.1775D-01,
15463      #    -.1788D-01, -.1748D-01, -.1660D-01, -.1530D-01, -.1377D-01,
15464      #    -.1222D-01, -.1087D-01, -.9851D-02, -.9116D-02, -.8513D-02,
15465      #    -.7875D-02, -.7120D-02, -.6263D-02, -.5366D-02, -.4494D-02,
15466      #    -.3697D-02, -.2997D-02, -.2401D-02, -.1913D-02, -.1499D-02,
15467      #    -.1166D-02, -.9065D-03, -.6999D-03, -.5266D-03, -.4067D-03,
15468      #    -.3067D-03, -.2334D-03, -.1734D-03, -.1334D-03, -.1001D-03,
15469      #    -.7340D-04/
15470
15471       data (calcpts(j,37), j = 1,neta) /-.9350D-05, -.1113D-04,
15472      #    -.1370D-04, -.1661D-04, -.2005D-04, -.2421D-04, -.2924D-04,
15473      #    -.3544D-04, -.4294D-04, -.5203D-04, -.6306D-04, -.7640D-04,
15474      #    -.9263D-04, -.1122D-03, -.1360D-03, -.1649D-03, -.1998D-03,
15475      #    -.2422D-03, -.2935D-03, -.3558D-03, -.4312D-03, -.5227D-03,
15476      #    -.6336D-03, -.7680D-03, -.9309D-03, -.1128D-02, -.1368D-02,
15477      #    -.1658D-02, -.2011D-02, -.2439D-02, -.2961D-02, -.3593D-02,
15478      #    -.4358D-02, -.5271D-02, -.6341D-02, -.7553D-02, -.8865D-02,
15479      #    -.1021D-01, -.1149D-01, -.1263D-01, -.1353D-01, -.1413D-01,
15480      #    -.1439D-01, -.1427D-01, -.1377D-01, -.1291D-01, -.1178D-01,
15481      #    -.1050D-01, -.9244D-02, -.8180D-02, -.7389D-02, -.6829D-02,
15482      #    -.6369D-02, -.5881D-02, -.5303D-02, -.4651D-02, -.3971D-02,
15483      #    -.3316D-02, -.2720D-02, -.2199D-02, -.1758D-02, -.1392D-02,
15484      #    -.1095D-02, -.8512D-03, -.6606D-03, -.5066D-03, -.3886D-03,
15485      #    -.2953D-03, -.2240D-03, -.1693D-03, -.1273D-03, -.9535D-04,
15486      #    -.7135D-04/
15487
15488       data (calcpts(j,38), j = 1,neta) /-.7323D-05, -.8879D-05,
15489      #    -.1071D-04, -.1298D-04, -.1574D-04, -.1902D-04, -.2306D-04,
15490      #    -.2791D-04, -.3375D-04, -.4091D-04, -.4954D-04, -.6005D-04,
15491      #    -.7274D-04, -.8814D-04, -.1067D-03, -.1294D-03, -.1568D-03,
15492      #    -.1900D-03, -.2303D-03, -.2792D-03, -.3383D-03, -.4100D-03,
15493      #    -.4970D-03, -.6023D-03, -.7300D-03, -.8847D-03, -.1072D-02,
15494      #    -.1299D-02, -.1575D-02, -.1909D-02, -.2315D-02, -.2806D-02,
15495      #    -.3397D-02, -.4101D-02, -.4924D-02, -.5855D-02, -.6865D-02,
15496      #    -.7905D-02, -.8912D-02, -.9819D-02, -.1057D-01, -.1111D-01,
15497      #    -.1141D-01, -.1146D-01, -.1122D-01, -.1071D-01, -.9941D-02,
15498      #    -.8985D-02, -.7943D-02, -.6946D-02, -.6119D-02, -.5514D-02,
15499      #    -.5091D-02, -.4743D-02, -.4372D-02, -.3933D-02, -.3439D-02,
15500      #    -.2928D-02, -.2438D-02, -.1994D-02, -.1609D-02, -.1283D-02,
15501      #    -.1016D-02, -.7942D-03, -.6176D-03, -.4770D-03, -.3677D-03,
15502      #    -.2804D-03, -.2130D-03, -.1610D-03, -.1217D-03, -.9104D-04,
15503      #    -.6771D-04/
15504
15505       data (calcpts(j,39), j = 1,neta) /-.5564D-05, -.6759D-05,
15506      #    -.8192D-05, -.9970D-05, -.1212D-04, -.1469D-04, -.1779D-04,
15507      #    -.2157D-04, -.2609D-04, -.3166D-04, -.3838D-04, -.4656D-04,
15508      #    -.5639D-04, -.6835D-04, -.8283D-04, -.1004D-03, -.1217D-03,
15509      #    -.1475D-03, -.1787D-03, -.2167D-03, -.2625D-03, -.3182D-03,
15510      #    -.3856D-03, -.4674D-03, -.5663D-03, -.6863D-03, -.8314D-03,
15511      #    -.1007D-02, -.1221D-02, -.1479D-02, -.1792D-02, -.2170D-02,
15512      #    -.2623D-02, -.3162D-02, -.3790D-02, -.4501D-02, -.5273D-02,
15513      #    -.6072D-02, -.6852D-02, -.7568D-02, -.8177D-02, -.8646D-02,
15514      #    -.8952D-02, -.9074D-02, -.9000D-02, -.8723D-02, -.8246D-02,
15515      #    -.7592D-02, -.6807D-02, -.5974D-02, -.5194D-02, -.4557D-02,
15516      #    -.4098D-02, -.3780D-02, -.3519D-02, -.3239D-02, -.2907D-02,
15517      #    -.2535D-02, -.2153D-02, -.1788D-02, -.1457D-02, -.1175D-02,
15518      #    -.9354D-03, -.7381D-03, -.5775D-03, -.4488D-03, -.3468D-03,
15519      #    -.2662D-03, -.2035D-03, -.1549D-03, -.1169D-03, -.8820D-04,
15520      #    -.6620D-04/
15521
15522       data (calcpts(j,40), j = 1,neta) /-.4321D-05, -.5241D-05,
15523      #    -.6319D-05, -.7696D-05, -.9306D-05, -.1129D-04, -.1367D-04,
15524      #    -.1662D-04, -.2009D-04, -.2435D-04, -.2952D-04, -.3579D-04,
15525      #    -.4337D-04, -.5257D-04, -.6371D-04, -.7722D-04, -.9360D-04,
15526      #    -.1134D-03, -.1374D-03, -.1666D-03, -.2019D-03, -.2446D-03,
15527      #    -.2965D-03, -.3593D-03, -.4353D-03, -.5274D-03, -.6389D-03,
15528      #    -.7739D-03, -.9375D-03, -.1135D-02, -.1374D-02, -.1663D-02,
15529      #    -.2009D-02, -.2418D-02, -.2895D-02, -.3434D-02, -.4020D-02,
15530      #    -.4630D-02, -.5230D-02, -.5788D-02, -.6274D-02, -.6666D-02,
15531      #    -.6944D-02, -.7097D-02, -.7115D-02, -.6989D-02, -.6715D-02,
15532      #    -.6298D-02, -.5755D-02, -.5125D-02, -.4469D-02, -.3865D-02,
15533      #    -.3379D-02, -.3033D-02, -.2795D-02, -.2600D-02, -.2389D-02,
15534      #    -.2140D-02, -.1862D-02, -.1578D-02, -.1307D-02, -.1065D-02,
15535      #    -.8552D-03, -.6799D-03, -.5353D-03, -.4180D-03, -.3246D-03,
15536      #    -.2506D-03, -.1920D-03, -.1466D-03, -.1113D-03, -.8399D-04,
15537      #    -.6332D-04/
15538
15539       data (calcpts(j,41), j = 1,neta) /-.3334D-05, -.4055D-05,
15540      #    -.4852D-05, -.5910D-05, -.7143D-05, -.8672D-05, -.1049D-04,
15541      #    -.1268D-04, -.1537D-04, -.1864D-04, -.2260D-04, -.2733D-04,
15542      #    -.3314D-04, -.4016D-04, -.4862D-04, -.5896D-04, -.7144D-04,
15543      #    -.8655D-04, -.1049D-03, -.1271D-03, -.1540D-03, -.1866D-03,
15544      #    -.2261D-03, -.2740D-03, -.3319D-03, -.4022D-03, -.4871D-03,
15545      #    -.5900D-03, -.7145D-03, -.8649D-03, -.1047D-02, -.1265D-02,
15546      #    -.1527D-02, -.1837D-02, -.2196D-02, -.2603D-02, -.3046D-02,
15547      #    -.3508D-02, -.3966D-02, -.4397D-02, -.4780D-02, -.5098D-02,
15548      #    -.5339D-02, -.5494D-02, -.5555D-02, -.5518D-02, -.5376D-02,
15549      #    -.5128D-02, -.4777D-02, -.4337D-02, -.3838D-02, -.3328D-02,
15550      #    -.2864D-02, -.2496D-02, -.2236D-02, -.2060D-02, -.1915D-02,
15551      #    -.1757D-02, -.1571D-02, -.1364D-02, -.1157D-02, -.9529D-03,
15552      #    -.7742D-03, -.6209D-03, -.4923D-03, -.3869D-03, -.3023D-03,
15553      #    -.2343D-03, -.1803D-03, -.1383D-03, -.1050D-03, -.7963D-04,
15554      #    -.6029D-04/
15555
15556       data (calcpts(j,42), j = 1,neta) /-.2479D-05, -.3065D-05,
15557      #    -.3689D-05, -.4454D-05, -.5396D-05, -.6551D-05, -.7966D-05,
15558      #    -.9624D-05, -.1164D-04, -.1409D-04, -.1709D-04, -.2071D-04,
15559      #    -.2511D-04, -.3044D-04, -.3685D-04, -.4467D-04, -.5412D-04,
15560      #    -.6560D-04, -.7945D-04, -.9630D-04, -.1166D-03, -.1413D-03,
15561      #    -.1713D-03, -.2076D-03, -.2514D-03, -.3046D-03, -.3689D-03,
15562      #    -.4468D-03, -.5409D-03, -.6546D-03, -.7917D-03, -.9566D-03,
15563      #    -.1154D-02, -.1386D-02, -.1657D-02, -.1962D-02, -.2295D-02,
15564      #    -.2644D-02, -.2991D-02, -.3321D-02, -.3618D-02, -.3872D-02,
15565      #    -.4073D-02, -.4215D-02, -.4293D-02, -.4303D-02, -.4241D-02,
15566      #    -.4104D-02, -.3890D-02, -.3602D-02, -.3251D-02, -.2861D-02,
15567      #    -.2468D-02, -.2115D-02, -.1837D-02, -.1644D-02, -.1513D-02,
15568      #    -.1406D-02, -.1289D-02, -.1150D-02, -.9963D-03, -.8400D-03,
15569      #    -.6934D-03, -.5621D-03, -.4501D-03, -.3568D-03, -.2801D-03,
15570      #    -.2181D-03, -.1688D-03, -.1301D-03, -.9944D-04, -.7544D-04,
15571      #    -.5744D-04/
15572
15573       data (calcpts(j,43), j = 1,neta) /-.1859D-05, -.2269D-05,
15574      #    -.2779D-05, -.3347D-05, -.4064D-05, -.4958D-05, -.5995D-05,
15575      #    -.7236D-05, -.8771D-05, -.1062D-04, -.1288D-04, -.1560D-04,
15576      #    -.1890D-04, -.2290D-04, -.2775D-04, -.3363D-04, -.4075D-04,
15577      #    -.4937D-04, -.5983D-04, -.7250D-04, -.8785D-04, -.1064D-03,
15578      #    -.1290D-03, -.1563D-03, -.1893D-03, -.2293D-03, -.2777D-03,
15579      #    -.3363D-03, -.4070D-03, -.4925D-03, -.5955D-03, -.7191D-03,
15580      #    -.8667D-03, -.1041D-02, -.1243D-02, -.1471D-02, -.1720D-02,
15581      #    -.1982D-02, -.2244D-02, -.2495D-02, -.2724D-02, -.2923D-02,
15582      #    -.3086D-02, -.3209D-02, -.3288D-02, -.3321D-02, -.3304D-02,
15583      #    -.3235D-02, -.3111D-02, -.2932D-02, -.2702D-02, -.2426D-02,
15584      #    -.2125D-02, -.1824D-02, -.1557D-02, -.1349D-02, -.1205D-02,
15585      #    -.1109D-02, -.1029D-02, -.9423D-03, -.8397D-03, -.7260D-03,
15586      #    -.6111D-03, -.5032D-03, -.4074D-03, -.3254D-03, -.2574D-03,
15587      #    -.2021D-03, -.1574D-03, -.1214D-03, -.9342D-04, -.7142D-04,
15588      #    -.5409D-04/
15589
15590       data (calcpts(j,44), j = 1,neta) /-.1425D-05, -.1723D-05,
15591      #    -.2083D-05, -.2524D-05, -.3056D-05, -.3699D-05, -.4481D-05,
15592      #    -.5430D-05, -.6576D-05, -.7963D-05, -.9650D-05, -.1169D-04,
15593      #    -.1416D-04, -.1716D-04, -.2079D-04, -.2519D-04, -.3052D-04,
15594      #    -.3698D-04, -.4482D-04, -.5431D-04, -.6579D-04, -.7972D-04,
15595      #    -.9660D-04, -.1170D-03, -.1417D-03, -.1717D-03, -.2079D-03,
15596      #    -.2518D-03, -.3047D-03, -.3686D-03, -.4455D-03, -.5378D-03,
15597      #    -.6479D-03, -.7776D-03, -.9280D-03, -.1098D-02, -.1284D-02,
15598      #    -.1479D-02, -.1676D-02, -.1865D-02, -.2041D-02, -.2195D-02,
15599      #    -.2325D-02, -.2428D-02, -.2499D-02, -.2539D-02, -.2546D-02,
15600      #    -.2517D-02, -.2450D-02, -.2345D-02, -.2200D-02, -.2016D-02,
15601      #    -.1803D-02, -.1571D-02, -.1344D-02, -.1143D-02, -.9871D-03,
15602      #    -.8809D-03, -.8099D-03, -.7514D-03, -.6872D-03, -.6114D-03,
15603      #    -.5277D-03, -.4433D-03, -.3645D-03, -.2946D-03, -.2351D-03,
15604      #    -.1856D-03, -.1456D-03, -.1129D-03, -.8693D-04, -.6693D-04,
15605      #    -.5093D-04/
15606
15607       data (calcpts(j,45), j = 1,neta) /-.1047D-05, -.1275D-05,
15608      #    -.1544D-05, -.1873D-05, -.2268D-05, -.2748D-05, -.3332D-05,
15609      #    -.4036D-05, -.4893D-05, -.5928D-05, -.7185D-05, -.8710D-05,
15610      #    -.1055D-04, -.1279D-04, -.1549D-04, -.1877D-04, -.2276D-04,
15611      #    -.2757D-04, -.3341D-04, -.4049D-04, -.4905D-04, -.5944D-04,
15612      #    -.7201D-04, -.8724D-04, -.1057D-03, -.1280D-03, -.1550D-03,
15613      #    -.1876D-03, -.2271D-03, -.2746D-03, -.3319D-03, -.4005D-03,
15614      #    -.4822D-03, -.5785D-03, -.6900D-03, -.8160D-03, -.9539D-03,
15615      #    -.1099D-02, -.1246D-02, -.1389D-02, -.1522D-02, -.1641D-02,
15616      #    -.1743D-02, -.1826D-02, -.1887D-02, -.1928D-02, -.1945D-02,
15617      #    -.1938D-02, -.1906D-02, -.1846D-02, -.1758D-02, -.1642D-02,
15618      #    -.1499D-02, -.1335D-02, -.1159D-02, -.9869D-03, -.8364D-03,
15619      #    -.7209D-03, -.6425D-03, -.5904D-03, -.5475D-03, -.5002D-03,
15620      #    -.4444D-03, -.3830D-03, -.3212D-03, -.2637D-03, -.2128D-03,
15621      #    -.1696D-03, -.1338D-03, -.1049D-03, -.8132D-04, -.6279D-04,
15622      #    -.4812D-04/
15623
15624       data (calcpts(j,46), j = 1,neta) /-.7797D-06, -.9460D-06,
15625      #    -.1149D-05, -.1390D-05, -.1685D-05, -.2043D-05, -.2478D-05,
15626      #    -.3000D-05, -.3631D-05, -.4402D-05, -.5337D-05, -.6469D-05,
15627      #    -.7835D-05, -.9494D-05, -.1150D-04, -.1394D-04, -.1689D-04,
15628      #    -.2047D-04, -.2480D-04, -.3005D-04, -.3641D-04, -.4411D-04,
15629      #    -.5345D-04, -.6475D-04, -.7843D-04, -.9499D-04, -.1150D-03,
15630      #    -.1392D-03, -.1685D-03, -.2037D-03, -.2461D-03, -.2970D-03,
15631      #    -.3574D-03, -.4286D-03, -.5110D-03, -.6042D-03, -.7062D-03,
15632      #    -.8140D-03, -.9235D-03, -.1030D-02, -.1131D-02, -.1222D-02,
15633      #    -.1300D-02, -.1366D-02, -.1417D-02, -.1454D-02, -.1474D-02,
15634      #    -.1479D-02, -.1466D-02, -.1434D-02, -.1383D-02, -.1313D-02,
15635      #    -.1221D-02, -.1110D-02, -.9850D-03, -.8519D-03, -.7227D-03,
15636      #    -.6105D-03, -.5250D-03, -.4674D-03, -.4293D-03, -.3978D-03,
15637      #    -.3632D-03, -.3223D-03, -.2773D-03, -.2321D-03, -.1902D-03,
15638      #    -.1533D-03, -.1220D-03, -.9633D-04, -.7513D-04, -.5833D-04,
15639      #    -.4486D-04/
15640
15641       data (calcpts(j,47), j = 1,neta) /-.5812D-06, -.7041D-06,
15642      #    -.8530D-06, -.1034D-05, -.1247D-05, -.1512D-05, -.1830D-05,
15643      #    -.2218D-05, -.2692D-05, -.3258D-05, -.3949D-05, -.4785D-05,
15644      #    -.5798D-05, -.7020D-05, -.8509D-05, -.1031D-04, -.1249D-04,
15645      #    -.1514D-04, -.1834D-04, -.2222D-04, -.2692D-04, -.3261D-04,
15646      #    -.3952D-04, -.4787D-04, -.5798D-04, -.7023D-04, -.8502D-04,
15647      #    -.1029D-03, -.1245D-03, -.1505D-03, -.1819D-03, -.2193D-03,
15648      #    -.2639D-03, -.3164D-03, -.3771D-03, -.4458D-03, -.5210D-03,
15649      #    -.6007D-03, -.6818D-03, -.7614D-03, -.8367D-03, -.9054D-03,
15650      #    -.9658D-03, -.1018D-02, -.1059D-02, -.1090D-02, -.1111D-02,
15651      #    -.1120D-02, -.1118D-02, -.1102D-02, -.1074D-02, -.1032D-02,
15652      #    -.9757D-03, -.9045D-03, -.8198D-03, -.7246D-03, -.6244D-03,
15653      #    -.5279D-03, -.4446D-03, -.3815D-03, -.3393D-03, -.3115D-03,
15654      #    -.2885D-03, -.2631D-03, -.2332D-03, -.2003D-03, -.1675D-03,
15655      #    -.1370D-03, -.1103D-03, -.8765D-04, -.6899D-04, -.5385D-04,
15656      #    -.4165D-04/
15657
15658       data (calcpts(j,48), j = 1,neta) /-.4289D-06, -.5178D-06,
15659      #    -.6274D-06, -.7621D-06, -.9198D-06, -.1112D-05, -.1351D-05,
15660      #    -.1637D-05, -.1984D-05, -.2400D-05, -.2909D-05, -.3527D-05,
15661      #    -.4273D-05, -.5175D-05, -.6268D-05, -.7597D-05, -.9203D-05,
15662      #    -.1115D-04, -.1351D-04, -.1637D-04, -.1983D-04, -.2403D-04,
15663      #    -.2912D-04, -.3527D-04, -.4272D-04, -.5174D-04, -.6264D-04,
15664      #    -.7582D-04, -.9172D-04, -.1109D-03, -.1339D-03, -.1615D-03,
15665      #    -.1943D-03, -.2329D-03, -.2775D-03, -.3278D-03, -.3832D-03,
15666      #    -.4419D-03, -.5019D-03, -.5609D-03, -.6172D-03, -.6690D-03,
15667      #    -.7152D-03, -.7550D-03, -.7880D-03, -.8138D-03, -.8322D-03,
15668      #    -.8427D-03, -.8453D-03, -.8395D-03, -.8249D-03, -.8008D-03,
15669      #    -.7669D-03, -.7226D-03, -.6678D-03, -.6033D-03, -.5315D-03,
15670      #    -.4565D-03, -.3860D-03, -.3231D-03, -.2767D-03, -.2458D-03,
15671      #    -.2256D-03, -.2088D-03, -.1903D-03, -.1684D-03, -.1445D-03,
15672      #    -.1206D-03, -.9858D-04, -.7925D-04, -.6292D-04, -.4952D-04,
15673      #    -.3852D-04/
15674
15675       data (calcpts(j,49), j = 1,neta) /-.3130D-06, -.3793D-06,
15676      #    -.4580D-06, -.5590D-06, -.6787D-06, -.8204D-06, -.9885D-06,
15677      #    -.1201D-05, -.1456D-05, -.1761D-05, -.2137D-05, -.2588D-05,
15678      #    -.3137D-05, -.3800D-05, -.4604D-05, -.5579D-05, -.6762D-05,
15679      #    -.8190D-05, -.9926D-05, -.1203D-04, -.1457D-04, -.1765D-04,
15680      #    -.2138D-04, -.2590D-04, -.3137D-04, -.3800D-04, -.4600D-04,
15681      #    -.5567D-04, -.6735D-04, -.8141D-04, -.9832D-04, -.1185D-03,
15682      #    -.1426D-03, -.1708D-03, -.2035D-03, -.2405D-03, -.2811D-03,
15683      #    -.3241D-03, -.3683D-03, -.4121D-03, -.4539D-03, -.4927D-03,
15684      #    -.5276D-03, -.5582D-03, -.5840D-03, -.6048D-03, -.6204D-03,
15685      #    -.6307D-03, -.6355D-03, -.6346D-03, -.6277D-03, -.6146D-03,
15686      #    -.5947D-03, -.5677D-03, -.5333D-03, -.4915D-03, -.4427D-03,
15687      #    -.3888D-03, -.3330D-03, -.2798D-03, -.2343D-03, -.2003D-03,
15688      #    -.1778D-03, -.1630D-03, -.1509D-03, -.1374D-03, -.1215D-03,
15689      #    -.1041D-03, -.8673D-04, -.7079D-04, -.5686D-04, -.4513D-04,
15690      #    -.3539D-04/
15691
15692       data (dlaeta(j), j = 1,neta) /
15693      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
15694      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
15695      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
15696      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
15697      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
15698      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
15699      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
15700      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
15701      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
15702      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
15703      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
15704      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
15705      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
15706      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
15707      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
15708
15709       data (dlaxi(j), j = 1,nxi) /
15710      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
15711      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
15712      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
15713      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
15714      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
15715      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
15716      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
15717      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
15718      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
15719      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
15720
15721       dleta = dlog10(eta)
15722       dlxi = dlog10(xi)
15723       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
15724       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
15725       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
15726       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
15727       call locate(dlaeta,neta, dleta, ieta)
15728       call locate(dlaxi, nxi, dlxi, ixi)
15729 c     interpolating between the appropriate points
15730       delxi = 1d0/6d0
15731       deleta = 1d0/6d0
15732 c  lagrange 3-pt.
15733       if (ixi .le. 2) ixi = 2
15734       if (ixi .ge. 48) ixi = 48
15735       if (ieta .le. 2) ieta = 2
15736       if (ieta .ge. 72) ieta = 72
15737       pxi = (dlxi - dlaxi(ixi))/delxi
15738       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
15739      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
15740      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
15741       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
15742      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
15743      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
15744       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
15745      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
15746      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
15747       peta = (dleta - dlaeta(ieta))/deleta
15748       h1_ATg = peta*(peta-1d0)/2d0*f(-1) +
15749      #     (1d0 - peta**2)*f(0) +
15750 CMB  #     + peta*(peta+1d0)/2d0*f(1)
15751      #     peta*(peta+1d0)/2d0*f(1)
15752       return
15753       end
15754
15755 c     ========================================
15756       double precision function h1_FTg(eta,xi)
15757 c     ========================================
15758
15759 c     eq (10) in PLB347 (1995) 143 - 151 for the transverse piece
15760 c     MSbar scheme
15761 c     This routine is called subctcf in the original code.
15762 c     Called sctcf in updated code (03/06/96).
15763
15764       implicit none
15765       integer neta, nxi
15766       parameter (neta = 73, nxi = 49)
15767       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
15768       double precision eta, xi, dleta, dlxi
15769       double precision pxi, peta, f(-1:1), delxi, deleta
15770       integer j, ieta, ixi
15771       data (calcpts(j, 1), j = 1,neta) /-.2005D-03, -.2004D-03,
15772      #    -.3501D-03, -.3497D-03, -.4991D-03, -.4983D-03, -.6470D-03,
15773      #    -.7952D-03, -.9425D-03, -.1089D-02, -.1383D-02, -.1524D-02,
15774      #    -.1962D-02, -.2243D-02, -.2666D-02, -.3227D-02, -.3769D-02,
15775      #    -.4434D-02, -.5209D-02, -.6075D-02, -.7007D-02, -.7963D-02,
15776      #    -.8887D-02, -.9694D-02, -.1011D-01, -.1027D-01, -.9623D-02,
15777      #    -.7967D-02, -.4835D-02, -.5091D-03, 0.5340D-02, 0.1151D-01,
15778      #    0.1643D-01, 0.1747D-01, 0.1237D-01, 0.7897D-03, -.1390D-01,
15779      #    -.2616D-01, -.3083D-01, -.2674D-01, -.1655D-01, -.4410D-02,
15780      #    0.6429D-02, 0.1431D-01, 0.1894D-01, 0.2087D-01, 0.2082D-01,
15781      #    0.1952D-01, 0.1755D-01, 0.1527D-01, 0.1299D-01, 0.1083D-01,
15782      #    0.8899D-02, 0.7217D-02, 0.5789D-02, 0.4600D-02, 0.3625D-02,
15783      #    0.2837D-02, 0.2204D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15784      #    0.7622D-03, 0.5780D-03, 0.4364D-03, 0.3286D-03, 0.2464D-03,
15785      #    0.1844D-03, 0.1375D-03, 0.1022D-03, 0.7583D-04, 0.5611D-04,
15786      #    0.4143D-04/
15787
15788       data (calcpts(j, 2), j = 1,neta) /-.1546D-03, -.3044D-03,
15789      #    -.3042D-03, -.3038D-03, -.4532D-03, -.4523D-03, -.6011D-03,
15790      #    -.7493D-03, -.8966D-03, -.1043D-02, -.1337D-02, -.1628D-02,
15791      #    -.1916D-02, -.2347D-02, -.2770D-02, -.3181D-02, -.3873D-02,
15792      #    -.4538D-02, -.5313D-02, -.6180D-02, -.6961D-02, -.7918D-02,
15793      #    -.8841D-02, -.9649D-02, -.1022D-01, -.1023D-01, -.9578D-02,
15794      #    -.7923D-02, -.4941D-02, -.4661D-03, 0.5382D-02, 0.1155D-01,
15795      #    0.1647D-01, 0.1750D-01, 0.1240D-01, 0.8170D-03, -.1388D-01,
15796      #    -.2616D-01, -.3083D-01, -.2673D-01, -.1655D-01, -.4404D-02,
15797      #    0.6433D-02, 0.1429D-01, 0.1894D-01, 0.2086D-01, 0.2082D-01,
15798      #    0.1952D-01, 0.1755D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15799      #    0.8899D-02, 0.7217D-02, 0.5789D-02, 0.4600D-02, 0.3625D-02,
15800      #    0.2837D-02, 0.2204D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15801      #    0.7622D-03, 0.5780D-03, 0.4364D-03, 0.3286D-03, 0.2464D-03,
15802      #    0.1844D-03, 0.1375D-03, 0.1022D-03, 0.7583D-04, 0.5611D-04,
15803      #    0.4143D-04/
15804
15805       data (calcpts(j, 3), j = 1,neta) /-.2373D-03, -.2372D-03,
15806      #    -.2369D-03, -.3865D-03, -.3859D-03, -.5351D-03, -.6838D-03,
15807      #    -.6820D-03, -.9793D-03, -.1125D-02, -.1270D-02, -.1561D-02,
15808      #    -.1848D-02, -.2280D-02, -.2703D-02, -.3264D-02, -.3806D-02,
15809      #    -.4471D-02, -.5246D-02, -.6112D-02, -.7044D-02, -.8001D-02,
15810      #    -.8924D-02, -.9582D-02, -.1015D-01, -.1016D-01, -.9512D-02,
15811      #    -.7858D-02, -.4877D-02, -.4031D-03, 0.5293D-02, 0.1145D-01,
15812      #    0.1637D-01, 0.1755D-01, 0.1244D-01, 0.8570D-03, -.1399D-01,
15813      #    -.2615D-01, -.3083D-01, -.2673D-01, -.1656D-01, -.4395D-02,
15814      #    0.6424D-02, 0.1430D-01, 0.1893D-01, 0.2086D-01, 0.2082D-01,
15815      #    0.1952D-01, 0.1755D-01, 0.1527D-01, 0.1299D-01, 0.1083D-01,
15816      #    0.8899D-02, 0.7217D-02, 0.5789D-02, 0.4600D-02, 0.3625D-02,
15817      #    0.2837D-02, 0.2204D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15818      #    0.7622D-03, 0.5778D-03, 0.4364D-03, 0.3286D-03, 0.2464D-03,
15819      #    0.1844D-03, 0.1375D-03, 0.1022D-03, 0.7583D-04, 0.5611D-04,
15820      #    0.4143D-04/
15821
15822       data (calcpts(j, 4), j = 1,neta) /-.1385D-03, -.2883D-03,
15823      #    -.2881D-03, -.2877D-03, -.4371D-03, -.5862D-03, -.5850D-03,
15824      #    -.7331D-03, -.8804D-03, -.1026D-02, -.1321D-02, -.1612D-02,
15825      #    -.1900D-02, -.2331D-02, -.2754D-02, -.3165D-02, -.3857D-02,
15826      #    -.4522D-02, -.5297D-02, -.6164D-02, -.6946D-02, -.7902D-02,
15827      #    -.8826D-02, -.9634D-02, -.1020D-01, -.1021D-01, -.9565D-02,
15828      #    -.7912D-02, -.4932D-02, -.4606D-03, 0.5233D-02, 0.1154D-01,
15829      #    0.1645D-01, 0.1748D-01, 0.1236D-01, 0.7658D-03, -.1394D-01,
15830      #    -.2615D-01, -.3082D-01, -.2673D-01, -.1655D-01, -.4398D-02,
15831      #    0.6433D-02, 0.1429D-01, 0.1894D-01, 0.2087D-01, 0.2083D-01,
15832      #    0.1952D-01, 0.1753D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15833      #    0.8899D-02, 0.7216D-02, 0.5790D-02, 0.4600D-02, 0.3625D-02,
15834      #    0.2837D-02, 0.2204D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15835      #    0.7622D-03, 0.5778D-03, 0.4364D-03, 0.3286D-03, 0.2464D-03,
15836      #    0.1844D-03, 0.1375D-03, 0.1022D-03, 0.7582D-04, 0.5611D-04,
15837      #    0.4143D-04/
15838
15839       data (calcpts(j, 5), j = 1,neta) /-.1435D-03, -.2933D-03,
15840      #    -.2930D-03, -.2926D-03, -.4421D-03, -.5912D-03, -.5900D-03,
15841      #    -.7381D-03, -.8854D-03, -.1031D-02, -.1326D-02, -.1617D-02,
15842      #    -.1905D-02, -.2336D-02, -.2759D-02, -.3170D-02, -.3862D-02,
15843      #    -.4527D-02, -.5302D-02, -.6169D-02, -.6951D-02, -.7908D-02,
15844      #    -.8831D-02, -.9640D-02, -.1021D-01, -.1022D-01, -.9573D-02,
15845      #    -.7921D-02, -.4944D-02, -.4749D-03, 0.5215D-02, 0.1152D-01,
15846      #    0.1642D-01, 0.1744D-01, 0.1231D-01, 0.8520D-03, -.1402D-01,
15847      #    -.2614D-01, -.3081D-01, -.2671D-01, -.1654D-01, -.4394D-02,
15848      #    0.6431D-02, 0.1430D-01, 0.1893D-01, 0.2087D-01, 0.2083D-01,
15849      #    0.1953D-01, 0.1754D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15850      #    0.8898D-02, 0.7216D-02, 0.5788D-02, 0.4600D-02, 0.3625D-02,
15851      #    0.2835D-02, 0.2205D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15852      #    0.7621D-03, 0.5778D-03, 0.4365D-03, 0.3286D-03, 0.2464D-03,
15853      #    0.1844D-03, 0.1374D-03, 0.1022D-03, 0.7582D-04, 0.5611D-04,
15854      #    0.4143D-04/
15855
15856       data (calcpts(j, 6), j = 1,neta) /-.2310D-03, -.2308D-03,
15857      #    -.2305D-03, -.3801D-03, -.3795D-03, -.5287D-03, -.6774D-03,
15858      #    -.8256D-03, -.9729D-03, -.1119D-02, -.1263D-02, -.1555D-02,
15859      #    -.1842D-02, -.2274D-02, -.2697D-02, -.3257D-02, -.3799D-02,
15860      #    -.4464D-02, -.5240D-02, -.6107D-02, -.7039D-02, -.7996D-02,
15861      #    -.8920D-02, -.9579D-02, -.1015D-01, -.1016D-01, -.9515D-02,
15862      #    -.7865D-02, -.4891D-02, -.5759D-03, 0.5258D-02, 0.1140D-01,
15863      #    0.1630D-01, 0.1745D-01, 0.1231D-01, 0.8284D-03, -.1392D-01,
15864      #    -.2614D-01, -.3080D-01, -.2671D-01, -.1653D-01, -.4397D-02,
15865      #    0.6421D-02, 0.1430D-01, 0.1894D-01, 0.2086D-01, 0.2082D-01,
15866      #    0.1953D-01, 0.1754D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15867      #    0.8897D-02, 0.7216D-02, 0.5788D-02, 0.4599D-02, 0.3625D-02,
15868      #    0.2836D-02, 0.2205D-02, 0.1703D-02, 0.1309D-02, 0.1001D-02,
15869      #    0.7621D-03, 0.5779D-03, 0.4365D-03, 0.3284D-03, 0.2464D-03,
15870      #    0.1844D-03, 0.1374D-03, 0.1022D-03, 0.7582D-04, 0.5611D-04,
15871      #    0.4143D-04/
15872
15873       data (calcpts(j, 7), j = 1,neta) /-.2194D-03, -.2192D-03,
15874      #    -.2189D-03, -.3685D-03, -.3680D-03, -.5171D-03, -.6659D-03,
15875      #    -.8140D-03, -.9613D-03, -.1107D-02, -.1252D-02, -.1543D-02,
15876      #    -.1831D-02, -.2262D-02, -.2685D-02, -.3246D-02, -.3788D-02,
15877      #    -.4453D-02, -.5228D-02, -.6096D-02, -.7028D-02, -.7985D-02,
15878      #    -.8910D-02, -.9569D-02, -.1014D-01, -.1030D-01, -.9660D-02,
15879      #    -.7863D-02, -.5043D-02, -.5842D-03, 0.5241D-02, 0.1137D-01,
15880      #    0.1625D-01, 0.1739D-01, 0.1222D-01, 0.7137D-03, -.1391D-01,
15881      #    -.2612D-01, -.3079D-01, -.2669D-01, -.1652D-01, -.4402D-02,
15882      #    0.6419D-02, 0.1429D-01, 0.1892D-01, 0.2086D-01, 0.2081D-01,
15883      #    0.1952D-01, 0.1754D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15884      #    0.8896D-02, 0.7215D-02, 0.5787D-02, 0.4599D-02, 0.3625D-02,
15885      #    0.2836D-02, 0.2205D-02, 0.1704D-02, 0.1309D-02, 0.1001D-02,
15886      #    0.7621D-03, 0.5779D-03, 0.4365D-03, 0.3285D-03, 0.2464D-03,
15887      #    0.1842D-03, 0.1374D-03, 0.1022D-03, 0.7582D-04, 0.5611D-04,
15888      #    0.4143D-04/
15889
15890       data (calcpts(j, 8), j = 1,neta) /-.2128D-03, -.2126D-03,
15891      #    -.3623D-03, -.3619D-03, -.3613D-03, -.5105D-03, -.6592D-03,
15892      #    -.8074D-03, -.9547D-03, -.1101D-02, -.1245D-02, -.1536D-02,
15893      #    -.1824D-02, -.2256D-02, -.2679D-02, -.3239D-02, -.3782D-02,
15894      #    -.4447D-02, -.5222D-02, -.6090D-02, -.7022D-02, -.7980D-02,
15895      #    -.8905D-02, -.9566D-02, -.1014D-01, -.1030D-01, -.9663D-02,
15896      #    -.8021D-02, -.5056D-02, -.6067D-03, 0.5056D-02, 0.1132D-01,
15897      #    0.1618D-01, 0.1713D-01, 0.1223D-01, 0.6853D-03, -.1398D-01,
15898      #    -.2611D-01, -.3077D-01, -.2667D-01, -.1652D-01, -.4388D-02,
15899      #    0.6431D-02, 0.1429D-01, 0.1893D-01, 0.2086D-01, 0.2082D-01,
15900      #    0.1951D-01, 0.1753D-01, 0.1526D-01, 0.1298D-01, 0.1083D-01,
15901      #    0.8895D-02, 0.7215D-02, 0.5788D-02, 0.4598D-02, 0.3624D-02,
15902      #    0.2836D-02, 0.2203D-02, 0.1704D-02, 0.1309D-02, 0.1001D-02,
15903      #    0.7620D-03, 0.5779D-03, 0.4365D-03, 0.3285D-03, 0.2464D-03,
15904      #    0.1842D-03, 0.1374D-03, 0.1022D-03, 0.7582D-04, 0.5611D-04,
15905      #    0.4143D-04/
15906
15907       data (calcpts(j, 9), j = 1,neta) /-.1453D-03, -.2952D-03,
15908      #    -.2949D-03, -.2945D-03, -.4439D-03, -.4431D-03, -.5918D-03,
15909      #    -.7400D-03, -.8873D-03, -.1033D-02, -.1328D-02, -.1619D-02,
15910      #    -.1907D-02, -.2188D-02, -.2762D-02, -.3172D-02, -.3864D-02,
15911      #    -.4530D-02, -.5306D-02, -.6023D-02, -.6956D-02, -.7915D-02,
15912      #    -.8841D-02, -.9653D-02, -.1023D-01, -.1024D-01, -.9610D-02,
15913      #    -.7974D-02, -.5019D-02, -.7318D-03, 0.4913D-02, 0.1115D-01,
15914      #    0.1598D-01, 0.1704D-01, 0.1209D-01, 0.6323D-03, -.1395D-01,
15915      #    -.2608D-01, -.3072D-01, -.2665D-01, -.1649D-01, -.4378D-02,
15916      #    0.6416D-02, 0.1428D-01, 0.1891D-01, 0.2085D-01, 0.2080D-01,
15917      #    0.1950D-01, 0.1752D-01, 0.1527D-01, 0.1298D-01, 0.1083D-01,
15918      #    0.8894D-02, 0.7213D-02, 0.5787D-02, 0.4599D-02, 0.3624D-02,
15919      #    0.2835D-02, 0.2203D-02, 0.1702D-02, 0.1309D-02, 0.1001D-02,
15920      #    0.7620D-03, 0.5777D-03, 0.4363D-03, 0.3285D-03, 0.2464D-03,
15921      #    0.1842D-03, 0.1374D-03, 0.1022D-03, 0.7581D-04, 0.5611D-04,
15922      #    0.4143D-04/
15923
15924       data (calcpts(j,10), j = 1,neta) /-.2188D-03, -.2186D-03,
15925      #    -.2183D-03, -.3679D-03, -.3673D-03, -.5165D-03, -.6652D-03,
15926      #    -.8134D-03, -.9608D-03, -.1107D-02, -.1251D-02, -.1543D-02,
15927      #    -.1830D-02, -.2262D-02, -.2685D-02, -.3246D-02, -.3788D-02,
15928      #    -.4454D-02, -.5230D-02, -.6098D-02, -.7032D-02, -.7841D-02,
15929      #    -.8769D-02, -.9583D-02, -.1016D-01, -.1018D-01, -.9704D-02,
15930      #    -.8077D-02, -.5135D-02, -.8675D-03, 0.4751D-02, 0.1096D-01,
15931      #    0.1573D-01, 0.1673D-01, 0.1185D-01, 0.4632D-03, -.1406D-01,
15932      #    -.2606D-01, -.3067D-01, -.2659D-01, -.1647D-01, -.4373D-02,
15933      #    0.6415D-02, 0.1427D-01, 0.1891D-01, 0.2083D-01, 0.2079D-01,
15934      #    0.1950D-01, 0.1752D-01, 0.1526D-01, 0.1297D-01, 0.1082D-01,
15935      #    0.8891D-02, 0.7211D-02, 0.5785D-02, 0.4598D-02, 0.3623D-02,
15936      #    0.2835D-02, 0.2204D-02, 0.1702D-02, 0.1308D-02, 0.1001D-02,
15937      #    0.7619D-03, 0.5776D-03, 0.4364D-03, 0.3285D-03, 0.2463D-03,
15938      #    0.1842D-03, 0.1374D-03, 0.1022D-03, 0.7581D-04, 0.5610D-04,
15939      #    0.4142D-04/
15940
15941       data (calcpts(j,11), j = 1,neta) /-.1437D-03, -.2935D-03,
15942      #    -.2933D-03, -.2929D-03, -.4423D-03, -.4414D-03, -.5902D-03,
15943      #    -.7384D-03, -.8857D-03, -.1032D-02, -.1326D-02, -.1618D-02,
15944      #    -.1905D-02, -.2187D-02, -.2610D-02, -.3171D-02, -.3714D-02,
15945      #    -.4380D-02, -.5156D-02, -.6025D-02, -.6960D-02, -.7920D-02,
15946      #    -.8850D-02, -.9667D-02, -.1010D-01, -.1028D-01, -.9659D-02,
15947      #    -.8046D-02, -.5273D-02, -.1033D-02, 0.4546D-02, 0.1055D-01,
15948      #    0.1540D-01, 0.1646D-01, 0.1163D-01, 0.4108D-03, -.1410D-01,
15949      #    -.2601D-01, -.3059D-01, -.2652D-01, -.1642D-01, -.4356D-02,
15950      #    0.6410D-02, 0.1426D-01, 0.1888D-01, 0.2081D-01, 0.2078D-01,
15951      #    0.1949D-01, 0.1752D-01, 0.1525D-01, 0.1297D-01, 0.1082D-01,
15952      #    0.8887D-02, 0.7209D-02, 0.5783D-02, 0.4596D-02, 0.3622D-02,
15953      #    0.2834D-02, 0.2202D-02, 0.1703D-02, 0.1308D-02, 0.1000D-02,
15954      #    0.7617D-03, 0.5775D-03, 0.4362D-03, 0.3284D-03, 0.2463D-03,
15955      #    0.1843D-03, 0.1374D-03, 0.1022D-03, 0.7580D-04, 0.5609D-04,
15956      #    0.4142D-04/
15957
15958       data (calcpts(j,12), j = 1,neta) /-.1721D-03, -.1719D-03,
15959      #    -.3216D-03, -.3212D-03, -.4707D-03, -.4698D-03, -.6186D-03,
15960      #    -.7668D-03, -.9141D-03, -.1060D-02, -.1355D-02, -.1496D-02,
15961      #    -.1934D-02, -.2216D-02, -.2639D-02, -.3200D-02, -.3743D-02,
15962      #    -.4410D-02, -.5187D-02, -.6056D-02, -.6993D-02, -.7805D-02,
15963      #    -.8738D-02, -.9560D-02, -.1015D-01, -.1019D-01, -.9731D-02,
15964      #    -.8137D-02, -.5394D-02, -.1194D-02, 0.4180D-02, 0.1010D-01,
15965      #    0.1486D-01, 0.1594D-01, 0.1109D-01, 0.1429D-03, -.1411D-01,
15966      #    -.2595D-01, -.3047D-01, -.2643D-01, -.1637D-01, -.4346D-02,
15967      #    0.6403D-02, 0.1424D-01, 0.1885D-01, 0.2079D-01, 0.2076D-01,
15968      #    0.1946D-01, 0.1749D-01, 0.1524D-01, 0.1296D-01, 0.1081D-01,
15969      #    0.8882D-02, 0.7204D-02, 0.5779D-02, 0.4593D-02, 0.3620D-02,
15970      #    0.2833D-02, 0.2201D-02, 0.1701D-02, 0.1308D-02, 0.1000D-02,
15971      #    0.7615D-03, 0.5774D-03, 0.4361D-03, 0.3282D-03, 0.2463D-03,
15972      #    0.1841D-03, 0.1373D-03, 0.1021D-03, 0.7577D-04, 0.5607D-04,
15973      #    0.4140D-04/
15974
15975       data (calcpts(j,13), j = 1,neta) /-.1707D-03, -.1705D-03,
15976      #    -.3202D-03, -.3198D-03, -.4693D-03, -.4684D-03, -.6172D-03,
15977      #    -.7654D-03, -.9128D-03, -.1059D-02, -.1353D-02, -.1495D-02,
15978      #    -.1783D-02, -.2215D-02, -.2639D-02, -.3200D-02, -.3743D-02,
15979      #    -.4410D-02, -.5188D-02, -.5909D-02, -.6848D-02, -.7813D-02,
15980      #    -.8751D-02, -.9579D-02, -.1018D-01, -.1023D-01, -.9793D-02,
15981      #    -.8378D-02, -.5676D-02, -.1534D-02, 0.3758D-02, 0.9572D-02,
15982      #    0.1418D-01, 0.1522D-01, 0.1059D-01, -.1719D-03, -.1426D-01,
15983      #    -.2585D-01, -.3032D-01, -.2629D-01, -.1629D-01, -.4321D-02,
15984      #    0.6391D-02, 0.1421D-01, 0.1882D-01, 0.2075D-01, 0.2072D-01,
15985      #    0.1943D-01, 0.1748D-01, 0.1521D-01, 0.1294D-01, 0.1080D-01,
15986      #    0.8874D-02, 0.7198D-02, 0.5775D-02, 0.4590D-02, 0.3617D-02,
15987      #    0.2831D-02, 0.2200D-02, 0.1700D-02, 0.1307D-02, 0.9996D-03,
15988      #    0.7612D-03, 0.5771D-03, 0.4359D-03, 0.3281D-03, 0.2462D-03,
15989      #    0.1841D-03, 0.1373D-03, 0.1021D-03, 0.7575D-04, 0.5606D-04,
15990      #    0.4139D-04/
15991
15992       data (calcpts(j,14), j = 1,neta) /-.1968D-03, -.1967D-03,
15993      #    -.3464D-03, -.3460D-03, -.3455D-03, -.4946D-03, -.6434D-03,
15994      #    -.7917D-03, -.9391D-03, -.1085D-02, -.1230D-02, -.1521D-02,
15995      #    -.1809D-02, -.2242D-02, -.2666D-02, -.3077D-02, -.3621D-02,
15996      #    -.4289D-02, -.5069D-02, -.5942D-02, -.6883D-02, -.7703D-02,
15997      #    -.8647D-02, -.9484D-02, -.1010D-01, -.1032D-01, -.9760D-02,
15998      #    -.8537D-02, -.5893D-02, -.1986D-02, 0.3039D-02, 0.8692D-02,
15999      #    0.1309D-01, 0.1430D-01, 0.9794D-02, -.7502D-03, -.1435D-01,
16000      #    -.2570D-01, -.3009D-01, -.2609D-01, -.1617D-01, -.4278D-02,
16001      #    0.6379D-02, 0.1415D-01, 0.1876D-01, 0.2070D-01, 0.2068D-01,
16002      #    0.1941D-01, 0.1744D-01, 0.1520D-01, 0.1292D-01, 0.1078D-01,
16003      #    0.8862D-02, 0.7189D-02, 0.5769D-02, 0.4586D-02, 0.3615D-02,
16004      #    0.2828D-02, 0.2198D-02, 0.1699D-02, 0.1306D-02, 0.9988D-03,
16005      #    0.7606D-03, 0.5768D-03, 0.4357D-03, 0.3279D-03, 0.2461D-03,
16006      #    0.1840D-03, 0.1372D-03, 0.1021D-03, 0.7573D-04, 0.5604D-04,
16007      #    0.4138D-04/
16008
16009       data (calcpts(j,15), j = 1,neta) /-.1824D-03, -.1823D-03,
16010      #    -.3320D-03, -.3316D-03, -.4811D-03, -.4803D-03, -.6291D-03,
16011      #    -.7773D-03, -.9248D-03, -.1071D-02, -.1216D-02, -.1507D-02,
16012      #    -.1796D-02, -.2228D-02, -.2503D-02, -.3065D-02, -.3610D-02,
16013      #    -.4279D-02, -.5061D-02, -.5787D-02, -.6732D-02, -.7708D-02,
16014      #    -.8511D-02, -.9361D-02, -.9993D-02, -.1024D-01, -.9876D-02,
16015      #    -.8711D-02, -.6303D-02, -.2665D-02, 0.2193D-02, 0.7467D-02,
16016      #    0.1186D-01, 0.1284D-01, 0.8604D-02, -.1434D-02, -.1442D-01,
16017      #    -.2550D-01, -.2975D-01, -.2580D-01, -.1602D-01, -.4239D-02,
16018      #    0.6339D-02, 0.1408D-01, 0.1867D-01, 0.2062D-01, 0.2060D-01,
16019      #    0.1933D-01, 0.1739D-01, 0.1515D-01, 0.1289D-01, 0.1076D-01,
16020      #    0.8844D-02, 0.7176D-02, 0.5758D-02, 0.4578D-02, 0.3609D-02,
16021      #    0.2824D-02, 0.2195D-02, 0.1697D-02, 0.1304D-02, 0.9978D-03,
16022      #    0.7599D-03, 0.5762D-03, 0.4354D-03, 0.3277D-03, 0.2459D-03,
16023      #    0.1839D-03, 0.1371D-03, 0.1020D-03, 0.7567D-04, 0.5600D-04,
16024      #    0.4136D-04/
16025
16026       data (calcpts(j,16), j = 1,neta) /-.1800D-03, -.1799D-03,
16027      #    -.3296D-03, -.3292D-03, -.3287D-03, -.4779D-03, -.6267D-03,
16028      #    -.6250D-03, -.7725D-03, -.1069D-02, -.1213D-02, -.1506D-02,
16029      #    -.1794D-02, -.2077D-02, -.2502D-02, -.2915D-02, -.3612D-02,
16030      #    -.4133D-02, -.4917D-02, -.5647D-02, -.6598D-02, -.7583D-02,
16031      #    -.8399D-02, -.9268D-02, -.9927D-02, -.1022D-01, -.1006D-01,
16032      #    -.8976D-02, -.6836D-02, -.3517D-02, 0.9542D-03, 0.5906D-02,
16033      #    0.1002D-01, 0.1105D-01, 0.7198D-02, -.2258D-02, -.1472D-01,
16034      #    -.2521D-01, -.2927D-01, -.2542D-01, -.1580D-01, -.4190D-02,
16035      #    0.6275D-02, 0.1396D-01, 0.1855D-01, 0.2048D-01, 0.2050D-01,
16036      #    0.1925D-01, 0.1732D-01, 0.1510D-01, 0.1285D-01, 0.1073D-01,
16037      #    0.8819D-02, 0.7157D-02, 0.5744D-02, 0.4567D-02, 0.3601D-02,
16038      #    0.2819D-02, 0.2191D-02, 0.1694D-02, 0.1302D-02, 0.9963D-03,
16039      #    0.7588D-03, 0.5754D-03, 0.4348D-03, 0.3272D-03, 0.2455D-03,
16040      #    0.1837D-03, 0.1370D-03, 0.1019D-03, 0.7560D-04, 0.5596D-04,
16041      #    0.4132D-04/
16042
16043       data (calcpts(j,17), j = 1,neta) /-.1148D-03, -.2646D-03,
16044      #    -.2644D-03, -.2640D-03, -.4135D-03, -.4127D-03, -.5616D-03,
16045      #    -.7100D-03, -.8576D-03, -.1004D-02, -.1149D-02, -.1441D-02,
16046      #    -.1730D-02, -.2013D-02, -.2439D-02, -.2854D-02, -.3402D-02,
16047      #    -.4076D-02, -.4714D-02, -.5599D-02, -.6409D-02, -.7256D-02,
16048      #    -.8239D-02, -.9134D-02, -.9831D-02, -.1017D-01, -.1010D-01,
16049      #    -.9280D-02, -.7456D-02, -.4522D-02, -.5274D-03, 0.3977D-02,
16050      #    0.7644D-02, 0.8816D-02, 0.5388D-02, -.3332D-02, -.1483D-01,
16051      #    -.2478D-01, -.2863D-01, -.2489D-01, -.1552D-01, -.4146D-02,
16052      #    0.6172D-02, 0.1378D-01, 0.1835D-01, 0.2029D-01, 0.2033D-01,
16053      #    0.1912D-01, 0.1722D-01, 0.1502D-01, 0.1278D-01, 0.1068D-01,
16054      #    0.8782D-02, 0.7130D-02, 0.5725D-02, 0.4553D-02, 0.3590D-02,
16055      #    0.2811D-02, 0.2186D-02, 0.1690D-02, 0.1299D-02, 0.9941D-03,
16056      #    0.7572D-03, 0.5743D-03, 0.4340D-03, 0.3268D-03, 0.2452D-03,
16057      #    0.1835D-03, 0.1368D-03, 0.1018D-03, 0.7550D-04, 0.5588D-04,
16058      #    0.4127D-04/
16059
16060       data (calcpts(j,18), j = 1,neta) /-.1467D-03, -.1465D-03,
16061      #    -.2963D-03, -.2960D-03, -.2955D-03, -.4447D-03, -.5937D-03,
16062      #    -.5921D-03, -.7398D-03, -.8864D-03, -.1181D-02, -.1324D-02,
16063      #    -.1613D-02, -.1898D-02, -.2325D-02, -.2741D-02, -.3291D-02,
16064      #    -.3819D-02, -.4462D-02, -.5205D-02, -.6176D-02, -.7039D-02,
16065      #    -.7897D-02, -.8826D-02, -.9575D-02, -.9992D-02, -.1002D-01,
16066      #    -.9512D-02, -.8062D-02, -.5594D-02, -.2193D-02, 0.1706D-02,
16067      #    0.5020D-02, 0.6064D-02, 0.3033D-02, -.4576D-02, -.1507D-01,
16068      #    -.2416D-01, -.2776D-01, -.2419D-01, -.1519D-01, -.4142D-02,
16069      #    0.5976D-02, 0.1351D-01, 0.1805D-01, 0.2003D-01, 0.2009D-01,
16070      #    0.1892D-01, 0.1705D-01, 0.1489D-01, 0.1269D-01, 0.1061D-01,
16071      #    0.8730D-02, 0.7091D-02, 0.5696D-02, 0.4531D-02, 0.3575D-02,
16072      #    0.2799D-02, 0.2178D-02, 0.1683D-02, 0.1295D-02, 0.9910D-03,
16073      #    0.7550D-03, 0.5727D-03, 0.4329D-03, 0.3260D-03, 0.2446D-03,
16074      #    0.1830D-03, 0.1365D-03, 0.1016D-03, 0.7536D-04, 0.5579D-04,
16075      #    0.4120D-04/
16076
16077       data (calcpts(j,19), j = 1,neta) /-.2090D-03, -.2088D-03,
16078      #    -.2086D-03, -.2083D-03, -.3578D-03, -.3571D-03, -.5061D-03,
16079      #    -.6547D-03, -.6525D-03, -.7993D-03, -.1095D-02, -.1238D-02,
16080      #    -.1528D-02, -.1813D-02, -.2092D-02, -.2510D-02, -.3064D-02,
16081      #    -.3595D-02, -.4245D-02, -.4999D-02, -.5684D-02, -.6569D-02,
16082      #    -.7458D-02, -.8283D-02, -.9099D-02, -.9764D-02, -.9935D-02,
16083      #    -.9630D-02, -.8473D-02, -.6571D-02, -.3899D-02, -.6442D-03,
16084      #    0.2218D-02, 0.3113D-02, 0.6896D-03, -.5955D-02, -.1509D-01,
16085      #    -.2328D-01, -.2662D-01, -.2333D-01, -.1482D-01, -.4195D-02,
16086      #    0.5655D-02, 0.1305D-01, 0.1759D-01, 0.1960D-01, 0.1974D-01,
16087      #    0.1863D-01, 0.1682D-01, 0.1472D-01, 0.1256D-01, 0.1051D-01,
16088      #    0.8655D-02, 0.7035D-02, 0.5655D-02, 0.4501D-02, 0.3553D-02,
16089      #    0.2784D-02, 0.2166D-02, 0.1676D-02, 0.1289D-02, 0.9868D-03,
16090      #    0.7519D-03, 0.5706D-03, 0.4312D-03, 0.3248D-03, 0.2438D-03,
16091      #    0.1824D-03, 0.1361D-03, 0.1013D-03, 0.7515D-04, 0.5564D-04,
16092      #    0.4110D-04/
16093
16094       data (calcpts(j,20), j = 1,neta) /-.1704D-03, -.1703D-03,
16095      #    -.1701D-03, -.1698D-03, -.3194D-03, -.3188D-03, -.4679D-03,
16096      #    -.4665D-03, -.6145D-03, -.7616D-03, -.9074D-03, -.1051D-02,
16097      #    -.1342D-02, -.1629D-02, -.1909D-02, -.2330D-02, -.2737D-02,
16098      #    -.3275D-02, -.3784D-02, -.4550D-02, -.5253D-02, -.6015D-02,
16099      #    -.6793D-02, -.7677D-02, -.8426D-02, -.9065D-02, -.9413D-02,
16100      #    -.9366D-02, -.8727D-02, -.7347D-02, -.5105D-02, -.2548D-02,
16101      #    -.2590D-03, 0.4423D-03, -.1496D-02, -.6912D-02, -.1477D-01,
16102      #    -.2202D-01, -.2513D-01, -.2227D-01, -.1444D-01, -.4398D-02,
16103      #    0.5099D-02, 0.1237D-01, 0.1690D-01, 0.1899D-01, 0.1922D-01,
16104      #    0.1822D-01, 0.1651D-01, 0.1447D-01, 0.1237D-01, 0.1037D-01,
16105      #    0.8549D-02, 0.6956D-02, 0.5596D-02, 0.4459D-02, 0.3522D-02,
16106      #    0.2761D-02, 0.2149D-02, 0.1663D-02, 0.1280D-02, 0.9806D-03,
16107      #    0.7475D-03, 0.5674D-03, 0.4290D-03, 0.3232D-03, 0.2427D-03,
16108      #    0.1816D-03, 0.1355D-03, 0.1009D-03, 0.7488D-04, 0.5544D-04,
16109      #    0.4096D-04/
16110
16111       data (calcpts(j,21), j = 1,neta) /-.9777D-04, -.9765D-04,
16112      #    -.2475D-03, -.2472D-03, -.2468D-03, -.3963D-03, -.3955D-03,
16113      #    -.5443D-03, -.5425D-03, -.6900D-03, -.8362D-03, -.9806D-03,
16114      #    -.1272D-02, -.1411D-02, -.1693D-02, -.2117D-02, -.2380D-02,
16115      #    -.2924D-02, -.3443D-02, -.3924D-02, -.4649D-02, -.5293D-02,
16116      #    -.6119D-02, -.6921D-02, -.7621D-02, -.8255D-02, -.8666D-02,
16117      #    -.8774D-02, -.8275D-02, -.7367D-02, -.5844D-02, -.3874D-02,
16118      #    -.1962D-02, -.1328D-02, -.2876D-02, -.7216D-02, -.1382D-01,
16119      #    -.2019D-01, -.2324D-01, -.2102D-01, -.1410D-01, -.4830D-02,
16120      #    0.4201D-02, 0.1132D-01, 0.1589D-01, 0.1810D-01, 0.1848D-01,
16121      #    0.1764D-01, 0.1604D-01, 0.1411D-01, 0.1210D-01, 0.1017D-01,
16122      #    0.8402D-02, 0.6848D-02, 0.5517D-02, 0.4401D-02, 0.3480D-02,
16123      #    0.2730D-02, 0.2128D-02, 0.1649D-02, 0.1269D-02, 0.9725D-03,
16124      #    0.7418D-03, 0.5633D-03, 0.4261D-03, 0.3212D-03, 0.2412D-03,
16125      #    0.1805D-03, 0.1348D-03, 0.1003D-03, 0.7450D-04, 0.5519D-04,
16126      #    0.4077D-04/
16127
16128       data (calcpts(j,22), j = 1,neta) /-.1735D-03, -.1734D-03,
16129      #    -.1732D-03, -.1730D-03, -.1727D-03, -.3222D-03, -.3215D-03,
16130      #    -.4705D-03, -.4690D-03, -.6168D-03, -.7635D-03, -.9088D-03,
16131      #    -.1052D-02, -.1192D-02, -.1476D-02, -.1754D-02, -.2022D-02,
16132      #    -.2424D-02, -.2805D-02, -.3302D-02, -.3902D-02, -.4582D-02,
16133      #    -.5160D-02, -.5890D-02, -.6402D-02, -.7051D-02, -.7399D-02,
16134      #    -.7551D-02, -.7244D-02, -.6584D-02, -.5435D-02, -.3748D-02,
16135      #    -.2404D-02, -.1634D-02, -.2806D-02, -.6324D-02, -.1186D-01,
16136      #    -.1759D-01, -.2080D-01, -.1952D-01, -.1382D-01, -.5557D-02,
16137      #    0.2891D-02, 0.9818D-02, 0.1445D-01, 0.1684D-01, 0.1745D-01,
16138      #    0.1682D-01, 0.1542D-01, 0.1364D-01, 0.1175D-01, 0.9902D-02,
16139      #    0.8205D-02, 0.6703D-02, 0.5412D-02, 0.4324D-02, 0.3423D-02,
16140      #    0.2689D-02, 0.2099D-02, 0.1627D-02, 0.1254D-02, 0.9617D-03,
16141      #    0.7340D-03, 0.5578D-03, 0.4222D-03, 0.3184D-03, 0.2392D-03,
16142      #    0.1791D-03, 0.1338D-03, 0.9964D-04, 0.7402D-04, 0.5483D-04,
16143      #    0.4054D-04/
16144
16145       data (calcpts(j,23), j = 1,neta) /-.1129D-03, -.1128D-03,
16146      #    -.1127D-03, -.1125D-03, -.1122D-03, -.2618D-03, -.2612D-03,
16147      #    -.2604D-03, -.4091D-03, -.4073D-03, -.5546D-03, -.7007D-03,
16148      #    -.8449D-03, -.9864D-03, -.1124D-02, -.1406D-02, -.1679D-02,
16149      #    -.1939D-02, -.2331D-02, -.2697D-02, -.3172D-02, -.3590D-02,
16150      #    -.4073D-02, -.4583D-02, -.5063D-02, -.5583D-02, -.5880D-02,
16151      #    -.5942D-02, -.5700D-02, -.5019D-02, -.3989D-02, -.2646D-02,
16152      #    -.1380D-02, -.6668D-03, -.1348D-02, -.4099D-02, -.8787D-02,
16153      #    -.1408D-01, -.1771D-01, -.1766D-01, -.1350D-01, -.6539D-02,
16154      #    0.1131D-02, 0.7788D-02, 0.1250D-01, 0.1516D-01, 0.1607D-01,
16155      #    0.1573D-01, 0.1458D-01, 0.1301D-01, 0.1127D-01, 0.9550D-02,
16156      #    0.7946D-02, 0.6514D-02, 0.5274D-02, 0.4223D-02, 0.3352D-02,
16157      #    0.2638D-02, 0.2061D-02, 0.1599D-02, 0.1235D-02, 0.9479D-03,
16158      #    0.7242D-03, 0.5508D-03, 0.4171D-03, 0.3147D-03, 0.2367D-03,
16159      #    0.1774D-03, 0.1326D-03, 0.9877D-04, 0.7339D-04, 0.5439D-04,
16160      #    0.4023D-04/
16161
16162       data (calcpts(j,24), j = 1,neta) /-.6910D-04, -.6903D-04,
16163      #    -.9893D-04, -.1138D-03, -.1286D-03, -.1583D-03, -.2028D-03,
16164      #    -.2471D-03, -.2911D-03, -.3496D-03, -.4225D-03, -.5093D-03,
16165      #    -.6097D-03, -.7229D-03, -.8780D-03, -.1043D-02, -.1247D-02,
16166      #    -.1470D-02, -.1739D-02, -.2031D-02, -.2367D-02, -.2716D-02,
16167      #    -.3103D-02, -.3481D-02, -.3821D-02, -.4103D-02, -.4266D-02,
16168      #    -.4227D-02, -.3915D-02, -.3268D-02, -.2253D-02, -.9436D-03,
16169      #    0.4012D-03, 0.1290D-02, 0.1046D-02, -.9929D-03, -.4925D-02,
16170      #    -.9856D-02, -.1397D-01, -.1528D-01, -.1294D-01, -.7601D-02,
16171      #    -.9618D-03, 0.5278D-02, 0.1004D-01, 0.1299D-01, 0.1429D-01,
16172      #    0.1432D-01, 0.1350D-01, 0.1220D-01, 0.1067D-01, 0.9105D-02,
16173      #    0.7620D-02, 0.6276D-02, 0.5100D-02, 0.4098D-02, 0.3261D-02,
16174      #    0.2573D-02, 0.2015D-02, 0.1566D-02, 0.1211D-02, 0.9308D-03,
16175      #    0.7119D-03, 0.5422D-03, 0.4110D-03, 0.3105D-03, 0.2336D-03,
16176      #    0.1753D-03, 0.1310D-03, 0.9769D-04, 0.7262D-04, 0.5386D-04,
16177      #    0.3984D-04/
16178
16179       data (calcpts(j,25), j = 1,neta) /-.4463D-04, -.5957D-04,
16180      #    -.7450D-04, -.8938D-04, -.1042D-03, -.1190D-03, -.1486D-03,
16181      #    -.1781D-03, -.2073D-03, -.2512D-03, -.3095D-03, -.3671D-03,
16182      #    -.4385D-03, -.5383D-03, -.6356D-03, -.7593D-03, -.8927D-03,
16183      #    -.1063D-02, -.1253D-02, -.1455D-02, -.1694D-02, -.1941D-02,
16184      #    -.2196D-02, -.2435D-02, -.2639D-02, -.2786D-02, -.2809D-02,
16185      #    -.2651D-02, -.2252D-02, -.1543D-02, -.5098D-03, 0.8178D-03,
16186      #    0.2215D-02, 0.3330D-02, 0.3531D-02, 0.2191D-02, -.9599D-03,
16187      #    -.5427D-02, -.9834D-02, -.1238D-01, -.1187D-01, -.8389D-02,
16188      #    -.3088D-02, 0.2501D-02, 0.7192D-02, 0.1042D-01, 0.1214D-01,
16189      #    0.1261D-01, 0.1219D-01, 0.1120D-01, 0.9929D-02, 0.8561D-02,
16190      #    0.7221D-02, 0.5986D-02, 0.4890D-02, 0.3947D-02, 0.3152D-02,
16191      #    0.2494D-02, 0.1957D-02, 0.1526D-02, 0.1182D-02, 0.9102D-03,
16192      #    0.6974D-03, 0.5317D-03, 0.4036D-03, 0.3053D-03, 0.2299D-03,
16193      #    0.1726D-03, 0.1292D-03, 0.9638D-04, 0.7171D-04, 0.5322D-04,
16194      #    0.3940D-04/
16195
16196       data (calcpts(j,26), j = 1,neta) /-.2966D-04, -.2962D-04,
16197      #    -.4456D-04, -.4447D-04, -.5935D-04, -.7417D-04, -.8890D-04,
16198      #    -.1185D-03, -.1329D-03, -.1621D-03, -.2058D-03, -.2490D-03,
16199      #    -.3063D-03, -.3624D-03, -.4316D-03, -.5132D-03, -.6057D-03,
16200      #    -.7225D-03, -.8457D-03, -.9865D-03, -.1139D-02, -.1295D-02,
16201      #    -.1441D-02, -.1591D-02, -.1687D-02, -.1708D-02, -.1632D-02,
16202      #    -.1397D-02, -.9495D-03, -.2161D-03, 0.8048D-03, 0.2109D-02,
16203      #    0.3533D-02, 0.4767D-02, 0.5314D-02, 0.4615D-02, 0.2265D-02,
16204      #    -.1537D-02, -.5856D-02, -.9181D-02, -.1023D-01, -.8583D-02,
16205      #    -.4844D-02, -.1984D-03, 0.4188D-02, 0.7570D-02, 0.9685D-02,
16206      #    0.1062D-01, 0.1064D-01, 0.1003D-01, 0.9054D-02, 0.7917D-02,
16207      #    0.6752D-02, 0.5644D-02, 0.4644D-02, 0.3768D-02, 0.3024D-02,
16208      #    0.2402D-02, 0.1891D-02, 0.1479D-02, 0.1148D-02, 0.8863D-03,
16209      #    0.6802D-03, 0.5196D-03, 0.3951D-03, 0.2992D-03, 0.2257D-03,
16210      #    0.1695D-03, 0.1270D-03, 0.9488D-04, 0.7065D-04, 0.5247D-04,
16211      #    0.3887D-04/
16212
16213       data (calcpts(j,27), j = 1,neta) /-.3332D-04, -.3329D-04,
16214      #    -.4825D-04, -.4819D-04, -.6309D-04, -.6296D-04, -.7777D-04,
16215      #    -.9248D-04, -.1071D-03, -.1364D-03, -.1505D-03, -.1792D-03,
16216      #    -.2222D-03, -.2494D-03, -.3051D-03, -.3589D-03, -.4248D-03,
16217      #    -.4865D-03, -.5719D-03, -.6482D-03, -.7412D-03, -.8295D-03,
16218      #    -.9192D-03, -.9822D-03, -.9994D-03, -.9586D-03, -.8365D-03,
16219      #    -.5633D-03, -.9504D-04, 0.5896D-03, 0.1553D-02, 0.2755D-02,
16220      #    0.4087D-02, 0.5337D-02, 0.6085D-02, 0.5854D-02, 0.4228D-02,
16221      #    0.1195D-02, -.2655D-02, -.6188D-02, -.8228D-02, -.8095D-02,
16222      #    -.5908D-02, -.2429D-02, 0.1368D-02, 0.4683D-02, 0.7072D-02,
16223      #    0.8434D-02, 0.8900D-02, 0.8695D-02, 0.8056D-02, 0.7179D-02,
16224      #    0.6213D-02, 0.5253D-02, 0.4361D-02, 0.3564D-02, 0.2877D-02,
16225      #    0.2297D-02, 0.1817D-02, 0.1425D-02, 0.1110D-02, 0.8591D-03,
16226      #    0.6609D-03, 0.5058D-03, 0.3854D-03, 0.2922D-03, 0.2208D-03,
16227      #    0.1661D-03, 0.1246D-03, 0.9317D-04, 0.6945D-04, 0.5163D-04,
16228      #    0.3828D-04/
16229
16230       data (calcpts(j,28), j = 1,neta) /-.1367D-04, -.1365D-04,
16231      #    -.2862D-04, -.2858D-04, -.2851D-04, -.4342D-04, -.4328D-04,
16232      #    -.5807D-04, -.7277D-04, -.7232D-04, -.1017D-03, -.1157D-03,
16233      #    -.1293D-03, -.1572D-03, -.1842D-03, -.2248D-03, -.2633D-03,
16234      #    -.2987D-03, -.3447D-03, -.3991D-03, -.4439D-03, -.4897D-03,
16235      #    -.5300D-03, -.5403D-03, -.5221D-03, -.4407D-03, -.2989D-03,
16236      #    -.2706D-04, 0.3975D-03, 0.1014D-02, 0.1850D-02, 0.2886D-02,
16237      #    0.4067D-02, 0.5210D-02, 0.6002D-02, 0.6036D-02, 0.4981D-02,
16238      #    0.2682D-02, -.5298D-03, -.3840D-02, -.6280D-02, -.7128D-02,
16239      #    -.6212D-02, -.3917D-02, -.9303D-03, 0.2049D-02, 0.4500D-02,
16240      #    0.6172D-02, 0.7042D-02, 0.7241D-02, 0.6951D-02, 0.6357D-02,
16241      #    0.5610D-02, 0.4815D-02, 0.4043D-02, 0.3336D-02, 0.2713D-02,
16242      #    0.2179D-02, 0.1734D-02, 0.1365D-02, 0.1067D-02, 0.8287D-03,
16243      #    0.6394D-03, 0.4906D-03, 0.3745D-03, 0.2845D-03, 0.2153D-03,
16244      #    0.1623D-03, 0.1219D-03, 0.9126D-04, 0.6811D-04, 0.5068D-04,
16245      #    0.3761D-04/
16246
16247       data (calcpts(j,29), j = 1,neta) /0.8002D-06, -.1419D-04,
16248      #    -.1416D-04, -.1413D-04, -.1409D-04, -.1402D-04, -.2892D-04,
16249      #    -.2877D-04, -.2856D-04, -.4325D-04, -.5778D-04, -.5711D-04,
16250      #    -.7112D-04, -.8466D-04, -.1125D-03, -.1244D-03, -.1498D-03,
16251      #    -.1730D-03, -.1931D-03, -.2236D-03, -.2473D-03, -.2610D-03,
16252      #    -.2753D-03, -.2534D-03, -.2158D-03, -.1335D-03, 0.2768D-04,
16253      #    0.2657D-03, 0.6328D-03, 0.1148D-02, 0.1843D-02, 0.2699D-02,
16254      #    0.3677D-02, 0.4635D-02, 0.5363D-02, 0.5530D-02, 0.4838D-02,
16255      #    0.3127D-02, 0.5668D-03, -.2303D-02, -.4731D-02, -.6054D-02,
16256      #    -.5981D-02, -.4655D-02, -.2514D-02, -.7367D-04, 0.2202D-02,
16257      #    0.3995D-02, 0.5164D-02, 0.5717D-02, 0.5769D-02, 0.5467D-02,
16258      #    0.4952D-02, 0.4334D-02, 0.3695D-02, 0.3085D-02, 0.2533D-02,
16259      #    0.2051D-02, 0.1640D-02, 0.1300D-02, 0.1021D-02, 0.7954D-03,
16260      #    0.6157D-03, 0.4738D-03, 0.3626D-03, 0.2761D-03, 0.2094D-03,
16261      #    0.1580D-03, 0.1189D-03, 0.8917D-04, 0.6664D-04, 0.4965D-04,
16262      #    0.3688D-04/
16263
16264       data (calcpts(j,30), j = 1,neta) /0.2726D-05, -.1226D-04,
16265      #    -.1225D-04, -.1223D-04, -.1219D-04, -.1215D-04, -.1208D-04,
16266      #    -.1198D-04, -.2683D-04, -.2661D-04, -.2628D-04, -.4081D-04,
16267      #    -.4012D-04, -.5410D-04, -.6761D-04, -.6541D-04, -.7719D-04,
16268      #    -.1025D-03, -.1105D-03, -.1154D-03, -.1305D-03, -.1237D-03,
16269      #    -.1217D-03, -.8993D-04, -.5168D-04, 0.3277D-04, 0.1769D-03,
16270      #    0.3852D-03, 0.6838D-03, 0.1107D-02, 0.1652D-02, 0.2325D-02,
16271      #    0.3112D-02, 0.3884D-02, 0.4477D-02, 0.4672D-02, 0.4216D-02,
16272      #    0.2951D-02, 0.9433D-03, -.1449D-02, -.3665D-02, -.5139D-02,
16273      #    -.5535D-02, -.4866D-02, -.3416D-02, -.1555D-02, 0.3704D-03,
16274      #    0.2080D-02, 0.3384D-02, 0.4200D-02, 0.4549D-02, 0.4527D-02,
16275      #    0.4248D-02, 0.3816D-02, 0.3319D-02, 0.2814D-02, 0.2337D-02,
16276      #    0.1910D-02, 0.1540D-02, 0.1228D-02, 0.9698D-03, 0.7593D-03,
16277      #    0.5900D-03, 0.4556D-03, 0.3496D-03, 0.2670D-03, 0.2029D-03,
16278      #    0.1536D-03, 0.1157D-03, 0.8690D-04, 0.6504D-04, 0.4852D-04,
16279      #    0.3610D-04/
16280
16281       data (calcpts(j,31), j = 1,neta) /0.1204D-05, 0.1211D-05,
16282      #    0.1222D-05, 0.1237D-05, 0.1259D-05, -.1371D-04, -.1366D-04,
16283      #    -.1359D-04, -.1349D-04, -.1333D-04, -.1311D-04, -.1278D-04,
16284      #    -.2730D-04, -.2659D-04, -.2556D-04, -.3904D-04, -.3680D-04,
16285      #    -.4853D-04, -.4372D-04, -.5167D-04, -.5635D-04, -.4120D-04,
16286      #    -.3402D-04, -.1605D-05, 0.4573D-04, 0.1297D-03, 0.2447D-03,
16287      #    0.4041D-03, 0.6562D-03, 0.9796D-03, 0.1404D-02, 0.1920D-02,
16288      #    0.2519D-02, 0.3115D-02, 0.3590D-02, 0.3764D-02, 0.3443D-02,
16289      #    0.2495D-02, 0.9307D-03, -.1023D-02, -.2965D-02, -.4429D-02,
16290      #    -.5075D-02, -.4820D-02, -.3847D-02, -.2457D-02, -.9175D-03,
16291      #    0.5657D-03, 0.1835D-02, 0.2778D-02, 0.3347D-02, 0.3567D-02,
16292      #    0.3512D-02, 0.3267D-02, 0.2916D-02, 0.2522D-02, 0.2127D-02,
16293      #    0.1761D-02, 0.1433D-02, 0.1152D-02, 0.9153D-03, 0.7205D-03,
16294      #    0.5625D-03, 0.4360D-03, 0.3358D-03, 0.2572D-03, 0.1960D-03,
16295      #    0.1486D-03, 0.1123D-03, 0.8446D-04, 0.6331D-04, 0.4732D-04,
16296      #    0.3525D-04/
16297
16298       data (calcpts(j,32), j = 1,neta) /-.4108D-06, -.4060D-06,
16299      #    -.3988D-06, -.3883D-06, -.1873D-05, -.1850D-05, -.3317D-05,
16300      #    -.3268D-05, -.4697D-05, -.6092D-05, -.7438D-05, -.8712D-05,
16301      #    -.9880D-05, -.1089D-04, -.1318D-04, -.1513D-04, -.1659D-04,
16302      #    -.1733D-04, -.1702D-04, -.1515D-04, -.9533D-05, 0.9116D-06,
16303      #    0.1771D-04, 0.4607D-04, 0.8921D-04, 0.1533D-03, 0.2492D-03,
16304      #    0.3834D-03, 0.5712D-03, 0.8215D-03, 0.1145D-02, 0.1540D-02,
16305      #    0.1985D-02, 0.2433D-02, 0.2792D-02, 0.2929D-02, 0.2695D-02,
16306      #    0.1979D-02, 0.7654D-03, -.8107D-03, -.2468D-02, -.3849D-02,
16307      #    -.4632D-02, -.4666D-02, -.4031D-02, -.2965D-02, -.1732D-02,
16308      #    -.5033D-03, 0.6184D-03, 0.1553D-02, 0.2232D-02, 0.2630D-02,
16309      #    0.2766D-02, 0.2698D-02, 0.2493D-02, 0.2213D-02, 0.1905D-02,
16310      #    0.1600D-02, 0.1319D-02, 0.1070D-02, 0.8571D-03, 0.6791D-03,
16311      #    0.5331D-03, 0.4152D-03, 0.3211D-03, 0.2467D-03, 0.1886D-03,
16312      #    0.1434D-03, 0.1086D-03, 0.8187D-04, 0.6149D-04, 0.4602D-04,
16313      #    0.3434D-04/
16314
16315       data (calcpts(j,33), j = 1,neta) /-.1502D-05, -.1499D-05,
16316      #    -.1494D-05, -.2987D-05, -.2976D-05, -.2960D-05, -.2938D-05,
16317      #    -.2904D-05, -.2855D-05, -.4283D-05, -.4177D-05, -.4021D-05,
16318      #    -.5293D-05, -.4958D-05, -.5967D-05, -.5246D-05, -.5687D-05,
16319      #    -.4135D-05, -.1857D-05, 0.2986D-05, 0.9379D-05, 0.1956D-04,
16320      #    0.3607D-04, 0.6194D-04, 0.9788D-04, 0.1516D-03, 0.2260D-03,
16321      #    0.3319D-03, 0.4751D-03, 0.6637D-03, 0.9059D-03, 0.1200D-02,
16322      #    0.1530D-02, 0.1861D-02, 0.2124D-02, 0.2225D-02, 0.2050D-02,
16323      #    0.1508D-02, 0.5710D-03, -.6807D-03, -.2063D-02, -.3315D-02,
16324      #    -.4162D-02, -.4421D-02, -.4069D-02, -.3260D-02, -.2236D-02,
16325      #    -.1198D-02, -.2422D-03, 0.5943D-03, 0.1277D-02, 0.1765D-02,
16326      #    0.2043D-02, 0.2126D-02, 0.2058D-02, 0.1891D-02, 0.1669D-02,
16327      #    0.1431D-02, 0.1198D-02, 0.9835D-03, 0.7955D-03, 0.6352D-03,
16328      #    0.5020D-03, 0.3931D-03, 0.3054D-03, 0.2357D-03, 0.1807D-03,
16329      #    0.1379D-03, 0.1047D-03, 0.7910D-04, 0.5955D-04, 0.4466D-04,
16330      #    0.3338D-04/
16331
16332       data (calcpts(j,34), j = 1,neta) /-.6676D-06, -.6653D-06,
16333      #    -.6619D-06, -.6570D-06, -.6497D-06, -.6391D-06, -.6234D-06,
16334      #    -.6005D-06, -.5668D-06, -.5174D-06, -.4448D-06, -.3383D-06,
16335      #    -.1820D-06, 0.4757D-07, 0.3840D-06, 0.8782D-06, 0.3104D-05,
16336      #    0.5667D-05, 0.8728D-05, 0.1252D-04, 0.2037D-04, 0.2979D-04,
16337      #    0.4449D-04, 0.6552D-04, 0.9590D-04, 0.1378D-03, 0.1958D-03,
16338      #    0.2772D-03, 0.3849D-03, 0.5267D-03, 0.7048D-03, 0.9213D-03,
16339      #    0.1163D-02, 0.1404D-02, 0.1595D-02, 0.1666D-02, 0.1531D-02,
16340      #    0.1122D-02, 0.4051D-03, -.5752D-03, -.1702D-02, -.2792D-02,
16341      #    -.3638D-02, -.4057D-02, -.3963D-02, -.3408D-02, -.2568D-02,
16342      #    -.1655D-02, -.8125D-03, -.8359D-04, 0.5332D-03, 0.1029D-02,
16343      #    0.1379D-02, 0.1572D-02, 0.1621D-02, 0.1560D-02, 0.1425D-02,
16344      #    0.1253D-02, 0.1070D-02, 0.8921D-03, 0.7305D-03, 0.5890D-03,
16345      #    0.4691D-03, 0.3697D-03, 0.2889D-03, 0.2240D-03, 0.1725D-03,
16346      #    0.1320D-03, 0.1005D-03, 0.7618D-04, 0.5748D-04, 0.4321D-04,
16347      #    0.3237D-04/
16348
16349       data (calcpts(j,35), j = 1,neta) /0.5347D-06, 0.5363D-06,
16350      #    0.5386D-06, 0.5419D-06, 0.5469D-06, 0.5542D-06, 0.5649D-06,
16351      #    0.5806D-06, 0.6036D-06, 0.6374D-06, 0.2187D-05, 0.2260D-05,
16352      #    0.2367D-05, 0.2524D-05, 0.4254D-05, 0.4592D-05, 0.6588D-05,
16353      #    0.8816D-05, 0.1288D-04, 0.1745D-04, 0.2274D-04, 0.3211D-04,
16354      #    0.4453D-04, 0.6073D-04, 0.8475D-04, 0.1181D-03, 0.1628D-03,
16355      #    0.2234D-03, 0.3054D-03, 0.4095D-03, 0.5410D-03, 0.6985D-03,
16356      #    0.8741D-03, 0.1048D-02, 0.1186D-02, 0.1233D-02, 0.1131D-02,
16357      #    0.8216D-03, 0.2791D-03, -.4777D-03, -.1375D-02, -.2291D-02,
16358      #    -.3077D-02, -.3580D-02, -.3695D-02, -.3395D-02, -.2766D-02,
16359      #    -.1979D-02, -.1205D-02, -.5397D-03, 0.7416D-05, 0.4582D-03,
16360      #    0.8161D-03, 0.1067D-02, 0.1201D-02, 0.1229D-02, 0.1175D-02,
16361      #    0.1069D-02, 0.9362D-03, 0.7963D-03, 0.6621D-03, 0.5404D-03,
16362      #    0.4347D-03, 0.3453D-03, 0.2716D-03, 0.2118D-03, 0.1638D-03,
16363      #    0.1259D-03, 0.9621D-04, 0.7313D-04, 0.5534D-04, 0.4170D-04,
16364      #    0.3129D-04/
16365
16366       data (calcpts(j,36), j = 1,neta) /-.1272D-06, -.1261D-06,
16367      #    -.1245D-06, -.1222D-06, -.1188D-06, -.1139D-06, 0.1393D-05,
16368      #    0.1404D-05, 0.1420D-05, 0.1443D-05, 0.1477D-05, 0.1527D-05,
16369      #    0.3100D-05, 0.3207D-05, 0.4864D-05, 0.5095D-05, 0.6934D-05,
16370      #    0.8931D-05, 0.1266D-04, 0.1673D-04, 0.2130D-04, 0.2960D-04,
16371      #    0.3896D-04, 0.5288D-04, 0.7206D-04, 0.9603D-04, 0.1307D-03,
16372      #    0.1766D-03, 0.2366D-03, 0.3126D-03, 0.4092D-03, 0.5243D-03,
16373      #    0.6506D-03, 0.7755D-03, 0.8721D-03, 0.9047D-03, 0.8264D-03,
16374      #    0.5968D-03, 0.1887D-03, -.3877D-03, -.1088D-02, -.1834D-02,
16375      #    -.2521D-02, -.3038D-02, -.3286D-02, -.3207D-02, -.2811D-02,
16376      #    -.2193D-02, -.1499D-02, -.8651D-03, -.3506D-03, 0.5516D-04,
16377      #    0.3822D-03, 0.6395D-03, 0.8182D-03, 0.9113D-03, 0.9262D-03,
16378      #    0.8813D-03, 0.7983D-03, 0.6966D-03, 0.5905D-03, 0.4894D-03,
16379      #    0.3984D-03, 0.3197D-03, 0.2535D-03, 0.1989D-03, 0.1548D-03,
16380      #    0.1195D-03, 0.9167D-04, 0.6994D-04, 0.5308D-04, 0.4011D-04,
16381      #    0.3018D-04/
16382
16383       data (calcpts(j,37), j = 1,neta) /-.3661D-07, -.3588D-07,
16384      #    -.3480D-07, -.3323D-07, -.3091D-07, -.2751D-07, 0.1477D-05,
16385      #    0.1485D-05, 0.1496D-05, 0.1511D-05, 0.1534D-05, 0.1568D-05,
16386      #    0.3118D-05, 0.3191D-05, 0.4799D-05, 0.4956D-05, 0.6688D-05,
16387      #    0.8527D-05, 0.1202D-04, 0.1426D-04, 0.1982D-04, 0.2589D-04,
16388      #    0.3269D-04, 0.4355D-04, 0.5745D-04, 0.7660D-04, 0.1035D-03,
16389      #    0.1364D-03, 0.1804D-03, 0.2378D-03, 0.3072D-03, 0.3892D-03,
16390      #    0.4797D-03, 0.5693D-03, 0.6385D-03, 0.6609D-03, 0.6013D-03,
16391      #    0.4300D-03, 0.1266D-03, -.3072D-03, -.8445D-03, -.1435D-02,
16392      #    -.2010D-02, -.2491D-02, -.2801D-02, -.2875D-02, -.2689D-02,
16393      #    -.2270D-02, -.1706D-02, -.1120D-02, -.6135D-03, -.2218D-03,
16394      #    0.7605D-04, 0.3118D-03, 0.4963D-03, 0.6232D-03, 0.6876D-03,
16395      #    0.6946D-03, 0.6579D-03, 0.5936D-03, 0.5163D-03, 0.4364D-03,
16396      #    0.3607D-03, 0.2929D-03, 0.2344D-03, 0.1855D-03, 0.1452D-03,
16397      #    0.1128D-03, 0.8695D-04, 0.6660D-04, 0.5073D-04, 0.3844D-04,
16398      #    0.2901D-04/
16399
16400       data (calcpts(j,38), j = 1,neta) /0.4340D-06, 0.4345D-06,
16401      #    0.4352D-06, 0.5863D-06, 0.5879D-06, 0.7402D-06, 0.8936D-06,
16402      #    0.1049D-05, 0.1206D-05, 0.1517D-05, 0.1832D-05, 0.2156D-05,
16403      #    0.2640D-05, 0.3290D-05, 0.4113D-05, 0.5120D-05, 0.6328D-05,
16404      #    0.7909D-05, 0.1005D-04, 0.1265D-04, 0.1623D-04, 0.2090D-04,
16405      #    0.2711D-04, 0.3525D-04, 0.4610D-04, 0.6057D-04, 0.7963D-04,
16406      #    0.1045D-03, 0.1369D-03, 0.1778D-03, 0.2282D-03, 0.2876D-03,
16407      #    0.3529D-03, 0.4165D-03, 0.4653D-03, 0.4797D-03, 0.4353D-03,
16408      #    0.3089D-03, 0.8466D-04, -.2385D-03, -.6450D-03, -.1103D-02,
16409      #    -.1567D-02, -.1985D-02, -.2300D-02, -.2460D-02, -.2429D-02,
16410      #    -.2195D-02, -.1796D-02, -.1306D-02, -.8268D-03, -.4301D-03,
16411      #    -.1358D-03, 0.8103D-04, 0.2500D-03, 0.3818D-03, 0.4719D-03,
16412      #    0.5163D-03, 0.5186D-03, 0.4891D-03, 0.4398D-03, 0.3814D-03,
16413      #    0.3214D-03, 0.2650D-03, 0.2148D-03, 0.1714D-03, 0.1354D-03,
16414      #    0.1058D-03, 0.8203D-04, 0.6313D-04, 0.4828D-04, 0.3672D-04,
16415      #    0.2779D-04/
16416
16417       data (calcpts(j,39), j = 1,neta) /0.5623D-07, 0.5657D-07,
16418      #    0.2071D-06, 0.2078D-06, 0.3589D-06, 0.3605D-06, 0.5128D-06,
16419      #    0.6662D-06, 0.8212D-06, 0.9785D-06, 0.1289D-05, 0.1605D-05,
16420      #    0.2078D-05, 0.2562D-05, 0.3212D-05, 0.4036D-05, 0.5043D-05,
16421      #    0.6251D-05, 0.7983D-05, 0.1012D-04, 0.1287D-04, 0.1645D-04,
16422      #    0.2127D-04, 0.2748D-04, 0.3561D-04, 0.4644D-04, 0.6040D-04,
16423      #    0.7877D-04, 0.1022D-03, 0.1320D-03, 0.1684D-03, 0.2110D-03,
16424      #    0.2576D-03, 0.3029D-03, 0.3373D-03, 0.3468D-03, 0.3138D-03,
16425      #    0.2211D-03, 0.5647D-04, -.1822D-03, -.4860D-03, -.8348D-03,
16426      #    -.1199D-02, -.1545D-02, -.1832D-02, -.2025D-02, -.2087D-02,
16427      #    -.1997D-02, -.1755D-02, -.1398D-02, -.9886D-03, -.6044D-03,
16428      #    -.2986D-03, -.7958D-04, 0.7717D-04, 0.1978D-03, 0.2916D-03,
16429      #    0.3554D-03, 0.3859D-03, 0.3857D-03, 0.3623D-03, 0.3247D-03,
16430      #    0.2808D-03, 0.2361D-03, 0.1942D-03, 0.1570D-03, 0.1251D-03,
16431      #    0.9858D-04, 0.7692D-04, 0.5953D-04, 0.4575D-04, 0.3493D-04,
16432      #    0.2653D-04/
16433
16434       data (calcpts(j,40), j = 1,neta) /0.5510D-07, 0.2053D-06,
16435      #    0.2057D-06, 0.2062D-06, 0.3569D-06, 0.3580D-06, 0.5096D-06,
16436      #    0.6619D-06, 0.8153D-06, 0.9703D-06, 0.1128D-05, 0.1438D-05,
16437      #    0.1754D-05, 0.2227D-05, 0.2711D-05, 0.3361D-05, 0.4185D-05,
16438      #    0.5192D-05, 0.6400D-05, 0.8132D-05, 0.1027D-04, 0.1302D-04,
16439      #    0.1660D-04, 0.2126D-04, 0.2732D-04, 0.3528D-04, 0.4562D-04,
16440      #    0.5906D-04, 0.7606D-04, 0.9755D-04, 0.1236D-03, 0.1542D-03,
16441      #    0.1874D-03, 0.2196D-03, 0.2437D-03, 0.2500D-03, 0.2255D-03,
16442      #    0.1579D-03, 0.3784D-04, -.1373D-03, -.3623D-03, -.6244D-03,
16443      #    -.9049D-03, -.1181D-02, -.1427D-02, -.1616D-02, -.1722D-02,
16444      #    -.1723D-02, -.1607D-02, -.1381D-02, -.1074D-02, -.7406D-03,
16445      #    -.4383D-03, -.2052D-03, -.4368D-04, 0.6896D-04, 0.1547D-03,
16446      #    0.2212D-03, 0.2663D-03, 0.2872D-03, 0.2859D-03, 0.2676D-03,
16447      #    0.2391D-03, 0.2061D-03, 0.1729D-03, 0.1419D-03, 0.1145D-03,
16448      #    0.9106D-04, 0.7162D-04, 0.5580D-04, 0.4311D-04, 0.3307D-04,
16449      #    0.2523D-04/
16450
16451       data (calcpts(j,41), j = 1,neta) /0.1538D-06, 0.1540D-06,
16452      #    0.1542D-06, 0.3046D-06, 0.3051D-06, 0.4558D-06, 0.4569D-06,
16453      #    0.6085D-06, 0.6108D-06, 0.7642D-06, 0.9192D-06, 0.1227D-05,
16454      #    0.1387D-05, 0.1853D-05, 0.2176D-05, 0.2660D-05, 0.3310D-05,
16455      #    0.4134D-05, 0.5141D-05, 0.6349D-05, 0.8080D-05, 0.1007D-04,
16456      #    0.1282D-04, 0.1624D-04, 0.2075D-04, 0.2664D-04, 0.3413D-04,
16457      #    0.4397D-04, 0.5625D-04, 0.7167D-04, 0.9044D-04, 0.1121D-03,
16458      #    0.1358D-03, 0.1586D-03, 0.1756D-03, 0.1796D-03, 0.1617D-03,
16459      #    0.1126D-03, 0.2545D-04, -.1023D-03, -.2677D-03, -.4625D-03,
16460      #    -.6750D-03, -.8898D-03, -.1090D-02, -.1259D-02, -.1376D-02,
16461      #    -.1426D-02, -.1393D-02, -.1273D-02, -.1072D-02, -.8171D-03,
16462      #    -.5502D-03, -.3156D-03, -.1398D-03, -.2141D-04, 0.5911D-04,
16463      #    0.1198D-03, 0.1670D-03, 0.1987D-03, 0.2130D-03, 0.2110D-03,
16464      #    0.1969D-03, 0.1755D-03, 0.1509D-03, 0.1263D-03, 0.1034D-03,
16465      #    0.8329D-04, 0.6615D-04, 0.5193D-04, 0.4039D-04, 0.3117D-04,
16466      #    0.2388D-04/
16467
16468       data (calcpts(j,42), j = 1,neta) /0.1268D-06, 0.1269D-06,
16469      #    0.1271D-06, 0.1273D-06, 0.2777D-06, 0.2782D-06, 0.2789D-06,
16470      #    0.4300D-06, 0.5816D-06, 0.5839D-06, 0.7373D-06, 0.8923D-06,
16471      #    0.1050D-05, 0.1360D-05, 0.1676D-05, 0.1999D-05, 0.2484D-05,
16472      #    0.3133D-05, 0.3957D-05, 0.4814D-05, 0.6172D-05, 0.7603D-05,
16473      #    0.9741D-05, 0.1219D-04, 0.1561D-04, 0.1981D-04, 0.2539D-04,
16474      #    0.3239D-04, 0.4125D-04, 0.5232D-04, 0.6577D-04, 0.8122D-04,
16475      #    0.9796D-04, 0.1141D-03, 0.1261D-03, 0.1287D-03, 0.1156D-03,
16476      #    0.8019D-04, 0.1712D-04, -.7555D-04, -.1962D-03, -.3400D-03,
16477      #    -.4988D-03, -.6630D-03, -.8216D-03, -.9624D-03, -.1073D-02,
16478      #    -.1142D-02, -.1157D-02, -.1108D-02, -.9944D-03, -.8232D-03,
16479      #    -.6161D-03, -.4059D-03, -.2258D-03, -.9430D-04, -.8106D-05,
16480      #    0.4920D-04, 0.9207D-04, 0.1254D-03, 0.1477D-03, 0.1575D-03,
16481      #    0.1554D-03, 0.1445D-03, 0.1285D-03, 0.1102D-03, 0.9204D-04,
16482      #    0.7524D-04, 0.6046D-04, 0.4794D-04, 0.3757D-04, 0.2919D-04,
16483      #    0.2248D-04/
16484
16485       data (calcpts(j,43), j = 1,neta) /0.3333D-07, 0.3340D-07,
16486      #    0.1835D-06, 0.1837D-06, 0.1839D-06, 0.1842D-06, 0.3347D-06,
16487      #    0.3355D-06, 0.3366D-06, 0.4881D-06, 0.6405D-06, 0.6439D-06,
16488      #    0.7989D-06, 0.1106D-05, 0.1267D-05, 0.1583D-05, 0.1906D-05,
16489      #    0.2390D-05, 0.3040D-05, 0.3713D-05, 0.4571D-05, 0.5778D-05,
16490      #    0.7209D-05, 0.9196D-05, 0.1164D-04, 0.1475D-04, 0.1864D-04,
16491      #    0.2375D-04, 0.3010D-04, 0.3810D-04, 0.4761D-04, 0.5868D-04,
16492      #    0.7061D-04, 0.8200D-04, 0.9031D-04, 0.9201D-04, 0.8259D-04,
16493      #    0.5698D-04, 0.1157D-04, -.5540D-04, -.1431D-03, -.2484D-03,
16494      #    -.3660D-03, -.4896D-03, -.6121D-03, -.7254D-03, -.8216D-03,
16495      #    -.8921D-03, -.9283D-03, -.9227D-03, -.8695D-03, -.7683D-03,
16496      #    -.6264D-03, -.4612D-03, -.2978D-03, -.1608D-03, -.6301D-04,
16497      #    -.5616D-06, 0.4006D-04, 0.7022D-04, 0.9372D-04, 0.1094D-03,
16498      #    0.1160D-03, 0.1141D-03, 0.1058D-03, 0.9379D-04, 0.8031D-04,
16499      #    0.6693D-04, 0.5461D-04, 0.4381D-04, 0.3468D-04, 0.2715D-04,
16500      #    0.2104D-04/
16501
16502       data (calcpts(j,44), j = 1,neta) /0.8178D-07, 0.9683D-07,
16503      #    0.1119D-06, 0.1270D-06, 0.1572D-06, 0.1724D-06, 0.2177D-06,
16504      #    0.2632D-06, 0.3090D-06, 0.3701D-06, 0.4466D-06, 0.5540D-06,
16505      #    0.6624D-06, 0.8174D-06, 0.9897D-06, 0.1210D-05, 0.1481D-05,
16506      #    0.1835D-05, 0.2259D-05, 0.2788D-05, 0.3462D-05, 0.4319D-05,
16507      #    0.5406D-05, 0.6791D-05, 0.8566D-05, 0.1082D-04, 0.1369D-04,
16508      #    0.1736D-04, 0.2194D-04, 0.2760D-04, 0.3441D-04, 0.4223D-04,
16509      #    0.5065D-04, 0.5868D-04, 0.6457D-04, 0.6569D-04, 0.5879D-04,
16510      #    0.4045D-04, 0.7843D-05, -.4037D-04, -.1038D-03, -.1805D-03,
16511      #    -.2670D-03, -.3590D-03, -.4519D-03, -.5404D-03, -.6195D-03,
16512      #    -.6833D-03, -.7262D-03, -.7420D-03, -.7260D-03, -.6746D-03,
16513      #    -.5881D-03, -.4730D-03, -.3430D-03, -.2173D-03, -.1139D-03,
16514      #    -.4169D-04, 0.3367D-05, 0.3205D-04, 0.5322D-04, 0.6976D-04,
16515      #    0.8076D-04, 0.8520D-04, 0.8352D-04, 0.7725D-04, 0.6834D-04,
16516      #    0.5838D-04, 0.4857D-04, 0.3955D-04, 0.3168D-04, 0.2505D-04,
16517      #    0.1957D-04/
16518
16519       data (calcpts(j,45), j = 1,neta) /0.3399D-07, 0.4903D-07,
16520      #    0.4908D-07, 0.6415D-07, 0.9426D-07, 0.1094D-06, 0.1396D-06,
16521      #    0.1700D-06, 0.2155D-06, 0.2612D-06, 0.3223D-06, 0.3839D-06,
16522      #    0.4762D-06, 0.5846D-06, 0.7246D-06, 0.8820D-06, 0.1088D-05,
16523      #    0.1344D-05, 0.1652D-05, 0.2046D-05, 0.2546D-05, 0.3174D-05,
16524      #    0.3971D-05, 0.4982D-05, 0.6261D-05, 0.7899D-05, 0.9971D-05,
16525      #    0.1259D-04, 0.1587D-04, 0.1989D-04, 0.2474D-04, 0.3029D-04,
16526      #    0.3624D-04, 0.4189D-04, 0.4602D-04, 0.4677D-04, 0.4180D-04,
16527      #    0.2866D-04, 0.5308D-05, -.2928D-04, -.7499D-04, -.1305D-03,
16528      #    -.1937D-03, -.2616D-03, -.3313D-03, -.3991D-03, -.4619D-03,
16529      #    -.5157D-03, -.5569D-03, -.5813D-03, -.5850D-03, -.5648D-03,
16530      #    -.5184D-03, -.4467D-03, -.3548D-03, -.2537D-03, -.1578D-03,
16531      #    -.8039D-04, -.2727D-04, 0.5103D-05, 0.2530D-04, 0.4012D-04,
16532      #    0.5173D-04, 0.5943D-04, 0.6243D-04, 0.6099D-04, 0.5628D-04,
16533      #    0.4968D-04, 0.4236D-04, 0.3517D-04, 0.2860D-04, 0.2287D-04,
16534      #    0.1806D-04/
16535
16536       data (calcpts(j,46), j = 1,neta) /0.2403D-07, 0.3905D-07,
16537      #    0.5409D-07, 0.5414D-07, 0.6921D-07, 0.8432D-07, 0.1145D-06,
16538      #    0.1297D-06, 0.1601D-06, 0.1906D-06, 0.2363D-06, 0.2974D-06,
16539      #    0.3589D-06, 0.4363D-06, 0.5447D-06, 0.6547D-06, 0.8120D-06,
16540      #    0.1003D-05, 0.1229D-05, 0.1522D-05, 0.1886D-05, 0.2341D-05,
16541      #    0.2923D-05, 0.3645D-05, 0.4581D-05, 0.5753D-05, 0.7236D-05,
16542      #    0.9121D-05, 0.1145D-04, 0.1432D-04, 0.1775D-04, 0.2168D-04,
16543      #    0.2590D-04, 0.2987D-04, 0.3277D-04, 0.3325D-04, 0.2967D-04,
16544      #    0.2028D-04, 0.3616D-05, -.2114D-04, -.5397D-04, -.9405D-04,
16545      #    -.1399D-03, -.1898D-03, -.2413D-03, -.2927D-03, -.3412D-03,
16546      #    -.3847D-03, -.4206D-03, -.4463D-03, -.4591D-03, -.4560D-03,
16547      #    -.4351D-03, -.3952D-03, -.3368D-03, -.2646D-03, -.1869D-03,
16548      #    -.1142D-03, -.5652D-04, -.1763D-04, 0.5553D-05, 0.1974D-04,
16549      #    0.3009D-04, 0.3822D-04, 0.4360D-04, 0.4561D-04, 0.4443D-04,
16550      #    0.4090D-04, 0.3603D-04, 0.3067D-04, 0.2542D-04, 0.2064D-04,
16551      #    0.1816D-04/
16552
16553       data (calcpts(j,47), j = 1,neta) /0.3417D-07, 0.3418D-07,
16554      #    0.3421D-07, 0.4924D-07, 0.6429D-07, 0.6436D-07, 0.7947D-07,
16555      #    0.1096D-06, 0.1249D-06, 0.1552D-06, 0.1857D-06, 0.2314D-06,
16556      #    0.2775D-06, 0.3391D-06, 0.4014D-06, 0.4948D-06, 0.6048D-06,
16557      #    0.7472D-06, 0.9079D-06, 0.1119D-05, 0.1382D-05, 0.1716D-05,
16558      #    0.2140D-05, 0.2663D-05, 0.3339D-05, 0.4184D-05, 0.5248D-05,
16559      #    0.6591D-05, 0.8255D-05, 0.1029D-04, 0.1273D-04, 0.1550D-04,
16560      #    0.1847D-04, 0.2126D-04, 0.2327D-04, 0.2360D-04, 0.2103D-04,
16561      #    0.1434D-04, 0.2465D-05, -.1521D-04, -.3871D-04, -.6754D-04,
16562      #    -.1007D-03, -.1370D-03, -.1751D-03, -.2133D-03, -.2503D-03,
16563      #    -.2844D-03, -.3140D-03, -.3374D-03, -.3528D-03, -.3583D-03,
16564      #    -.3521D-03, -.3326D-03, -.2990D-03, -.2525D-03, -.1964D-03,
16565      #    -.1370D-03, -.8239D-04, -.3957D-04, -.1122D-04, 0.5333D-05,
16566      #    0.1525D-04, 0.2350D-04, 0.2827D-04, 0.3192D-04, 0.3325D-04,
16567      #    0.3231D-04, 0.3967D-04, 0.2610D-04, 0.2217D-04, 0.2139D-04,
16568      #    0.1488D-04/
16569
16570       data (calcpts(j,48), j = 1,neta) /0.1551D-07, 0.3052D-07,
16571      #    0.3053D-07, 0.3056D-07, 0.4559D-07, 0.4564D-07, 0.6072D-07,
16572      #    0.7582D-07, 0.9098D-07, 0.1062D-06, 0.1366D-06, 0.1671D-06,
16573      #    0.1978D-06, 0.2439D-06, 0.2904D-06, 0.3678D-06, 0.4462D-06,
16574      #    0.5412D-06, 0.6685D-06, 0.8143D-06, 0.1010D-05, 0.1258D-05,
16575      #    0.1547D-05, 0.1926D-05, 0.2419D-05, 0.3019D-05, 0.3787D-05,
16576      #    0.4727D-05, 0.5913D-05, 0.7366D-05, 0.9086D-05, 0.1104D-04,
16577      #    0.1313D-04, 0.1509D-04, 0.1650D-04, 0.1671D-04, 0.1489D-04,
16578      #    0.1013D-04, 0.1680D-05, -.1091D-04, -.2770D-04, -.4837D-04,
16579      #    -.7228D-04, -.9860D-04, -.1264D-03, -.1548D-03, -.1824D-03,
16580      #    -.2087D-03, -.2323D-03, -.2522D-03, -.2670D-03, -.2758D-03,
16581      #    -.2771D-03, -.2696D-03, -.2523D-03, -.2250D-03, -.1884D-03,
16582      #    -.1451D-03, -.1001D-03, -.5924D-04, -.2765D-04, -.7038D-05,
16583      #    0.4754D-05, 0.1169D-04, 0.1671D-04, 0.2068D-04, 0.2329D-04,
16584      #    0.2419D-04, 0.2344D-04, 0.2149D-04, 0.1885D-04, 0.1600D-04,
16585      #    0.1322D-04/
16586
16587       data (calcpts(j,49), j = 1,neta) /0.1268D-07, 0.1269D-07,
16588      #    0.2770D-07, 0.2771D-07, 0.2774D-07, 0.4277D-07, 0.4282D-07,
16589      #    0.5790D-07, 0.7300D-07, 0.7316D-07, 0.1034D-06, 0.1187D-06,
16590      #    0.1492D-06, 0.1800D-06, 0.2110D-06, 0.2576D-06, 0.3200D-06,
16591      #    0.3984D-06, 0.4784D-06, 0.5907D-06, 0.7364D-06, 0.9022D-06,
16592      #    0.1120D-05, 0.1394D-05, 0.1743D-05, 0.2175D-05, 0.2714D-05,
16593      #    0.3389D-05, 0.4234D-05, 0.5260D-05, 0.6466D-05, 0.7858D-05,
16594      #    0.9321D-05, 0.1070D-04, 0.1170D-04, 0.1182D-04, 0.1052D-04,
16595      #    0.7142D-05, 0.1146D-05, -.7803D-05, -.1976D-04, -.3455D-04,
16596      #    -.5172D-04, -.7074D-04, -.9095D-04, -.1117D-03, -.1324D-03,
16597      #    -.1522D-03, -.1706D-03, -.1866D-03, -.1996D-03, -.2088D-03,
16598      #    -.2135D-03, -.2124D-03, -.2049D-03, -.1902D-03, -.1683D-03,
16599      #    -.1398D-03, -.1068D-03, -.7290D-04, -.4251D-04, -.1928D-04,
16600      #    -.4354D-05, 0.4011D-05, 0.8844D-05, 0.1234D-04, 0.1510D-04,
16601      #    0.1693D-04, 0.1753D-04, 0.1695D-04, 0.1551D-04, 0.1360D-04,
16602      #    0.1152D-04/
16603
16604       data (dlaeta(j), j = 1,neta) /
16605      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
16606      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
16607      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
16608      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
16609      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
16610      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
16611      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
16612      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
16613      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
16614      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
16615      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
16616      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
16617      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
16618      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
16619      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
16620
16621       data (dlaxi(j), j = 1,nxi) /
16622      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
16623      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
16624      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
16625      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
16626      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
16627      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
16628      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
16629      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
16630      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
16631      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
16632
16633       dleta = dlog10(eta)
16634       dlxi = dlog10(xi)
16635       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
16636       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
16637       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
16638       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
16639       call locate(dlaeta,neta, dleta, ieta)
16640       call locate(dlaxi, nxi, dlxi, ixi)
16641 c     interpolating between the appropriate points
16642       delxi = 1d0/6d0
16643       deleta = 1d0/6d0
16644 c  lagrange 3-pt.
16645       if (ixi .le. 2) ixi = 2
16646       if (ixi .ge. 48) ixi = 48
16647       if (ieta .le. 2) ieta = 2
16648       if (ieta .ge. 72) ieta = 72
16649       pxi = (dlxi - dlaxi(ixi))/delxi
16650       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
16651      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
16652      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
16653       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
16654      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
16655      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
16656       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
16657      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
16658      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
16659       peta = (dleta - dlaeta(ieta))/deleta
16660       h1_FTg = peta*(peta-1d0)/2d0*f(-1) +
16661      #     (1d0 - peta**2)*f(0) +
16662 CMB  #     + peta*(peta+1d0)/2d0*f(1)
16663      #     peta*(peta+1d0)/2d0*f(1)
16664       return
16665       end
16666
16667 c     ==========================================
16668       double precision function h1bar_Tg(eta,xi)
16669 c     ==========================================
16670
16671 c     eq (12) in PLB347 (1995) 143 - 151 for the transverse piece
16672 c     MSbar scheme
16673 c     This routine is called subctbar in the original code.
16674 c     Called sctbar in updated code (03/06/96).
16675  
16676       implicit none
16677       integer neta, nxi
16678       parameter (neta = 73, nxi = 49)
16679       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
16680       double precision eta, xi, dleta, dlxi
16681       double precision pxi, peta, f(-1:1), delxi, deleta
16682       integer j, ieta, ixi
16683
16684       data (calcpts(j, 1), j = 1,neta) /0.2829D-03, 0.3429D-03,
16685      #    0.4153D-03, 0.5032D-03, 0.6093D-03, 0.7385D-03, 0.8944D-03,
16686      #    0.1084D-02, 0.1313D-02, 0.1591D-02, 0.1928D-02, 0.2339D-02,
16687      #    0.2827D-02, 0.3429D-02, 0.4159D-02, 0.5038D-02, 0.6106D-02,
16688      #    0.7404D-02, 0.8979D-02, 0.1089D-01, 0.1322D-01, 0.1605D-01,
16689      #    0.1950D-01, 0.2372D-01, 0.2888D-01, 0.3520D-01, 0.4295D-01,
16690      #    0.5243D-01, 0.6398D-01, 0.7789D-01, 0.9419D-01, 0.1127D+00,
16691      #    0.1321D+00, 0.1504D+00, 0.1646D+00, 0.1713D+00, 0.1691D+00,
16692      #    0.1584D+00, 0.1416D+00, 0.1221D+00, 0.1025D+00, 0.8429D-01,
16693      #    0.6827D-01, 0.5456D-01, 0.4314D-01, 0.3383D-01, 0.2625D-01,
16694      #    0.2023D-01, 0.1549D-01, 0.1175D-01, 0.8913D-02, 0.6710D-02,
16695      #    0.4996D-02, 0.3763D-02, 0.2807D-02, 0.2058D-02, 0.1515D-02,
16696      #    0.1108D-02, 0.8360D-03, 0.6327D-03, 0.4304D-03, 0.2955D-03,
16697      #    0.2278D-03, 0.1604D-03, 0.9327D-04, 0.9293D-04, 0.9271D-04,
16698      #    0.2589D-04, 0.2578D-04, 0.2571D-04, 0.2566D-04, 0.2563D-04,
16699      #    0.2561D-04/
16700
16701       data (calcpts(j, 2), j = 1,neta) /0.2830D-03, 0.3423D-03,
16702      #    0.4154D-03, 0.5027D-03, 0.6095D-03, 0.7380D-03, 0.8946D-03,
16703      #    0.1083D-02, 0.1313D-02, 0.1591D-02, 0.1928D-02, 0.2333D-02,
16704      #    0.2828D-02, 0.3430D-02, 0.4153D-02, 0.5039D-02, 0.6107D-02,
16705      #    0.7399D-02, 0.8973D-02, 0.1089D-01, 0.1321D-01, 0.1604D-01,
16706      #    0.1950D-01, 0.2371D-01, 0.2888D-01, 0.3519D-01, 0.4294D-01,
16707      #    0.5242D-01, 0.6398D-01, 0.7789D-01, 0.9419D-01, 0.1127D+00,
16708      #    0.1321D+00, 0.1504D+00, 0.1645D+00, 0.1713D+00, 0.1691D+00,
16709      #    0.1584D+00, 0.1416D+00, 0.1221D+00, 0.1025D+00, 0.8429D-01,
16710      #    0.6827D-01, 0.5462D-01, 0.4320D-01, 0.3382D-01, 0.2623D-01,
16711      #    0.2021D-01, 0.1548D-01, 0.1173D-01, 0.8899D-02, 0.6697D-02,
16712      #    0.5049D-02, 0.3750D-02, 0.2794D-02, 0.2045D-02, 0.1501D-02,
16713      #    0.1094D-02, 0.8227D-03, 0.6194D-03, 0.4172D-03, 0.3490D-03,
16714      #    0.2146D-03, 0.1472D-03, 0.1467D-03, 0.7970D-04, 0.7948D-04,
16715      #    0.7932D-04, 0.1255D-04, 0.1248D-04, 0.1243D-04, 0.1240D-04,
16716      #    0.1237D-04/
16717
16718       data (calcpts(j, 3), j = 1,neta) /0.2825D-03, 0.3425D-03,
16719      #    0.4150D-03, 0.5030D-03, 0.6091D-03, 0.7384D-03, 0.8943D-03,
16720      #    0.1084D-02, 0.1313D-02, 0.1591D-02, 0.1927D-02, 0.2333D-02,
16721      #    0.2829D-02, 0.3431D-02, 0.4154D-02, 0.5033D-02, 0.6102D-02,
16722      #    0.7400D-02, 0.8975D-02, 0.1088D-01, 0.1322D-01, 0.1605D-01,
16723      #    0.1950D-01, 0.2372D-01, 0.2887D-01, 0.3519D-01, 0.4294D-01,
16724      #    0.5242D-01, 0.6397D-01, 0.7783D-01, 0.9418D-01, 0.1127D+00,
16725      #    0.1321D+00, 0.1503D+00, 0.1645D+00, 0.1713D+00, 0.1691D+00,
16726      #    0.1583D+00, 0.1416D+00, 0.1221D+00, 0.1025D+00, 0.8428D-01,
16727      #    0.6826D-01, 0.5460D-01, 0.4318D-01, 0.3380D-01, 0.2621D-01,
16728      #    0.2019D-01, 0.1546D-01, 0.1178D-01, 0.8880D-02, 0.6677D-02,
16729      #    0.5030D-02, 0.3730D-02, 0.2774D-02, 0.2092D-02, 0.1549D-02,
16730      #    0.1142D-02, 0.8033D-03, 0.6000D-03, 0.4644D-03, 0.3296D-03,
16731      #    0.2618D-03, 0.1945D-03, 0.1273D-03, 0.6031D-04, 0.6008D-04,
16732      #    0.5993D-04, 0.5982D-04, -.6914D-05, -.6963D-05, -.6996D-05,
16733      #    -.7019D-05/
16734
16735       data (calcpts(j, 4), j = 1,neta) /0.2827D-03, 0.3428D-03,
16736      #    0.4153D-03, 0.5027D-03, 0.6089D-03, 0.7382D-03, 0.8942D-03,
16737      #    0.1083D-02, 0.1313D-02, 0.1591D-02, 0.1927D-02, 0.2335D-02,
16738      #    0.2830D-02, 0.3426D-02, 0.4156D-02, 0.5035D-02, 0.6104D-02,
16739      #    0.7403D-02, 0.8971D-02, 0.1089D-01, 0.1321D-01, 0.1604D-01,
16740      #    0.1949D-01, 0.2371D-01, 0.2887D-01, 0.3519D-01, 0.4293D-01,
16741      #    0.5241D-01, 0.6395D-01, 0.7783D-01, 0.9418D-01, 0.1126D+00,
16742      #    0.1320D+00, 0.1503D+00, 0.1644D+00, 0.1713D+00, 0.1691D+00,
16743      #    0.1583D+00, 0.1416D+00, 0.1221D+00, 0.1024D+00, 0.8428D-01,
16744      #    0.6826D-01, 0.5457D-01, 0.4315D-01, 0.3377D-01, 0.2625D-01,
16745      #    0.2023D-01, 0.1550D-01, 0.1175D-01, 0.8918D-02, 0.6715D-02,
16746      #    0.5001D-02, 0.3768D-02, 0.2813D-02, 0.2064D-02, 0.1520D-02,
16747      #    0.1113D-02, 0.8415D-03, 0.6382D-03, 0.4360D-03, 0.3011D-03,
16748      #    0.2334D-03, 0.1660D-03, 0.9883D-04, 0.9849D-04, 0.3160D-04,
16749      #    0.3145D-04, 0.3134D-04, 0.3127D-04, 0.3122D-04, 0.3119D-04,
16750      #    0.3117D-04/
16751
16752       data (calcpts(j, 5), j = 1,neta) /0.2824D-03, 0.3425D-03,
16753      #    0.4151D-03, 0.5025D-03, 0.6088D-03, 0.7382D-03, 0.8944D-03,
16754      #    0.1083D-02, 0.1313D-02, 0.1591D-02, 0.1927D-02, 0.2336D-02,
16755      #    0.2832D-02, 0.3428D-02, 0.4152D-02, 0.5031D-02, 0.6100D-02,
16756      #    0.7399D-02, 0.8968D-02, 0.1088D-01, 0.1321D-01, 0.1604D-01,
16757      #    0.1949D-01, 0.2370D-01, 0.2886D-01, 0.3518D-01, 0.4292D-01,
16758      #    0.5239D-01, 0.6393D-01, 0.7782D-01, 0.9411D-01, 0.1126D+00,
16759      #    0.1320D+00, 0.1503D+00, 0.1644D+00, 0.1713D+00, 0.1690D+00,
16760      #    0.1583D+00, 0.1415D+00, 0.1221D+00, 0.1024D+00, 0.8427D-01,
16761      #    0.6825D-01, 0.5459D-01, 0.4317D-01, 0.3380D-01, 0.2621D-01,
16762      #    0.2019D-01, 0.1545D-01, 0.1178D-01, 0.8876D-02, 0.6674D-02,
16763      #    0.5026D-02, 0.3727D-02, 0.2771D-02, 0.2089D-02, 0.1545D-02,
16764      #    0.1138D-02, 0.7997D-03, 0.5964D-03, 0.4608D-03, 0.3260D-03,
16765      #    0.2582D-03, 0.1909D-03, 0.1237D-03, 0.5670D-04, 0.5648D-04,
16766      #    0.5632D-04, 0.5622D-04, 0.5615D-04, -.1057D-04, -.1060D-04,
16767      #    -.1062D-04/
16768
16769       data (calcpts(j, 6), j = 1,neta) /0.2829D-03, 0.3424D-03,
16770      #    0.4150D-03, 0.5026D-03, 0.6090D-03, 0.7379D-03, 0.8935D-03,
16771      #    0.1083D-02, 0.1312D-02, 0.1590D-02, 0.1925D-02, 0.2332D-02,
16772      #    0.2828D-02, 0.3424D-02, 0.4155D-02, 0.5035D-02, 0.6098D-02,
16773      #    0.7398D-02, 0.8967D-02, 0.1088D-01, 0.1320D-01, 0.1603D-01,
16774      #    0.1948D-01, 0.2369D-01, 0.2885D-01, 0.3516D-01, 0.4290D-01,
16775      #    0.5237D-01, 0.6390D-01, 0.7776D-01, 0.9410D-01, 0.1125D+00,
16776      #    0.1319D+00, 0.1502D+00, 0.1643D+00, 0.1711D+00, 0.1690D+00,
16777      #    0.1582D+00, 0.1415D+00, 0.1220D+00, 0.1024D+00, 0.8425D-01,
16778      #    0.6824D-01, 0.5459D-01, 0.4318D-01, 0.3380D-01, 0.2621D-01,
16779      #    0.2020D-01, 0.1546D-01, 0.1178D-01, 0.8882D-02, 0.6679D-02,
16780      #    0.5031D-02, 0.3732D-02, 0.2776D-02, 0.2094D-02, 0.1550D-02,
16781      #    0.1143D-02, 0.8052D-03, 0.6018D-03, 0.4662D-03, 0.3314D-03,
16782      #    0.2637D-03, 0.1963D-03, 0.1291D-03, 0.6213D-04, 0.6190D-04,
16783      #    0.6175D-04, 0.6164D-04, -.5098D-05, -.5147D-05, -.5180D-05,
16784      #    -.5203D-05/
16785
16786       data (calcpts(j, 7), j = 1,neta) /0.2822D-03, 0.3418D-03,
16787      #    0.4146D-03, 0.5024D-03, 0.6083D-03, 0.7374D-03, 0.8933D-03,
16788      #    0.1082D-02, 0.1311D-02, 0.1589D-02, 0.1925D-02, 0.2335D-02,
16789      #    0.2825D-02, 0.3422D-02, 0.4147D-02, 0.5028D-02, 0.6098D-02,
16790      #    0.7392D-02, 0.8962D-02, 0.1087D-01, 0.1319D-01, 0.1602D-01,
16791      #    0.1947D-01, 0.2368D-01, 0.2883D-01, 0.3514D-01, 0.4287D-01,
16792      #    0.5234D-01, 0.6386D-01, 0.7775D-01, 0.9403D-01, 0.1124D+00,
16793      #    0.1318D+00, 0.1501D+00, 0.1642D+00, 0.1711D+00, 0.1689D+00,
16794      #    0.1581D+00, 0.1414D+00, 0.1220D+00, 0.1024D+00, 0.8422D-01,
16795      #    0.6822D-01, 0.5457D-01, 0.4315D-01, 0.3378D-01, 0.2626D-01,
16796      #    0.2024D-01, 0.1544D-01, 0.1176D-01, 0.8925D-02, 0.6722D-02,
16797      #    0.5008D-02, 0.3775D-02, 0.2820D-02, 0.2071D-02, 0.1527D-02,
16798      #    0.1120D-02, 0.8487D-03, 0.5787D-03, 0.4431D-03, 0.3083D-03,
16799      #    0.2405D-03, 0.1732D-03, 0.1060D-03, 0.1057D-03, 0.3878D-04,
16800      #    0.3863D-04, 0.3852D-04, 0.3845D-04, 0.3840D-04, 0.3837D-04,
16801      #    0.3835D-04/
16802
16803       data (calcpts(j, 8), j = 1,neta) /0.2819D-03, 0.3417D-03,
16804      #    0.4140D-03, 0.5020D-03, 0.6082D-03, 0.7369D-03, 0.8925D-03,
16805      #    0.1081D-02, 0.1311D-02, 0.1588D-02, 0.1923D-02, 0.2327D-02,
16806      #    0.2824D-02, 0.3422D-02, 0.4148D-02, 0.5023D-02, 0.6094D-02,
16807      #    0.7383D-02, 0.8954D-02, 0.1087D-01, 0.1319D-01, 0.1601D-01,
16808      #    0.1946D-01, 0.2366D-01, 0.2880D-01, 0.3511D-01, 0.4283D-01,
16809      #    0.5229D-01, 0.6380D-01, 0.7762D-01, 0.9395D-01, 0.1123D+00,
16810      #    0.1317D+00, 0.1500D+00, 0.1640D+00, 0.1709D+00, 0.1687D+00,
16811      #    0.1580D+00, 0.1414D+00, 0.1219D+00, 0.1023D+00, 0.8419D-01,
16812      #    0.6819D-01, 0.5450D-01, 0.4315D-01, 0.3378D-01, 0.2626D-01,
16813      #    0.2017D-01, 0.1544D-01, 0.1176D-01, 0.8926D-02, 0.6724D-02,
16814      #    0.5010D-02, 0.3777D-02, 0.2755D-02, 0.2073D-02, 0.1529D-02,
16815      #    0.1122D-02, 0.8504D-03, 0.5805D-03, 0.4449D-03, 0.3100D-03,
16816      #    0.2423D-03, 0.1749D-03, 0.1078D-03, 0.1074D-03, 0.4054D-04,
16817      #    0.4039D-04, 0.4028D-04, 0.4021D-04, 0.4016D-04, 0.4013D-04,
16818      #    0.4011D-04/
16819
16820       data (calcpts(j, 9), j = 1,neta) /0.2821D-03, 0.3414D-03,
16821      #    0.4141D-03, 0.5010D-03, 0.6076D-03, 0.7361D-03, 0.8916D-03,
16822      #    0.1080D-02, 0.1309D-02, 0.1585D-02, 0.1921D-02, 0.2328D-02,
16823      #    0.2820D-02, 0.3419D-02, 0.4139D-02, 0.5022D-02, 0.6082D-02,
16824      #    0.7378D-02, 0.8945D-02, 0.1085D-01, 0.1317D-01, 0.1599D-01,
16825      #    0.1943D-01, 0.2363D-01, 0.2877D-01, 0.3506D-01, 0.4277D-01,
16826      #    0.5221D-01, 0.6370D-01, 0.7755D-01, 0.9379D-01, 0.1121D+00,
16827      #    0.1315D+00, 0.1497D+00, 0.1638D+00, 0.1707D+00, 0.1685D+00,
16828      #    0.1579D+00, 0.1412D+00, 0.1218D+00, 0.1023D+00, 0.8414D-01,
16829      #    0.6816D-01, 0.5450D-01, 0.4309D-01, 0.3378D-01, 0.2620D-01,
16830      #    0.2018D-01, 0.1544D-01, 0.1177D-01, 0.8867D-02, 0.6665D-02,
16831      #    0.5017D-02, 0.3718D-02, 0.2762D-02, 0.2080D-02, 0.1537D-02,
16832      #    0.1130D-02, 0.7915D-03, 0.5882D-03, 0.4526D-03, 0.3177D-03,
16833      #    0.2500D-03, 0.1826D-03, 0.1155D-03, 0.1151D-03, 0.4825D-04,
16834      #    0.4810D-04, 0.4800D-04, 0.4793D-04, 0.4788D-04, -.1882D-04,
16835      #    -.1885D-04/
16836
16837       data (calcpts(j,10), j = 1,neta) /0.2816D-03, 0.3406D-03,
16838      #    0.4130D-03, 0.5005D-03, 0.6063D-03, 0.7348D-03, 0.8897D-03,
16839      #    0.1078D-02, 0.1307D-02, 0.1583D-02, 0.1917D-02, 0.2324D-02,
16840      #    0.2812D-02, 0.3413D-02, 0.4136D-02, 0.5014D-02, 0.6076D-02,
16841      #    0.7362D-02, 0.8930D-02, 0.1083D-01, 0.1315D-01, 0.1596D-01,
16842      #    0.1939D-01, 0.2359D-01, 0.2871D-01, 0.3500D-01, 0.4269D-01,
16843      #    0.5211D-01, 0.6357D-01, 0.7734D-01, 0.9356D-01, 0.1119D+00,
16844      #    0.1311D+00, 0.1493D+00, 0.1634D+00, 0.1703D+00, 0.1682D+00,
16845      #    0.1576D+00, 0.1410D+00, 0.1217D+00, 0.1022D+00, 0.8406D-01,
16846      #    0.6810D-01, 0.5448D-01, 0.4307D-01, 0.3376D-01, 0.2618D-01,
16847      #    0.2016D-01, 0.1543D-01, 0.1175D-01, 0.8918D-02, 0.6716D-02,
16848      #    0.5002D-02, 0.3770D-02, 0.2814D-02, 0.2066D-02, 0.1522D-02,
16849      #    0.1115D-02, 0.8435D-03, 0.5735D-03, 0.4379D-03, 0.3031D-03,
16850      #    0.2354D-03, 0.1680D-03, 0.1008D-03, 0.1005D-03, 0.3361D-04,
16851      #    0.3346D-04, 0.3335D-04, 0.3328D-04, 0.3324D-04, 0.3320D-04,
16852      #    0.3318D-04/
16853
16854       data (calcpts(j,11), j = 1,neta) /0.2808D-03, 0.3397D-03,
16855      #    0.4121D-03, 0.4989D-03, 0.6049D-03, 0.7330D-03, 0.8876D-03,
16856      #    0.1076D-02, 0.1304D-02, 0.1579D-02, 0.1913D-02, 0.2318D-02,
16857      #    0.2811D-02, 0.3401D-02, 0.4126D-02, 0.5001D-02, 0.6060D-02,
16858      #    0.7342D-02, 0.8908D-02, 0.1080D-01, 0.1311D-01, 0.1592D-01,
16859      #    0.1934D-01, 0.2352D-01, 0.2864D-01, 0.3490D-01, 0.4257D-01,
16860      #    0.5195D-01, 0.6338D-01, 0.7713D-01, 0.9325D-01, 0.1115D+00,
16861      #    0.1307D+00, 0.1489D+00, 0.1630D+00, 0.1698D+00, 0.1678D+00,
16862      #    0.1573D+00, 0.1408D+00, 0.1215D+00, 0.1020D+00, 0.8395D-01,
16863      #    0.6802D-01, 0.5440D-01, 0.4305D-01, 0.3368D-01, 0.2616D-01,
16864      #    0.2015D-01, 0.1541D-01, 0.1174D-01, 0.8907D-02, 0.6705D-02,
16865      #    0.4991D-02, 0.3759D-02, 0.2804D-02, 0.2055D-02, 0.1512D-02,
16866      #    0.1105D-02, 0.8330D-03, 0.6298D-03, 0.4275D-03, 0.2927D-03,
16867      #    0.2250D-03, 0.1576D-03, 0.9045D-04, 0.9012D-04, 0.8989D-04,
16868      #    0.2308D-04, 0.2297D-04, 0.2290D-04, 0.2285D-04, 0.2282D-04,
16869      #    0.2280D-04/
16870
16871       data (calcpts(j,12), j = 1,neta) /0.2794D-03, 0.3384D-03,
16872      #    0.4104D-03, 0.4976D-03, 0.6028D-03, 0.7303D-03, 0.8845D-03,
16873      #    0.1072D-02, 0.1298D-02, 0.1573D-02, 0.1906D-02, 0.2310D-02,
16874      #    0.2798D-02, 0.3391D-02, 0.4107D-02, 0.4980D-02, 0.6037D-02,
16875      #    0.7318D-02, 0.8875D-02, 0.1076D-01, 0.1306D-01, 0.1586D-01,
16876      #    0.1927D-01, 0.2343D-01, 0.2853D-01, 0.3476D-01, 0.4239D-01,
16877      #    0.5173D-01, 0.6310D-01, 0.7678D-01, 0.9279D-01, 0.1109D+00,
16878      #    0.1301D+00, 0.1481D+00, 0.1622D+00, 0.1691D+00, 0.1672D+00,
16879      #    0.1568D+00, 0.1404D+00, 0.1212D+00, 0.1018D+00, 0.8379D-01,
16880      #    0.6790D-01, 0.5432D-01, 0.4298D-01, 0.3368D-01, 0.2616D-01,
16881      #    0.2015D-01, 0.1542D-01, 0.1174D-01, 0.8843D-02, 0.6708D-02,
16882      #    0.4995D-02, 0.3762D-02, 0.2807D-02, 0.2059D-02, 0.1515D-02,
16883      #    0.1108D-02, 0.8366D-03, 0.6334D-03, 0.4312D-03, 0.2963D-03,
16884      #    0.2286D-03, 0.1613D-03, 0.9411D-04, 0.9378D-04, 0.9356D-04,
16885      #    0.2674D-04, 0.2664D-04, 0.2657D-04, 0.2652D-04, 0.2649D-04,
16886      #    0.2647D-04/
16887
16888       data (calcpts(j,13), j = 1,neta) /0.2781D-03, 0.3369D-03,
16889      #    0.4082D-03, 0.4949D-03, 0.5992D-03, 0.7261D-03, 0.8799D-03,
16890      #    0.1066D-02, 0.1291D-02, 0.1565D-02, 0.1896D-02, 0.2297D-02,
16891      #    0.2783D-02, 0.3376D-02, 0.4084D-02, 0.4957D-02, 0.6001D-02,
16892      #    0.7282D-02, 0.8828D-02, 0.1071D-01, 0.1300D-01, 0.1577D-01,
16893      #    0.1916D-01, 0.2330D-01, 0.2836D-01, 0.3455D-01, 0.4214D-01,
16894      #    0.5141D-01, 0.6268D-01, 0.7623D-01, 0.9216D-01, 0.1102D+00,
16895      #    0.1291D+00, 0.1471D+00, 0.1611D+00, 0.1681D+00, 0.1663D+00,
16896      #    0.1560D+00, 0.1398D+00, 0.1208D+00, 0.1015D+00, 0.8356D-01,
16897      #    0.6773D-01, 0.5417D-01, 0.4290D-01, 0.3360D-01, 0.2609D-01,
16898      #    0.2015D-01, 0.1542D-01, 0.1174D-01, 0.8844D-02, 0.6643D-02,
16899      #    0.4997D-02, 0.3765D-02, 0.2810D-02, 0.2062D-02, 0.1518D-02,
16900      #    0.1111D-02, 0.8399D-03, 0.6366D-03, 0.4344D-03, 0.2996D-03,
16901      #    0.2319D-03, 0.1645D-03, 0.9741D-04, 0.9708D-04, 0.9686D-04,
16902      #    0.3005D-04, 0.2994D-04, 0.2987D-04, 0.2983D-04, 0.2979D-04,
16903      #    0.2977D-04/
16904
16905       data (calcpts(j,14), j = 1,neta) /0.2757D-03, 0.3342D-03,
16906      #    0.4053D-03, 0.4909D-03, 0.5944D-03, 0.7208D-03, 0.8734D-03,
16907      #    0.1058D-02, 0.1282D-02, 0.1553D-02, 0.1881D-02, 0.2279D-02,
16908      #    0.2760D-02, 0.3346D-02, 0.4057D-02, 0.4912D-02, 0.5959D-02,
16909      #    0.7225D-02, 0.8761D-02, 0.1063D-01, 0.1289D-01, 0.1565D-01,
16910      #    0.1901D-01, 0.2312D-01, 0.2813D-01, 0.3426D-01, 0.4177D-01,
16911      #    0.5094D-01, 0.6209D-01, 0.7546D-01, 0.9123D-01, 0.1090D+00,
16912      #    0.1277D+00, 0.1456D+00, 0.1595D+00, 0.1666D+00, 0.1649D+00,
16913      #    0.1550D+00, 0.1390D+00, 0.1201D+00, 0.1010D+00, 0.8322D-01,
16914      #    0.6748D-01, 0.5402D-01, 0.4276D-01, 0.3354D-01, 0.2604D-01,
16915      #    0.2009D-01, 0.1537D-01, 0.1169D-01, 0.8864D-02, 0.6664D-02,
16916      #    0.5018D-02, 0.3720D-02, 0.2765D-02, 0.2084D-02, 0.1540D-02,
16917      #    0.1134D-02, 0.7956D-03, 0.5924D-03, 0.4569D-03, 0.3221D-03,
16918      #    0.2544D-03, 0.1870D-03, 0.1199D-03, 0.1196D-03, 0.5270D-04,
16919      #    0.5255D-04, 0.5245D-04, 0.5238D-04, -.1433D-04, -.1436D-04,
16920      #    -.1438D-04/
16921
16922       data (calcpts(j,15), j = 1,neta) /0.2728D-03, 0.3303D-03,
16923      #    0.4008D-03, 0.4855D-03, 0.5879D-03, 0.7125D-03, 0.8631D-03,
16924      #    0.1045D-02, 0.1267D-02, 0.1535D-02, 0.1860D-02, 0.2254D-02,
16925      #    0.2733D-02, 0.3311D-02, 0.4014D-02, 0.4862D-02, 0.5890D-02,
16926      #    0.7144D-02, 0.8656D-02, 0.1050D-01, 0.1274D-01, 0.1547D-01,
16927      #    0.1879D-01, 0.2284D-01, 0.2779D-01, 0.3384D-01, 0.4124D-01,
16928      #    0.5028D-01, 0.6126D-01, 0.7442D-01, 0.8991D-01, 0.1074D+00,
16929      #    0.1259D+00, 0.1435D+00, 0.1573D+00, 0.1644D+00, 0.1630D+00,
16930      #    0.1534D+00, 0.1378D+00, 0.1192D+00, 0.1004D+00, 0.8273D-01,
16931      #    0.6712D-01, 0.5375D-01, 0.4256D-01, 0.3335D-01, 0.2591D-01,
16932      #    0.1998D-01, 0.1532D-01, 0.1165D-01, 0.8822D-02, 0.6623D-02,
16933      #    0.4978D-02, 0.3748D-02, 0.2793D-02, 0.2045D-02, 0.1502D-02,
16934      #    0.1095D-02, 0.8240D-03, 0.6209D-03, 0.4188D-03, 0.3507D-03,
16935      #    0.2163D-03, 0.1490D-03, 0.1485D-03, 0.8154D-04, 0.8133D-04,
16936      #    0.1452D-04, 0.1442D-04, 0.1435D-04, 0.1431D-04, 0.1427D-04,
16937      #    0.1425D-04/
16938
16939       data (calcpts(j,16), j = 1,neta) /0.2682D-03, 0.3250D-03,
16940      #    0.3946D-03, 0.4778D-03, 0.5786D-03, 0.7010D-03, 0.8497D-03,
16941      #    0.1029D-02, 0.1247D-02, 0.1511D-02, 0.1830D-02, 0.2218D-02,
16942      #    0.2686D-02, 0.3253D-02, 0.3946D-02, 0.4780D-02, 0.5795D-02,
16943      #    0.7024D-02, 0.8518D-02, 0.1033D-01, 0.1254D-01, 0.1521D-01,
16944      #    0.1848D-01, 0.2246D-01, 0.2732D-01, 0.3325D-01, 0.4050D-01,
16945      #    0.4935D-01, 0.6008D-01, 0.7296D-01, 0.8805D-01, 0.1051D+00,
16946      #    0.1232D+00, 0.1404D+00, 0.1541D+00, 0.1614D+00, 0.1603D+00,
16947      #    0.1512D+00, 0.1361D+00, 0.1180D+00, 0.9940D-01, 0.8202D-01,
16948      #    0.6661D-01, 0.5338D-01, 0.4228D-01, 0.3315D-01, 0.2579D-01,
16949      #    0.1993D-01, 0.1528D-01, 0.1161D-01, 0.8786D-02, 0.6655D-02,
16950      #    0.4945D-02, 0.3715D-02, 0.2761D-02, 0.2080D-02, 0.1537D-02,
16951      #    0.1131D-02, 0.7928D-03, 0.5897D-03, 0.4543D-03, 0.3196D-03,
16952      #    0.2519D-03, 0.1846D-03, 0.1175D-03, 0.1172D-03, 0.5032D-04,
16953      #    0.5017D-04, 0.5008D-04, 0.5001D-04, 0.4997D-04, -.1673D-04,
16954      #    -.1675D-04/
16955
16956       data (calcpts(j,17), j = 1,neta) /0.2625D-03, 0.3178D-03,
16957      #    0.3854D-03, 0.4667D-03, 0.5652D-03, 0.6851D-03, 0.8304D-03,
16958      #    0.1006D-02, 0.1219D-02, 0.1476D-02, 0.1789D-02, 0.2167D-02,
16959      #    0.2629D-02, 0.3185D-02, 0.3855D-02, 0.4675D-02, 0.5665D-02,
16960      #    0.6864D-02, 0.8322D-02, 0.1010D-01, 0.1225D-01, 0.1486D-01,
16961      #    0.1804D-01, 0.2192D-01, 0.2666D-01, 0.3243D-01, 0.3947D-01,
16962      #    0.4806D-01, 0.5845D-01, 0.7091D-01, 0.8548D-01, 0.1020D+00,
16963      #    0.1195D+00, 0.1363D+00, 0.1497D+00, 0.1571D+00, 0.1566D+00,
16964      #    0.1481D+00, 0.1336D+00, 0.1161D+00, 0.9804D-01, 0.8102D-01,
16965      #    0.6588D-01, 0.5284D-01, 0.4189D-01, 0.3291D-01, 0.2564D-01,
16966      #    0.1978D-01, 0.1514D-01, 0.1154D-01, 0.8721D-02, 0.6593D-02,
16967      #    0.4951D-02, 0.3722D-02, 0.2768D-02, 0.2022D-02, 0.1479D-02,
16968      #    0.1139D-02, 0.8017D-03, 0.5988D-03, 0.4634D-03, 0.3287D-03,
16969      #    0.2611D-03, 0.1938D-03, 0.1267D-03, 0.5977D-04, 0.5957D-04,
16970      #    0.5944D-04, 0.5934D-04, -.7387D-05, -.7430D-05, -.7460D-05,
16971      #    -.7480D-05/
16972
16973       data (calcpts(j,18), j = 1,neta) /0.2543D-03, 0.3078D-03,
16974      #    0.3732D-03, 0.4520D-03, 0.5474D-03, 0.6629D-03, 0.8035D-03,
16975      #    0.9733D-03, 0.1180D-02, 0.1429D-02, 0.1731D-02, 0.2098D-02,
16976      #    0.2541D-02, 0.3079D-02, 0.3729D-02, 0.4525D-02, 0.5479D-02,
16977      #    0.6644D-02, 0.8051D-02, 0.9766D-02, 0.1184D-01, 0.1437D-01,
16978      #    0.1745D-01, 0.2119D-01, 0.2575D-01, 0.3131D-01, 0.3808D-01,
16979      #    0.4632D-01, 0.5627D-01, 0.6816D-01, 0.8206D-01, 0.9782D-01,
16980      #    0.1145D+00, 0.1306D+00, 0.1438D+00, 0.1513D+00, 0.1513D+00,
16981      #    0.1437D+00, 0.1302D+00, 0.1135D+00, 0.9614D-01, 0.7963D-01,
16982      #    0.6486D-01, 0.5210D-01, 0.4140D-01, 0.3251D-01, 0.2532D-01,
16983      #    0.1955D-01, 0.1505D-01, 0.1146D-01, 0.8710D-02, 0.6519D-02,
16984      #    0.4945D-02, 0.3651D-02, 0.2766D-02, 0.2020D-02, 0.1478D-02,
16985      #    0.1138D-02, 0.8008D-03, 0.5980D-03, 0.4628D-03, 0.3282D-03,
16986      #    0.2606D-03, 0.1934D-03, 0.1263D-03, 0.5934D-04, 0.5915D-04,
16987      #    0.5902D-04, 0.5893D-04, -.7793D-05, -.7834D-05, -.7862D-05,
16988      #    -.7881D-05/
16989
16990       data (calcpts(j,19), j = 1,neta) /0.2427D-03, 0.2943D-03,
16991      #    0.3564D-03, 0.4321D-03, 0.5233D-03, 0.6339D-03, 0.7677D-03,
16992      #    0.9304D-03, 0.1128D-02, 0.1366D-02, 0.1654D-02, 0.2005D-02,
16993      #    0.2429D-02, 0.2943D-02, 0.3568D-02, 0.4323D-02, 0.5235D-02,
16994      #    0.6346D-02, 0.7694D-02, 0.9331D-02, 0.1131D-01, 0.1372D-01,
16995      #    0.1665D-01, 0.2022D-01, 0.2455D-01, 0.2983D-01, 0.3625D-01,
16996      #    0.4403D-01, 0.5342D-01, 0.6460D-01, 0.7767D-01, 0.9241D-01,
16997      #    0.1081D+00, 0.1234D+00, 0.1360D+00, 0.1437D+00, 0.1443D+00,
16998      #    0.1378D+00, 0.1256D+00, 0.1100D+00, 0.9352D-01, 0.7771D-01,
16999      #    0.6346D-01, 0.5109D-01, 0.4065D-01, 0.3199D-01, 0.2496D-01,
17000      #    0.1934D-01, 0.1485D-01, 0.1134D-01, 0.8593D-02, 0.6472D-02,
17001      #    0.4902D-02, 0.3676D-02, 0.2725D-02, 0.2047D-02, 0.1505D-02,
17002      #    0.1100D-02, 0.8295D-03, 0.6269D-03, 0.4251D-03, 0.2906D-03,
17003      #    0.2231D-03, 0.1559D-03, 0.8884D-04, 0.8859D-04, 0.8841D-04,
17004      #    0.2162D-04, 0.2154D-04, 0.2149D-04, 0.2145D-04, 0.2142D-04,
17005      #    0.2140D-04/
17006
17007       data (calcpts(j,20), j = 1,neta) /0.2281D-03, 0.2765D-03,
17008      #    0.3351D-03, 0.4057D-03, 0.4920D-03, 0.5961D-03, 0.7219D-03,
17009      #    0.8744D-03, 0.1060D-02, 0.1284D-02, 0.1555D-02, 0.1885D-02,
17010      #    0.2284D-02, 0.2768D-02, 0.3353D-02, 0.4060D-02, 0.4921D-02,
17011      #    0.5965D-02, 0.7228D-02, 0.8768D-02, 0.1063D-01, 0.1289D-01,
17012      #    0.1564D-01, 0.1897D-01, 0.2303D-01, 0.2795D-01, 0.3393D-01,
17013      #    0.4116D-01, 0.4985D-01, 0.6017D-01, 0.7220D-01, 0.8575D-01,
17014      #    0.1002D+00, 0.1144D+00, 0.1263D+00, 0.1338D+00, 0.1352D+00,
17015      #    0.1300D+00, 0.1193D+00, 0.1053D+00, 0.8999D-01, 0.7513D-01,
17016      #    0.6159D-01, 0.4974D-01, 0.3967D-01, 0.3130D-01, 0.2449D-01,
17017      #    0.1896D-01, 0.1462D-01, 0.1112D-01, 0.8449D-02, 0.6401D-02,
17018      #    0.4834D-02, 0.3611D-02, 0.2662D-02, 0.1985D-02, 0.1511D-02,
17019      #    0.1106D-02, 0.7688D-03, 0.5665D-03, 0.4316D-03, 0.2972D-03,
17020      #    0.2298D-03, 0.1626D-03, 0.9560D-04, 0.9537D-04, 0.2855D-04,
17021      #    0.2844D-04, 0.2836D-04, 0.2831D-04, 0.2828D-04, 0.2826D-04,
17022      #    0.2824D-04/
17023
17024       data (calcpts(j,21), j = 1,neta) /0.2103D-03, 0.2549D-03,
17025      #    0.3087D-03, 0.3736D-03, 0.4527D-03, 0.5489D-03, 0.6649D-03,
17026      #    0.8050D-03, 0.9762D-03, 0.1182D-02, 0.1432D-02, 0.1735D-02,
17027      #    0.2103D-02, 0.2547D-02, 0.3085D-02, 0.3741D-02, 0.4530D-02,
17028      #    0.5493D-02, 0.6658D-02, 0.8067D-02, 0.9784D-02, 0.1186D-01,
17029      #    0.1438D-01, 0.1744D-01, 0.2116D-01, 0.2566D-01, 0.3112D-01,
17030      #    0.3769D-01, 0.4558D-01, 0.5491D-01, 0.6575D-01, 0.7794D-01,
17031      #    0.9094D-01, 0.1037D+00, 0.1147D+00, 0.1220D+00, 0.1241D+00,
17032      #    0.1202D+00, 0.1113D+00, 0.9908D-01, 0.8539D-01, 0.7177D-01,
17033      #    0.5916D-01, 0.4799D-01, 0.3842D-01, 0.3041D-01, 0.2384D-01,
17034      #    0.1852D-01, 0.1426D-01, 0.1091D-01, 0.8312D-02, 0.6336D-02,
17035      #    0.4774D-02, 0.3554D-02, 0.2674D-02, 0.1998D-02, 0.1458D-02,
17036      #    0.1120D-02, 0.7841D-03, 0.5821D-03, 0.4474D-03, 0.3131D-03,
17037      #    0.2458D-03, 0.1787D-03, 0.1117D-03, 0.1115D-03, 0.4471D-04,
17038      #    0.4462D-04, 0.4455D-04, 0.4451D-04, 0.4448D-04, 0.4446D-04,
17039      #    0.4445D-04/
17040
17041       data (calcpts(j,22), j = 1,neta) /0.1892D-03, 0.2287D-03,
17042      #    0.2776D-03, 0.3361D-03, 0.4075D-03, 0.4932D-03, 0.5976D-03,
17043      #    0.7242D-03, 0.8775D-03, 0.1063D-02, 0.1288D-02, 0.1560D-02,
17044      #    0.1890D-02, 0.2291D-02, 0.2775D-02, 0.3362D-02, 0.4075D-02,
17045      #    0.4940D-02, 0.5984D-02, 0.7251D-02, 0.8790D-02, 0.1066D-01,
17046      #    0.1292D-01, 0.1566D-01, 0.1898D-01, 0.2301D-01, 0.2788D-01,
17047      #    0.3373D-01, 0.4073D-01, 0.4899D-01, 0.5855D-01, 0.6927D-01,
17048      #    0.8071D-01, 0.9201D-01, 0.1019D+00, 0.1087D+00, 0.1111D+00,
17049      #    0.1086D+00, 0.1016D+00, 0.9138D-01, 0.7959D-01, 0.6752D-01,
17050      #    0.5609D-01, 0.4579D-01, 0.3685D-01, 0.2929D-01, 0.2304D-01,
17051      #    0.1796D-01, 0.1389D-01, 0.1066D-01, 0.8130D-02, 0.6135D-02,
17052      #    0.4644D-02, 0.3495D-02, 0.2617D-02, 0.1942D-02, 0.1470D-02,
17053      #    0.1067D-02, 0.7975D-03, 0.5958D-03, 0.3947D-03, 0.3272D-03,
17054      #    0.2600D-03, 0.1930D-03, 0.1261D-03, 0.5924D-04, 0.5913D-04,
17055      #    0.5905D-04, 0.5900D-04, 0.5896D-04, -.7732D-05, -.7749D-05,
17056      #    -.7760D-05/
17057
17058       data (calcpts(j,23), j = 1,neta) /0.1655D-03, 0.2005D-03,
17059      #    0.2427D-03, 0.2942D-03, 0.3569D-03, 0.4318D-03, 0.5232D-03,
17060      #    0.6342D-03, 0.7686D-03, 0.9306D-03, 0.1128D-02, 0.1366D-02,
17061      #    0.1655D-02, 0.2006D-02, 0.2430D-02, 0.2944D-02, 0.3566D-02,
17062      #    0.4324D-02, 0.5236D-02, 0.6346D-02, 0.7697D-02, 0.9327D-02,
17063      #    0.1130D-01, 0.1370D-01, 0.1660D-01, 0.2012D-01, 0.2435D-01,
17064      #    0.2944D-01, 0.3551D-01, 0.4267D-01, 0.5093D-01, 0.6019D-01,
17065      #    0.7004D-01, 0.7982D-01, 0.8841D-01, 0.9454D-01, 0.9712D-01,
17066      #    0.9561D-01, 0.9035D-01, 0.8227D-01, 0.7258D-01, 0.6234D-01,
17067      #    0.5234D-01, 0.4311D-01, 0.3494D-01, 0.2794D-01, 0.2208D-01,
17068      #    0.1727D-01, 0.1340D-01, 0.1032D-01, 0.7891D-02, 0.6003D-02,
17069      #    0.4538D-02, 0.3418D-02, 0.2556D-02, 0.1909D-02, 0.1419D-02,
17070      #    0.1049D-02, 0.7738D-03, 0.5724D-03, 0.4115D-03, 0.3043D-03,
17071      #    0.2172D-03, 0.1635D-03, 0.1167D-03, 0.8322D-04, 0.5646D-04,
17072      #    0.4307D-04, 0.2969D-04, 0.2300D-04, 0.1631D-04, 0.9633D-05,
17073      #    0.2957D-05/
17074
17075       data (calcpts(j,24), j = 1,neta) /0.1409D-03, 0.1707D-03,
17076      #    0.2069D-03, 0.2508D-03, 0.3035D-03, 0.3675D-03, 0.4456D-03,
17077      #    0.5401D-03, 0.6543D-03, 0.7925D-03, 0.9600D-03, 0.1164D-02,
17078      #    0.1410D-02, 0.1708D-02, 0.2069D-02, 0.2507D-02, 0.3038D-02,
17079      #    0.3684D-02, 0.4462D-02, 0.5404D-02, 0.6550D-02, 0.7939D-02,
17080      #    0.9619D-02, 0.1166D-01, 0.1413D-01, 0.1711D-01, 0.2072D-01,
17081      #    0.2504D-01, 0.3019D-01, 0.3626D-01, 0.4327D-01, 0.5112D-01,
17082      #    0.5950D-01, 0.6782D-01, 0.7521D-01, 0.8060D-01, 0.8310D-01,
17083      #    0.8228D-01, 0.7840D-01, 0.7221D-01, 0.6458D-01, 0.5629D-01,
17084      #    0.4793D-01, 0.3996D-01, 0.3271D-01, 0.2636D-01, 0.2096D-01,
17085      #    0.1649D-01, 0.1285D-01, 0.9932D-02, 0.7623D-02, 0.5816D-02,
17086      #    0.4408D-02, 0.3325D-02, 0.2498D-02, 0.1867D-02, 0.1391D-02,
17087      #    0.1029D-02, 0.7605D-03, 0.5595D-03, 0.4122D-03, 0.3051D-03,
17088      #    0.2181D-03, 0.1579D-03, 0.1177D-03, 0.8429D-04, 0.6423D-04,
17089      #    0.4418D-04, 0.3082D-04, 0.2413D-04, 0.1745D-04, 0.1077D-04,
17090      #    0.1076D-04/
17091
17092       data (calcpts(j,25), j = 1,neta) /0.1168D-03, 0.1415D-03,
17093      #    0.1715D-03, 0.2077D-03, 0.2514D-03, 0.3048D-03, 0.3695D-03,
17094      #    0.4475D-03, 0.5420D-03, 0.6569D-03, 0.7959D-03, 0.9642D-03,
17095      #    0.1169D-02, 0.1415D-02, 0.1715D-02, 0.2078D-02, 0.2518D-02,
17096      #    0.3051D-02, 0.3697D-02, 0.4481D-02, 0.5431D-02, 0.6581D-02,
17097      #    0.7974D-02, 0.9667D-02, 0.1171D-01, 0.1419D-01, 0.1717D-01,
17098      #    0.2076D-01, 0.2503D-01, 0.3008D-01, 0.3591D-01, 0.4247D-01,
17099      #    0.4949D-01, 0.5653D-01, 0.6285D-01, 0.6757D-01, 0.6993D-01,
17100      #    0.6954D-01, 0.6664D-01, 0.6189D-01, 0.5601D-01, 0.4956D-01,
17101      #    0.4291D-01, 0.3634D-01, 0.3015D-01, 0.2456D-01, 0.1970D-01,
17102      #    0.1560D-01, 0.1222D-01, 0.9487D-02, 0.7313D-02, 0.5599D-02,
17103      #    0.4256D-02, 0.3222D-02, 0.2424D-02, 0.1814D-02, 0.1359D-02,
17104      #    0.1011D-02, 0.7496D-03, 0.5489D-03, 0.4018D-03, 0.2948D-03,
17105      #    0.2146D-03, 0.1611D-03, 0.1143D-03, 0.8092D-04, 0.6087D-04,
17106      #    0.4084D-04, 0.3415D-04, 0.2080D-04, 0.1413D-04, 0.1412D-04,
17107      #    0.7449D-05/
17108
17109       data (calcpts(j,26), j = 1,neta) /0.9441D-04, 0.1144D-03,
17110      #    0.1386D-03, 0.1679D-03, 0.2035D-03, 0.2465D-03, 0.2988D-03,
17111      #    0.3618D-03, 0.4387D-03, 0.5310D-03, 0.6434D-03, 0.7796D-03,
17112      #    0.9444D-03, 0.1144D-02, 0.1386D-02, 0.1680D-02, 0.2035D-02,
17113      #    0.2466D-02, 0.2989D-02, 0.3622D-02, 0.4389D-02, 0.5322D-02,
17114      #    0.6448D-02, 0.7811D-02, 0.9470D-02, 0.1148D-01, 0.1389D-01,
17115      #    0.1680D-01, 0.2027D-01, 0.2438D-01, 0.2914D-01, 0.3452D-01,
17116      #    0.4033D-01, 0.4624D-01, 0.5164D-01, 0.5581D-01, 0.5808D-01,
17117      #    0.5806D-01, 0.5589D-01, 0.5214D-01, 0.4753D-01, 0.4257D-01,
17118      #    0.3746D-01, 0.3231D-01, 0.2728D-01, 0.2255D-01, 0.1829D-01,
17119      #    0.1461D-01, 0.1153D-01, 0.8999D-02, 0.6966D-02, 0.5350D-02,
17120      #    0.4084D-02, 0.3099D-02, 0.2343D-02, 0.1761D-02, 0.1313D-02,
17121      #    0.9785D-03, 0.7245D-03, 0.5374D-03, 0.3904D-03, 0.2902D-03,
17122      #    0.2101D-03, 0.1567D-03, 0.1099D-03, 0.7655D-04, 0.5652D-04,
17123      #    0.4316D-04, 0.2982D-04, 0.1647D-04, 0.1647D-04, 0.9795D-05,
17124      #    0.3125D-05/
17125
17126       data (calcpts(j,27), j = 1,neta) /0.7459D-04, 0.9038D-04,
17127      #    0.1096D-03, 0.1328D-03, 0.1608D-03, 0.1948D-03, 0.2361D-03,
17128      #    0.2860D-03, 0.3463D-03, 0.4201D-03, 0.5086D-03, 0.6162D-03,
17129      #    0.7467D-03, 0.9047D-03, 0.1096D-02, 0.1328D-02, 0.1609D-02,
17130      #    0.1950D-02, 0.2363D-02, 0.2863D-02, 0.3470D-02, 0.4206D-02,
17131      #    0.5098D-02, 0.6182D-02, 0.7492D-02, 0.9074D-02, 0.1099D-01,
17132      #    0.1330D-01, 0.1607D-01, 0.1933D-01, 0.2315D-01, 0.2749D-01,
17133      #    0.3223D-01, 0.3712D-01, 0.4171D-01, 0.4543D-01, 0.4767D-01,
17134      #    0.4805D-01, 0.4654D-01, 0.4356D-01, 0.3980D-01, 0.3583D-01,
17135      #    0.3191D-01, 0.2802D-01, 0.2413D-01, 0.2032D-01, 0.1674D-01,
17136      #    0.1353D-01, 0.1078D-01, 0.8474D-02, 0.6599D-02, 0.5100D-02,
17137      #    0.3910D-02, 0.2980D-02, 0.2259D-02, 0.1704D-02, 0.1277D-02,
17138      #    0.9560D-03, 0.7089D-03, 0.5286D-03, 0.3884D-03, 0.2883D-03,
17139      #    0.2149D-03, 0.1548D-03, 0.1148D-03, 0.8145D-04, 0.6143D-04,
17140      #    0.4808D-04, 0.3474D-04, 0.2807D-04, 0.2140D-04, 0.1473D-04,
17141      #    0.1472D-04/
17142
17143       data (calcpts(j,28), j = 1,neta) /0.5791D-04, 0.7018D-04,
17144      #    0.8503D-04, 0.1030D-03, 0.1248D-03, 0.1512D-03, 0.1832D-03,
17145      #    0.2219D-03, 0.2689D-03, 0.3258D-03, 0.3947D-03, 0.4780D-03,
17146      #    0.5794D-03, 0.7018D-03, 0.8505D-03, 0.1030D-02, 0.1249D-02,
17147      #    0.1513D-02, 0.1834D-02, 0.2222D-02, 0.2693D-02, 0.3264D-02,
17148      #    0.3956D-02, 0.4796D-02, 0.5814D-02, 0.7043D-02, 0.8538D-02,
17149      #    0.1034D-01, 0.1248D-01, 0.1505D-01, 0.1805D-01, 0.2148D-01,
17150      #    0.2527D-01, 0.2925D-01, 0.3310D-01, 0.3637D-01, 0.3858D-01,
17151      #    0.3935D-01, 0.3852D-01, 0.3628D-01, 0.3320D-01, 0.2986D-01,
17152      #    0.2667D-01, 0.2369D-01, 0.2079D-01, 0.1789D-01, 0.1503D-01,
17153      #    0.1235D-01, 0.9957D-02, 0.7905D-02, 0.6194D-02, 0.4811D-02,
17154      #    0.3709D-02, 0.2841D-02, 0.2160D-02, 0.1633D-02, 0.1232D-02,
17155      #    0.9185D-03, 0.6850D-03, 0.5115D-03, 0.3781D-03, 0.2780D-03,
17156      #    0.2046D-03, 0.1512D-03, 0.1112D-03, 0.7787D-04, 0.5786D-04,
17157      #    0.4452D-04, 0.3119D-04, 0.2452D-04, 0.1785D-04, 0.1118D-04,
17158      #    0.1118D-04/
17159
17160       data (calcpts(j,29), j = 1,neta) /0.4422D-04, 0.5359D-04,
17161      #    0.6494D-04, 0.7870D-04, 0.9534D-04, 0.1155D-03, 0.1400D-03,
17162      #    0.1695D-03, 0.2054D-03, 0.2489D-03, 0.3015D-03, 0.3653D-03,
17163      #    0.4423D-03, 0.5363D-03, 0.6496D-03, 0.7869D-03, 0.9536D-03,
17164      #    0.1156D-02, 0.1400D-02, 0.1697D-02, 0.2057D-02, 0.2493D-02,
17165      #    0.3022D-02, 0.3664D-02, 0.4441D-02, 0.5384D-02, 0.6524D-02,
17166      #    0.7899D-02, 0.9553D-02, 0.1153D-01, 0.1384D-01, 0.1651D-01,
17167      #    0.1948D-01, 0.2266D-01, 0.2581D-01, 0.2862D-01, 0.3073D-01,
17168      #    0.3179D-01, 0.3158D-01, 0.3012D-01, 0.2772D-01, 0.2490D-01,
17169      #    0.2214D-01, 0.1968D-01, 0.1747D-01, 0.1533D-01, 0.1318D-01,
17170      #    0.1106D-01, 0.9063D-02, 0.7286D-02, 0.5765D-02, 0.4510D-02,
17171      #    0.3496D-02, 0.2688D-02, 0.2055D-02, 0.1561D-02, 0.1174D-02,
17172      #    0.8874D-03, 0.6607D-03, 0.4939D-03, 0.3672D-03, 0.2672D-03,
17173      #    0.2005D-03, 0.1472D-03, 0.1071D-03, 0.7381D-04, 0.5380D-04,
17174      #    0.4047D-04, 0.2713D-04, 0.2046D-04, 0.1379D-04, 0.7127D-05,
17175      #    0.7127D-05/
17176
17177       data (calcpts(j,30), j = 1,neta) /0.3339D-04, 0.4040D-04,
17178      #    0.4896D-04, 0.5931D-04, 0.7186D-04, 0.8708D-04, 0.1055D-03,
17179      #    0.1279D-03, 0.1549D-03, 0.1876D-03, 0.2273D-03, 0.2755D-03,
17180      #    0.3337D-03, 0.4043D-03, 0.4899D-03, 0.5933D-03, 0.7195D-03,
17181      #    0.8717D-03, 0.1056D-02, 0.1280D-02, 0.1551D-02, 0.1880D-02,
17182      #    0.2279D-02, 0.2763D-02, 0.3350D-02, 0.4061D-02, 0.4922D-02,
17183      #    0.5962D-02, 0.7212D-02, 0.8703D-02, 0.1047D-01, 0.1251D-01,
17184      #    0.1481D-01, 0.1729D-01, 0.1981D-01, 0.2216D-01, 0.2408D-01,
17185      #    0.2527D-01, 0.2553D-01, 0.2477D-01, 0.2311D-01, 0.2086D-01,
17186      #    0.1846D-01, 0.1628D-01, 0.1443D-01, 0.1281D-01, 0.1125D-01,
17187      #    0.9669D-02, 0.8097D-02, 0.6622D-02, 0.5310D-02, 0.4192D-02,
17188      #    0.3272D-02, 0.2532D-02, 0.1945D-02, 0.1485D-02, 0.1125D-02,
17189      #    0.8448D-03, 0.6381D-03, 0.4781D-03, 0.3514D-03, 0.2648D-03,
17190      #    0.1914D-03, 0.1448D-03, 0.1048D-03, 0.7809D-04, 0.5809D-04,
17191      #    0.3809D-04, 0.3142D-04, 0.1809D-04, 0.1809D-04, 0.1142D-04,
17192      #    0.4756D-05/
17193
17194       data (calcpts(j,31), j = 1,neta) /0.2490D-04, 0.3016D-04,
17195      #    0.3654D-04, 0.4428D-04, 0.5367D-04, 0.6502D-04, 0.7877D-04,
17196      #    0.9543D-04, 0.1156D-03, 0.1401D-03, 0.1697D-03, 0.2056D-03,
17197      #    0.2490D-03, 0.3017D-03, 0.3656D-03, 0.4430D-03, 0.5366D-03,
17198      #    0.6505D-03, 0.7880D-03, 0.9552D-03, 0.1158D-02, 0.1403D-02,
17199      #    0.1701D-02, 0.2062D-02, 0.2499D-02, 0.3031D-02, 0.3673D-02,
17200      #    0.4450D-02, 0.5386D-02, 0.6504D-02, 0.7828D-02, 0.9372D-02,
17201      #    0.1112D-01, 0.1302D-01, 0.1501D-01, 0.1691D-01, 0.1855D-01,
17202      #    0.1974D-01, 0.2028D-01, 0.2007D-01, 0.1909D-01, 0.1747D-01,
17203      #    0.1552D-01, 0.1357D-01, 0.1189D-01, 0.1053D-01, 0.9356D-02,
17204      #    0.8220D-02, 0.7059D-02, 0.5903D-02, 0.4817D-02, 0.3855D-02,
17205      #    0.3039D-02, 0.2368D-02, 0.1827D-02, 0.1400D-02, 0.1067D-02,
17206      #    0.8068D-03, 0.6068D-03, 0.4535D-03, 0.3402D-03, 0.2535D-03,
17207      #    0.1869D-03, 0.1402D-03, 0.1002D-03, 0.7354D-04, 0.5354D-04,
17208      #    0.4021D-04, 0.2687D-04, 0.2021D-04, 0.1354D-04, 0.1354D-04,
17209      #    0.6874D-05/
17210
17211       data (calcpts(j,32), j = 1,neta) /0.1842D-04, 0.2232D-04,
17212      #    0.2705D-04, 0.3277D-04, 0.3967D-04, 0.4809D-04, 0.5828D-04,
17213      #    0.7059D-04, 0.8552D-04, 0.1036D-03, 0.1255D-03, 0.1521D-03,
17214      #    0.1842D-03, 0.2232D-03, 0.2705D-03, 0.3277D-03, 0.3971D-03,
17215      #    0.4812D-03, 0.5832D-03, 0.7063D-03, 0.8566D-03, 0.1038D-02,
17216      #    0.1258D-02, 0.1525D-02, 0.1849D-02, 0.2242D-02, 0.2717D-02,
17217      #    0.3293D-02, 0.3986D-02, 0.4815D-02, 0.5799D-02, 0.6949D-02,
17218      #    0.8259D-02, 0.9705D-02, 0.1123D-01, 0.1273D-01, 0.1409D-01,
17219      #    0.1517D-01, 0.1583D-01, 0.1597D-01, 0.1551D-01, 0.1450D-01,
17220      #    0.1306D-01, 0.1144D-01, 0.9914D-02, 0.8646D-02, 0.7648D-02,
17221      #    0.6802D-02, 0.5979D-02, 0.5131D-02, 0.4284D-02, 0.3490D-02,
17222      #    0.2787D-02, 0.2193D-02, 0.1706D-02, 0.1315D-02, 0.1007D-02,
17223      #    0.7654D-03, 0.5787D-03, 0.4354D-03, 0.3261D-03, 0.2428D-03,
17224      #    0.1801D-03, 0.1328D-03, 0.9812D-04, 0.7146D-04, 0.5213D-04,
17225      #    0.3813D-04, 0.2746D-04, 0.1946D-04, 0.1413D-04, 0.1013D-04,
17226      #    0.6796D-05/
17227
17228       data (calcpts(j,33), j = 1,neta) /0.1353D-04, 0.1639D-04,
17229      #    0.1986D-04, 0.2406D-04, 0.2915D-04, 0.3532D-04, 0.4280D-04,
17230      #    0.5186D-04, 0.6284D-04, 0.7611D-04, 0.9222D-04, 0.1117D-03,
17231      #    0.1353D-03, 0.1640D-03, 0.1987D-03, 0.2407D-03, 0.2917D-03,
17232      #    0.3535D-03, 0.4283D-03, 0.5190D-03, 0.6291D-03, 0.7624D-03,
17233      #    0.9242D-03, 0.1120D-02, 0.1359D-02, 0.1647D-02, 0.1996D-02,
17234      #    0.2419D-02, 0.2929D-02, 0.3539D-02, 0.4264D-02, 0.5114D-02,
17235      #    0.6087D-02, 0.7170D-02, 0.8324D-02, 0.9486D-02, 0.1058D-01,
17236      #    0.1150D-01, 0.1216D-01, 0.1247D-01, 0.1237D-01, 0.1182D-01,
17237      #    0.1089D-01, 0.9674D-02, 0.8381D-02, 0.7203D-02, 0.6260D-02,
17238      #    0.5537D-02, 0.4928D-02, 0.4334D-02, 0.3718D-02, 0.3101D-02,
17239      #    0.2522D-02, 0.2011D-02, 0.1580D-02, 0.1228D-02, 0.9457D-03,
17240      #    0.7231D-03, 0.5498D-03, 0.4151D-03, 0.3125D-03, 0.2338D-03,
17241      #    0.1745D-03, 0.1299D-03, 0.9586D-04, 0.7119D-04, 0.5253D-04,
17242      #    0.3853D-04, 0.2853D-04, 0.2053D-04, 0.1520D-04, 0.1120D-04,
17243      #    0.8532D-05/
17244
17245       data (calcpts(j,34), j = 1,neta) /0.9884D-05, 0.1197D-04,
17246      #    0.1451D-04, 0.1758D-04, 0.2129D-04, 0.2579D-04, 0.3125D-04,
17247      #    0.3787D-04, 0.4585D-04, 0.5560D-04, 0.6733D-04, 0.8161D-04,
17248      #    0.9883D-04, 0.1198D-03, 0.1451D-03, 0.1758D-03, 0.2130D-03,
17249      #    0.2581D-03, 0.3128D-03, 0.3790D-03, 0.4594D-03, 0.5567D-03,
17250      #    0.6748D-03, 0.8180D-03, 0.9920D-03, 0.1203D-02, 0.1457D-02,
17251      #    0.1766D-02, 0.2138D-02, 0.2585D-02, 0.3116D-02, 0.3739D-02,
17252      #    0.4456D-02, 0.5258D-02, 0.6121D-02, 0.7005D-02, 0.7857D-02,
17253      #    0.8612D-02, 0.9205D-02, 0.9575D-02, 0.9668D-02, 0.9447D-02,
17254      #    0.8908D-02, 0.8095D-02, 0.7109D-02, 0.6099D-02, 0.5209D-02,
17255      #    0.4514D-02, 0.3993D-02, 0.3557D-02, 0.3130D-02, 0.2683D-02,
17256      #    0.2236D-02, 0.1816D-02, 0.1445D-02, 0.1134D-02, 0.8796D-03,
17257      #    0.6770D-03, 0.5170D-03, 0.3924D-03, 0.2930D-03, 0.2224D-03,
17258      #    0.1664D-03, 0.1237D-03, 0.9174D-04, 0.6774D-04, 0.4974D-04,
17259      #    0.3641D-04, 0.2708D-04, 0.1974D-04, 0.1441D-04, 0.1041D-04,
17260      #    0.7744D-05/
17261
17262       data (calcpts(j,35), j = 1,neta) /0.7181D-05, 0.8703D-05,
17263      #    0.1054D-04, 0.1277D-04, 0.1548D-04, 0.1875D-04, 0.2272D-04,
17264      #    0.2752D-04, 0.3334D-04, 0.4039D-04, 0.4895D-04, 0.5928D-04,
17265      #    0.7186D-04, 0.8704D-04, 0.1055D-03, 0.1278D-03, 0.1548D-03,
17266      #    0.1876D-03, 0.2273D-03, 0.2754D-03, 0.3338D-03, 0.4046D-03,
17267      #    0.4904D-03, 0.5944D-03, 0.7209D-03, 0.8739D-03, 0.1059D-02,
17268      #    0.1283D-02, 0.1554D-02, 0.1878D-02, 0.2265D-02, 0.2719D-02,
17269      #    0.3243D-02, 0.3833D-02, 0.4472D-02, 0.5136D-02, 0.5787D-02,
17270      #    0.6385D-02, 0.6885D-02, 0.7246D-02, 0.7428D-02, 0.7396D-02,
17271      #    0.7134D-02, 0.6646D-02, 0.5971D-02, 0.5191D-02, 0.4417D-02,
17272      #    0.3752D-02, 0.3245D-02, 0.2871D-02, 0.2560D-02, 0.2253D-02,
17273      #    0.1931D-02, 0.1607D-02, 0.1303D-02, 0.1036D-02, 0.8116D-03,
17274      #    0.6290D-03, 0.4830D-03, 0.3684D-03, 0.2791D-03, 0.2104D-03,
17275      #    0.1578D-03, 0.1178D-03, 0.8778D-04, 0.6511D-04, 0.4778D-04,
17276      #    0.3512D-04, 0.2578D-04, 0.1845D-04, 0.1378D-04, 0.9784D-05,
17277      #    0.7117D-05/
17278
17279       data (calcpts(j,36), j = 1,neta) /0.5199D-05, 0.6298D-05,
17280      #    0.7628D-05, 0.9240D-05, 0.1120D-04, 0.1356D-04, 0.1644D-04,
17281      #    0.1991D-04, 0.2413D-04, 0.2923D-04, 0.3541D-04, 0.4290D-04,
17282      #    0.5199D-04, 0.6297D-04, 0.7629D-04, 0.9246D-04, 0.1120D-03,
17283      #    0.1357D-03, 0.1645D-03, 0.1993D-03, 0.2415D-03, 0.2927D-03,
17284      #    0.3548D-03, 0.4301D-03, 0.5213D-03, 0.6320D-03, 0.7660D-03,
17285      #    0.9282D-03, 0.1124D-02, 0.1359D-02, 0.1639D-02, 0.1969D-02,
17286      #    0.2350D-02, 0.2780D-02, 0.3250D-02, 0.3743D-02, 0.4234D-02,
17287      #    0.4697D-02, 0.5101D-02, 0.5419D-02, 0.5623D-02, 0.5688D-02,
17288      #    0.5595D-02, 0.5336D-02, 0.4918D-02, 0.4375D-02, 0.3771D-02,
17289      #    0.3185D-02, 0.2694D-02, 0.2326D-02, 0.2059D-02, 0.1837D-02,
17290      #    0.1617D-02, 0.1386D-02, 0.1152D-02, 0.9331D-03, 0.7411D-03,
17291      #    0.5799D-03, 0.4492D-03, 0.3446D-03, 0.2626D-03, 0.1993D-03,
17292      #    0.1499D-03, 0.1126D-03, 0.8394D-04, 0.6261D-04, 0.4595D-04,
17293      #    0.3395D-04, 0.2528D-04, 0.1795D-04, 0.1328D-04, 0.9951D-05,
17294      #    0.7284D-05/
17295
17296       data (calcpts(j,37), j = 1,neta) /0.3747D-05, 0.4542D-05,
17297      #    0.5498D-05, 0.6662D-05, 0.8071D-05, 0.9782D-05, 0.1185D-04,
17298      #    0.1435D-04, 0.1739D-04, 0.2107D-04, 0.2553D-04, 0.3093D-04,
17299      #    0.3748D-04, 0.4540D-04, 0.5502D-04, 0.6667D-04, 0.8072D-04,
17300      #    0.9783D-04, 0.1185D-03, 0.1437D-03, 0.1741D-03, 0.2110D-03,
17301      #    0.2558D-03, 0.3100D-03, 0.3758D-03, 0.4556D-03, 0.5522D-03,
17302      #    0.6690D-03, 0.8100D-03, 0.9794D-03, 0.1181D-02, 0.1419D-02,
17303      #    0.1695D-02, 0.2008D-02, 0.2351D-02, 0.2714D-02, 0.3080D-02,
17304      #    0.3432D-02, 0.3749D-02, 0.4013D-02, 0.4205D-02, 0.4308D-02,
17305      #    0.4308D-02, 0.4192D-02, 0.3958D-02, 0.3614D-02, 0.3188D-02,
17306      #    0.2726D-02, 0.2289D-02, 0.1928D-02, 0.1663D-02, 0.1473D-02,
17307      #    0.1315D-02, 0.1158D-02, 0.9917D-03, 0.8239D-03, 0.6665D-03,
17308      #    0.5292D-03, 0.4132D-03, 0.3199D-03, 0.2452D-03, 0.1865D-03,
17309      #    0.1412D-03, 0.1066D-03, 0.7989D-04, 0.5923D-04, 0.4389D-04,
17310      #    0.3256D-04, 0.2389D-04, 0.1723D-04, 0.1323D-04, 0.9229D-05,
17311      #    0.6563D-05/
17312
17313       data (calcpts(j,38), j = 1,neta) /0.2693D-05, 0.3262D-05,
17314      #    0.3953D-05, 0.4790D-05, 0.5801D-05, 0.7032D-05, 0.8515D-05,
17315      #    0.1032D-04, 0.1250D-04, 0.1514D-04, 0.1835D-04, 0.2223D-04,
17316      #    0.2693D-04, 0.3263D-04, 0.3954D-04, 0.4790D-04, 0.5803D-04,
17317      #    0.7034D-04, 0.8521D-04, 0.1033D-03, 0.1251D-03, 0.1516D-03,
17318      #    0.1838D-03, 0.2228D-03, 0.2700D-03, 0.3273D-03, 0.3967D-03,
17319      #    0.4807D-03, 0.5819D-03, 0.7036D-03, 0.8488D-03, 0.1020D-02,
17320      #    0.1219D-02, 0.1445D-02, 0.1694D-02, 0.1960D-02, 0.2230D-02,
17321      #    0.2494D-02, 0.2738D-02, 0.2949D-02, 0.3115D-02, 0.3224D-02,
17322      #    0.3266D-02, 0.3231D-02, 0.3114D-02, 0.2915D-02, 0.2640D-02,
17323      #    0.2311D-02, 0.1963D-02, 0.1640D-02, 0.1377D-02, 0.1186D-02,
17324      #    0.1051D-02, 0.9394D-03, 0.8273D-03, 0.7081D-03, 0.5877D-03,
17325      #    0.4752D-03, 0.3766D-03, 0.2938D-03, 0.2271D-03, 0.1738D-03,
17326      #    0.1325D-03, 0.9981D-04, 0.7515D-04, 0.5648D-04, 0.4182D-04,
17327      #    0.3115D-04, 0.2315D-04, 0.1648D-04, 0.1248D-04, 0.9150D-05,
17328      #    0.6484D-05/
17329
17330       data (calcpts(j,39), j = 1,neta) /0.1929D-05, 0.2338D-05,
17331      #    0.2832D-05, 0.3431D-05, 0.4157D-05, 0.5039D-05, 0.6100D-05,
17332      #    0.7390D-05, 0.8955D-05, 0.1085D-04, 0.1314D-04, 0.1593D-04,
17333      #    0.1930D-04, 0.2338D-04, 0.2833D-04, 0.3433D-04, 0.4159D-04,
17334      #    0.5039D-04, 0.6106D-04, 0.7396D-04, 0.8967D-04, 0.1087D-03,
17335      #    0.1317D-03, 0.1596D-03, 0.1935D-03, 0.2345D-03, 0.2842D-03,
17336      #    0.3443D-03, 0.4170D-03, 0.5041D-03, 0.6082D-03, 0.7312D-03,
17337      #    0.8742D-03, 0.1037D-02, 0.1217D-02, 0.1410D-02, 0.1608D-02,
17338      #    0.1804D-02, 0.1989D-02, 0.2153D-02, 0.2288D-02, 0.2388D-02,
17339      #    0.2445D-02, 0.2452D-02, 0.2404D-02, 0.2298D-02, 0.2134D-02,
17340      #    0.1919D-02, 0.1669D-02, 0.1410D-02, 0.1172D-02, 0.9811D-03,
17341      #    0.8447D-03, 0.7488D-03, 0.6697D-03, 0.5899D-03, 0.5048D-03,
17342      #    0.4188D-03, 0.3383D-03, 0.2679D-03, 0.2091D-03, 0.1614D-03,
17343      #    0.1236D-03, 0.9402D-04, 0.7108D-04, 0.5349D-04, 0.3989D-04,
17344      #    0.2989D-04, 0.2189D-04, 0.1655D-04, 0.1189D-04, 0.9221D-05,
17345      #    0.6554D-05/
17346
17347       data (calcpts(j,40), j = 1,neta) /0.1379D-05, 0.1671D-05,
17348      #    0.2025D-05, 0.2453D-05, 0.2972D-05, 0.3600D-05, 0.4362D-05,
17349      #    0.5285D-05, 0.6401D-05, 0.7759D-05, 0.9399D-05, 0.1138D-04,
17350      #    0.1380D-04, 0.1671D-04, 0.2025D-04, 0.2454D-04, 0.2973D-04,
17351      #    0.3602D-04, 0.4364D-04, 0.5288D-04, 0.6408D-04, 0.7768D-04,
17352      #    0.9415D-04, 0.1141D-03, 0.1382D-03, 0.1676D-03, 0.2031D-03,
17353      #    0.2461D-03, 0.2980D-03, 0.3602D-03, 0.4347D-03, 0.5226D-03,
17354      #    0.6251D-03, 0.7419D-03, 0.8716D-03, 0.1011D-02, 0.1155D-02,
17355      #    0.1300D-02, 0.1438D-02, 0.1563D-02, 0.1670D-02, 0.1755D-02,
17356      #    0.1812D-02, 0.1837D-02, 0.1825D-02, 0.1775D-02, 0.1685D-02,
17357      #    0.1554D-02, 0.1389D-02, 0.1201D-02, 0.1009D-02, 0.8352D-03,
17358      #    0.6976D-03, 0.6001D-03, 0.5322D-03, 0.4763D-03, 0.4197D-03,
17359      #    0.3590D-03, 0.2976D-03, 0.2402D-03, 0.1901D-03, 0.1482D-03,
17360      #    0.1143D-03, 0.8746D-04, 0.6646D-04, 0.5026D-04, 0.3773D-04,
17361      #    0.2826D-04, 0.2106D-04, 0.1546D-04, 0.1153D-04, 0.8464D-05,
17362      #    0.6264D-05/
17363
17364       data (calcpts(j,41), j = 1,neta) /0.9836D-06, 0.1192D-05,
17365      #    0.1444D-05, 0.1750D-05, 0.2120D-05, 0.2568D-05, 0.3111D-05,
17366      #    0.3769D-05, 0.4567D-05, 0.5531D-05, 0.6704D-05, 0.8123D-05,
17367      #    0.9839D-05, 0.1192D-04, 0.1444D-04, 0.1750D-04, 0.2120D-04,
17368      #    0.2569D-04, 0.3113D-04, 0.3772D-04, 0.4570D-04, 0.5539D-04,
17369      #    0.6713D-04, 0.8134D-04, 0.9861D-04, 0.1195D-03, 0.1449D-03,
17370      #    0.1754D-03, 0.2125D-03, 0.2569D-03, 0.3099D-03, 0.3727D-03,
17371      #    0.4459D-03, 0.5295D-03, 0.6227D-03, 0.7233D-03, 0.8281D-03,
17372      #    0.9335D-03, 0.1036D-02, 0.1130D-02, 0.1213D-02, 0.1281D-02,
17373      #    0.1331D-02, 0.1362D-02, 0.1368D-02, 0.1349D-02, 0.1303D-02,
17374      #    0.1229D-02, 0.1126D-02, 0.1001D-02, 0.8613D-03, 0.7202D-03,
17375      #    0.5940D-03, 0.4950D-03, 0.4256D-03, 0.3776D-03, 0.3382D-03,
17376      #    0.2980D-03, 0.2548D-03, 0.2111D-03, 0.1702D-03, 0.1346D-03,
17377      #    0.1049D-03, 0.8085D-04, 0.6179D-04, 0.4692D-04, 0.3539D-04,
17378      #    0.2659D-04, 0.1985D-04, 0.1466D-04, 0.1092D-04, 0.8055D-05,
17379      #    0.5922D-05/
17380
17381       data (calcpts(j,42), j = 1,neta) /0.7004D-06, 0.8482D-06,
17382      #    0.1028D-05, 0.1246D-05, 0.1509D-05, 0.1827D-05, 0.2214D-05,
17383      #    0.2683D-05, 0.3250D-05, 0.3938D-05, 0.4771D-05, 0.5778D-05,
17384      #    0.7001D-05, 0.8488D-05, 0.1028D-04, 0.1245D-04, 0.1509D-04,
17385      #    0.1828D-04, 0.2216D-04, 0.2684D-04, 0.3252D-04, 0.3942D-04,
17386      #    0.4777D-04, 0.5790D-04, 0.7017D-04, 0.8503D-04, 0.1031D-03,
17387      #    0.1248D-03, 0.1512D-03, 0.1828D-03, 0.2205D-03, 0.2653D-03,
17388      #    0.3174D-03, 0.3772D-03, 0.4439D-03, 0.5161D-03, 0.5919D-03,
17389      #    0.6686D-03, 0.7434D-03, 0.8136D-03, 0.8767D-03, 0.9305D-03,
17390      #    0.9725D-03, 0.1001D-02, 0.1015D-02, 0.1012D-02, 0.9913D-03,
17391      #    0.9518D-03, 0.8919D-03, 0.8136D-03, 0.7195D-03, 0.6161D-03,
17392      #    0.5131D-03, 0.4218D-03, 0.3507D-03, 0.3014D-03, 0.2676D-03,
17393      #    0.2398D-03, 0.2113D-03, 0.1806D-03, 0.1496D-03, 0.1206D-03,
17394      #    0.9525D-04, 0.7412D-04, 0.5712D-04, 0.4366D-04, 0.3312D-04,
17395      #    0.2499D-04, 0.1879D-04, 0.1392D-04, 0.1039D-04, 0.7724D-05,
17396      #    0.5658D-05/
17397
17398       data (calcpts(j,43), j = 1,neta) /0.4974D-06, 0.6029D-06,
17399      #    0.7301D-06, 0.8846D-06, 0.1071D-05, 0.1298D-05, 0.1573D-05,
17400      #    0.1906D-05, 0.2309D-05, 0.2798D-05, 0.3389D-05, 0.4106D-05,
17401      #    0.4975D-05, 0.6027D-05, 0.7305D-05, 0.8846D-05, 0.1072D-04,
17402      #    0.1299D-04, 0.1574D-04, 0.1907D-04, 0.2311D-04, 0.2800D-04,
17403      #    0.3393D-04, 0.4113D-04, 0.4985D-04, 0.6041D-04, 0.7320D-04,
17404      #    0.8870D-04, 0.1073D-03, 0.1298D-03, 0.1566D-03, 0.1884D-03,
17405      #    0.2256D-03, 0.2681D-03, 0.3157D-03, 0.3675D-03, 0.4220D-03,
17406      #    0.4776D-03, 0.5321D-03, 0.5840D-03, 0.6313D-03, 0.6725D-03,
17407      #    0.7062D-03, 0.7312D-03, 0.7465D-03, 0.7510D-03, 0.7440D-03,
17408      #    0.7243D-03, 0.6914D-03, 0.6450D-03, 0.5856D-03, 0.5156D-03,
17409      #    0.4396D-03, 0.3647D-03, 0.2989D-03, 0.2481D-03, 0.2132D-03,
17410      #    0.1893D-03, 0.1697D-03, 0.1496D-03, 0.1278D-03, 0.1058D-03,
17411      #    0.8526D-04, 0.6726D-04, 0.5232D-04, 0.4032D-04, 0.3079D-04,
17412      #    0.2333D-04, 0.1759D-04, 0.1319D-04, 0.9859D-05, 0.7325D-05,
17413      #    0.5459D-05/
17414
17415       data (calcpts(j,44), j = 1,neta) /0.3528D-06, 0.4274D-06,
17416      #    0.5179D-06, 0.6277D-06, 0.7598D-06, 0.9211D-06, 0.1116D-05,
17417      #    0.1352D-05, 0.1638D-05, 0.1984D-05, 0.2404D-05, 0.2912D-05,
17418      #    0.3528D-05, 0.4275D-05, 0.5179D-05, 0.6275D-05, 0.7603D-05,
17419      #    0.9212D-05, 0.1116D-04, 0.1352D-04, 0.1639D-04, 0.1986D-04,
17420      #    0.2406D-04, 0.2916D-04, 0.3535D-04, 0.4284D-04, 0.5190D-04,
17421      #    0.6288D-04, 0.7611D-04, 0.9204D-04, 0.1111D-03, 0.1336D-03,
17422      #    0.1600D-03, 0.1903D-03, 0.2242D-03, 0.2612D-03, 0.3003D-03,
17423      #    0.3403D-03, 0.3800D-03, 0.4180D-03, 0.4531D-03, 0.4843D-03,
17424      #    0.5106D-03, 0.5312D-03, 0.5454D-03, 0.5527D-03, 0.5524D-03,
17425      #    0.5439D-03, 0.5268D-03, 0.5004D-03, 0.4648D-03, 0.4202D-03,
17426      #    0.3685D-03, 0.3130D-03, 0.2588D-03, 0.2115D-03, 0.1753D-03,
17427      #    0.1505D-03, 0.1337D-03, 0.1199D-03, 0.1057D-03, 0.9034D-04,
17428      #    0.7472D-04, 0.6014D-04, 0.4747D-04, 0.3687D-04, 0.2840D-04,
17429      #    0.2167D-04, 0.1640D-04, 0.1240D-04, 0.9271D-05, 0.6938D-05,
17430      #    0.5138D-05/
17431
17432       data (calcpts(j,45), j = 1,neta) /0.2498D-06, 0.3026D-06,
17433      #    0.3666D-06, 0.4442D-06, 0.5384D-06, 0.6517D-06, 0.7901D-06,
17434      #    0.9569D-06, 0.1160D-05, 0.1405D-05, 0.1702D-05, 0.2062D-05,
17435      #    0.2499D-05, 0.3027D-05, 0.3667D-05, 0.4443D-05, 0.5383D-05,
17436      #    0.6523D-05, 0.7902D-05, 0.9579D-05, 0.1160D-04, 0.1406D-04,
17437      #    0.1704D-04, 0.2065D-04, 0.2502D-04, 0.3033D-04, 0.3675D-04,
17438      #    0.4452D-04, 0.5389D-04, 0.6516D-04, 0.7864D-04, 0.9462D-04,
17439      #    0.1133D-03, 0.1348D-03, 0.1589D-03, 0.1853D-03, 0.2133D-03,
17440      #    0.2421D-03, 0.2708D-03, 0.2985D-03, 0.3243D-03, 0.3477D-03,
17441      #    0.3678D-03, 0.3841D-03, 0.3963D-03, 0.4039D-03, 0.4067D-03,
17442      #    0.4041D-03, 0.3958D-03, 0.3816D-03, 0.3610D-03, 0.3339D-03,
17443      #    0.3007D-03, 0.2628D-03, 0.2225D-03, 0.1834D-03, 0.1495D-03,
17444      #    0.1237D-03, 0.1062D-03, 0.9438D-04, 0.8469D-04, 0.7467D-04,
17445      #    0.6379D-04, 0.5275D-04, 0.4245D-04, 0.3348D-04, 0.2604D-04,
17446      #    0.2004D-04, 0.1524D-04, 0.1158D-04, 0.8709D-05, 0.6576D-05,
17447      #    0.4909D-05/
17448
17449       data (calcpts(j,46), j = 1,neta) /0.1766D-06, 0.2140D-06,
17450      #    0.2593D-06, 0.3141D-06, 0.3805D-06, 0.4610D-06, 0.5583D-06,
17451      #    0.6765D-06, 0.8200D-06, 0.9935D-06, 0.1204D-05, 0.1458D-05,
17452      #    0.1766D-05, 0.2140D-05, 0.2593D-05, 0.3142D-05, 0.3807D-05,
17453      #    0.4612D-05, 0.5588D-05, 0.6771D-05, 0.8207D-05, 0.9939D-05,
17454      #    0.1205D-04, 0.1460D-04, 0.1770D-04, 0.2144D-04, 0.2598D-04,
17455      #    0.3147D-04, 0.3810D-04, 0.4606D-04, 0.5559D-04, 0.6689D-04,
17456      #    0.8012D-04, 0.9534D-04, 0.1125D-03, 0.1312D-03, 0.1512D-03,
17457      #    0.1719D-03, 0.1925D-03, 0.2126D-03, 0.2316D-03, 0.2488D-03,
17458      #    0.2640D-03, 0.2767D-03, 0.2866D-03, 0.2936D-03, 0.2972D-03,
17459      #    0.2976D-03, 0.2942D-03, 0.2869D-03, 0.2754D-03, 0.2595D-03,
17460      #    0.2392D-03, 0.2147D-03, 0.1870D-03, 0.1578D-03, 0.1297D-03,
17461      #    0.1055D-03, 0.8715D-04, 0.7480D-04, 0.6651D-04, 0.5970D-04,
17462      #    0.5264D-04, 0.4496D-04, 0.3716D-04, 0.2989D-04, 0.2356D-04,
17463      #    0.1830D-04, 0.1407D-04, 0.1073D-04, 0.8131D-05, 0.6124D-05,
17464      #    0.4591D-05/
17465
17466       data (calcpts(j,47), j = 1,neta) /0.1247D-06, 0.1511D-06,
17467      #    0.1831D-06, 0.2218D-06, 0.2687D-06, 0.3256D-06, 0.3945D-06,
17468      #    0.4779D-06, 0.5790D-06, 0.7013D-06, 0.8498D-06, 0.1029D-05,
17469      #    0.1247D-05, 0.1511D-05, 0.1831D-05, 0.2218D-05, 0.2688D-05,
17470      #    0.3257D-05, 0.3946D-05, 0.4781D-05, 0.5793D-05, 0.7020D-05,
17471      #    0.8506D-05, 0.1031D-04, 0.1249D-04, 0.1514D-04, 0.1834D-04,
17472      #    0.2222D-04, 0.2689D-04, 0.3252D-04, 0.3925D-04, 0.4723D-04,
17473      #    0.5657D-04, 0.6735D-04, 0.7949D-04, 0.9282D-04, 0.1071D-03,
17474      #    0.1218D-03, 0.1366D-03, 0.1512D-03, 0.1650D-03, 0.1777D-03,
17475      #    0.1890D-03, 0.1986D-03, 0.2065D-03, 0.2123D-03, 0.2161D-03,
17476      #    0.2176D-03, 0.2167D-03, 0.2133D-03, 0.2071D-03, 0.1981D-03,
17477      #    0.1860D-03, 0.1709D-03, 0.1530D-03, 0.1328D-03, 0.1118D-03,
17478      #    0.9159D-04, 0.7433D-04, 0.6134D-04, 0.5263D-04, 0.4681D-04,
17479      #    0.4204D-04, 0.3707D-04, 0.3166D-04, 0.2615D-04, 0.2102D-04,
17480      #    0.1656D-04, 0.1286D-04, 0.9878D-05, 0.7524D-05, 0.5698D-05,
17481      #    0.4291D-05/
17482
17483       data (calcpts(j,48), j = 1,neta) /0.8797D-07, 0.1066D-06,
17484      #    0.1291D-06, 0.1564D-06, 0.1895D-06, 0.2296D-06, 0.2782D-06,
17485      #    0.3371D-06, 0.4083D-06, 0.4947D-06, 0.5994D-06, 0.7261D-06,
17486      #    0.8796D-06, 0.1066D-05, 0.1291D-05, 0.1565D-05, 0.1896D-05,
17487      #    0.2296D-05, 0.2783D-05, 0.3372D-05, 0.4086D-05, 0.4951D-05,
17488      #    0.6000D-05, 0.7270D-05, 0.8808D-05, 0.1068D-04, 0.1293D-04,
17489      #    0.1567D-04, 0.1897D-04, 0.2293D-04, 0.2767D-04, 0.3331D-04,
17490      #    0.3991D-04, 0.4752D-04, 0.5611D-04, 0.6556D-04, 0.7568D-04,
17491      #    0.8621D-04, 0.9686D-04, 0.1073D-03, 0.1173D-03, 0.1265D-03,
17492      #    0.1350D-03, 0.1422D-03, 0.1482D-03, 0.1530D-03, 0.1564D-03,
17493      #    0.1582D-03, 0.1585D-03, 0.1572D-03, 0.1541D-03, 0.1491D-03,
17494      #    0.1421D-03, 0.1330D-03, 0.1219D-03, 0.1088D-03, 0.9418D-04,
17495      #    0.7904D-04, 0.6462D-04, 0.5233D-04, 0.4313D-04, 0.3700D-04,
17496      #    0.3292D-04, 0.2958D-04, 0.2609D-04, 0.2227D-04, 0.1839D-04,
17497      #    0.1478D-04, 0.1163D-04, 0.9027D-05, 0.6934D-05, 0.5281D-05,
17498      #    0.4001D-05/
17499
17500       data (calcpts(j,49), j = 1,neta) /0.6194D-07, 0.7506D-07,
17501      #    0.9095D-07, 0.1102D-06, 0.1335D-06, 0.1617D-06, 0.1960D-06,
17502      #    0.2374D-06, 0.2876D-06, 0.3485D-06, 0.4222D-06, 0.5115D-06,
17503      #    0.6198D-06, 0.7509D-06, 0.9094D-06, 0.1102D-05, 0.1335D-05,
17504      #    0.1618D-05, 0.1960D-05, 0.2375D-05, 0.2878D-05, 0.3488D-05,
17505      #    0.4226D-05, 0.5121D-05, 0.6206D-05, 0.7520D-05, 0.9108D-05,
17506      #    0.1104D-04, 0.1335D-04, 0.1615D-04, 0.1949D-04, 0.2346D-04,
17507      #    0.2811D-04, 0.3348D-04, 0.3956D-04, 0.4625D-04, 0.5343D-04,
17508      #    0.6092D-04, 0.6852D-04, 0.7603D-04, 0.8325D-04, 0.8997D-04,
17509      #    0.9617D-04, 0.1015D-03, 0.1062D-03, 0.1099D-03, 0.1127D-03,
17510      #    0.1145D-03, 0.1153D-03, 0.1150D-03, 0.1135D-03, 0.1109D-03,
17511      #    0.1070D-03, 0.1017D-03, 0.9490D-04, 0.8672D-04, 0.7719D-04,
17512      #    0.6667D-04, 0.5582D-04, 0.4553D-04, 0.3680D-04, 0.3030D-04,
17513      #    0.2599D-04, 0.2313D-04, 0.2079D-04, 0.1833D-04, 0.1565D-04,
17514      #    0.1292D-04, 0.1038D-04, 0.8170D-05, 0.6337D-05, 0.4864D-05,
17515      #    0.3704D-05/
17516
17517       data (dlaeta(j), j = 1,neta) /
17518      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
17519      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
17520      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
17521      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
17522      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
17523      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
17524      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
17525      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
17526      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
17527      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
17528      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
17529      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
17530      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
17531      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
17532      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
17533
17534       data (dlaxi(j), j = 1,nxi) /
17535      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
17536      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
17537      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
17538      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
17539      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
17540      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
17541      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
17542      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
17543      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
17544      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
17545
17546       dleta = dlog10(eta)
17547       dlxi = dlog10(xi)
17548       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
17549       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
17550       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
17551       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
17552       call locate(dlaeta,neta, dleta, ieta)
17553       call locate(dlaxi, nxi, dlxi, ixi)
17554 c     interpolating between the appropriate points
17555       delxi = 1d0/6d0
17556       deleta = 1d0/6d0
17557 c  lagrange 3-pt.
17558       if (ixi .le. 2) ixi = 2
17559       if (ixi .ge. 48) ixi = 48
17560       if (ieta .le. 2) ieta = 2
17561       if (ixi .ge. 72) ieta = 72
17562       pxi = (dlxi - dlaxi(ixi))/delxi
17563       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
17564      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
17565      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
17566       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
17567      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
17568      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
17569       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
17570      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
17571      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
17572       peta = (dleta - dlaeta(ieta))/deleta
17573       h1bar_Tg = peta*(peta-1d0)/2d0*f(-1) +
17574      #     (1d0 - peta**2)*f(0) +
17575 CMB  #     + peta*(peta+1d0)/2d0*f(1)
17576      #     peta*(peta+1d0)/2d0*f(1)
17577       return
17578       end
17579
17580 CDECK  ID>, GCORRL.
17581
17582 c     ========================================
17583       double precision function h1_ALg(eta,xi)
17584 c     ========================================
17585
17586 c     eq (9) in PLB347 (1995) 143 - 151 for the longitudinal piece
17587 c     MSbar scheme
17588 c     This routine is called subclca in the original code.
17589 c     Called sclca in updated code (03/06/96).
17590
17591       implicit none
17592       integer neta, nxi
17593       parameter (neta = 73, nxi = 49)
17594       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
17595       double precision eta, xi, dleta, dlxi
17596       double precision pxi, peta, f(-1:1), delxi, deleta
17597       integer j, ieta, ixi
17598
17599       data (calcpts(j, 1), j = 1,neta) /-.1179D-07, -.1428D-07,
17600      #    -.1730D-07, -.2095D-07, -.2538D-07, -.3074D-07, -.3723D-07,
17601      #    -.4509D-07, -.5457D-07, -.6604D-07, -.7989D-07, -.9657D-07,
17602      #    -.1166D-06, -.1406D-06, -.1691D-06, -.2029D-06, -.2423D-06,
17603      #    -.2875D-06, -.3377D-06, -.3910D-06, -.4424D-06, -.4824D-06,
17604      #    -.4929D-06, -.4417D-06, -.2734D-06, 0.1048D-06, 0.8410D-06,
17605      #    0.2167D-05, 0.4413D-05, 0.8018D-05, 0.1347D-04, 0.2118D-04,
17606      #    0.3115D-04, 0.4274D-04, 0.5440D-04, 0.6402D-04, 0.6968D-04,
17607      #    0.7031D-04, 0.6605D-04, 0.5802D-04, 0.4795D-04, 0.3757D-04,
17608      #    0.2814D-04, 0.2032D-04, 0.1427D-04, 0.9805D-05, 0.6626D-05,
17609      #    0.4430D-05, 0.2942D-05, 0.1939D-05, 0.1271D-05, 0.8315D-06,
17610      #    0.5416D-06, 0.3496D-06, 0.2296D-06, 0.1507D-06, 0.9812D-07,
17611      #    0.6371D-07, 0.3752D-07, 0.2606D-07, 0.1129D-07, 0.1001D-07,
17612      #    0.6726D-08, -.6033D-10, 0.1982D-08, -.1166D-08, -.3311D-08,
17613      #    -.4773D-08, 0.8985D-09, 0.2197D-09, -.2427D-09, -.5576D-09,
17614      #    -.7721D-09/
17615
17616       data (calcpts(j, 2), j = 1,neta) /-.1730D-07, -.2096D-07,
17617      #    -.2538D-07, -.3075D-07, -.3725D-07, -.4512D-07, -.5464D-07,
17618      #    -.6617D-07, -.8009D-07, -.9693D-07, -.1173D-06, -.1417D-06,
17619      #    -.1711D-06, -.2063D-06, -.2482D-06, -.2978D-06, -.3556D-06,
17620      #    -.4219D-06, -.4957D-06, -.5739D-06, -.6493D-06, -.7080D-06,
17621      #    -.7235D-06, -.6485D-06, -.4017D-06, 0.1531D-06, 0.1234D-05,
17622      #    0.3179D-05, 0.6475D-05, 0.1177D-04, 0.1977D-04, 0.3108D-04,
17623      #    0.4572D-04, 0.6272D-04, 0.7983D-04, 0.9395D-04, 0.1023D-03,
17624      #    0.1032D-03, 0.9692D-04, 0.8514D-04, 0.7037D-04, 0.5514D-04,
17625      #    0.4130D-04, 0.2982D-04, 0.2094D-04, 0.1439D-04, 0.9726D-05,
17626      #    0.6501D-05, 0.4316D-05, 0.2843D-05, 0.1869D-05, 0.1219D-05,
17627      #    0.7955D-06, 0.5175D-06, 0.3379D-06, 0.2175D-06, 0.1385D-06,
17628      #    0.8579D-07, 0.5801D-07, 0.3185D-07, 0.2039D-07, 0.1227D-07,
17629      #    0.4342D-08, 0.1049D-08, 0.9303D-09, -.3690D-08, -.1711D-09,
17630      #    -.2317D-08, -.3777D-08, -.4773D-08, -.5452D-08, -.5914D-08,
17631      #    -.6228D-08/
17632
17633       data (calcpts(j, 3), j = 1,neta) /-.2537D-07, -.3074D-07,
17634      #    -.3724D-07, -.4511D-07, -.5465D-07, -.6619D-07, -.8016D-07,
17635      #    -.9707D-07, -.1175D-06, -.1422D-06, -.1720D-06, -.2079D-06,
17636      #    -.2510D-06, -.3027D-06, -.3642D-06, -.4368D-06, -.5217D-06,
17637      #    -.6189D-06, -.7272D-06, -.8419D-06, -.9525D-06, -.1039D-05,
17638      #    -.1061D-05, -.9512D-06, -.5895D-06, 0.2244D-06, 0.1810D-05,
17639      #    0.4663D-05, 0.9499D-05, 0.1726D-04, 0.2900D-04, 0.4559D-04,
17640      #    0.6706D-04, 0.9199D-04, 0.1171D-03, 0.1378D-03, 0.1500D-03,
17641      #    0.1513D-03, 0.1421D-03, 0.1249D-03, 0.1032D-03, 0.8086D-04,
17642      #    0.6056D-04, 0.4373D-04, 0.3071D-04, 0.2110D-04, 0.1427D-04,
17643      #    0.9545D-05, 0.6330D-05, 0.4175D-05, 0.2746D-05, 0.1799D-05,
17644      #    0.1177D-05, 0.7653D-06, 0.4997D-06, 0.3263D-06, 0.2127D-06,
17645      #    0.1402D-06, 0.9418D-07, 0.5982D-07, 0.4034D-07, 0.2889D-07,
17646      #    0.2081D-07, 0.1287D-07, 0.9587D-08, 0.9478D-08, 0.4861D-08,
17647      #    0.8381D-08, 0.6240D-08, 0.4779D-08, 0.3784D-08, 0.3106D-08,
17648      #    0.2644D-08/
17649
17650       data (calcpts(j, 4), j = 1,neta) /-.3724D-07, -.4511D-07,
17651      #    -.5464D-07, -.6620D-07, -.8019D-07, -.9713D-07, -.1176D-06,
17652      #    -.1424D-06, -.1724D-06, -.2087D-06, -.2524D-06, -.3051D-06,
17653      #    -.3684D-06, -.4442D-06, -.5344D-06, -.6411D-06, -.7656D-06,
17654      #    -.9083D-06, -.1067D-05, -.1236D-05, -.1398D-05, -.1524D-05,
17655      #    -.1558D-05, -.1397D-05, -.8658D-06, 0.3268D-06, 0.2652D-05,
17656      #    0.6837D-05, 0.1393D-04, 0.2531D-04, 0.4253D-04, 0.6687D-04,
17657      #    0.9836D-04, 0.1349D-03, 0.1717D-03, 0.2021D-03, 0.2200D-03,
17658      #    0.2219D-03, 0.2085D-03, 0.1831D-03, 0.1514D-03, 0.1186D-03,
17659      #    0.8883D-04, 0.6414D-04, 0.4504D-04, 0.3095D-04, 0.2093D-04,
17660      #    0.1400D-04, 0.9283D-05, 0.6119D-05, 0.4024D-05, 0.2635D-05,
17661      #    0.1720D-05, 0.1122D-05, 0.7284D-06, 0.4753D-06, 0.3088D-06,
17662      #    0.2015D-06, 0.1291D-06, 0.8310D-07, 0.5541D-07, 0.3594D-07,
17663      #    0.2453D-07, 0.1644D-07, 0.8512D-08, 0.5240D-08, 0.5134D-08,
17664      #    0.7185D-08, 0.4044D-08, 0.1901D-08, 0.4413D-09, 0.6114D-08,
17665      #    0.5437D-08/
17666
17667       data (calcpts(j, 5), j = 1,neta) /-.5464D-07, -.6620D-07,
17668      #    -.8018D-07, -.9714D-07, -.1177D-06, -.1425D-06, -.1726D-06,
17669      #    -.2090D-06, -.2530D-06, -.3062D-06, -.3704D-06, -.4477D-06,
17670      #    -.5406D-06, -.6519D-06, -.7842D-06, -.9407D-06, -.1123D-05,
17671      #    -.1333D-05, -.1566D-05, -.1813D-05, -.2052D-05, -.2229D-05,
17672      #    -.2287D-05, -.2051D-05, -.1274D-05, 0.4740D-06, 0.3881D-05,
17673      #    0.1002D-04, 0.2042D-04, 0.3710D-04, 0.6236D-04, 0.9805D-04,
17674      #    0.1442D-03, 0.1979D-03, 0.2518D-03, 0.2964D-03, 0.3225D-03,
17675      #    0.3254D-03, 0.3056D-03, 0.2685D-03, 0.2219D-03, 0.1739D-03,
17676      #    0.1302D-03, 0.9403D-04, 0.6603D-04, 0.4537D-04, 0.3067D-04,
17677      #    0.2051D-04, 0.1360D-04, 0.8964D-05, 0.5884D-05, 0.3854D-05,
17678      #    0.2514D-05, 0.1636D-05, 0.1062D-05, 0.6875D-06, 0.4415D-06,
17679      #    0.2878D-06, 0.1807D-06, 0.1151D-06, 0.6913D-07, 0.4147D-07,
17680      #    0.2875D-07, 0.1733D-07, 0.9258D-08, 0.1351D-08, -.1914D-08,
17681      #    -.2016D-08, 0.4406D-10, -.3098D-08, -.5239D-08, -.6697D-08,
17682      #    -.7690D-08/
17683
17684       data (calcpts(j, 6), j = 1,neta) /-.8015D-07, -.9710D-07,
17685      #    -.1176D-06, -.1425D-06, -.1726D-06, -.2090D-06, -.2532D-06,
17686      #    -.3066D-06, -.3711D-06, -.4491D-06, -.5433D-06, -.6566D-06,
17687      #    -.7929D-06, -.9561D-06, -.1150D-05, -.1380D-05, -.1648D-05,
17688      #    -.1955D-05, -.2297D-05, -.2660D-05, -.3010D-05, -.3283D-05,
17689      #    -.3357D-05, -.3012D-05, -.1874D-05, 0.6859D-06, 0.5677D-05,
17690      #    0.1467D-04, 0.2990D-04, 0.5435D-04, 0.9137D-04, 0.1437D-03,
17691      #    0.2113D-03, 0.2900D-03, 0.3690D-03, 0.4343D-03, 0.4726D-03,
17692      #    0.4768D-03, 0.4478D-03, 0.3933D-03, 0.3251D-03, 0.2547D-03,
17693      #    0.1908D-03, 0.1377D-03, 0.9673D-04, 0.6645D-04, 0.4493D-04,
17694      #    0.3004D-04, 0.1995D-04, 0.1316D-04, 0.8593D-05, 0.5674D-05,
17695      #    0.3711D-05, 0.2394D-05, 0.1547D-05, 0.1026D-05, 0.6864D-06,
17696      #    0.4268D-06, 0.2468D-06, 0.1668D-06, 0.8797D-07, 0.5549D-07,
17697      #    0.5467D-07, 0.8638D-08, 0.4394D-07, 0.2258D-07, 0.8028D-08,
17698      #    -.1890D-08, -.8640D-08, -.1324D-07, -.1638D-07, -.1852D-07,
17699      #    -.1997D-07/
17700
17701       data (calcpts(j, 7), j = 1,neta) /-.1175D-06, -.1424D-06,
17702      #    -.1725D-06, -.2089D-06, -.2531D-06, -.3065D-06, -.3712D-06,
17703      #    -.4496D-06, -.5441D-06, -.6585D-06, -.7966D-06, -.9629D-06,
17704      #    -.1163D-05, -.1402D-05, -.1687D-05, -.2023D-05, -.2417D-05,
17705      #    -.2867D-05, -.3369D-05, -.3901D-05, -.4415D-05, -.4817D-05,
17706      #    -.4927D-05, -.4425D-05, -.2761D-05, 0.9843D-06, 0.8293D-05,
17707      #    0.2145D-04, 0.4376D-04, 0.7956D-04, 0.1338D-03, 0.2103D-03,
17708      #    0.3094D-03, 0.4245D-03, 0.5403D-03, 0.6358D-03, 0.6919D-03,
17709      #    0.6980D-03, 0.6555D-03, 0.5757D-03, 0.4758D-03, 0.3728D-03,
17710      #    0.2792D-03, 0.2016D-03, 0.1416D-03, 0.9723D-04, 0.6578D-04,
17711      #    0.4393D-04, 0.2913D-04, 0.1919D-04, 0.1264D-04, 0.8225D-05,
17712      #    0.5357D-05, 0.3523D-05, 0.2272D-05, 0.1492D-05, 0.9729D-06,
17713      #    0.6333D-06, 0.3745D-06, 0.2620D-06, 0.1824D-06, 0.1038D-06,
17714      #    0.7170D-07, 0.7095D-07, 0.2502D-07, -.6248D-08, 0.3911D-07,
17715      #    0.2459D-07, 0.1470D-07, 0.7959D-08, 0.3366D-08, 0.2383D-09,
17716      #    -.1893D-08/
17717
17718       data (calcpts(j, 8), j = 1,neta) /-.1723D-06, -.2087D-06,
17719      #    -.2528D-06, -.3063D-06, -.3710D-06, -.4494D-06, -.5442D-06,
17720      #    -.6590D-06, -.7977D-06, -.9654D-06, -.1168D-05, -.1412D-05,
17721      #    -.1705D-05, -.2055D-05, -.2473D-05, -.2966D-05, -.3543D-05,
17722      #    -.4204D-05, -.4940D-05, -.5721D-05, -.6476D-05, -.7067D-05,
17723      #    -.7232D-05, -.6503D-05, -.4077D-05, 0.1394D-05, 0.1208D-04,
17724      #    0.3131D-04, 0.6393D-04, 0.1163D-03, 0.1956D-03, 0.3076D-03,
17725      #    0.4526D-03, 0.6210D-03, 0.7904D-03, 0.9301D-03, 0.1012D-02,
17726      #    0.1021D-02, 0.9584D-03, 0.8418D-03, 0.6956D-03, 0.5450D-03,
17727      #    0.4082D-03, 0.2947D-03, 0.2069D-03, 0.1421D-03, 0.9608D-04,
17728      #    0.6424D-04, 0.4255D-04, 0.2802D-04, 0.1842D-04, 0.1201D-04,
17729      #    0.7843D-05, 0.5108D-05, 0.3342D-05, 0.2159D-05, 0.1384D-05,
17730      #    0.8661D-06, 0.5282D-06, 0.3378D-06, 0.2262D-06, 0.1472D-06,
17731      #    0.6927D-07, 0.3732D-07, 0.3679D-07, -.8953D-08, -.4013D-07,
17732      #    0.5292D-08, -.9167D-08, -.1903D-07, -.2575D-07, -.3033D-07,
17733      #    -.3344D-07/
17734
17735       data (calcpts(j, 9), j = 1,neta) /-.2523D-06, -.3056D-06,
17736      #    -.3702D-06, -.4485D-06, -.5433D-06, -.6580D-06, -.7969D-06,
17737      #    -.9650D-06, -.1168D-05, -.1414D-05, -.1710D-05, -.2067D-05,
17738      #    -.2496D-05, -.3010D-05, -.3621D-05, -.4344D-05, -.5189D-05,
17739      #    -.6157D-05, -.7236D-05, -.8381D-05, -.9489D-05, -.1036D-04,
17740      #    -.1061D-04, -.9553D-05, -.6026D-05, 0.1952D-05, 0.1753D-04,
17741      #    0.4560D-04, 0.9323D-04, 0.1697D-03, 0.2854D-03, 0.4491D-03,
17742      #    0.6608D-03, 0.9066D-03, 0.1154D-02, 0.1358D-02, 0.1477D-02,
17743      #    0.1489D-02, 0.1398D-02, 0.1228D-02, 0.1015D-02, 0.7949D-03,
17744      #    0.5953D-03, 0.4298D-03, 0.3017D-03, 0.2073D-03, 0.1401D-03,
17745      #    0.9366D-04, 0.6213D-04, 0.4095D-04, 0.2689D-04, 0.1763D-04,
17746      #    0.1148D-04, 0.7522D-05, 0.4865D-05, 0.3176D-05, 0.2071D-05,
17747      #    0.1367D-05, 0.9203D-06, 0.5863D-06, 0.3981D-06, 0.2880D-06,
17748      #    0.2103D-06, 0.1330D-06, 0.1016D-06, 0.1015D-06, 0.5597D-07,
17749      #    0.9162D-07, 0.7051D-07, 0.5611D-07, 0.4630D-07, 0.3963D-07,
17750      #    0.3507D-07/
17751
17752       data (calcpts(j,10), j = 1,neta) /-.3692D-06, -.4473D-06,
17753      #    -.5418D-06, -.6564D-06, -.7951D-06, -.9630D-06, -.1166D-05,
17754      #    -.1412D-05, -.1710D-05, -.2069D-05, -.2503D-05, -.3025D-05,
17755      #    -.3653D-05, -.4405D-05, -.5300D-05, -.6359D-05, -.7596D-05,
17756      #    -.9014D-05, -.1059D-04, -.1228D-04, -.1390D-04, -.1519D-04,
17757      #    -.1557D-04, -.1406D-04, -.8939D-05, 0.2642D-05, 0.2530D-04,
17758      #    0.6612D-04, 0.1355D-03, 0.2468D-03, 0.4155D-03, 0.6540D-03,
17759      #    0.9626D-03, 0.1321D-02, 0.1681D-02, 0.1977D-02, 0.2151D-02,
17760      #    0.2168D-02, 0.2035D-02, 0.1787D-02, 0.1476D-02, 0.1157D-02,
17761      #    0.8661D-03, 0.6252D-03, 0.4389D-03, 0.3014D-03, 0.2036D-03,
17762      #    0.1361D-03, 0.9018D-04, 0.5939D-04, 0.3901D-04, 0.2549D-04,
17763      #    0.1665D-04, 0.1087D-04, 0.7076D-05, 0.4575D-05, 0.2974D-05,
17764      #    0.1947D-05, 0.1253D-05, 0.8136D-06, 0.5508D-06, 0.3657D-06,
17765      #    0.2582D-06, 0.1818D-06, 0.1055D-06, 0.7487D-07, 0.7522D-07,
17766      #    0.3003D-07, 0.6594D-07, 0.4496D-07, 0.3066D-07, 0.2093D-07,
17767      #    0.1430D-07/
17768
17769       data (calcpts(j,11), j = 1,neta) /-.5396D-06, -.6538D-06,
17770      #    -.7919D-06, -.9593D-06, -.1162D-05, -.1408D-05, -.1705D-05,
17771      #    -.2064D-05, -.2499D-05, -.3024D-05, -.3658D-05, -.4422D-05,
17772      #    -.5340D-05, -.6440D-05, -.7748D-05, -.9296D-05, -.1111D-04,
17773      #    -.1318D-04, -.1550D-04, -.1796D-04, -.2035D-04, -.2225D-04,
17774      #    -.2285D-04, -.2070D-04, -.1334D-04, 0.3407D-05, 0.3622D-04,
17775      #    0.9542D-04, 0.1961D-03, 0.3577D-03, 0.6026D-03, 0.9490D-03,
17776      #    0.1397D-02, 0.1918D-02, 0.2441D-02, 0.2870D-02, 0.3121D-02,
17777      #    0.3145D-02, 0.2951D-02, 0.2590D-02, 0.2140D-02, 0.1676D-02,
17778      #    0.1255D-02, 0.9058D-03, 0.6357D-03, 0.4364D-03, 0.2948D-03,
17779      #    0.1969D-03, 0.1304D-03, 0.8575D-04, 0.5625D-04, 0.3676D-04,
17780      #    0.2393D-04, 0.1552D-04, 0.1008D-04, 0.6481D-05, 0.4160D-05,
17781      #    0.2653D-05, 0.1713D-05, 0.1101D-05, 0.6720D-06, 0.4159D-06,
17782      #    0.2361D-06, 0.1315D-06, 0.5727D-07, 0.4929D-07, 0.1966D-07,
17783      #    -.4596D-07, -.2396D-07, -.5443D-07, -.8516D-08, -.2265D-07,
17784      #    -.3228D-07/
17785
17786       data (calcpts(j,12), j = 1,neta) /-.7869D-06, -.9534D-06,
17787      #    -.1155D-05, -.1399D-05, -.1695D-05, -.2053D-05, -.2486D-05,
17788      #    -.3010D-05, -.3644D-05, -.4410D-05, -.5335D-05, -.6449D-05,
17789      #    -.7788D-05, -.9392D-05, -.1130D-04, -.1356D-04, -.1620D-04,
17790      #    -.1923D-04, -.2262D-04, -.2623D-04, -.2974D-04, -.3256D-04,
17791      #    -.3352D-04, -.3053D-04, -.2001D-04, 0.4009D-05, 0.5124D-04,
17792      #    0.1366D-03, 0.2818D-03, 0.5152D-03, 0.8691D-03, 0.1370D-02,
17793      #    0.2017D-02, 0.2770D-02, 0.3525D-02, 0.4144D-02, 0.4503D-02,
17794      #    0.4535D-02, 0.4252D-02, 0.3731D-02, 0.3082D-02, 0.2414D-02,
17795      #    0.1807D-02, 0.1304D-02, 0.9149D-03, 0.6277D-03, 0.4238D-03,
17796      #    0.2828D-03, 0.1872D-03, 0.1229D-03, 0.8080D-04, 0.5295D-04,
17797      #    0.3401D-04, 0.2244D-04, 0.1462D-04, 0.9176D-05, 0.6076D-05,
17798      #    0.3683D-05, 0.2688D-05, 0.1315D-05, 0.1259D-05, 0.3109D-06,
17799      #    0.3326D-06, 0.5592D-06, 0.2594D-06, 0.5532D-07, -.8377D-07,
17800      #    -.1786D-06, -.2431D-06, -.2871D-06, -.3171D-06, -.3375D-06,
17801      #    0.3153D-06/
17802
17803       data (calcpts(j,13), j = 1,neta) /-.1144D-05, -.1386D-05,
17804      #    -.1679D-05, -.2034D-05, -.2464D-05, -.2985D-05, -.3615D-05,
17805      #    -.4377D-05, -.5298D-05, -.6413D-05, -.7758D-05, -.9378D-05,
17806      #    -.1133D-04, -.1366D-04, -.1644D-04, -.1973D-04, -.2357D-04,
17807      #    -.2799D-04, -.3293D-04, -.3821D-04, -.4338D-04, -.4758D-04,
17808      #    -.4914D-04, -.4507D-04, -.3027D-04, 0.3885D-05, 0.7130D-04,
17809      #    0.1933D-03, 0.4011D-03, 0.7355D-03, 0.1243D-02, 0.1961D-02,
17810      #    0.2891D-02, 0.3971D-02, 0.5053D-02, 0.5938D-02, 0.6447D-02,
17811      #    0.6486D-02, 0.6077D-02, 0.5330D-02, 0.4401D-02, 0.3446D-02,
17812      #    0.2579D-02, 0.1861D-02, 0.1304D-02, 0.8946D-03, 0.6032D-03,
17813      #    0.4024D-03, 0.2659D-03, 0.1747D-03, 0.1141D-03, 0.7479D-04,
17814      #    0.4834D-04, 0.3132D-04, 0.2016D-04, 0.1329D-04, 0.8727D-05,
17815      #    0.5761D-05, 0.3467D-05, 0.2542D-05, 0.1215D-05, 0.1189D-05,
17816      #    0.2640D-06, 0.2996D-06, 0.5363D-06, 0.2436D-06, 0.4415D-07,
17817      #    -.9180D-07, -.1843D-06, -.2474D-06, -.2904D-06, -.3197D-06,
17818      #    0.3270D-06/
17819
17820       data (calcpts(j,14), j = 1,neta) /-.1657D-05, -.2007D-05,
17821      #    -.2431D-05, -.2945D-05, -.3568D-05, -.4322D-05, -.5234D-05,
17822      #    -.6338D-05, -.7672D-05, -.9286D-05, -.1123D-04, -.1358D-04,
17823      #    -.1640D-04, -.1978D-04, -.2381D-04, -.2858D-04, -.3416D-04,
17824      #    -.4059D-04, -.4778D-04, -.5550D-04, -.6310D-04, -.6938D-04,
17825      #    -.7199D-04, -.6670D-04, -.4629D-04, 0.1539D-05, 0.9639D-04,
17826      #    0.2687D-03, 0.5627D-03, 0.1037D-02, 0.1757D-02, 0.2777D-02,
17827      #    0.4099D-02, 0.5632D-02, 0.7167D-02, 0.8417D-02, 0.9127D-02,
17828      #    0.9171D-02, 0.8582D-02, 0.7520D-02, 0.6206D-02, 0.4858D-02,
17829      #    0.3635D-02, 0.2621D-02, 0.1836D-02, 0.1258D-02, 0.8476D-03,
17830      #    0.5644D-03, 0.3724D-03, 0.2439D-03, 0.1595D-03, 0.1036D-03,
17831      #    0.6734D-04, 0.4349D-04, 0.2802D-04, 0.1813D-04, 0.1171D-04,
17832      #    0.7432D-05, 0.4671D-05, 0.2520D-05, 0.1690D-05, 0.1095D-05,
17833      #    0.4487D-06, 0.2198D-06, 0.2762D-06, -.1392D-06, -.4223D-06,
17834      #    0.5138D-07, -.7992D-07, -.1695D-06, -.2305D-06, -.2721D-06,
17835      #    -.3004D-06/
17836
17837       data (calcpts(j,15), j = 1,neta) /-.2383D-05, -.2887D-05,
17838      #    -.3497D-05, -.4237D-05, -.5132D-05, -.6216D-05, -.7528D-05,
17839      #    -.9117D-05, -.1104D-04, -.1336D-04, -.1616D-04, -.1954D-04,
17840      #    -.2360D-04, -.2847D-04, -.3427D-04, -.4115D-04, -.4920D-04,
17841      #    -.5849D-04, -.6892D-04, -.8016D-04, -.9134D-04, -.1008D-03,
17842      #    -.1052D-03, -.9882D-04, -.7144D-04, -.5986D-05, 0.1249D-03,
17843      #    0.3641D-03, 0.7735D-03, 0.1435D-02, 0.2441D-02, 0.3868D-02,
17844      #    0.5719D-02, 0.7864D-02, 0.1001D-01, 0.1174D-01, 0.1271D-01,
17845      #    0.1274D-01, 0.1190D-01, 0.1042D-01, 0.8590D-02, 0.6721D-02,
17846      #    0.5026D-02, 0.3621D-02, 0.2535D-02, 0.1734D-02, 0.1166D-02,
17847      #    0.7749D-03, 0.5102D-03, 0.3340D-03, 0.2176D-03, 0.1414D-03,
17848      #    0.9123D-04, 0.5901D-04, 0.3835D-04, 0.2483D-04, 0.1587D-04,
17849      #    0.1004D-04, 0.6855D-05, 0.4387D-05, 0.3100D-05, 0.1738D-05,
17850      #    0.1237D-05, 0.1319D-05, 0.4663D-06, 0.5524D-06, 0.8235D-06,
17851      #    0.5539D-06, 0.3704D-06, 0.2452D-06, 0.1599D-06, 0.7685D-06,
17852      #    0.7290D-06/
17853
17854       data (calcpts(j,16), j = 1,neta) /-.3399D-05, -.4118D-05,
17855      #    -.4987D-05, -.6042D-05, -.7320D-05, -.8866D-05, -.1074D-04,
17856      #    -.1300D-04, -.1574D-04, -.1905D-04, -.2305D-04, -.2787D-04,
17857      #    -.3367D-04, -.4062D-04, -.4892D-04, -.5875D-04, -.7030D-04,
17858      #    -.8363D-04, -.9867D-04, -.1150D-03, -.1314D-03, -.1457D-03,
17859      #    -.1534D-03, -.1467D-03, -.1116D-03, -.2496D-04, 0.1510D-03,
17860      #    0.4744D-03, 0.1031D-02, 0.1933D-02, 0.3310D-02, 0.5266D-02,
17861      #    0.7804D-02, 0.1074D-01, 0.1367D-01, 0.1602D-01, 0.1729D-01,
17862      #    0.1729D-01, 0.1611D-01, 0.1407D-01, 0.1159D-01, 0.9058D-02,
17863      #    0.6768D-02, 0.4871D-02, 0.3403D-02, 0.2322D-02, 0.1558D-02,
17864      #    0.1031D-02, 0.6766D-03, 0.4404D-03, 0.2855D-03, 0.1841D-03,
17865      #    0.1183D-03, 0.7551D-04, 0.4836D-04, 0.3095D-04, 0.1992D-04,
17866      #    0.1215D-04, 0.7833D-05, 0.5229D-05, 0.3152D-05, 0.2130D-05,
17867      #    0.1620D-05, 0.5744D-06, 0.7410D-06, 0.6133D-06, 0.7196D-07,
17868      #    0.3697D-06, 0.1186D-06, -.5265D-07, 0.4973D-06, 0.4179D-06,
17869      #    0.3637D-06/
17870
17871       data (calcpts(j,17), j = 1,neta) /-.4787D-05, -.5799D-05,
17872      #    -.7024D-05, -.8510D-05, -.1031D-04, -.1249D-04, -.1512D-04,
17873      #    -.1831D-04, -.2217D-04, -.2684D-04, -.3247D-04, -.3927D-04,
17874      #    -.4744D-04, -.5726D-04, -.6897D-04, -.8288D-04, -.9925D-04,
17875      #    -.1182D-03, -.1397D-03, -.1632D-03, -.1872D-03, -.2089D-03,
17876      #    -.2225D-03, -.2175D-03, -.1756D-03, -.6628D-04, 0.1608D-03,
17877      #    0.5829D-03, 0.1315D-02, 0.2507D-02, 0.4333D-02, 0.6934D-02,
17878      #    0.1031D-01, 0.1423D-01, 0.1811D-01, 0.2118D-01, 0.2278D-01,
17879      #    0.2267D-01, 0.2103D-01, 0.1831D-01, 0.1505D-01, 0.1175D-01,
17880      #    0.8769D-02, 0.6299D-02, 0.4389D-02, 0.2984D-02, 0.1991D-02,
17881      #    0.1311D-02, 0.8538D-03, 0.5514D-03, 0.3545D-03, 0.2259D-03,
17882      #    0.1436D-03, 0.9038D-04, 0.5691D-04, 0.3544D-04, 0.2219D-04,
17883      #    0.1349D-04, 0.8014D-05, 0.4806D-05, 0.2954D-05, 0.1390D-05,
17884      #    0.7233D-06, 0.4491D-06, -.4337D-06, -.1554D-06, -.2076D-06,
17885      #    -.6975D-06, -.3643D-06, -.5918D-06, -.8006D-07, -.1856D-06,
17886      #    -.2575D-06/
17887
17888       data (calcpts(j,18), j = 1,neta) /-.6622D-05, -.8023D-05,
17889      #    -.9718D-05, -.1177D-04, -.1426D-04, -.1728D-04, -.2092D-04,
17890      #    -.2534D-04, -.3068D-04, -.3714D-04, -.4494D-04, -.5435D-04,
17891      #    -.6568D-04, -.7930D-04, -.9556D-04, -.1149D-03, -.1377D-03,
17892      #    -.1643D-03, -.1945D-03, -.2280D-03, -.2629D-03, -.2957D-03,
17893      #    -.3192D-03, -.3204D-03, -.2763D-03, -.1477D-03, 0.1293D-03,
17894      #    0.6528D-03, 0.1571D-02, 0.3078D-02, 0.5398D-02, 0.8718D-02,
17895      #    0.1304D-01, 0.1805D-01, 0.2298D-01, 0.2680D-01, 0.2868D-01,
17896      #    0.2835D-01, 0.2612D-01, 0.2263D-01, 0.1854D-01, 0.1444D-01,
17897      #    0.1075D-01, 0.7700D-02, 0.5341D-02, 0.3610D-02, 0.2390D-02,
17898      #    0.1559D-02, 0.1004D-02, 0.6399D-03, 0.4053D-03, 0.2541D-03,
17899      #    0.1585D-03, 0.9786D-04, 0.6010D-04, 0.3658D-04, 0.2153D-04,
17900      #    0.1259D-04, 0.7535D-05, 0.4100D-05, 0.2275D-05, 0.6996D-06,
17901      #    0.4511D-06, 0.2193D-06, -.4223D-06, -.4336D-06, -.1650D-07,
17902      #    0.2570D-07, -.3993D-06, -.2249D-07, -.2200D-06, -.3545D-06,
17903      #    -.4461D-06/
17904
17905       data (calcpts(j,19), j = 1,neta) /-.8944D-05, -.1084D-04,
17906      #    -.1313D-04, -.1590D-04, -.1926D-04, -.2333D-04, -.2826D-04,
17907      #    -.3423D-04, -.4144D-04, -.5018D-04, -.6073D-04, -.7346D-04,
17908      #    -.8880D-04, -.1072D-03, -.1293D-03, -.1556D-03, -.1868D-03,
17909      #    -.2231D-03, -.2649D-03, -.3117D-03, -.3616D-03, -.4106D-03,
17910      #    -.4504D-03, -.4657D-03, -.4291D-03, -.2940D-03, 0.1615D-04,
17911      #    0.6224D-03, 0.1702D-02, 0.3494D-02, 0.6278D-02, 0.1028D-01,
17912      #    0.1552D-01, 0.2159D-01, 0.2751D-01, 0.3198D-01, 0.3397D-01,
17913      #    0.3323D-01, 0.3029D-01, 0.2600D-01, 0.2118D-01, 0.1643D-01,
17914      #    0.1219D-01, 0.8681D-02, 0.5976D-02, 0.3995D-02, 0.2606D-02,
17915      #    0.1672D-02, 0.1050D-02, 0.6528D-03, 0.4005D-03, 0.2438D-03,
17916      #    0.1417D-03, 0.8085D-04, 0.5090D-04, 0.2916D-04, 0.1133D-04,
17917      #    0.9738D-05, -.7403D-06, 0.3042D-05, -.1345D-05, -.2214D-05,
17918      #    -.6755D-06, -.4174D-05, 0.1085D-06, -.1515D-05, -.2621D-05,
17919      #    -.3374D-05, 0.2779D-05, 0.2429D-05, 0.2191D-05, 0.2029D-05,
17920      #    0.1918D-05/
17921
17922       data (calcpts(j,20), j = 1,neta) /-.1170D-04, -.1418D-04,
17923      #    -.1718D-04, -.2081D-04, -.2521D-04, -.3054D-04, -.3699D-04,
17924      #    -.4480D-04, -.5424D-04, -.6568D-04, -.7950D-04, -.9619D-04,
17925      #    -.1163D-03, -.1405D-03, -.1696D-03, -.2043D-03, -.2455D-03,
17926      #    -.2939D-03, -.3500D-03, -.4137D-03, -.4831D-03, -.5545D-03,
17927      #    -.6190D-03, -.6600D-03, -.6477D-03, -.5303D-03, -.2221D-03,
17928      #    0.4126D-03, 0.1576D-02, 0.3543D-02, 0.6635D-02, 0.1113D-01,
17929      #    0.1703D-01, 0.2388D-01, 0.3049D-01, 0.3532D-01, 0.3712D-01,
17930      #    0.3572D-01, 0.3197D-01, 0.2701D-01, 0.2174D-01, 0.1674D-01,
17931      #    0.1232D-01, 0.8686D-02, 0.5892D-02, 0.3851D-02, 0.2443D-02,
17932      #    0.1508D-02, 0.9013D-03, 0.5197D-03, 0.2912D-03, 0.1579D-03,
17933      #    0.7953D-04, 0.3170D-04, 0.7900D-05, -.3297D-05, -.7561D-05,
17934      #    -.6888D-05, -.7032D-05, -.1196D-04, -.4404D-05, -.6222D-05,
17935      #    -.5329D-05, -.2602D-05, -.5286D-05, -.4467D-06, -.1692D-05,
17936      #    -.2541D-05, -.3118D-05, -.3512D-05, -.3781D-05, -.3963D-05,
17937      #    -.4088D-05/
17938
17939       data (calcpts(j,21), j = 1,neta) /-.1470D-04, -.1781D-04,
17940      #    -.2158D-04, -.2614D-04, -.3167D-04, -.3836D-04, -.4647D-04,
17941      #    -.5628D-04, -.6815D-04, -.8253D-04, -.9992D-04, -.1209D-03,
17942      #    -.1463D-03, -.1768D-03, -.2135D-03, -.2575D-03, -.3099D-03,
17943      #    -.3718D-03, -.4443D-03, -.5276D-03, -.6206D-03, -.7201D-03,
17944      #    -.8181D-03, -.8986D-03, -.9318D-03, -.8660D-03, -.6136D-03,
17945      #    -.3460D-04, 0.1080D-02, 0.3021D-02, 0.6132D-02, 0.1071D-01,
17946      #    0.1680D-01, 0.2386D-01, 0.3062D-01, 0.3531D-01, 0.3655D-01,
17947      #    0.3428D-01, 0.2968D-01, 0.2428D-01, 0.1905D-01, 0.1439D-01,
17948      #    0.1041D-01, 0.7176D-02, 0.4703D-02, 0.2916D-02, 0.1706D-02,
17949      #    0.9332D-03, 0.4593D-03, 0.1896D-03, 0.4181D-04, -.3145D-04,
17950      #    -.5890D-04, -.6627D-04, -.6098D-04, -.5508D-04, -.4132D-04,
17951      #    -.3532D-04, -.2972D-04, -.2194D-04, -.1481D-04, -.1025D-04,
17952      #    -.9558D-05, -.6966D-05, -.3075D-05, -.4965D-05, 0.4133D-06,
17953      #    -.4645D-06, -.1062D-05, -.1469D-05, -.1747D-05, -.1936D-05,
17954      #    -.2065D-05/
17955
17956       data (calcpts(j,22), j = 1,neta) /-.1759D-04, -.2131D-04,
17957      #    -.2581D-04, -.3127D-04, -.3788D-04, -.4589D-04, -.5559D-04,
17958      #    -.6734D-04, -.8155D-04, -.9876D-04, -.1196D-03, -.1448D-03,
17959      #    -.1752D-03, -.2119D-03, -.2560D-03, -.3091D-03, -.3725D-03,
17960      #    -.4480D-03, -.5370D-03, -.6406D-03, -.7588D-03, -.8898D-03,
17961      #    -.1027D-02, -.1158D-02, -.1257D-02, -.1277D-02, -.1139D-02,
17962      #    -.7134D-03, 0.1963D-03, 0.1866D-02, 0.4629D-02, 0.8781D-02,
17963      #    0.1438D-01, 0.2091D-01, 0.2711D-01, 0.3112D-01, 0.3152D-01,
17964      #    0.2827D-01, 0.2292D-01, 0.1735D-01, 0.1266D-01, 0.9007D-02,
17965      #    0.6154D-02, 0.3926D-02, 0.2252D-02, 0.1077D-02, 0.3285D-03,
17966      #    -.1048D-03, -.3108D-03, -.3821D-03, -.3808D-03, -.3361D-03,
17967      #    -.2800D-03, -.2292D-03, -.1760D-03, -.1380D-03, -.1006D-03,
17968      #    -.7878D-04, -.5814D-04, -.4252D-04, -.2794D-04, -.2284D-04,
17969      #    -.1511D-04, -.1227D-04, -.8204D-05, -.3311D-05, -.4519D-05,
17970      #    -.5343D-05, 0.7633D-06, 0.3809D-06, 0.1204D-06, -.5698D-07,
17971      #    -.1778D-06/
17972
17973       data (calcpts(j,23), j = 1,neta) /-.1989D-04, -.2409D-04,
17974      #    -.2918D-04, -.3536D-04, -.4284D-04, -.5190D-04, -.6287D-04,
17975      #    -.7616D-04, -.9223D-04, -.1117D-03, -.1353D-03, -.1638D-03,
17976      #    -.1983D-03, -.2399D-03, -.2901D-03, -.3506D-03, -.4231D-03,
17977      #    -.5098D-03, -.6129D-03, -.7342D-03, -.8750D-03, -.1036D-02,
17978      #    -.1212D-02, -.1397D-02, -.1569D-02, -.1695D-02, -.1710D-02,
17979      #    -.1509D-02, -.9289D-03, 0.2640D-03, 0.2358D-02, 0.5620D-02,
17980      #    0.1011D-01, 0.1541D-01, 0.2038D-01, 0.2331D-01, 0.2276D-01,
17981      #    0.1873D-01, 0.1286D-01, 0.7356D-02, 0.3497D-02, 0.1266D-02,
17982      #    0.3697D-04, -.7100D-03, -.1187D-02, -.1463D-02, -.1552D-02,
17983      #    -.1489D-02, -.1333D-02, -.1135D-02, -.9232D-03, -.7340D-03,
17984      #    -.5716D-03, -.4336D-03, -.3286D-03, -.2446D-03, -.1785D-03,
17985      #    -.1308D-03, -.9282D-04, -.6781D-04, -.5136D-04, -.3832D-04,
17986      #    -.2306D-04, -.1963D-04, -.1516D-04, -.9997D-05, -.4353D-05,
17987      #    -.5049D-05, -.5523D-05, -.5847D-05, 0.5996D-06, 0.4496D-06,
17988      #    0.3474D-06/
17989
17990       data (calcpts(j,24), j = 1,neta) /-.2117D-04, -.2564D-04,
17991      #    -.3106D-04, -.3763D-04, -.4560D-04, -.5524D-04, -.6692D-04,
17992      #    -.8107D-04, -.9819D-04, -.1189D-03, -.1441D-03, -.1745D-03,
17993      #    -.2112D-03, -.2557D-03, -.3093D-03, -.3741D-03, -.4520D-03,
17994      #    -.5456D-03, -.6574D-03, -.7902D-03, -.9465D-03, -.1128D-02,
17995      #    -.1335D-02, -.1564D-02, -.1803D-02, -.2029D-02, -.2199D-02,
17996      #    -.2238D-02, -.2028D-02, -.1394D-02, -.1156D-03, 0.2017D-02,
17997      #    0.5066D-02, 0.8726D-02, 0.1210D-01, 0.1376D-01, 0.1244D-01,
17998      #    0.8023D-02, 0.2015D-02, -.3294D-02, -.6393D-02, -.7245D-02,
17999      #    -.6777D-02, -.5883D-02, -.5009D-02, -.4254D-02, -.3594D-02,
18000      #    -.2993D-02, -.2443D-02, -.1947D-02, -.1520D-02, -.1169D-02,
18001      #    -.8818D-03, -.6554D-03, -.4863D-03, -.3526D-03, -.2554D-03,
18002      #    -.1867D-03, -.1368D-03, -.9494D-04, -.6941D-04, -.4806D-04,
18003      #    -.3168D-04, -.2748D-04, -.1583D-04, -.1031D-04, -.1109D-04,
18004      #    -.4956D-05, -.5318D-05, -.5565D-05, 0.9334D-06, 0.8188D-06,
18005      #    0.7408D-06/
18006
18007       data (calcpts(j,25), j = 1,neta) /-.2120D-04, -.2568D-04,
18008      #    -.3111D-04, -.3769D-04, -.4567D-04, -.5532D-04, -.6702D-04,
18009      #    -.8120D-04, -.9835D-04, -.1191D-03, -.1443D-03, -.1748D-03,
18010      #    -.2117D-03, -.2563D-03, -.3102D-03, -.3754D-03, -.4540D-03,
18011      #    -.5486D-03, -.6623D-03, -.7982D-03, -.9596D-03, -.1150D-02,
18012      #    -.1372D-02, -.1626D-02, -.1907D-02, -.2205D-02, -.2495D-02,
18013      #    -.2732D-02, -.2841D-02, -.2708D-02, -.2186D-02, -.1130D-02,
18014      #    0.5125D-03, 0.2538D-02, 0.4317D-02, 0.4811D-02, 0.2999D-02,
18015      #    -.1337D-02, -.7059D-02, -.1210D-01, -.1476D-01, -.1475D-01,
18016      #    -.1299D-01, -.1067D-01, -.8534D-02, -.6815D-02, -.5453D-02,
18017      #    -.4354D-02, -.3441D-02, -.2691D-02, -.2071D-02, -.1573D-02,
18018      #    -.1175D-02, -.8679D-03, -.6419D-03, -.4655D-03, -.3374D-03,
18019      #    -.2412D-03, -.1729D-03, -.1209D-03, -.8633D-04, -.6337D-04,
18020      #    -.4589D-04, -.3428D-04, -.2211D-04, -.1625D-04, -.1012D-04,
18021      #    -.1049D-04, -.4079D-05, -.4251D-05, -.4369D-05, -.4448D-05,
18022      #    -.4503D-05/
18023
18024       data (calcpts(j,26), j = 1,neta) /-.2004D-04, -.2428D-04,
18025      #    -.2941D-04, -.3563D-04, -.4317D-04, -.5230D-04, -.6336D-04,
18026      #    -.7677D-04, -.9298D-04, -.1126D-03, -.1365D-03, -.1653D-03,
18027      #    -.2002D-03, -.2425D-03, -.2936D-03, -.3554D-03, -.4301D-03,
18028      #    -.5202D-03, -.6287D-03, -.7591D-03, -.9150D-03, -.1101D-02,
18029      #    -.1321D-02, -.1577D-02, -.1872D-02, -.2202D-02, -.2558D-02,
18030      #    -.2917D-02, -.3239D-02, -.3459D-02, -.3493D-02, -.3253D-02,
18031      #    -.2705D-02, -.1976D-02, -.1463D-02, -.1853D-02, -.3876D-02,
18032      #    -.7789D-02, -.1288D-01, -.1756D-01, -.2015D-01, -.1998D-01,
18033      #    -.1766D-01, -.1444D-01, -.1135D-01, -.8830D-02, -.6891D-02,
18034      #    -.5395D-02, -.4216D-02, -.3267D-02, -.2506D-02, -.1896D-02,
18035      #    -.1418D-02, -.1049D-02, -.7705D-03, -.5611D-03, -.4041D-03,
18036      #    -.2886D-03, -.2095D-03, -.1480D-03, -.1048D-03, -.7391D-04,
18037      #    -.5554D-04, -.3665D-04, -.2408D-04, -.1793D-04, -.1162D-04,
18038      #    -.1186D-04, -.5353D-05, -.5465D-05, -.5541D-05, 0.1074D-05,
18039      #    0.1039D-05/
18040
18041       data (calcpts(j,27), j = 1,neta) /-.1799D-04, -.2179D-04,
18042      #    -.2640D-04, -.3199D-04, -.3875D-04, -.4695D-04, -.5688D-04,
18043      #    -.6891D-04, -.8347D-04, -.1011D-03, -.1225D-03, -.1484D-03,
18044      #    -.1798D-03, -.2178D-03, -.2637D-03, -.3193D-03, -.3866D-03,
18045      #    -.4678D-03, -.5659D-03, -.6842D-03, -.8261D-03, -.9964D-03,
18046      #    -.1200D-02, -.1440D-02, -.1722D-02, -.2048D-02, -.2416D-02,
18047      #    -.2821D-02, -.3243D-02, -.3654D-02, -.4010D-02, -.4266D-02,
18048      #    -.4407D-02, -.4507D-02, -.4803D-02, -.5710D-02, -.7709D-02,
18049      #    -.1103D-01, -.1532D-01, -.1951D-01, -.2220D-01, -.2245D-01,
18050      #    -.2037D-01, -.1695D-01, -.1334D-01, -.1025D-01, -.7864D-02,
18051      #    -.6080D-02, -.4713D-02, -.3649D-02, -.2801D-02, -.2129D-02,
18052      #    -.1595D-02, -.1187D-02, -.8684D-03, -.6365D-03, -.4599D-03,
18053      #    -.3334D-03, -.2381D-03, -.1680D-03, -.1235D-03, -.8495D-04,
18054      #    -.5929D-04, -.4665D-04, -.3378D-04, -.2077D-04, -.1432D-04,
18055      #    -.1447D-04, -.7903D-05, -.7972D-05, -.8019D-05, -.1384D-05,
18056      #    -.1406D-05/
18057
18058       data (calcpts(j,28), j = 1,neta) /-.1544D-04, -.1871D-04,
18059      #    -.2266D-04, -.2745D-04, -.3326D-04, -.4030D-04, -.4882D-04,
18060      #    -.5915D-04, -.7165D-04, -.8681D-04, -.1052D-03, -.1274D-03,
18061      #    -.1543D-03, -.1870D-03, -.2264D-03, -.2742D-03, -.3321D-03,
18062      #    -.4021D-03, -.4866D-03, -.5888D-03, -.7117D-03, -.8598D-03,
18063      #    -.1037D-02, -.1249D-02, -.1501D-02, -.1797D-02, -.2141D-02,
18064      #    -.2533D-02, -.2970D-02, -.3441D-02, -.3929D-02, -.4414D-02,
18065      #    -.4893D-02, -.5410D-02, -.6097D-02, -.7195D-02, -.8996D-02,
18066      #    -.1169D-01, -.1512D-01, -.1871D-01, -.2144D-01, -.2235D-01,
18067      #    -.2108D-01, -.1813D-01, -.1453D-01, -.1116D-01, -.8466D-02,
18068      #    -.6453D-02, -.4965D-02, -.3831D-02, -.2950D-02, -.2251D-02,
18069      #    -.1699D-02, -.1272D-02, -.9380D-03, -.6869D-03, -.4997D-03,
18070      #    -.3571D-03, -.2600D-03, -.1819D-03, -.1299D-03, -.9075D-04,
18071      #    -.6469D-04, -.4510D-04, -.3205D-04, -.2558D-04, -.1904D-04,
18072      #    -.1246D-04, -.5857D-05, -.5898D-05, -.5926D-05, -.5946D-05,
18073      #    0.7080D-06/
18074
18075       data (calcpts(j,29), j = 1,neta) /-.1277D-04, -.1547D-04,
18076      #    -.1874D-04, -.2270D-04, -.2750D-04, -.3332D-04, -.4037D-04,
18077      #    -.4891D-04, -.5924D-04, -.7178D-04, -.8697D-04, -.1054D-03,
18078      #    -.1276D-03, -.1546D-03, -.1873D-03, -.2268D-03, -.2748D-03,
18079      #    -.3327D-03, -.4028D-03, -.4876D-03, -.5898D-03, -.7133D-03,
18080      #    -.8618D-03, -.1040D-02, -.1253D-02, -.1506D-02, -.1804D-02,
18081      #    -.2152D-02, -.2552D-02, -.3002D-02, -.3499D-02, -.4038D-02,
18082      #    -.4618D-02, -.5268D-02, -.6058D-02, -.7120D-02, -.8624D-02,
18083      #    -.1070D-01, -.1334D-01, -.1624D-01, -.1880D-01, -.2025D-01,
18084      #    -.1999D-01, -.1802D-01, -.1495D-01, -.1167D-01, -.8823D-02,
18085      #    -.6636D-02, -.5040D-02, -.3866D-02, -.2982D-02, -.2286D-02,
18086      #    -.1743D-02, -.1308D-02, -.9757D-03, -.7144D-03, -.5247D-03,
18087      #    -.3806D-03, -.2689D-03, -.1968D-03, -.1376D-03, -.9809D-04,
18088      #    -.7179D-04, -.5204D-04, -.3221D-04, -.2566D-04, -.1907D-04,
18089      #    -.1246D-04, -.5827D-05, -.5852D-05, -.5869D-05, 0.7861D-06,
18090      #    0.7782D-06/
18091
18092       data (calcpts(j,30), j = 1,neta) /-.1024D-04, -.1241D-04,
18093      #    -.1503D-04, -.1821D-04, -.2206D-04, -.2673D-04, -.3238D-04,
18094      #    -.3923D-04, -.4753D-04, -.5758D-04, -.6977D-04, -.8452D-04,
18095      #    -.1024D-03, -.1240D-03, -.1502D-03, -.1820D-03, -.2205D-03,
18096      #    -.2670D-03, -.3233D-03, -.3915D-03, -.4738D-03, -.5733D-03,
18097      #    -.6933D-03, -.8376D-03, -.1011D-02, -.1218D-02, -.1464D-02,
18098      #    -.1754D-02, -.2094D-02, -.2485D-02, -.2929D-02, -.3427D-02,
18099      #    -.3981D-02, -.4606D-02, -.5340D-02, -.6249D-02, -.7431D-02,
18100      #    -.8975D-02, -.1091D-01, -.1312D-01, -.1531D-01, -.1698D-01,
18101      #    -.1754D-01, -.1668D-01, -.1456D-01, -.1177D-01, -.9012D-02,
18102      #    -.6734D-02, -.5036D-02, -.3817D-02, -.2926D-02, -.2254D-02,
18103      #    -.1725D-02, -.1312D-02, -.9835D-03, -.7334D-03, -.5357D-03,
18104      #    -.3905D-03, -.2849D-03, -.2056D-03, -.1461D-03, -.9979D-04,
18105      #    -.7335D-04, -.5350D-04, -.3361D-04, -.2701D-04, -.2039D-04,
18106      #    -.1376D-04, -.7115D-05, -.7130D-05, -.7141D-05, -.4813D-06,
18107      #    -.4861D-06/
18108
18109       data (calcpts(j,31), j = 1,neta) /-.8016D-05, -.9712D-05,
18110      #    -.1176D-04, -.1425D-04, -.1727D-04, -.2092D-04, -.2535D-04,
18111      #    -.3071D-04, -.3720D-04, -.4507D-04, -.5461D-04, -.6616D-04,
18112      #    -.8015D-04, -.9711D-04, -.1176D-03, -.1425D-03, -.1726D-03,
18113      #    -.2091D-03, -.2532D-03, -.3066D-03, -.3712D-03, -.4493D-03,
18114      #    -.5436D-03, -.6573D-03, -.7940D-03, -.9580D-03, -.1154D-02,
18115      #    -.1386D-02, -.1661D-02, -.1980D-02, -.2349D-02, -.2769D-02,
18116      #    -.3242D-02, -.3776D-02, -.4389D-02, -.5113D-02, -.6000D-02,
18117      #    -.7105D-02, -.8465D-02, -.1006D-01, -.1178D-01, -.1334D-01,
18118      #    -.1435D-01, -.1440D-01, -.1333D-01, -.1135D-01, -.8994D-02,
18119      #    -.6786D-02, -.5024D-02, -.3742D-02, -.2832D-02, -.2172D-02,
18120      #    -.1671D-02, -.1280D-02, -.9694D-03, -.7248D-03, -.5396D-03,
18121      #    -.3939D-03, -.2879D-03, -.2083D-03, -.1486D-03, -.1088D-03,
18122      #    -.7564D-04, -.5574D-04, -.3580D-04, -.2918D-04, -.1588D-04,
18123      #    -.1590D-04, -.9249D-05, -.9259D-05, -.2599D-05, -.2604D-05,
18124      #    -.2607D-05/
18125
18126       data (calcpts(j,32), j = 1,neta) /-.6153D-05, -.7455D-05,
18127      #    -.9030D-05, -.1094D-04, -.1326D-04, -.1606D-04, -.1946D-04,
18128      #    -.2357D-04, -.2856D-04, -.3460D-04, -.4192D-04, -.5078D-04,
18129      #    -.6152D-04, -.7454D-04, -.9028D-04, -.1094D-03, -.1325D-03,
18130      #    -.1605D-03, -.1944D-03, -.2355D-03, -.2851D-03, -.3451D-03,
18131      #    -.4177D-03, -.5052D-03, -.6106D-03, -.7374D-03, -.8890D-03,
18132      #    -.1070D-02, -.1284D-02, -.1536D-02, -.1828D-02, -.2163D-02,
18133      #    -.2543D-02, -.2970D-02, -.3452D-02, -.4003D-02, -.4647D-02,
18134      #    -.5416D-02, -.6342D-02, -.7441D-02, -.8684D-02, -.9956D-02,
18135      #    -.1104D-01, -.1161D-01, -.1141D-01, -.1034D-01, -.8643D-02,
18136      #    -.6739D-02, -.5023D-02, -.3691D-02, -.2739D-02, -.2071D-02,
18137      #    -.1588D-02, -.1222D-02, -.9344D-03, -.7078D-03, -.5294D-03,
18138      #    -.3914D-03, -.2865D-03, -.2075D-03, -.1497D-03, -.1065D-03,
18139      #    -.7590D-04, -.5396D-04, -.3800D-04, -.2670D-04, -.1872D-04,
18140      #    -.1273D-04, -.8742D-05, -.6082D-05, -.4086D-05, -.2756D-05,
18141      #    -.1425D-05/
18142
18143       data (calcpts(j,33), j = 1,neta) /-.4652D-05, -.5636D-05,
18144      #    -.6827D-05, -.8271D-05, -.1002D-04, -.1214D-04, -.1471D-04,
18145      #    -.1782D-04, -.2159D-04, -.2616D-04, -.3169D-04, -.3839D-04,
18146      #    -.4651D-04, -.5635D-04, -.6826D-04, -.8269D-04, -.1002D-03,
18147      #    -.1214D-03, -.1470D-03, -.1780D-03, -.2156D-03, -.2610D-03,
18148      #    -.3160D-03, -.3822D-03, -.4622D-03, -.5584D-03, -.6736D-03,
18149      #    -.8114D-03, -.9751D-03, -.1168D-02, -.1392D-02, -.1651D-02,
18150      #    -.1944D-02, -.2273D-02, -.2639D-02, -.3046D-02, -.3505D-02,
18151      #    -.4031D-02, -.4646D-02, -.5373D-02, -.6219D-02, -.7152D-02,
18152      #    -.8076D-02, -.8811D-02, -.9122D-02, -.8814D-02, -.7864D-02,
18153      #    -.6474D-02, -.4981D-02, -.3676D-02, -.2685D-02, -.1986D-02,
18154      #    -.1501D-02, -.1151D-02, -.8859D-03, -.6775D-03, -.5128D-03,
18155      #    -.3839D-03, -.2835D-03, -.2077D-03, -.1505D-03, -.1086D-03,
18156      #    -.7804D-04, -.5541D-04, -.3944D-04, -.2813D-04, -.2014D-04,
18157      #    -.1415D-04, -.1016D-04, -.7497D-05, -.5500D-05, -.4169D-05,
18158      #    -.2837D-05/
18159
18160       data (calcpts(j,34), j = 1,neta) /-.3472D-05, -.4207D-05,
18161      #    -.5096D-05, -.6174D-05, -.7481D-05, -.9063D-05, -.1098D-04,
18162      #    -.1330D-04, -.1611D-04, -.1952D-04, -.2366D-04, -.2866D-04,
18163      #    -.3472D-04, -.4207D-04, -.5095D-04, -.6173D-04, -.7479D-04,
18164      #    -.9059D-04, -.1097D-03, -.1329D-03, -.1609D-03, -.1949D-03,
18165      #    -.2359D-03, -.2855D-03, -.3452D-03, -.4172D-03, -.5035D-03,
18166      #    -.6068D-03, -.7296D-03, -.8745D-03, -.1044D-02, -.1239D-02,
18167      #    -.1460D-02, -.1707D-02, -.1978D-02, -.2274D-02, -.2596D-02,
18168      #    -.2953D-02, -.3356D-02, -.3824D-02, -.4374D-02, -.5007D-02,
18169      #    -.5697D-02, -.6361D-02, -.6858D-02, -.7012D-02, -.6688D-02,
18170      #    -.5890D-02, -.4790D-02, -.3645D-02, -.2667D-02, -.1936D-02,
18171      #    -.1429D-02, -.1079D-02, -.8275D-03, -.6368D-03, -.4866D-03,
18172      #    -.3682D-03, -.2751D-03, -.2032D-03, -.1480D-03, -.1074D-03,
18173      #    -.7742D-04, -.5545D-04, -.3947D-04, -.2815D-04, -.1949D-04,
18174      #    -.1416D-04, -.1017D-04, -.6839D-05, -.4841D-05, -.3509D-05,
18175      #    -.2843D-05/
18176
18177       data (calcpts(j,35), j = 1,neta) /-.2566D-05, -.3109D-05,
18178      #    -.3766D-05, -.4563D-05, -.5529D-05, -.6698D-05, -.8115D-05,
18179      #    -.9832D-05, -.1191D-04, -.1443D-04, -.1748D-04, -.2118D-04,
18180      #    -.2566D-04, -.3109D-04, -.3766D-04, -.4562D-04, -.5527D-04,
18181      #    -.6696D-04, -.8110D-04, -.9824D-04, -.1190D-03, -.1441D-03,
18182      #    -.1744D-03, -.2110D-03, -.2552D-03, -.3085D-03, -.3724D-03,
18183      #    -.4489D-03, -.5400D-03, -.6474D-03, -.7730D-03, -.9178D-03,
18184      #    -.1082D-02, -.1264D-02, -.1463D-02, -.1676D-02, -.1901D-02,
18185      #    -.2142D-02, -.2405D-02, -.2702D-02, -.3048D-02, -.3455D-02,
18186      #    -.3924D-02, -.4429D-02, -.4904D-02, -.5239D-02, -.5304D-02,
18187      #    -.5007D-02, -.4363D-02, -.3511D-02, -.2647D-02, -.1922D-02,
18188      #    -.1388D-02, -.1022D-02, -.7714D-03, -.5912D-03, -.4549D-03,
18189      #    -.3477D-03, -.2625D-03, -.1960D-03, -.1440D-03, -.1054D-03,
18190      #    -.7611D-04, -.5480D-04, -.3881D-04, -.2749D-04, -.1949D-04,
18191      #    -.1350D-04, -.9501D-05, -.6836D-05, -.4838D-05, -.3505D-05,
18192      #    -.2173D-05/
18193
18194       data (calcpts(j,36), j = 1,neta) /-.1882D-05, -.2280D-05,
18195      #    -.2762D-05, -.3346D-05, -.4055D-05, -.4912D-05, -.5951D-05,
18196      #    -.7210D-05, -.8734D-05, -.1058D-04, -.1282D-04, -.1553D-04,
18197      #    -.1882D-04, -.2280D-04, -.2762D-04, -.3346D-04, -.4054D-04,
18198      #    -.4910D-04, -.5948D-04, -.7205D-04, -.8724D-04, -.1056D-03,
18199      #    -.1279D-03, -.1548D-03, -.1872D-03, -.2263D-03, -.2732D-03,
18200      #    -.3294D-03, -.3962D-03, -.4752D-03, -.5675D-03, -.6739D-03,
18201      #    -.7942D-03, -.9276D-03, -.1072D-02, -.1224D-02, -.1382D-02,
18202      #    -.1545D-02, -.1717D-02, -.1904D-02, -.2118D-02, -.2370D-02,
18203      #    -.2669D-02, -.3013D-02, -.3381D-02, -.3720D-02, -.3946D-02,
18204      #    -.3963D-02, -.3711D-02, -.3205D-02, -.2557D-02, -.1912D-02,
18205      #    -.1379D-02, -.9917D-03, -.7282D-03, -.5492D-03, -.4207D-03,
18206      #    -.3236D-03, -.2470D-03, -.1871D-03, -.1391D-03, -.1025D-03,
18207      #    -.7449D-04, -.5384D-04, -.3852D-04, -.2786D-04, -.1986D-04,
18208      #    -.1387D-04, -.9868D-05, -.6536D-05, -.4537D-05, -.3204D-05,
18209      #    -.2538D-05/
18210
18211       data (calcpts(j,37), j = 1,neta) /-.1371D-05, -.1661D-05,
18212      #    -.2012D-05, -.2438D-05, -.2954D-05, -.3579D-05, -.4336D-05,
18213      #    -.5253D-05, -.6363D-05, -.7709D-05, -.9341D-05, -.1132D-04,
18214      #    -.1371D-04, -.1661D-04, -.2012D-04, -.2438D-04, -.2953D-04,
18215      #    -.3577D-04, -.4333D-04, -.5249D-04, -.6356D-04, -.7697D-04,
18216      #    -.9319D-04, -.1128D-03, -.1364D-03, -.1649D-03, -.1991D-03,
18217      #    -.2400D-03, -.2888D-03, -.3463D-03, -.4136D-03, -.4912D-03,
18218      #    -.5787D-03, -.6755D-03, -.7795D-03, -.8880D-03, -.9986D-03,
18219      #    -.1110D-02, -.1223D-02, -.1341D-02, -.1472D-02, -.1625D-02,
18220      #    -.1808D-02, -.2026D-02, -.2278D-02, -.2546D-02, -.2787D-02,
18221      #    -.2939D-02, -.2933D-02, -.2727D-02, -.2338D-02, -.1851D-02,
18222      #    -.1374D-02, -.9852D-03, -.7055D-03, -.5172D-03, -.3894D-03,
18223      #    -.2988D-03, -.2296D-03, -.1756D-03, -.1323D-03, -.9832D-04,
18224      #    -.7234D-04, -.5302D-04, -.3836D-04, -.2703D-04, -.1970D-04,
18225      #    -.1370D-04, -.9704D-05, -.7038D-05, -.5039D-05, -.3706D-05,
18226      #    -.2373D-05/
18227
18228       data (calcpts(j,38), j = 1,neta) /-.9934D-06, -.1204D-05,
18229      #    -.1458D-05, -.1767D-05, -.2140D-05, -.2593D-05, -.3141D-05,
18230      #    -.3806D-05, -.4611D-05, -.5586D-05, -.6768D-05, -.8200D-05,
18231      #    -.9934D-05, -.1204D-04, -.1458D-04, -.1766D-04, -.2140D-04,
18232      #    -.2592D-04, -.3140D-04, -.3803D-04, -.4606D-04, -.5577D-04,
18233      #    -.6753D-04, -.8172D-04, -.9885D-04, -.1195D-03, -.1443D-03,
18234      #    -.1739D-03, -.2093D-03, -.2510D-03, -.2997D-03, -.3559D-03,
18235      #    -.4192D-03, -.4891D-03, -.5638D-03, -.6411D-03, -.7187D-03,
18236      #    -.7950D-03, -.8699D-03, -.9455D-03, -.1026D-02, -.1117D-02,
18237      #    -.1226D-02, -.1358D-02, -.1518D-02, -.1702D-02, -.1895D-02,
18238      #    -.2067D-02, -.2170D-02, -.2155D-02, -.1991D-02, -.1696D-02,
18239      #    -.1334D-02, -.9843D-03, -.7016D-03, -.5005D-03, -.3659D-03,
18240      #    -.2753D-03, -.2113D-03, -.1620D-03, -.1240D-03, -.9339D-04,
18241      #    -.6940D-04, -.5141D-04, -.3741D-04, -.2675D-04, -.1942D-04,
18242      #    -.1342D-04, -.9422D-05, -.6756D-05, -.4756D-05, -.3423D-05,
18243      #    -.2090D-05/
18244
18245       data (calcpts(j,39), j = 1,neta) /-.7169D-06, -.8686D-06,
18246      #    -.1052D-05, -.1275D-05, -.1545D-05, -.1871D-05, -.2267D-05,
18247      #    -.2747D-05, -.3327D-05, -.4031D-05, -.4884D-05, -.5917D-05,
18248      #    -.7169D-05, -.8685D-05, -.1052D-04, -.1275D-04, -.1544D-04,
18249      #    -.1871D-04, -.2266D-04, -.2745D-04, -.3324D-04, -.4025D-04,
18250      #    -.4873D-04, -.5897D-04, -.7134D-04, -.8623D-04, -.1041D-03,
18251      #    -.1255D-03, -.1510D-03, -.1811D-03, -.2163D-03, -.2568D-03,
18252      #    -.3024D-03, -.3527D-03, -.4062D-03, -.4612D-03, -.5158D-03,
18253      #    -.5685D-03, -.6187D-03, -.6676D-03, -.7174D-03, -.7719D-03,
18254      #    -.8355D-03, -.9132D-03, -.1009D-02, -.1126D-02, -.1259D-02,
18255      #    -.1399D-02, -.1521D-02, -.1591D-02, -.1573D-02, -.1446D-02,
18256      #    -.1226D-02, -.9584D-03, -.7031D-03, -.4988D-03, -.3545D-03,
18257      #    -.2587D-03, -.1947D-03, -.1492D-03, -.1147D-03, -.8761D-04,
18258      #    -.6616D-04, -.4956D-04, -.3623D-04, -.2623D-04, -.1890D-04,
18259      #    -.1357D-04, -.9571D-05, -.6905D-05, -.4905D-05, -.3572D-05,
18260      #    -.2239D-05/
18261
18262       data (calcpts(j,40), j = 1,neta) /-.5152D-06, -.6243D-06,
18263      #    -.7562D-06, -.9162D-06, -.1110D-05, -.1345D-05, -.1629D-05,
18264      #    -.1974D-05, -.2391D-05, -.2897D-05, -.3510D-05, -.4253D-05,
18265      #    -.5152D-05, -.6242D-05, -.7561D-05, -.9160D-05, -.1110D-04,
18266      #    -.1344D-04, -.1628D-04, -.1973D-04, -.2389D-04, -.2893D-04,
18267      #    -.3502D-04, -.4238D-04, -.5127D-04, -.6197D-04, -.7482D-04,
18268      #    -.9021D-04, -.1085D-03, -.1302D-03, -.1554D-03, -.1845D-03,
18269      #    -.2173D-03, -.2533D-03, -.2915D-03, -.3306D-03, -.3691D-03,
18270      #    -.4057D-03, -.4398D-03, -.4717D-03, -.5030D-03, -.5357D-03,
18271      #    -.5727D-03, -.6176D-03, -.6733D-03, -.7430D-03, -.8276D-03,
18272      #    -.9246D-03, -.1025D-02, -.1112D-02, -.1159D-02, -.1142D-02,
18273      #    -.1046D-02, -.8819D-03, -.6861D-03, -.5007D-03, -.3536D-03,
18274      #    -.2504D-03, -.1824D-03, -.1371D-03, -.1051D-03, -.8080D-04,
18275      #    -.6168D-04, -.4655D-04, -.3462D-04, -.2542D-04, -.1848D-04,
18276      #    -.1335D-04, -.9553D-05, -.6820D-05, -.4820D-05, -.3420D-05,
18277      #    -.2420D-05/
18278
18279       data (calcpts(j,41), j = 1,neta) /-.3691D-06, -.4472D-06,
18280      #    -.5416D-06, -.6563D-06, -.7952D-06, -.9633D-06, -.1167D-05,
18281      #    -.1414D-05, -.1713D-05, -.2075D-05, -.2514D-05, -.3046D-05,
18282      #    -.3691D-05, -.4471D-05, -.5416D-05, -.6562D-05, -.7950D-05,
18283      #    -.9630D-05, -.1167D-04, -.1413D-04, -.1711D-04, -.2072D-04,
18284      #    -.2509D-04, -.3036D-04, -.3672D-04, -.4439D-04, -.5360D-04,
18285      #    -.6462D-04, -.7775D-04, -.9324D-04, -.1113D-03, -.1322D-03,
18286      #    -.1556D-03, -.1813D-03, -.2086D-03, -.2364D-03, -.2635D-03,
18287      #    -.2890D-03, -.3124D-03, -.3336D-03, -.3535D-03, -.3734D-03,
18288      #    -.3951D-03, -.4206D-03, -.4523D-03, -.4925D-03, -.5429D-03,
18289      #    -.6043D-03, -.6745D-03, -.7467D-03, -.8083D-03, -.8408D-03,
18290      #    -.8255D-03, -.7532D-03, -.6325D-03, -.4898D-03, -.3558D-03,
18291      #    -.2501D-03, -.1766D-03, -.1284D-03, -.9645D-04, -.7386D-04,
18292      #    -.5680D-04, -.4333D-04, -.3267D-04, -.2427D-04, -.1780D-04,
18293      #    -.1294D-04, -.9270D-05, -.6670D-05, -.4737D-05, -.3337D-05,
18294      #    -.2337D-05/
18295
18296       data (calcpts(j,42), j = 1,neta) /-.2638D-06, -.3195D-06,
18297      #    -.3871D-06, -.4689D-06, -.5682D-06, -.6883D-06, -.8339D-06,
18298      #    -.1010D-05, -.1224D-05, -.1483D-05, -.1797D-05, -.2177D-05,
18299      #    -.2637D-05, -.3195D-05, -.3870D-05, -.4688D-05, -.5680D-05,
18300      #    -.6881D-05, -.8335D-05, -.1010D-04, -.1223D-04, -.1481D-04,
18301      #    -.1793D-04, -.2169D-04, -.2624D-04, -.3172D-04, -.3830D-04,
18302      #    -.4617D-04, -.5555D-04, -.6662D-04, -.7954D-04, -.9441D-04,
18303      #    -.1111D-03, -.1295D-03, -.1489D-03, -.1686D-03, -.1878D-03,
18304      #    -.2057D-03, -.2218D-03, -.2361D-03, -.2490D-03, -.2613D-03,
18305      #    -.2741D-03, -.2886D-03, -.3064D-03, -.3289D-03, -.3579D-03,
18306      #    -.3944D-03, -.4389D-03, -.4895D-03, -.5414D-03, -.5851D-03,
18307      #    -.6073D-03, -.5946D-03, -.5408D-03, -.4524D-03, -.3489D-03,
18308      #    -.2524D-03, -.1767D-03, -.1244D-03, -.9029D-04, -.6776D-04,
18309      #    -.5190D-04, -.3990D-04, -.3044D-04, -.2297D-04, -.1704D-04,
18310      #    -.1250D-04, -.9105D-05, -.6505D-05, -.4638D-05, -.3305D-05,
18311      #    -.2372D-05/
18312
18313       data (calcpts(j,43), j = 1,neta) /-.1880D-06, -.2277D-06,
18314      #    -.2758D-06, -.3342D-06, -.4049D-06, -.4906D-06, -.5944D-06,
18315      #    -.7201D-06, -.8723D-06, -.1057D-05, -.1281D-05, -.1551D-05,
18316      #    -.1879D-05, -.2277D-05, -.2758D-05, -.3342D-05, -.4049D-05,
18317      #    -.4904D-05, -.5941D-05, -.7196D-05, -.8714D-05, -.1055D-04,
18318      #    -.1278D-04, -.1546D-04, -.1870D-04, -.2261D-04, -.2729D-04,
18319      #    -.3291D-04, -.3959D-04, -.4748D-04, -.5669D-04, -.6728D-04,
18320      #    -.7919D-04, -.9224D-04, -.1060D-03, -.1200D-03, -.1336D-03,
18321      #    -.1462D-03, -.1573D-03, -.1670D-03, -.1755D-03, -.1833D-03,
18322      #    -.1910D-03, -.1993D-03, -.2093D-03, -.2217D-03, -.2379D-03,
18323      #    -.2588D-03, -.2852D-03, -.3172D-03, -.3537D-03, -.3909D-03,
18324      #    -.4218D-03, -.4371D-03, -.4269D-03, -.3872D-03, -.3228D-03,
18325      #    -.2480D-03, -.1787D-03, -.1247D-03, -.8754D-04, -.6341D-04,
18326      #    -.4755D-04, -.3642D-04, -.2802D-04, -.2135D-04, -.1609D-04,
18327      #    -.1195D-04, -.8754D-05, -.6354D-05, -.4554D-05, -.3288D-05,
18328      #    -.2288D-05/
18329
18330       data (calcpts(j,44), j = 1,neta) /-.1338D-06, -.1621D-06,
18331      #    -.1963D-06, -.2378D-06, -.2880D-06, -.3489D-06, -.4227D-06,
18332      #    -.5121D-06, -.6204D-06, -.7516D-06, -.9106D-06, -.1103D-05,
18333      #    -.1337D-05, -.1619D-05, -.1961D-05, -.2376D-05, -.2879D-05,
18334      #    -.3488D-05, -.4225D-05, -.5117D-05, -.6197D-05, -.7504D-05,
18335      #    -.9086D-05, -.1100D-04, -.1330D-04, -.1608D-04, -.1941D-04,
18336      #    -.2340D-04, -.2815D-04, -.3376D-04, -.4031D-04, -.4784D-04,
18337      #    -.5630D-04, -.6557D-04, -.7537D-04, -.8529D-04, -.9487D-04,
18338      #    -.1037D-03, -.1115D-03, -.1182D-03, -.1238D-03, -.1288D-03,
18339      #    -.1335D-03, -.1384D-03, -.1439D-03, -.1508D-03, -.1596D-03,
18340      #    -.1712D-03, -.1863D-03, -.2053D-03, -.2284D-03, -.2546D-03,
18341      #    -.2812D-03, -.3031D-03, -.3135D-03, -.3057D-03, -.2764D-03,
18342      #    -.2298D-03, -.1760D-03, -.1263D-03, -.8785D-04, -.6152D-04,
18343      #    -.4446D-04, -.3332D-04, -.2552D-04, -.1959D-04, -.1499D-04,
18344      #    -.1126D-04, -.8392D-05, -.6126D-05, -.4459D-05, -.3193D-05,
18345      #    -.2259D-05/
18346
18347       data (calcpts(j,45), j = 1,neta) /-.9473D-07, -.1149D-06,
18348      #    -.1392D-06, -.1688D-06, -.2045D-06, -.2477D-06, -.3001D-06,
18349      #    -.3636D-06, -.4404D-06, -.5337D-06, -.6466D-06, -.7833D-06,
18350      #    -.9490D-06, -.1150D-05, -.1393D-05, -.1687D-05, -.2044D-05,
18351      #    -.2476D-05, -.3000D-05, -.3634D-05, -.4400D-05, -.5328D-05,
18352      #    -.6451D-05, -.7807D-05, -.9444D-05, -.1142D-04, -.1378D-04,
18353      #    -.1662D-04, -.1999D-04, -.2397D-04, -.2862D-04, -.3397D-04,
18354      #    -.3997D-04, -.4655D-04, -.5350D-04, -.6052D-04, -.6730D-04,
18355      #    -.7351D-04, -.7896D-04, -.8357D-04, -.8742D-04, -.9068D-04,
18356      #    -.9360D-04, -.9648D-04, -.9962D-04, -.1034D-03, -.1082D-03,
18357      #    -.1145D-03, -.1228D-03, -.1336D-03, -.1473D-03, -.1640D-03,
18358      #    -.1827D-03, -.2017D-03, -.2172D-03, -.2243D-03, -.2184D-03,
18359      #    -.1970D-03, -.1634D-03, -.1247D-03, -.8922D-04, -.6185D-04,
18360      #    -.4319D-04, -.3121D-04, -.2337D-04, -.1791D-04, -.1377D-04,
18361      #    -.1051D-04, -.7907D-05, -.5907D-05, -.4307D-05, -.3107D-05,
18362      #    -.2241D-05/
18363
18364       data (calcpts(j,46), j = 1,neta) /-.6701D-07, -.8119D-07,
18365      #    -.9870D-07, -.1195D-06, -.1447D-06, -.1754D-06, -.2127D-06,
18366      #    -.2576D-06, -.3120D-06, -.3781D-06, -.4581D-06, -.5551D-06,
18367      #    -.6724D-06, -.8147D-06, -.9868D-06, -.1196D-05, -.1449D-05,
18368      #    -.1755D-05, -.2125D-05, -.2575D-05, -.3118D-05, -.3776D-05,
18369      #    -.4571D-05, -.5532D-05, -.6691D-05, -.8089D-05, -.9765D-05,
18370      #    -.1177D-04, -.1416D-04, -.1699D-04, -.2028D-04, -.2407D-04,
18371      #    -.2832D-04, -.3298D-04, -.3790D-04, -.4286D-04, -.4765D-04,
18372      #    -.5203D-04, -.5584D-04, -.5904D-04, -.6167D-04, -.6384D-04,
18373      #    -.6570D-04, -.6744D-04, -.6924D-04, -.7133D-04, -.7392D-04,
18374      #    -.7731D-04, -.8181D-04, -.8777D-04, -.9555D-04, -.1054D-03,
18375      #    -.1173D-03, -.1308D-03, -.1443D-03, -.1552D-03, -.1602D-03,
18376      #    -.1556D-03, -.1401D-03, -.1158D-03, -.8818D-04, -.6290D-04,
18377      #    -.4347D-04, -.3029D-04, -.2185D-04, -.1636D-04, -.1252D-04,
18378      #    -.9628D-05, -.7341D-05, -.5528D-05, -.4108D-05, -.3008D-05,
18379      #    -.2181D-05/
18380
18381       data (calcpts(j,47), j = 1,neta) /-.4757D-07, -.5758D-07,
18382      #    -.6968D-07, -.8450D-07, -.1024D-06, -.1242D-06, -.1503D-06,
18383      #    -.1822D-06, -.2207D-06, -.2675D-06, -.3240D-06, -.3926D-06,
18384      #    -.4757D-06, -.5763D-06, -.6981D-06, -.8458D-06, -.1025D-05,
18385      #    -.1241D-05, -.1504D-05, -.1821D-05, -.2206D-05, -.2671D-05,
18386      #    -.3234D-05, -.3913D-05, -.4734D-05, -.5722D-05, -.6908D-05,
18387      #    -.8329D-05, -.1002D-04, -.1202D-04, -.1435D-04, -.1702D-04,
18388      #    -.2003D-04, -.2333D-04, -.2680D-04, -.3031D-04, -.3369D-04,
18389      #    -.3677D-04, -.3945D-04, -.4168D-04, -.4349D-04, -.4495D-04,
18390      #    -.4616D-04, -.4724D-04, -.4829D-04, -.4945D-04, -.5086D-04,
18391      #    -.5267D-04, -.5507D-04, -.5828D-04, -.6256D-04, -.6814D-04,
18392      #    -.7521D-04, -.8374D-04, -.9332D-04, -.1029D-03, -.1107D-03,
18393      #    -.1141D-03, -.1106D-03, -.9943D-04, -.8204D-04, -.6228D-04,
18394      #    -.4429D-04, -.3052D-04, -.2122D-04, -.1528D-04, -.1143D-04,
18395      #    -.8745D-05, -.6726D-05, -.5126D-05, -.3859D-05, -.2859D-05,
18396      #    -.2092D-05/
18397
18398       data (calcpts(j,48), j = 1,neta) /-.3318D-07, -.4036D-07,
18399      #    -.4933D-07, -.5977D-07, -.7242D-07, -.8763D-07, -.1062D-06,
18400      #    -.1288D-06, -.1559D-06, -.1890D-06, -.2290D-06, -.2774D-06,
18401      #    -.3361D-06, -.4072D-06, -.4933D-06, -.5976D-06, -.7240D-06,
18402      #    -.8771D-06, -.1062D-05, -.1287D-05, -.1558D-05, -.1887D-05,
18403      #    -.2285D-05, -.2765D-05, -.3345D-05, -.4043D-05, -.4881D-05,
18404      #    -.5885D-05, -.7080D-05, -.8490D-05, -.1014D-04, -.1203D-04,
18405      #    -.1415D-04, -.1648D-04, -.1893D-04, -.2141D-04, -.2379D-04,
18406      #    -.2597D-04, -.2785D-04, -.2941D-04, -.3066D-04, -.3166D-04,
18407      #    -.3246D-04, -.3313D-04, -.3376D-04, -.3442D-04, -.3519D-04,
18408      #    -.3615D-04, -.3743D-04, -.3914D-04, -.4144D-04, -.4450D-04,
18409      #    -.4849D-04, -.5354D-04, -.5964D-04, -.6647D-04, -.7329D-04,
18410      #    -.7875D-04, -.8108D-04, -.7854D-04, -.7046D-04, -.5801D-04,
18411      #    -.4393D-04, -.3116D-04, -.2142D-04, -.1486D-04, -.1069D-04,
18412      #    -.7993D-05, -.6113D-05, -.4700D-05, -.3586D-05, -.2700D-05,
18413      #    -.2000D-05/
18414
18415       data (calcpts(j,49), j = 1,neta) /-.2387D-07, -.2858D-07,
18416      #    -.3511D-07, -.4218D-07, -.5120D-07, -.6191D-07, -.7500D-07,
18417      #    -.9087D-07, -.1101D-06, -.1334D-06, -.1616D-06, -.1957D-06,
18418      #    -.2372D-06, -.2873D-06, -.3480D-06, -.4217D-06, -.5109D-06,
18419      #    -.6189D-06, -.7496D-06, -.9081D-06, -.1100D-05, -.1332D-05,
18420      #    -.1612D-05, -.1951D-05, -.2360D-05, -.2853D-05, -.3444D-05,
18421      #    -.4152D-05, -.4995D-05, -.5990D-05, -.7151D-05, -.8486D-05,
18422      #    -.9986D-05, -.1163D-04, -.1336D-04, -.1510D-04, -.1678D-04,
18423      #    -.1831D-04, -.1963D-04, -.2073D-04, -.2160D-04, -.2228D-04,
18424      #    -.2282D-04, -.2326D-04, -.2364D-04, -.2402D-04, -.2445D-04,
18425      #    -.2496D-04, -.2563D-04, -.2653D-04, -.2775D-04, -.2939D-04,
18426      #    -.3159D-04, -.3444D-04, -.3805D-04, -.4239D-04, -.4725D-04,
18427      #    -.5208D-04, -.5593D-04, -.5753D-04, -.5566D-04, -.4986D-04,
18428      #    -.4097D-04, -.3095D-04, -.2190D-04, -.1502D-04, -.1040D-04,
18429      #    -.7471D-05, -.5584D-05, -.4271D-05, -.3284D-05, -.2504D-05,
18430      #    -.1884D-05/
18431
18432       data (dlaeta(j), j = 1,neta) /
18433      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
18434      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
18435      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
18436      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
18437      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
18438      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
18439      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
18440      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
18441      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
18442      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
18443      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
18444      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
18445      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
18446      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
18447      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
18448
18449       data (dlaxi(j), j = 1,nxi) /
18450      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
18451      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
18452      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
18453      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
18454      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
18455      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
18456      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
18457      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
18458      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
18459      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
18460
18461       dleta = dlog10(eta)
18462       dlxi = dlog10(xi)
18463       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
18464       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
18465       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
18466       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
18467       call locate(dlaeta,neta, dleta, ieta)
18468       call locate(dlaxi, nxi, dlxi, ixi)
18469 c     interpolating between the appropriate points
18470       delxi = 1d0/6d0
18471       deleta = 1d0/6d0
18472 c  lagrange 3-pt.
18473       if (ixi .le. 2) ixi = 2
18474       if (ixi .ge. 48) ixi = 48
18475       if (ieta .le. 2) ieta = 2
18476       if (ieta .ge. 72) ieta = 72
18477       pxi = (dlxi - dlaxi(ixi))/delxi
18478       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
18479      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
18480      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
18481       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
18482      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
18483      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
18484       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
18485      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
18486      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
18487       peta = (dleta - dlaeta(ieta))/deleta
18488       h1_ALg = peta*(peta-1d0)/2d0*f(-1) +
18489      #     (1d0 - peta**2)*f(0) +
18490 CMB  #     + peta*(peta+1d0)/2d0*f(1)
18491      #     peta*(peta+1d0)/2d0*f(1)
18492       return
18493       end
18494
18495 c     ========================================
18496       double precision function h1_FLg(eta,xi)
18497 c     ========================================
18498
18499 c     eq (10) in PLB347 (1995) 143 - 151 for the longitudinal piece
18500 c     MSbar scheme
18501 c     This routine is called subclcf in the original code.
18502 c     Called sclcf in updated code (03/06/96).
18503
18504       implicit none
18505       integer neta, nxi
18506       parameter (neta = 73, nxi = 49)
18507       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
18508       double precision eta, xi, dleta, dlxi
18509       double precision pxi, peta, f(-1:1), delxi, deleta
18510       integer j, ieta, ixi
18511
18512       data (calcpts(j, 1), j = 1,neta) /-.1526D-12, -.3323D-12,
18513      #    -.3907D-12, -.6839D-12, -.1600D-11, -.3278D-11, -.4479D-11,
18514      #    -.9221D-11, -.1419D-10, -.2587D-10, -.4799D-10, -.7559D-10,
18515      #    -.1451D-09, -.2621D-09, -.4500D-09, -.8116D-09, -.1474D-08,
18516      #    -.2638D-08, -.4581D-08, -.8208D-08, -.1447D-07, -.2578D-07,
18517      #    -.4622D-07, -.8126D-07, -.1450D-06, -.2590D-06, -.4588D-06,
18518      #    -.8141D-06, -.1438D-05, -.2515D-05, -.4340D-05, -.7316D-05,
18519      #    -.1190D-04, -.1839D-04, -.2652D-04, -.3509D-04, -.4205D-04,
18520      #    -.4536D-04, -.4420D-04, -.3927D-04, -.3230D-04, -.2498D-04,
18521      #    -.1844D-04, -.1315D-04, -.9162D-05, -.6272D-05, -.4243D-05,
18522      #    -.2849D-05, -.1902D-05, -.1265D-05, -.8396D-06, -.5559D-06,
18523      #    -.3675D-06, -.2427D-06, -.1601D-06, -.1055D-06, -.6950D-07,
18524      #    -.4569D-07, -.3001D-07, -.1968D-07, -.1290D-07, -.8435D-08,
18525      #    -.5514D-08, -.3594D-08, -.4557D-08, -.3116D-08, -.2128D-08,
18526      #    -.1452D-08, -.9914D-09, -.6763D-09, -.4610D-09, -.3142D-09,
18527      #    -.2142D-09/
18528
18529       data (calcpts(j, 2), j = 1,neta) /-.1979D-12, -.6116D-12,
18530      #    -.5642D-12, -.1280D-11, -.3041D-11, -.3966D-11, -.7910D-11,
18531      #    -.1347D-10, -.2032D-10, -.3911D-10, -.7392D-10, -.1265D-09,
18532      #    -.2222D-09, -.4048D-09, -.6812D-09, -.1207D-08, -.2240D-08,
18533      #    -.3794D-08, -.6782D-08, -.1216D-07, -.2132D-07, -.3805D-07,
18534      #    -.6763D-07, -.1202D-06, -.2143D-06, -.3812D-06, -.6731D-06,
18535      #    -.1196D-05, -.2112D-05, -.3695D-05, -.6377D-05, -.1074D-04,
18536      #    -.1746D-04, -.2699D-04, -.3893D-04, -.5150D-04, -.6170D-04,
18537      #    -.6657D-04, -.6486D-04, -.5763D-04, -.4739D-04, -.3665D-04,
18538      #    -.2706D-04, -.1930D-04, -.1345D-04, -.9205D-05, -.6227D-05,
18539      #    -.4180D-05, -.2791D-05, -.1856D-05, -.1232D-05, -.8156D-06,
18540      #    -.5392D-06, -.3562D-06, -.2349D-06, -.1548D-06, -.1020D-06,
18541      #    -.6705D-07, -.4403D-07, -.2888D-07, -.1893D-07, -.1238D-07,
18542      #    -.8090D-08, -.5273D-08, -.3429D-08, -.4572D-08, -.3123D-08,
18543      #    -.2131D-08, -.1455D-08, -.9921D-09, -.6764D-09, -.4611D-09,
18544      #    -.3143D-09/
18545
18546       data (calcpts(j, 3), j = 1,neta) /-.2047D-12, -.4402D-12,
18547      #    -.5594D-12, -.1213D-11, -.3449D-11, -.4707D-11, -.9446D-11,
18548      #    -.1768D-10, -.2612D-10, -.5612D-10, -.9231D-10, -.1774D-09,
18549      #    -.3093D-09, -.5600D-09, -.9492D-09, -.1660D-08, -.3105D-08,
18550      #    -.5504D-08, -.9882D-08, -.1767D-07, -.3091D-07, -.5602D-07,
18551      #    -.9938D-07, -.1750D-06, -.3126D-06, -.5560D-06, -.9846D-06,
18552      #    -.1747D-05, -.3092D-05, -.5405D-05, -.9329D-05, -.1574D-04,
18553      #    -.2559D-04, -.3955D-04, -.5706D-04, -.7550D-04, -.9047D-04,
18554      #    -.9761D-04, -.9510D-04, -.8452D-04, -.6949D-04, -.5375D-04,
18555      #    -.3968D-04, -.2830D-04, -.1972D-04, -.1350D-04, -.9131D-05,
18556      #    -.6129D-05, -.4092D-05, -.2721D-05, -.1806D-05, -.1196D-05,
18557      #    -.7903D-06, -.5220D-06, -.3444D-06, -.2268D-06, -.1495D-06,
18558      #    -.9828D-07, -.6453D-07, -.4234D-07, -.2774D-07, -.1814D-07,
18559      #    -.1186D-07, -.7726D-08, -.5024D-08, -.3262D-08, -.4580D-08,
18560      #    -.3126D-08, -.2133D-08, -.1455D-08, -.9916D-09, -.6762D-09,
18561      #    -.4608D-09/
18562
18563       data (calcpts(j, 4), j = 1,neta) /-.3980D-12, -.9437D-12,
18564      #    -.1372D-11, -.2820D-11, -.4058D-11, -.7437D-11, -.1433D-10,
18565      #    -.2712D-10, -.4303D-10, -.7171D-10, -.1424D-09, -.2625D-09,
18566      #    -.4584D-09, -.8241D-09, -.1411D-08, -.2519D-08, -.4554D-08,
18567      #    -.8235D-08, -.1450D-07, -.2605D-07, -.4624D-07, -.8090D-07,
18568      #    -.1457D-06, -.2586D-06, -.4593D-06, -.8177D-06, -.1447D-05,
18569      #    -.2562D-05, -.4530D-05, -.7931D-05, -.1368D-04, -.2309D-04,
18570      #    -.3753D-04, -.5802D-04, -.8370D-04, -.1107D-03, -.1327D-03,
18571      #    -.1432D-03, -.1395D-03, -.1240D-03, -.1019D-03, -.7884D-04,
18572      #    -.5820D-04, -.4152D-04, -.2892D-04, -.1980D-04, -.1339D-04,
18573      #    -.8990D-05, -.6002D-05, -.3991D-05, -.2649D-05, -.1754D-05,
18574      #    -.1159D-05, -.7655D-06, -.5050D-06, -.3328D-06, -.2192D-06,
18575      #    -.1441D-06, -.9463D-07, -.6208D-07, -.4067D-07, -.2659D-07,
18576      #    -.1738D-07, -.1133D-07, -.7365D-08, -.4782D-08, -.3097D-08,
18577      #    -.4585D-08, -.3129D-08, -.2134D-08, -.1454D-08, -.9915D-09,
18578      #    -.6759D-09/
18579
18580       data (calcpts(j, 5), j = 1,neta) /-.8492D-12, -.1819D-11,
18581      #    -.1594D-11, -.4321D-11, -.7149D-11, -.1278D-10, -.2327D-10,
18582      #    -.4772D-10, -.5993D-10, -.1160D-09, -.2318D-09, -.3877D-09,
18583      #    -.6909D-09, -.1180D-08, -.2148D-08, -.3792D-08, -.6799D-08,
18584      #    -.1217D-07, -.2153D-07, -.3862D-07, -.6690D-07, -.1197D-06,
18585      #    -.2149D-06, -.3801D-06, -.6744D-06, -.1203D-05, -.2123D-05,
18586      #    -.3762D-05, -.6655D-05, -.1164D-04, -.2008D-04, -.3386D-04,
18587      #    -.5505D-04, -.8509D-04, -.1227D-03, -.1624D-03, -.1945D-03,
18588      #    -.2099D-03, -.2045D-03, -.1818D-03, -.1495D-03, -.1156D-03,
18589      #    -.8534D-04, -.6087D-04, -.4240D-04, -.2902D-04, -.1963D-04,
18590      #    -.1318D-04, -.8800D-05, -.5851D-05, -.3883D-05, -.2571D-05,
18591      #    -.1699D-05, -.1122D-05, -.7403D-06, -.4877D-06, -.3213D-06,
18592      #    -.2112D-06, -.1387D-06, -.9099D-07, -.5960D-07, -.3897D-07,
18593      #    -.2547D-07, -.1659D-07, -.1079D-07, -.7007D-08, -.4537D-08,
18594      #    -.2929D-08, -.4588D-08, -.3128D-08, -.2132D-08, -.1454D-08,
18595      #    -.9910D-09/
18596
18597       data (calcpts(j, 6), j = 1,neta) /-.1553D-11, -.2541D-11,
18598      #    -.1878D-11, -.5611D-11, -.1141D-10, -.1789D-10, -.3021D-10,
18599      #    -.5472D-10, -.9229D-10, -.1729D-09, -.3173D-09, -.5690D-09,
18600      #    -.1020D-08, -.1828D-08, -.3025D-08, -.5610D-08, -.9985D-08,
18601      #    -.1771D-07, -.3101D-07, -.5642D-07, -.9798D-07, -.1758D-06,
18602      #    -.3135D-06, -.5555D-06, -.9859D-06, -.1752D-05, -.3104D-05,
18603      #    -.5519D-05, -.9739D-05, -.1703D-04, -.2940D-04, -.4958D-04,
18604      #    -.8056D-04, -.1245D-03, -.1798D-03, -.2378D-03, -.2849D-03,
18605      #    -.3075D-03, -.2996D-03, -.2663D-03, -.2190D-03, -.1694D-03,
18606      #    -.1250D-03, -.8919D-04, -.6212D-04, -.4252D-04, -.2876D-04,
18607      #    -.1931D-04, -.1289D-04, -.8570D-05, -.5687D-05, -.3765D-05,
18608      #    -.2488D-05, -.1643D-05, -.1084D-05, -.7140D-06, -.4703D-06,
18609      #    -.3092D-06, -.2030D-06, -.1332D-06, -.8723D-07, -.5703D-07,
18610      #    -.3726D-07, -.2427D-07, -.1579D-07, -.1025D-07, -.6635D-08,
18611      #    -.4282D-08, -.2759D-08, -.4583D-08, -.3124D-08, -.2130D-08,
18612      #    -.1452D-08/
18613
18614       data (calcpts(j, 7), j = 1,neta) /-.1951D-11, -.3023D-11,
18615      #    -.3552D-11, -.6768D-11, -.1542D-10, -.3304D-10, -.4905D-10,
18616      #    -.8922D-10, -.1383D-09, -.2580D-09, -.4742D-09, -.7587D-09,
18617      #    -.1494D-08, -.2591D-08, -.4467D-08, -.8113D-08, -.1468D-07,
18618      #    -.2642D-07, -.4627D-07, -.8186D-07, -.1445D-06, -.2566D-06,
18619      #    -.4593D-06, -.8145D-06, -.1443D-05, -.2580D-05, -.4555D-05,
18620      #    -.8069D-05, -.1426D-04, -.2494D-04, -.4300D-04, -.7255D-04,
18621      #    -.1179D-03, -.1822D-03, -.2629D-03, -.3479D-03, -.4170D-03,
18622      #    -.4500D-03, -.4386D-03, -.3898D-03, -.3205D-03, -.2479D-03,
18623      #    -.1830D-03, -.1305D-03, -.9092D-04, -.6223D-04, -.4210D-04,
18624      #    -.2826D-04, -.1886D-04, -.1254D-04, -.8322D-05, -.5508D-05,
18625      #    -.3640D-05, -.2404D-05, -.1585D-05, -.1044D-05, -.6877D-06,
18626      #    -.4521D-06, -.2967D-06, -.1947D-06, -.1275D-06, -.8334D-07,
18627      #    -.5444D-07, -.3546D-07, -.2305D-07, -.1496D-07, -.9679D-08,
18628      #    -.6249D-08, -.4026D-08, -.2581D-08, -.4573D-08, -.3117D-08,
18629      #    -.2125D-08/
18630
18631       data (calcpts(j, 8), j = 1,neta) /-.3202D-11, -.4660D-11,
18632      #    -.6771D-11, -.1185D-10, -.2005D-10, -.3729D-10, -.7634D-10,
18633      #    -.1351D-09, -.2145D-09, -.3817D-09, -.7858D-09, -.1241D-08,
18634      #    -.2195D-08, -.3904D-08, -.6628D-08, -.1198D-07, -.2138D-07,
18635      #    -.3774D-07, -.6762D-07, -.1203D-06, -.2116D-06, -.3773D-06,
18636      #    -.6675D-06, -.1188D-05, -.2118D-05, -.3769D-05, -.6672D-05,
18637      #    -.1182D-04, -.2086D-04, -.3649D-04, -.6290D-04, -.1060D-03,
18638      #    -.1724D-03, -.2665D-03, -.3843D-03, -.5086D-03, -.6095D-03,
18639      #    -.6578D-03, -.6413D-03, -.5699D-03, -.4687D-03, -.3625D-03,
18640      #    -.2676D-03, -.1909D-03, -.1329D-03, -.9100D-04, -.6154D-04,
18641      #    -.4130D-04, -.2757D-04, -.1833D-04, -.1216D-04, -.8049D-05,
18642      #    -.5319D-05, -.3511D-05, -.2316D-05, -.1525D-05, -.1004D-05,
18643      #    -.6600D-06, -.4332D-06, -.2840D-06, -.1861D-06, -.1216D-06,
18644      #    -.7942D-07, -.5172D-07, -.3361D-07, -.2180D-07, -.1412D-07,
18645      #    -.9108D-08, -.5862D-08, -.3756D-08, -.2397D-08, -.4558D-08,
18646      #    -.3106D-08/
18647
18648       data (calcpts(j, 9), j = 1,neta) /-.2020D-11, -.5453D-11,
18649      #    -.5060D-11, -.1092D-10, -.3336D-10, -.5003D-10, -.9420D-10,
18650      #    -.1724D-09, -.2710D-09, -.5493D-09, -.9121D-09, -.1654D-08,
18651      #    -.2942D-08, -.5559D-08, -.9296D-08, -.1649D-07, -.3097D-07,
18652      #    -.5391D-07, -.9745D-07, -.1736D-06, -.3048D-06, -.5456D-06,
18653      #    -.9811D-06, -.1731D-05, -.3082D-05, -.5485D-05, -.9689D-05,
18654      #    -.1719D-04, -.3034D-04, -.5312D-04, -.9155D-04, -.1544D-03,
18655      #    -.2510D-03, -.3881D-03, -.5599D-03, -.7412D-03, -.8885D-03,
18656      #    -.9592D-03, -.9351D-03, -.8313D-03, -.6838D-03, -.5289D-03,
18657      #    -.3904D-03, -.2785D-03, -.1939D-03, -.1327D-03, -.8974D-04,
18658      #    -.6022D-04, -.4019D-04, -.2671D-04, -.1772D-04, -.1173D-04,
18659      #    -.7748D-05, -.5113D-05, -.3372D-05, -.2221D-05, -.1462D-05,
18660      #    -.9603D-06, -.6301D-06, -.4131D-06, -.2704D-06, -.1766D-06,
18661      #    -.1153D-06, -.7510D-07, -.4878D-07, -.3163D-07, -.2046D-07,
18662      #    -.1318D-07, -.8481D-08, -.5434D-08, -.3464D-08, -.2200D-08,
18663      #    -.4531D-08/
18664
18665       data (calcpts(j,10), j = 1,neta) /-.4329D-11, -.8017D-11,
18666      #    -.1468D-10, -.1912D-10, -.4450D-10, -.7630D-10, -.1318D-09,
18667      #    -.2570D-09, -.4401D-09, -.7766D-09, -.1464D-08, -.2495D-08,
18668      #    -.4473D-08, -.8107D-08, -.1423D-07, -.2431D-07, -.4600D-07,
18669      #    -.7971D-07, -.1427D-06, -.2553D-06, -.4500D-06, -.8034D-06,
18670      #    -.1424D-05, -.2529D-05, -.4495D-05, -.7996D-05, -.1418D-04,
18671      #    -.2511D-04, -.4424D-04, -.7734D-04, -.1333D-03, -.2246D-03,
18672      #    -.3650D-03, -.5643D-03, -.8141D-03, -.1078D-02, -.1292D-02,
18673      #    -.1396D-02, -.1361D-02, -.1210D-02, -.9954D-03, -.7700D-03,
18674      #    -.5684D-03, -.4053D-03, -.2823D-03, -.1931D-03, -.1306D-03,
18675      #    -.8760D-04, -.5845D-04, -.3884D-04, -.2576D-04, -.1704D-04,
18676      #    -.1125D-04, -.7428D-05, -.4896D-05, -.3223D-05, -.2121D-05,
18677      #    -.1393D-05, -.9137D-06, -.5988D-06, -.3918D-06, -.2558D-06,
18678      #    -.1670D-06, -.1086D-06, -.7052D-07, -.4570D-07, -.2953D-07,
18679      #    -.1901D-07, -.1223D-07, -.7824D-08, -.4982D-08, -.3159D-08,
18680      #    -.1992D-08/
18681
18682       data (calcpts(j,11), j = 1,neta) /-.7740D-11, -.1319D-10,
18683      #    -.1127D-10, -.3932D-10, -.7316D-10, -.1185D-09, -.2253D-09,
18684      #    -.4273D-09, -.7028D-09, -.1122D-08, -.2186D-08, -.3787D-08,
18685      #    -.6692D-08, -.1282D-07, -.2105D-07, -.3761D-07, -.6681D-07,
18686      #    -.1181D-06, -.2093D-06, -.3678D-06, -.6528D-06, -.1171D-05,
18687      #    -.2076D-05, -.3676D-05, -.6540D-05, -.1168D-04, -.2046D-04,
18688      #    -.3634D-04, -.6416D-04, -.1120D-03, -.1930D-03, -.3253D-03,
18689      #    -.5284D-03, -.8167D-03, -.1178D-02, -.1560D-02, -.1872D-02,
18690      #    -.2022D-02, -.1973D-02, -.1755D-02, -.1444D-02, -.1117D-02,
18691      #    -.8243D-03, -.5878D-03, -.4092D-03, -.2799D-03, -.1892D-03,
18692      #    -.1269D-03, -.8463D-04, -.5622D-04, -.3727D-04, -.2465D-04,
18693      #    -.1627D-04, -.1073D-04, -.7072D-05, -.4653D-05, -.3060D-05,
18694      #    -.2009D-05, -.1317D-05, -.8626D-06, -.5641D-06, -.3682D-06,
18695      #    -.2400D-06, -.1560D-06, -.1012D-06, -.6552D-07, -.4230D-07,
18696      #    -.2721D-07, -.1746D-07, -.1116D-07, -.7094D-08, -.4488D-08,
18697      #    -.2823D-08/
18698
18699       data (calcpts(j,12), j = 1,neta) /-.5151D-11, -.2014D-10,
18700      #    -.2631D-10, -.4695D-10, -.1052D-09, -.1791D-09, -.3485D-09,
18701      #    -.6448D-09, -.8489D-09, -.1639D-08, -.3087D-08, -.5399D-08,
18702      #    -.9179D-08, -.1779D-07, -.2957D-07, -.5384D-07, -.9629D-07,
18703      #    -.1688D-06, -.3013D-06, -.5323D-06, -.9346D-06, -.1675D-05,
18704      #    -.2995D-05, -.5313D-05, -.9461D-05, -.1675D-04, -.2958D-04,
18705      #    -.5241D-04, -.9238D-04, -.1612D-03, -.2776D-03, -.4674D-03,
18706      #    -.7593D-03, -.1173D-02, -.1694D-02, -.2243D-02, -.2692D-02,
18707      #    -.2911D-02, -.2842D-02, -.2528D-02, -.2081D-02, -.1610D-02,
18708      #    -.1188D-02, -.8472D-03, -.5896D-03, -.4031D-03, -.2724D-03,
18709      #    -.1826D-03, -.1217D-03, -.8082D-04, -.5355D-04, -.3539D-04,
18710      #    -.2335D-04, -.1540D-04, -.1014D-04, -.6664D-05, -.4380D-05,
18711      #    -.2873D-05, -.1881D-05, -.1231D-05, -.8042D-06, -.5242D-06,
18712      #    -.3414D-06, -.2216D-06, -.1435D-06, -.9286D-07, -.5979D-07,
18713      #    -.3840D-07, -.2459D-07, -.1567D-07, -.9930D-08, -.6256D-08,
18714      #    -.3925D-08/
18715
18716       data (calcpts(j,13), j = 1,neta) /-.1063D-10, -.3297D-10,
18717      #    -.2997D-10, -.6987D-10, -.1541D-09, -.1764D-09, -.4019D-09,
18718      #    -.7702D-09, -.1329D-08, -.2305D-08, -.4447D-08, -.7561D-08,
18719      #    -.1408D-07, -.2476D-07, -.4276D-07, -.7568D-07, -.1385D-06,
18720      #    -.2503D-06, -.4271D-06, -.7685D-06, -.1350D-05, -.2407D-05,
18721      #    -.4305D-05, -.7545D-05, -.1347D-04, -.2398D-04, -.4235D-04,
18722      #    -.7490D-04, -.1318D-03, -.2300D-03, -.3951D-03, -.6661D-03,
18723      #    -.1080D-02, -.1670D-02, -.2411D-02, -.3195D-02, -.3840D-02,
18724      #    -.4154D-02, -.4059D-02, -.3614D-02, -.2975D-02, -.2302D-02,
18725      #    -.1699D-02, -.1211D-02, -.8425D-03, -.5757D-03, -.3887D-03,
18726      #    -.2604D-03, -.1735D-03, -.1151D-03, -.7620D-04, -.5031D-04,
18727      #    -.3317D-04, -.2184D-04, -.1437D-04, -.9435D-05, -.6194D-05,
18728      #    -.4058D-05, -.2655D-05, -.1734D-05, -.1131D-05, -.7362D-06,
18729      #    -.4786D-06, -.3101D-06, -.2004D-06, -.1293D-06, -.8305D-07,
18730      #    -.5313D-07, -.3392D-07, -.2152D-07, -.1358D-07, -.8518D-08,
18731      #    -.5306D-08/
18732
18733       data (calcpts(j,14), j = 1,neta) /-.2328D-10, -.4109D-10,
18734      #    -.6336D-10, -.1073D-09, -.2166D-09, -.4000D-09, -.6766D-09,
18735      #    -.1298D-08, -.1955D-08, -.3561D-08, -.6533D-08, -.1121D-07,
18736      #    -.1965D-07, -.3564D-07, -.6167D-07, -.1104D-06, -.2020D-06,
18737      #    -.3533D-06, -.6145D-06, -.1108D-05, -.1935D-05, -.3441D-05,
18738      #    -.6092D-05, -.1088D-04, -.1924D-04, -.3402D-04, -.5993D-04,
18739      #    -.1058D-03, -.1861D-03, -.3243D-03, -.5572D-03, -.9357D-03,
18740      #    -.1517D-02, -.2345D-02, -.3386D-02, -.4491D-02, -.5401D-02,
18741      #    -.5853D-02, -.5726D-02, -.5103D-02, -.4204D-02, -.3254D-02,
18742      #    -.2401D-02, -.1710D-02, -.1189D-02, -.8120D-03, -.5478D-03,
18743      #    -.3666D-03, -.2439D-03, -.1616D-03, -.1069D-03, -.7047D-04,
18744      #    -.4639D-04, -.3050D-04, -.2003D-04, -.1314D-04, -.8608D-05,
18745      #    -.5629D-05, -.3675D-05, -.2396D-05, -.1559D-05, -.1012D-05,
18746      #    -.6559D-06, -.4238D-06, -.2728D-06, -.1752D-06, -.1121D-06,
18747      #    -.7147D-07, -.4532D-07, -.2857D-07, -.1789D-07, -.1112D-07,
18748      #    -.6848D-08/
18749
18750       data (calcpts(j,15), j = 1,neta) /-.1614D-10, -.4985D-10,
18751      #    -.4193D-10, -.9810D-10, -.3052D-09, -.5043D-09, -.7527D-09,
18752      #    -.1530D-08, -.2329D-08, -.3894D-08, -.8865D-08, -.1514D-07,
18753      #    -.2616D-07, -.4793D-07, -.8227D-07, -.1503D-06, -.2650D-06,
18754      #    -.4862D-06, -.8500D-06, -.1523D-05, -.2672D-05, -.4765D-05,
18755      #    -.8445D-05, -.1498D-04, -.2667D-04, -.4723D-04, -.8297D-04,
18756      #    -.1465D-03, -.2575D-03, -.4472D-03, -.7674D-03, -.1288D-02,
18757      #    -.2085D-02, -.3222D-02, -.4654D-02, -.6183D-02, -.7451D-02,
18758      #    -.8090D-02, -.7929D-02, -.7077D-02, -.5836D-02, -.4518D-02,
18759      #    -.3333D-02, -.2373D-02, -.1648D-02, -.1124D-02, -.7570D-03,
18760      #    -.5058D-03, -.3360D-03, -.2222D-03, -.1467D-03, -.9650D-04,
18761      #    -.6339D-04, -.4159D-04, -.2725D-04, -.1782D-04, -.1165D-04,
18762      #    -.7591D-05, -.4940D-05, -.3209D-05, -.2080D-05, -.1345D-05,
18763      #    -.8676D-06, -.5575D-06, -.3569D-06, -.2278D-06, -.1446D-06,
18764      #    -.9136D-07, -.5733D-07, -.3575D-07, -.2207D-07, -.1349D-07,
18765      #    -.8146D-08/
18766
18767       data (calcpts(j,16), j = 1,neta) /-.3779D-10, -.7818D-10,
18768      #    -.8196D-10, -.1363D-09, -.4489D-09, -.6883D-09, -.1116D-08,
18769      #    -.2256D-08, -.3465D-08, -.5744D-08, -.1173D-07, -.2133D-07,
18770      #    -.3697D-07, -.6801D-07, -.1161D-06, -.2106D-06, -.3768D-06,
18771      #    -.6683D-06, -.1181D-05, -.2105D-05, -.3688D-05, -.6626D-05,
18772      #    -.1173D-04, -.2059D-04, -.3645D-04, -.6435D-04, -.1129D-03,
18773      #    -.1981D-03, -.3482D-03, -.6031D-03, -.1029D-02, -.1724D-02,
18774      #    -.2789D-02, -.4304D-02, -.6223D-02, -.8281D-02, -.1000D-01,
18775      #    -.1089D-01, -.1071D-01, -.9576D-02, -.7907D-02, -.6124D-02,
18776      #    -.4516D-02, -.3212D-02, -.2228D-02, -.1516D-02, -.1019D-02,
18777      #    -.6792D-03, -.4498D-03, -.2967D-03, -.1952D-03, -.1281D-03,
18778      #    -.8383D-04, -.5480D-04, -.3576D-04, -.2330D-04, -.1516D-04,
18779      #    -.9831D-05, -.6362D-05, -.4111D-05, -.2647D-05, -.1699D-05,
18780      #    -.1088D-05, -.6925D-06, -.4388D-06, -.2768D-06, -.1733D-06,
18781      #    -.1077D-06, -.6648D-07, -.4052D-07, -.2428D-07, -.1431D-07,
18782      #    -.8243D-08/
18783
18784       data (calcpts(j,17), j = 1,neta) /-.6224D-10, -.1157D-09,
18785      #    -.2071D-09, -.2779D-09, -.5111D-09, -.1001D-08, -.1657D-08,
18786      #    -.3073D-08, -.4998D-08, -.8622D-08, -.1677D-07, -.2878D-07,
18787      #    -.5099D-07, -.9334D-07, -.1627D-06, -.2805D-06, -.5088D-06,
18788      #    -.9048D-06, -.1583D-05, -.2830D-05, -.4949D-05, -.8740D-05,
18789      #    -.1552D-04, -.2748D-04, -.4835D-04, -.8505D-04, -.1485D-03,
18790      #    -.2604D-03, -.4541D-03, -.7820D-03, -.1333D-02, -.2222D-02,
18791      #    -.3583D-02, -.5523D-02, -.7988D-02, -.1065D-01, -.1292D-01,
18792      #    -.1413D-01, -.1394D-01, -.1251D-01, -.1035D-01, -.8017D-02,
18793      #    -.5909D-02, -.4197D-02, -.2903D-02, -.1970D-02, -.1319D-02,
18794      #    -.8760D-03, -.5778D-03, -.3793D-03, -.2484D-03, -.1620D-03,
18795      #    -.1055D-03, -.6854D-04, -.4444D-04, -.2874D-04, -.1856D-04,
18796      #    -.1194D-04, -.7653D-05, -.4891D-05, -.3114D-05, -.1972D-05,
18797      #    -.1244D-05, -.7786D-06, -.4830D-06, -.2973D-06, -.1809D-06,
18798      #    -.1085D-06, -.6401D-07, -.3663D-07, -.2033D-07, -.1066D-07,
18799      #    -.5102D-08/
18800
18801       data (calcpts(j,18), j = 1,neta) /-.6221D-10, -.1474D-09,
18802      #    -.1298D-09, -.3912D-09, -.6718D-09, -.1189D-08, -.2102D-08,
18803      #    -.4431D-08, -.5705D-08, -.1121D-07, -.2129D-07, -.3646D-07,
18804      #    -.6552D-07, -.1150D-06, -.1978D-06, -.3621D-06, -.6497D-06,
18805      #    -.1157D-05, -.2045D-05, -.3569D-05, -.6302D-05, -.1123D-04,
18806      #    -.1991D-04, -.3492D-04, -.6120D-04, -.1076D-03, -.1863D-03,
18807      #    -.3256D-03, -.5637D-03, -.9672D-03, -.1635D-02, -.2711D-02,
18808      #    -.4353D-02, -.6694D-02, -.9686D-02, -.1295D-01, -.1579D-01,
18809      #    -.1736D-01, -.1723D-01, -.1553D-01, -.1289D-01, -.9997D-02,
18810      #    -.7362D-02, -.5214D-02, -.3594D-02, -.2427D-02, -.1616D-02,
18811      #    -.1066D-02, -.6979D-03, -.4545D-03, -.2951D-03, -.1908D-03,
18812      #    -.1230D-03, -.7906D-04, -.5065D-04, -.3233D-04, -.2058D-04,
18813      #    -.1301D-04, -.8195D-05, -.5126D-05, -.3183D-05, -.1957D-05,
18814      #    -.1192D-05, -.7138D-06, -.4200D-06, -.2413D-06, -.1338D-06,
18815      #    -.7023D-07, -.3388D-07, -.1335D-07, -.2407D-08, 0.2877D-08,
18816      #    0.4963D-08/
18817
18818       data (calcpts(j,19), j = 1,neta) /-.7602D-10, -.1220D-09,
18819      #    -.2737D-09, -.3859D-09, -.9139D-09, -.1511D-08, -.2536D-08,
18820      #    -.4168D-08, -.7125D-08, -.1412D-07, -.2662D-07, -.4549D-07,
18821      #    -.8145D-07, -.1415D-06, -.2551D-06, -.4471D-06, -.7992D-06,
18822      #    -.1408D-05, -.2494D-05, -.4496D-05, -.7735D-05, -.1362D-04,
18823      #    -.2398D-04, -.4201D-04, -.7350D-04, -.1277D-03, -.2213D-03,
18824      #    -.3840D-03, -.6589D-03, -.1119D-02, -.1875D-02, -.3080D-02,
18825      #    -.4910D-02, -.7516D-02, -.1087D-01, -.1458D-01, -.1788D-01,
18826      #    -.1984D-01, -.1985D-01, -.1801D-01, -.1501D-01, -.1166D-01,
18827      #    -.8571D-02, -.6046D-02, -.4139D-02, -.2772D-02, -.1828D-02,
18828      #    -.1192D-02, -.7704D-03, -.4946D-03, -.3161D-03, -.2009D-03,
18829      #    -.1269D-03, -.7981D-04, -.4988D-04, -.3093D-04, -.1903D-04,
18830      #    -.1158D-04, -.6948D-05, -.4099D-05, -.2360D-05, -.1313D-05,
18831      #    -.6978D-06, -.3404D-06, -.1395D-06, -.3238D-07, 0.2071D-07,
18832      #    0.4317D-07, 0.4897D-07, 0.4694D-07, 0.4109D-07, 0.3426D-07,
18833      #    0.2766D-07/
18834
18835       data (calcpts(j,20), j = 1,neta) /-.1486D-09, -.2084D-09,
18836      #    -.2156D-09, -.5165D-09, -.1028D-08, -.1695D-08, -.2959D-08,
18837      #    -.5026D-08, -.9531D-08, -.1689D-07, -.3069D-07, -.5319D-07,
18838      #    -.9289D-07, -.1644D-06, -.2927D-06, -.5169D-06, -.9236D-06,
18839      #    -.1621D-05, -.2863D-05, -.5112D-05, -.8725D-05, -.1553D-04,
18840      #    -.2730D-04, -.4743D-04, -.8240D-04, -.1426D-03, -.2449D-03,
18841      #    -.4185D-03, -.7110D-03, -.1193D-02, -.1971D-02, -.3194D-02,
18842      #    -.5033D-02, -.7630D-02, -.1101D-01, -.1480D-01, -.1829D-01,
18843      #    -.2051D-01, -.2077D-01, -.1904D-01, -.1596D-01, -.1242D-01,
18844      #    -.9104D-02, -.6373D-02, -.4315D-02, -.2845D-02, -.1840D-02,
18845      #    -.1173D-02, -.7391D-03, -.4604D-03, -.2842D-03, -.1733D-03,
18846      #    -.1043D-03, -.6193D-04, -.3594D-04, -.2030D-04, -.1104D-04,
18847      #    -.5610D-05, -.2531D-05, -.8511D-06, 0.3114D-08, 0.4043D-06,
18848      #    0.5460D-06, 0.5568D-06, 0.5061D-06, 0.4303D-06, 0.3510D-06,
18849      #    0.2788D-06, 0.2167D-06, 0.1660D-06, 0.1256D-06, 0.9417D-07,
18850      #    0.6990D-07/
18851
18852       data (calcpts(j,21), j = 1,neta) /-.5347D-10, -.2247D-09,
18853      #    -.2536D-09, -.4946D-09, -.1075D-08, -.1854D-08, -.3507D-08,
18854      #    -.6687D-08, -.9907D-08, -.1667D-07, -.3265D-07, -.5625D-07,
18855      #    -.9228D-07, -.1809D-06, -.3111D-06, -.5438D-06, -.9714D-06,
18856      #    -.1708D-05, -.3045D-05, -.5259D-05, -.9173D-05, -.1617D-04,
18857      #    -.2835D-04, -.4914D-04, -.8478D-04, -.1455D-03, -.2474D-03,
18858      #    -.4174D-03, -.6997D-03, -.1152D-02, -.1866D-02, -.2962D-02,
18859      #    -.4565D-02, -.6829D-02, -.9739D-02, -.1308D-01, -.1630D-01,
18860      #    -.1854D-01, -.1909D-01, -.1776D-01, -.1503D-01, -.1172D-01,
18861      #    -.8532D-02, -.5885D-02, -.3892D-02, -.2485D-02, -.1542D-02,
18862      #    -.9325D-03, -.5493D-03, -.3140D-03, -.1730D-03, -.9005D-04,
18863      #    -.4266D-04, -.1663D-04, -.2895D-05, 0.3602D-05, 0.6205D-05,
18864      #    0.6783D-05, 0.6345D-05, 0.5478D-05, 0.4528D-05, 0.3614D-05,
18865      #    0.2823D-05, 0.2169D-05, 0.1646D-05, 0.1236D-05, 0.9190D-06,
18866      #    0.6792D-06, 0.4982D-06, 0.3639D-06, 0.2646D-06, 0.1917D-06,
18867      #    0.1382D-06/
18868
18869       data (calcpts(j,22), j = 1,neta) /-.1087D-09, -.2056D-09,
18870      #    -.2857D-09, -.4519D-09, -.1035D-08, -.1817D-08, -.3161D-08,
18871      #    -.6500D-08, -.8736D-08, -.1626D-07, -.3079D-07, -.5446D-07,
18872      #    -.9652D-07, -.1794D-06, -.3003D-06, -.5267D-06, -.9420D-06,
18873      #    -.1654D-05, -.2896D-05, -.5136D-05, -.8853D-05, -.1543D-04,
18874      #    -.2682D-04, -.4618D-04, -.7917D-04, -.1347D-03, -.2258D-03,
18875      #    -.3773D-03, -.6192D-03, -.9964D-03, -.1572D-02, -.2419D-02,
18876      #    -.3614D-02, -.5217D-02, -.7271D-02, -.9648D-02, -.1207D-01,
18877      #    -.1397D-01, -.1470D-01, -.1397D-01, -.1198D-01, -.9338D-02,
18878      #    -.6697D-02, -.4463D-02, -.2789D-02, -.1633D-02, -.8906D-03,
18879      #    -.4390D-03, -.1801D-03, -.4064D-04, 0.2741D-04, 0.5574D-04,
18880      #    0.6281D-04, 0.5925D-04, 0.5137D-04, 0.4233D-04, 0.3375D-04,
18881      #    0.2630D-04, 0.2016D-04, 0.1524D-04, 0.1141D-04, 0.8462D-05,
18882      #    0.6232D-05, 0.4565D-05, 0.3327D-05, 0.2415D-05, 0.1745D-05,
18883      #    0.1257D-05, 0.9025D-06, 0.6467D-06, 0.4621D-06, 0.3295D-06,
18884      #    0.2345D-06/
18885
18886       data (calcpts(j,23), j = 1,neta) /-.7139D-10, -.2032D-09,
18887      #    -.2202D-09, -.4896D-09, -.9366D-09, -.1551D-08, -.2642D-08,
18888      #    -.4985D-08, -.8101D-08, -.1518D-07, -.2690D-07, -.4750D-07,
18889      #    -.8275D-07, -.1502D-06, -.2509D-06, -.4601D-06, -.8073D-06,
18890      #    -.1424D-05, -.2501D-05, -.4335D-05, -.7507D-05, -.1324D-04,
18891      #    -.2278D-04, -.3909D-04, -.6652D-04, -.1117D-03, -.1864D-03,
18892      #    -.3059D-03, -.4916D-03, -.7702D-03, -.1172D-02, -.1726D-02,
18893      #    -.2437D-02, -.3320D-02, -.4357D-02, -.5539D-02, -.6817D-02,
18894      #    -.7998D-02, -.8679D-02, -.8506D-02, -.7418D-02, -.5731D-02,
18895      #    -.3914D-02, -.2337D-02, -.1169D-02, -.4055D-03, 0.3533D-04,
18896      #    0.2515D-03, 0.3307D-03, 0.3336D-03, 0.2995D-03, 0.2522D-03,
18897      #    0.2037D-03, 0.1599D-03, 0.1229D-03, 0.9307D-04, 0.6966D-04,
18898      #    0.5164D-04, 0.3801D-04, 0.2780D-04, 0.2022D-04, 0.1464D-04,
18899      #    0.1056D-04, 0.7597D-05, 0.5449D-05, 0.3897D-05, 0.2780D-05,
18900      #    0.1980D-05, 0.1407D-05, 0.9980D-06, 0.7070D-06, 0.5001D-06,
18901      #    0.3532D-06/
18902
18903       data (calcpts(j,24), j = 1,neta) /-.6663D-10, -.1430D-09,
18904      #    -.2377D-09, -.3509D-09, -.6307D-09, -.1200D-08, -.2150D-08,
18905      #    -.3945D-08, -.6802D-08, -.1085D-07, -.2096D-07, -.3674D-07,
18906      #    -.6488D-07, -.1169D-06, -.1955D-06, -.3622D-06, -.6396D-06,
18907      #    -.1117D-05, -.1942D-05, -.3415D-05, -.5853D-05, -.1026D-04,
18908      #    -.1762D-04, -.2996D-04, -.5068D-04, -.8471D-04, -.1387D-03,
18909      #    -.2242D-03, -.3522D-03, -.5364D-03, -.7826D-03, -.1086D-02,
18910      #    -.1409D-02, -.1705D-02, -.1925D-02, -.2067D-02, -.2263D-02,
18911      #    -.2561D-02, -.2916D-02, -.3021D-02, -.2667D-02, -.1883D-02,
18912      #    -.9116D-03, -.3166D-04, 0.5909D-03, 0.9319D-03, 0.1045D-02,
18913      #    0.1008D-02, 0.8924D-03, 0.7462D-03, 0.6003D-03, 0.4697D-03,
18914      #    0.3600D-03, 0.2715D-03, 0.2024D-03, 0.1493D-03, 0.1095D-03,
18915      #    0.7967D-04, 0.5773D-04, 0.4164D-04, 0.2993D-04, 0.2145D-04,
18916      #    0.1532D-04, 0.1093D-04, 0.7775D-05, 0.5521D-05, 0.3914D-05,
18917      #    0.2770D-05, 0.1958D-05, 0.1382D-05, 0.9741D-06, 0.6859D-06,
18918      #    0.4824D-06/
18919
18920       data (calcpts(j,25), j = 1,neta) /-.4096D-10, -.1024D-09,
18921      #    -.1250D-09, -.3239D-09, -.5429D-09, -.8035D-09, -.1449D-08,
18922      #    -.2800D-08, -.4499D-08, -.7629D-08, -.1569D-07, -.2552D-07,
18923      #    -.4639D-07, -.8264D-07, -.1419D-06, -.2453D-06, -.4483D-06,
18924      #    -.7893D-06, -.1374D-05, -.2390D-05, -.4106D-05, -.7060D-05,
18925      #    -.1218D-04, -.2085D-04, -.3488D-04, -.5793D-04, -.9397D-04,
18926      #    -.1492D-03, -.2306D-03, -.3418D-03, -.4774D-03, -.6178D-03,
18927      #    -.7062D-03, -.6706D-03, -.4351D-03, 0.5732D-05, 0.5147D-03,
18928      #    0.8986D-03, 0.1007D-02, 0.9469D-03, 0.9506D-03, 0.1159D-02,
18929      #    0.1518D-02, 0.1865D-02, 0.2064D-02, 0.2073D-02, 0.1925D-02,
18930      #    0.1681D-02, 0.1401D-02, 0.1126D-02, 0.8806D-03, 0.6745D-03,
18931      #    0.5082D-03, 0.3782D-03, 0.2785D-03, 0.2036D-03, 0.1479D-03,
18932      #    0.1069D-03, 0.7687D-04, 0.5511D-04, 0.3939D-04, 0.2808D-04,
18933      #    0.1997D-04, 0.1418D-04, 0.1005D-04, 0.7106D-05, 0.5020D-05,
18934      #    0.3543D-05, 0.2496D-05, 0.1757D-05, 0.1235D-05, 0.8675D-06,
18935      #    0.6088D-06/
18936
18937       data (calcpts(j,26), j = 1,neta) /-.2490D-10, -.4478D-10,
18938      #    -.7078D-10, -.1422D-09, -.2641D-09, -.4349D-09, -.8422D-09,
18939      #    -.1633D-08, -.2776D-08, -.5104D-08, -.9995D-08, -.1603D-07,
18940      #    -.2874D-07, -.5237D-07, -.8911D-07, -.1598D-06, -.2803D-06,
18941      #    -.5038D-06, -.8796D-06, -.1533D-05, -.2617D-05, -.4537D-05,
18942      #    -.7801D-05, -.1317D-04, -.2206D-04, -.3644D-04, -.5860D-04,
18943      #    -.9246D-04, -.1406D-03, -.2029D-03, -.2731D-03, -.3271D-03,
18944      #    -.3154D-03, -.1690D-03, 0.1905D-03, 0.7872D-03, 0.1531D-02,
18945      #    0.2217D-02, 0.2644D-02, 0.2781D-02, 0.2773D-02, 0.2790D-02,
18946      #    0.2883D-02, 0.2974D-02, 0.2965D-02, 0.2807D-02, 0.2523D-02,
18947      #    0.2162D-02, 0.1780D-02, 0.1420D-02, 0.1104D-02, 0.8416D-03,
18948      #    0.6316D-03, 0.4681D-03, 0.3436D-03, 0.2503D-03, 0.1812D-03,
18949      #    0.1305D-03, 0.9363D-04, 0.6694D-04, 0.4772D-04, 0.3394D-04,
18950      #    0.2408D-04, 0.1706D-04, 0.1206D-04, 0.8518D-05, 0.6007D-05,
18951      #    0.4231D-05, 0.2976D-05, 0.2092D-05, 0.1468D-05, 0.1030D-05,
18952      #    0.7222D-06/
18953
18954       data (calcpts(j,27), j = 1,neta) /-.1861D-10, -.4714D-10,
18955      #    -.5830D-10, -.1150D-09, -.2267D-09, -.3674D-09, -.6322D-09,
18956      #    -.1213D-08, -.1915D-08, -.3361D-08, -.6083D-08, -.1054D-07,
18957      #    -.1793D-07, -.3229D-07, -.5634D-07, -.9872D-07, -.1754D-06,
18958      #    -.3049D-06, -.5304D-06, -.9291D-06, -.1583D-05, -.2729D-05,
18959      #    -.4670D-05, -.7874D-05, -.1317D-04, -.2164D-04, -.3451D-04,
18960      #    -.5416D-04, -.8138D-04, -.1156D-03, -.1509D-03, -.1696D-03,
18961      #    -.1364D-03, 0.1381D-05, 0.3043D-03, 0.8057D-03, 0.1457D-02,
18962      #    0.2117D-02, 0.2619D-02, 0.2886D-02, 0.2985D-02, 0.3045D-02,
18963      #    0.3136D-02, 0.3219D-02, 0.3210D-02, 0.3060D-02, 0.2775D-02,
18964      #    0.2400D-02, 0.1996D-02, 0.1603D-02, 0.1254D-02, 0.9594D-03,
18965      #    0.7220D-03, 0.5360D-03, 0.3939D-03, 0.2869D-03, 0.2078D-03,
18966      #    0.1496D-03, 0.1072D-03, 0.7659D-04, 0.5455D-04, 0.3875D-04,
18967      #    0.2748D-04, 0.1944D-04, 0.1374D-04, 0.9692D-05, 0.6829D-05,
18968      #    0.4805D-05, 0.3378D-05, 0.2372D-05, 0.1665D-05, 0.1167D-05,
18969      #    0.8173D-06/
18970
18971       data (calcpts(j,28), j = 1,neta) /-.1221D-10, -.1892D-10,
18972      #    -.3565D-10, -.6203D-10, -.1164D-09, -.2009D-09, -.3449D-09,
18973      #    -.6346D-09, -.9467D-09, -.1799D-08, -.3369D-08, -.5811D-08,
18974      #    -.1014D-07, -.1789D-07, -.3099D-07, -.5488D-07, -.9664D-07,
18975      #    -.1698D-06, -.2948D-06, -.5086D-06, -.8873D-06, -.1524D-05,
18976      #    -.2600D-05, -.4375D-05, -.7292D-05, -.1205D-04, -.1922D-04,
18977      #    -.2985D-04, -.4471D-04, -.6283D-04, -.8037D-04, -.8662D-04,
18978      #    -.5937D-04, 0.3383D-04, 0.2353D-03, 0.5676D-03, 0.1014D-02,
18979      #    0.1492D-02, 0.1891D-02, 0.2147D-02, 0.2293D-02, 0.2421D-02,
18980      #    0.2591D-02, 0.2779D-02, 0.2896D-02, 0.2874D-02, 0.2698D-02,
18981      #    0.2404D-02, 0.2044D-02, 0.1673D-02, 0.1327D-02, 0.1026D-02,
18982      #    0.7784D-03, 0.5813D-03, 0.4289D-03, 0.3133D-03, 0.2274D-03,
18983      #    0.1638D-03, 0.1176D-03, 0.8402D-04, 0.5985D-04, 0.4252D-04,
18984      #    0.3015D-04, 0.2132D-04, 0.1506D-04, 0.1062D-04, 0.7483D-05,
18985      #    0.5265D-05, 0.3700D-05, 0.2597D-05, 0.1821D-05, 0.1277D-05,
18986      #    0.8940D-06/
18987
18988       data (calcpts(j,29), j = 1,neta) /-.4983D-11, -.9790D-11,
18989      #    -.1290D-10, -.3188D-10, -.5737D-10, -.9069D-10, -.1687D-09,
18990      #    -.3056D-09, -.4990D-09, -.9079D-09, -.1750D-08, -.2956D-08,
18991      #    -.5178D-08, -.9420D-08, -.1603D-07, -.2899D-07, -.5115D-07,
18992      #    -.8900D-07, -.1549D-06, -.2717D-06, -.4668D-06, -.8112D-06,
18993      #    -.1373D-05, -.2324D-05, -.3879D-05, -.6359D-05, -.1017D-04,
18994      #    -.1589D-04, -.2369D-04, -.3311D-04, -.4219D-04, -.4462D-04,
18995      #    -.2846D-04, 0.2510D-04, 0.1398D-03, 0.3315D-03, 0.5920D-03,
18996      #    0.8776D-03, 0.1124D-02, 0.1291D-02, 0.1397D-02, 0.1514D-02,
18997      #    0.1710D-02, 0.1973D-02, 0.2224D-02, 0.2368D-02, 0.2357D-02,
18998      #    0.2201D-02, 0.1943D-02, 0.1636D-02, 0.1327D-02, 0.1045D-02,
18999      #    0.8027D-03, 0.6054D-03, 0.4498D-03, 0.3305D-03, 0.2406D-03,
19000      #    0.1739D-03, 0.1250D-03, 0.8948D-04, 0.6380D-04, 0.4535D-04,
19001      #    0.3216D-04, 0.2276D-04, 0.1608D-04, 0.1134D-04, 0.7988D-05,
19002      #    0.5620D-05, 0.3948D-05, 0.2772D-05, 0.1944D-05, 0.1362D-05,
19003      #    0.9538D-06/
19004
19005       data (calcpts(j,30), j = 1,neta) /-.2854D-11, -.4437D-11,
19006      #    -.7638D-11, -.1380D-10, -.2918D-10, -.5391D-10, -.8799D-10,
19007      #    -.1632D-09, -.2688D-09, -.4775D-09, -.8800D-09, -.1564D-08,
19008      #    -.2775D-08, -.4964D-08, -.8434D-08, -.1488D-07, -.2652D-07,
19009      #    -.4610D-07, -.8079D-07, -.1414D-06, -.2420D-06, -.4168D-06,
19010      #    -.7136D-06, -.1200D-05, -.2009D-05, -.3292D-05, -.5263D-05,
19011      #    -.8193D-05, -.1227D-04, -.1725D-04, -.2189D-04, -.2334D-04,
19012      #    -.1515D-04, 0.1224D-04, 0.7142D-04, 0.1709D-03, 0.3063D-03,
19013      #    0.4543D-03, 0.5785D-03, 0.6537D-03, 0.6912D-03, 0.7457D-03,
19014      #    0.8840D-03, 0.1130D-02, 0.1433D-02, 0.1699D-02, 0.1847D-02,
19015      #    0.1847D-02, 0.1719D-02, 0.1508D-02, 0.1263D-02, 0.1019D-02,
19016      #    0.7975D-03, 0.6098D-03, 0.4581D-03, 0.3392D-03, 0.2483D-03,
19017      #    0.1804D-03, 0.1300D-03, 0.9327D-04, 0.6661D-04, 0.4742D-04,
19018      #    0.3365D-04, 0.2383D-04, 0.1684D-04, 0.1188D-04, 0.8370D-05,
19019      #    0.5889D-05, 0.4138D-05, 0.2905D-05, 0.2038D-05, 0.1428D-05,
19020      #    0.9997D-06/
19021
19022       data (calcpts(j,31), j = 1,neta) /-.9247D-12, -.2620D-11,
19023      #    -.4429D-11, -.7357D-11, -.1432D-10, -.2601D-10, -.4498D-10,
19024      #    -.8562D-10, -.1330D-09, -.2509D-09, -.4525D-09, -.7727D-09,
19025      #    -.1383D-08, -.2448D-08, -.4206D-08, -.7491D-08, -.1325D-07,
19026      #    -.2328D-07, -.4055D-07, -.7122D-07, -.1212D-06, -.2087D-06,
19027      #    -.3586D-06, -.6048D-06, -.1010D-05, -.1663D-05, -.2651D-05,
19028      #    -.4146D-05, -.6220D-05, -.8759D-05, -.1125D-04, -.1221D-04,
19029      #    -.8548D-05, 0.4577D-05, 0.3298D-04, 0.8095D-04, 0.1456D-03,
19030      #    0.2140D-03, 0.2653D-03, 0.2830D-03, 0.2709D-03, 0.2637D-03,
19031      #    0.3173D-03, 0.4761D-03, 0.7347D-03, 0.1029D-02, 0.1273D-02,
19032      #    0.1403D-02, 0.1407D-02, 0.1307D-02, 0.1142D-02, 0.9523D-03,
19033      #    0.7647D-03, 0.5962D-03, 0.4544D-03, 0.3402D-03, 0.2512D-03,
19034      #    0.1834D-03, 0.1329D-03, 0.9566D-04, 0.6849D-04, 0.4883D-04,
19035      #    0.3470D-04, 0.2460D-04, 0.1740D-04, 0.1228D-04, 0.8652D-05,
19036      #    0.6089D-05, 0.4280D-05, 0.3004D-05, 0.2107D-05, 0.1477D-05,
19037      #    0.1034D-05/
19038
19039       data (calcpts(j,32), j = 1,neta) /0.2151D-11, 0.8299D-12,
19040      #    0.1550D-11, -.1431D-11, -.5444D-11, -.1006D-10, -.1886D-10,
19041      #    -.3642D-10, -.5890D-10, -.1180D-09, -.2167D-09, -.3646D-09,
19042      #    -.6557D-09, -.1191D-08, -.2029D-08, -.3601D-08, -.6539D-08,
19043      #    -.1130D-07, -.1982D-07, -.3464D-07, -.5947D-07, -.1027D-06,
19044      #    -.1758D-06, -.2982D-06, -.4972D-06, -.8188D-06, -.1314D-05,
19045      #    -.2050D-05, -.3091D-05, -.4386D-05, -.5697D-05, -.6336D-05,
19046      #    -.4837D-05, 0.1010D-05, 0.1405D-04, 0.3593D-04, 0.6474D-04,
19047      #    0.9324D-04, 0.1093D-03, 0.1019D-03, 0.7001D-04, 0.3092D-04,
19048      #    0.2157D-04, 0.8568D-04, 0.2472D-03, 0.4866D-03, 0.7427D-03,
19049      #    0.9454D-03, 0.1051D-02, 0.1053D-02, 0.9759D-03, 0.8503D-03,
19050      #    0.7063D-03, 0.5654D-03, 0.4394D-03, 0.3339D-03, 0.2494D-03,
19051      #    0.1837D-03, 0.1339D-03, 0.9681D-04, 0.6956D-04, 0.4972D-04,
19052      #    0.3540D-04, 0.2512D-04, 0.1779D-04, 0.1256D-04, 0.8858D-05,
19053      #    0.6235D-05, 0.4384D-05, 0.3079D-05, 0.2160D-05, 0.1514D-05,
19054      #    0.1060D-05/
19055
19056       data (calcpts(j,33), j = 1,neta) /-.4830D-11, -.3510D-11,
19057      #    -.2885D-11, -.2197D-11, -.5301D-11, -.7682D-11, -.1224D-10,
19058      #    -.2146D-10, -.3607D-10, -.6335D-10, -.1117D-09, -.1940D-09,
19059      #    -.3413D-09, -.6064D-09, -.1037D-08, -.1847D-08, -.3234D-08,
19060      #    -.5704D-08, -.9849D-08, -.1719D-07, -.2943D-07, -.5075D-07,
19061      #    -.8699D-07, -.1473D-06, -.2450D-06, -.4040D-06, -.6487D-06,
19062      #    -.1017D-05, -.1536D-05, -.2197D-05, -.2877D-05, -.3300D-05,
19063      #    -.2760D-05, -.2738D-06, 0.5417D-05, 0.1496D-04, 0.2710D-04,
19064      #    0.3770D-04, 0.3981D-04, 0.2627D-04, -.5854D-05, -.5007D-04,
19065      #    -.8679D-04, -.8547D-04, -.1608D-04, 0.1319D-03, 0.3348D-03,
19066      #    0.5416D-03, 0.6997D-03, 0.7792D-03, 0.7796D-03, 0.7201D-03,
19067      #    0.6254D-03, 0.5179D-03, 0.4134D-03, 0.3205D-03, 0.2430D-03,
19068      #    0.1811D-03, 0.1331D-03, 0.9683D-04, 0.6990D-04, 0.5014D-04,
19069      #    0.3579D-04, 0.2544D-04, 0.1804D-04, 0.1276D-04, 0.9000D-05,
19070      #    0.6340D-05, 0.4459D-05, 0.3132D-05, 0.2198D-05, 0.1540D-05,
19071      #    0.1079D-05/
19072
19073       data (calcpts(j,34), j = 1,neta) /-.4478D-11, -.5153D-11,
19074      #    -.5308D-11, -.4177D-11, -.4213D-11, -.4759D-11, -.5756D-11,
19075      #    -.1097D-10, -.1695D-10, -.2947D-10, -.5351D-10, -.9124D-10,
19076      #    -.1597D-09, -.2835D-09, -.5010D-09, -.8807D-09, -.1553D-08,
19077      #    -.2698D-08, -.4757D-08, -.8210D-08, -.1417D-07, -.2437D-07,
19078      #    -.4186D-07, -.7064D-07, -.1181D-06, -.1950D-06, -.3131D-06,
19079      #    -.4943D-06, -.7498D-06, -.1078D-05, -.1435D-05, -.1678D-05,
19080      #    -.1527D-05, -.5054D-06, 0.1898D-05, 0.5895D-05, 0.1073D-04,
19081      #    0.1406D-04, 0.1199D-04, 0.9194D-07, -.2455D-04, -.6061D-04,
19082      #    -.9966D-04, -.1249D-03, -.1138D-03, -.4696D-04, 0.7833D-04,
19083      #    0.2402D-03, 0.3989D-03, 0.5166D-03, 0.5738D-03, 0.5720D-03,
19084      #    0.5266D-03, 0.4559D-03, 0.3765D-03, 0.2997D-03, 0.2318D-03,
19085      #    0.1754D-03, 0.1305D-03, 0.9577D-04, 0.6957D-04, 0.5013D-04,
19086      #    0.3592D-04, 0.2560D-04, 0.1818D-04, 0.1287D-04, 0.9093D-05,
19087      #    0.6410D-05, 0.4511D-05, 0.3170D-05, 0.2224D-05, 0.1560D-05,
19088      #    0.1093D-05/
19089
19090       data (calcpts(j,35), j = 1,neta) /-.1445D-10, -.1011D-11,
19091      #    0.7187D-12, -.4568D-11, -.1821D-11, -.4338D-11, -.3443D-11,
19092      #    -.5130D-11, -.7749D-11, -.1404D-10, -.2392D-10, -.4275D-10,
19093      #    -.7507D-10, -.1339D-09, -.2362D-09, -.4118D-09, -.7348D-09,
19094      #    -.1279D-08, -.2235D-08, -.3895D-08, -.6681D-08, -.1161D-07,
19095      #    -.1988D-07, -.3368D-07, -.5648D-07, -.9351D-07, -.1508D-06,
19096      #    -.2386D-06, -.3626D-06, -.5248D-06, -.7084D-06, -.8508D-06,
19097      #    -.8231D-06, -.4278D-06, 0.5567D-06, 0.2181D-05, 0.3960D-05,
19098      #    0.4671D-05, 0.2131D-05, -.6248D-05, -.2267D-04, -.4762D-04,
19099      #    -.7831D-04, -.1071D-03, -.1211D-03, -.1046D-03, -.4569D-04,
19100      #    0.5467D-04, 0.1784D-03, 0.2957D-03, 0.3805D-03, 0.4201D-03,
19101      #    0.4170D-03, 0.3824D-03, 0.3301D-03, 0.2720D-03, 0.2161D-03,
19102      #    0.1668D-03, 0.1260D-03, 0.9353D-04, 0.6854D-04, 0.4972D-04,
19103      #    0.3579D-04, 0.2560D-04, 0.1822D-04, 0.1293D-04, 0.9145D-05,
19104      #    0.6452D-05, 0.4545D-05, 0.3195D-05, 0.2244D-05, 0.1573D-05,
19105      #    0.1102D-05/
19106
19107       data (calcpts(j,36), j = 1,neta) /0.6876D-11, -.4528D-12,
19108      #    0.3776D-11, 0.3938D-12, -.4144D-11, 0.7553D-12, -.3980D-11,
19109      #    -.1515D-11, -.4962D-11, -.7698D-11, -.1130D-10, -.2065D-10,
19110      #    -.3616D-10, -.6477D-10, -.1112D-09, -.1966D-09, -.3543D-09,
19111      #    -.6119D-09, -.1063D-08, -.1860D-08, -.3216D-08, -.5546D-08,
19112      #    -.9528D-08, -.1609D-07, -.2715D-07, -.4477D-07, -.7242D-07,
19113      #    -.1148D-06, -.1757D-06, -.2565D-06, -.3483D-06, -.4296D-06,
19114      #    -.4394D-06, -.2954D-06, 0.9171D-07, 0.7169D-06, 0.1319D-05,
19115      #    0.1220D-05, -.7291D-06, -.6002D-05, -.1603D-04, -.3165D-04,
19116      #    -.5234D-04, -.7523D-04, -.9426D-04, -.1001D-03, -.8223D-04,
19117      #    -.3349D-04, 0.4377D-04, 0.1353D-03, 0.2199D-03, 0.2796D-03,
19118      #    0.3062D-03, 0.3022D-03, 0.2761D-03, 0.2377D-03, 0.1954D-03,
19119      #    0.1549D-03, 0.1194D-03, 0.9004D-04, 0.6675D-04, 0.4884D-04,
19120      #    0.3538D-04, 0.2544D-04, 0.1818D-04, 0.1293D-04, 0.9162D-05,
19121      #    0.6474D-05, 0.4563D-05, 0.3211D-05, 0.2256D-05, 0.1582D-05,
19122      #    0.1109D-05/
19123
19124       data (calcpts(j,37), j = 1,neta) /0.3214D-11, 0.2471D-11,
19125      #    0.1989D-11, 0.4786D-11, 0.2349D-11, -.4747D-11, 0.3463D-12,
19126      #    0.2695D-12, -.4435D-13, -.1458D-11, -.6294D-11, -.9686D-11,
19127      #    -.1874D-10, -.2966D-10, -.5306D-10, -.9410D-10, -.1660D-09,
19128      #    -.2915D-09, -.5026D-09, -.8926D-09, -.1533D-08, -.2640D-08,
19129      #    -.4533D-08, -.7698D-08, -.1291D-07, -.2141D-07, -.3468D-07,
19130      #    -.5509D-07, -.8459D-07, -.1242D-06, -.1711D-06, -.2145D-06,
19131      #    -.2301D-06, -.1838D-06, -.3719D-07, 0.1903D-06, 0.3566D-06,
19132      #    0.1064D-06, -.1167D-05, -.4265D-05, -.1005D-04, -.1920D-04,
19133      #    -.3191D-04, -.4735D-04, -.6312D-04, -.7473D-04, -.7563D-04,
19134      #    -.5884D-04, -.2025D-04, 0.3754D-04, 0.1038D-03, 0.1636D-03,
19135      #    0.2047D-03, 0.2223D-03, 0.2181D-03, 0.1986D-03, 0.1705D-03,
19136      #    0.1398D-03, 0.1107D-03, 0.8517D-04, 0.6412D-04, 0.4747D-04,
19137      #    0.3469D-04, 0.2511D-04, 0.1803D-04, 0.1287D-04, 0.9141D-05,
19138      #    0.6472D-05, 0.4569D-05, 0.3217D-05, 0.2262D-05, 0.1588D-05,
19139      #    0.1113D-05/
19140
19141       data (calcpts(j,38), j = 1,neta) /0.2265D-10, -.4611D-11,
19142      #    0.1382D-10, 0.1316D-10, -.3562D-11, -.2469D-11, -.3007D-12,
19143      #    -.6720D-11, 0.3697D-11, -.9792D-12, -.1845D-11, -.3928D-11,
19144      #    -.8268D-11, -.1260D-10, -.2389D-10, -.4290D-10, -.7696D-10,
19145      #    -.1363D-09, -.2383D-09, -.4171D-09, -.7147D-09, -.1251D-08,
19146      #    -.2138D-08, -.3636D-08, -.6118D-08, -.1016D-07, -.1648D-07,
19147      #    -.2633D-07, -.4057D-07, -.5986D-07, -.8323D-07, -.1064D-06,
19148      #    -.1190D-06, -.1063D-06, -.5577D-07, 0.2084D-07, 0.4457D-07,
19149      #    -.1681D-06, -.9323D-06, -.2673D-05, -.5877D-05, -.1100D-04,
19150      #    -.1834D-04, -.2781D-04, -.3861D-04, -.4890D-04, -.5543D-04,
19151      #    -.5375D-04, -.3926D-04, -.9647D-05, 0.3266D-04, 0.7984D-04,
19152      #    0.1215D-03, 0.1495D-03, 0.1608D-03, 0.1569D-03, 0.1422D-03,
19153      #    0.1218D-03, 0.9973D-04, 0.7881D-04, 0.6055D-04, 0.4554D-04,
19154      #    0.3367D-04, 0.2458D-04, 0.1776D-04, 0.1274D-04, 0.9085D-05,
19155      #    0.6448D-05, 0.4561D-05, 0.3217D-05, 0.2265D-05, 0.1590D-05,
19156      #    0.1116D-05/
19157
19158       data (calcpts(j,39), j = 1,neta) /0.8899D-11, 0.2293D-10,
19159      #    0.1677D-11, -.1608D-10, 0.2425D-11, -.1380D-10, 0.4994D-11,
19160      #    0.2777D-12, 0.8584D-11, 0.6138D-11, 0.2812D-11, 0.1515D-11,
19161      #    -.1299D-11, -.8634D-11, -.1286D-10, -.2092D-10, -.3649D-10,
19162      #    -.6586D-10, -.1145D-09, -.2014D-09, -.3462D-09, -.5964D-09,
19163      #    -.1022D-08, -.1742D-08, -.2924D-08, -.4869D-08, -.7902D-08,
19164      #    -.1260D-07, -.1952D-07, -.2905D-07, -.4074D-07, -.5301D-07,
19165      #    -.6136D-07, -.5983D-07, -.4423D-07, -.2299D-07, -.3755D-07,
19166      #    -.1818D-06, -.6164D-06, -.1563D-05, -.3287D-05, -.6063D-05,
19167      #    -.1012D-04, -.1557D-04, -.2225D-04, -.2948D-04, -.3591D-04,
19168      #    -.3926D-04, -.3647D-04, -.2462D-04, -.2424D-05, 0.2807D-04,
19169      #    0.6125D-04, 0.8998D-04, 0.1088D-03, 0.1158D-03, 0.1124D-03,
19170      #    0.1016D-03, 0.8679D-04, 0.7093D-04, 0.5596D-04, 0.4296D-04,
19171      #    0.3226D-04, 0.2383D-04, 0.1737D-04, 0.1254D-04, 0.8988D-05,
19172      #    0.6403D-05, 0.4540D-05, 0.3208D-05, 0.2262D-05, 0.1590D-05,
19173      #    0.1116D-05/
19174
19175       data (calcpts(j,40), j = 1,neta) /0.3289D-10, 0.2708D-10,
19176      #    0.3539D-10, -.6742D-11, 0.5593D-11, 0.7691D-11, 0.2261D-10,
19177      #    0.8058D-11, -.1388D-12, 0.9135D-11, 0.1398D-10, -.2515D-11,
19178      #    0.1087D-11, -.2156D-11, -.3048D-11, -.1035D-10, -.1705D-10,
19179      #    -.3096D-10, -.5363D-10, -.9460D-10, -.1621D-09, -.2806D-09,
19180      #    -.4827D-09, -.8212D-09, -.1382D-08, -.2294D-08, -.3755D-08,
19181      #    -.5997D-08, -.9319D-08, -.1391D-07, -.1973D-07, -.2600D-07,
19182      #    -.3104D-07, -.3247D-07, -.2878D-07, -.2572D-07, -.4432D-07,
19183      #    -.1324D-06, -.3711D-06, -.8743D-06, -.1782D-05, -.3251D-05,
19184      #    -.5431D-05, -.8440D-05, -.1229D-04, -.1682D-04, -.2151D-04,
19185      #    -.2537D-04, -.2682D-04, -.2382D-04, -.1447D-04, 0.1894D-05,
19186      #    0.2362D-04, 0.4674D-04, 0.6637D-04, 0.7893D-04, 0.8326D-04,
19187      #    0.8034D-04, 0.7236D-04, 0.6169D-04, 0.5034D-04, 0.3966D-04,
19188      #    0.3040D-04, 0.2281D-04, 0.1683D-04, 0.1226D-04, 0.8842D-05,
19189      #    0.6330D-05, 0.4506D-05, 0.3192D-05, 0.2254D-05, 0.1587D-05,
19190      #    0.1116D-05/
19191
19192       data (calcpts(j,41), j = 1,neta) /0.8070D-10, 0.7208D-10,
19193      #    -.9969D-11, 0.4621D-10, 0.3142D-10, 0.1773D-10, 0.2619D-10,
19194      #    0.5520D-11, 0.1387D-10, -.2577D-11, 0.4067D-11, -.4187D-11,
19195      #    0.1809D-11, 0.1111D-11, 0.3716D-11, -.1177D-11, -.5532D-11,
19196      #    -.9871D-11, -.2146D-10, -.4289D-10, -.7489D-10, -.1314D-09,
19197      #    -.2265D-09, -.3856D-09, -.6518D-09, -.1086D-08, -.1774D-08,
19198      #    -.2838D-08, -.4438D-08, -.6668D-08, -.9526D-08, -.1275D-07,
19199      #    -.1562D-07, -.1721D-07, -.1718D-07, -.1892D-07, -.3309D-07,
19200      #    -.8376D-07, -.2116D-06, -.4746D-06, -.9454D-06, -.1708D-05,
19201      #    -.2854D-05, -.4465D-05, -.6595D-05, -.9230D-05, -.1222D-04,
19202      #    -.1518D-04, -.1741D-04, -.1781D-04, -.1502D-04, -.7817D-05,
19203      #    0.4090D-05, 0.1945D-04, 0.3544D-04, 0.4878D-04, 0.5709D-04,
19204      #    0.5967D-04, 0.5728D-04, 0.5143D-04, 0.4375D-04, 0.3564D-04,
19205      #    0.2805D-04, 0.2148D-04, 0.1609D-04, 0.1187D-04, 0.8635D-05,
19206      #    0.6223D-05, 0.4450D-05, 0.3165D-05, 0.2241D-05, 0.1581D-05,
19207      #    0.1113D-05/
19208
19209       data (calcpts(j,42), j = 1,neta) /-.5846D-10, -.7014D-10,
19210      #    -.5778D-10, -.1180D-09, -.2375D-10, -.5015D-10, -.7008D-11,
19211      #    0.8792D-11, -.1201D-10, -.3614D-10, -.1938D-10, -.1763D-10,
19212      #    0.7249D-11, -.6352D-11, -.4248D-11, -.9391D-11, -.7513D-11,
19213      #    -.1266D-10, -.1417D-10, -.2237D-10, -.3978D-10, -.6331D-10,
19214      #    -.1093D-09, -.1839D-09, -.3089D-09, -.5148D-09, -.8423D-09,
19215      #    -.1355D-08, -.2121D-08, -.3203D-08, -.4610D-08, -.6246D-08,
19216      #    -.7828D-08, -.9010D-08, -.9846D-08, -.1204D-07, -.2119D-07,
19217      #    -.4927D-07, -.1165D-06, -.2519D-06, -.4931D-06, -.8844D-06,
19218      #    -.1476D-05, -.2321D-05, -.3462D-05, -.4926D-05, -.6685D-05,
19219      #    -.8617D-05, -.1044D-04, -.1166D-04, -.1152D-04, -.9118D-05,
19220      #    -.3686D-05, 0.4897D-05, 0.1567D-04, 0.2668D-04, 0.3570D-04,
19221      #    0.4116D-04, 0.4267D-04, 0.4075D-04, 0.3648D-04, 0.3097D-04,
19222      #    0.2520D-04, 0.1981D-04, 0.1515D-04, 0.1134D-04, 0.8355D-05,
19223      #    0.6075D-05, 0.4374D-05, 0.3126D-05, 0.2221D-05, 0.1572D-05,
19224      #    0.1108D-05/
19225
19226       data (calcpts(j,43), j = 1,neta) /0.1136D-10, -.8782D-10,
19227      #    0.6688D-10, -.2130D-10, 0.8003D-10, 0.2656D-10, -.1288D-10,
19228      #    -.8851D-11, -.1165D-10, -.1624D-11, 0.1652D-11, 0.3481D-11,
19229      #    -.9166D-11, -.8690D-11, -.1727D-11, 0.2107D-11, 0.7933D-11,
19230      #    -.2786D-11, -.5017D-11, -.1410D-10, -.1768D-10, -.3233D-10,
19231      #    -.4968D-10, -.8618D-10, -.1465D-09, -.2441D-09, -.3988D-09,
19232      #    -.6432D-09, -.1010D-08, -.1531D-08, -.2219D-08, -.3050D-08,
19233      #    -.3898D-08, -.4655D-08, -.5410D-08, -.7109D-08, -.1256D-07,
19234      #    -.2769D-07, -.6255D-07, -.1316D-06, -.2538D-06, -.4523D-06,
19235      #    -.7542D-06, -.1189D-05, -.1789D-05, -.2576D-05, -.3560D-05,
19236      #    -.4712D-05, -.5939D-05, -.7035D-05, -.7651D-05, -.7277D-05,
19237      #    -.5307D-05, -.1264D-05, 0.4879D-05, 0.1241D-04, 0.1996D-04,
19238      #    0.2602D-04, 0.2959D-04, 0.3043D-04, 0.2893D-04, 0.2583D-04,
19239      #    0.2188D-04, 0.1779D-04, 0.1397D-04, 0.1067D-04, 0.7984D-05,
19240      #    0.5875D-05, 0.4269D-05, 0.3070D-05, 0.2193D-05, 0.1557D-05,
19241      #    0.1101D-05/
19242
19243       data (calcpts(j,44), j = 1,neta) /0.2906D-09, -.1005D-09,
19244      #    -.3852D-10, -.4085D-10, 0.4381D-10, 0.4428D-10, 0.1203D-11,
19245      #    -.1534D-10, -.7004D-11, 0.1085D-10, 0.1420D-10, -.1206D-10,
19246      #    0.4450D-11, 0.9734D-11, -.1428D-10, 0.5013D-12, -.3193D-11,
19247      #    0.5180D-11, 0.8894D-12, -.6236D-12, -.1257D-10, -.1550D-10,
19248      #    -.2144D-10, -.4033D-10, -.6840D-10, -.1162D-09, -.1881D-09,
19249      #    -.3056D-09, -.4808D-09, -.7301D-09, -.1067D-08, -.1479D-08,
19250      #    -.1927D-08, -.2374D-08, -.2901D-08, -.3997D-08, -.7078D-08,
19251      #    -.1508D-07, -.3295D-07, -.6784D-07, -.1293D-06, -.2292D-06,
19252      #    -.3817D-06, -.6034D-06, -.9124D-06, -.1326D-05, -.1859D-05,
19253      #    -.2509D-05, -.3253D-05, -.4018D-05, -.4658D-05, -.4929D-05,
19254      #    -.4484D-05, -.2922D-05, 0.5770D-07, 0.4431D-05, 0.9675D-05,
19255      #    0.1484D-04, 0.1891D-04, 0.2124D-04, 0.2167D-04, 0.2052D-04,
19256      #    0.1825D-04, 0.1545D-04, 0.1254D-04, 0.9835D-05, 0.7509D-05,
19257      #    0.5613D-05, 0.4126D-05, 0.2995D-05, 0.2154D-05, 0.1537D-05,
19258      #    0.1091D-05/
19259
19260       data (calcpts(j,45), j = 1,neta) /0.6116D-10, 0.3562D-09,
19261      #    0.3791D-09, 0.2375D-09, 0.1795D-09, 0.2456D-09, 0.2054D-09,
19262      #    0.3163D-09, 0.1831D-09, 0.1081D-09, 0.5660D-10, 0.8214D-10,
19263      #    0.7798D-10, 0.1560D-10, 0.1258D-10, 0.2074D-10, 0.3867D-10,
19264      #    0.6209D-11, 0.2225D-10, 0.1446D-10, 0.1357D-10, 0.4389D-11,
19265      #    -.7446D-11, -.1488D-10, -.2801D-10, -.5172D-10, -.8844D-10,
19266      #    -.1439D-09, -.2279D-09, -.3493D-09, -.5138D-09, -.7197D-09,
19267      #    -.9534D-09, -.1207D-08, -.1533D-08, -.2187D-08, -.3875D-08,
19268      #    -.8040D-08, -.1711D-07, -.3462D-07, -.6532D-07, -.1152D-06,
19269      #    -.1917D-06, -.3035D-06, -.4610D-06, -.6749D-06, -.9555D-06,
19270      #    -.1309D-05, -.1734D-05, -.2207D-05, -.2676D-05, -.3038D-05,
19271      #    -.3120D-05, -.2687D-05, -.1476D-05, 0.7008D-06, 0.3801D-05,
19272      #    0.7441D-05, 0.1096D-04, 0.1369D-04, 0.1519D-04, 0.1540D-04,
19273      #    0.1452D-04, 0.1289D-04, 0.1089D-04, 0.8827D-05, 0.6918D-05,
19274      #    0.5277D-05, 0.3942D-05, 0.2896D-05, 0.2101D-05, 0.1509D-05,
19275      #    0.1076D-05/
19276
19277       data (calcpts(j,46), j = 1,neta) /0.1917D-09, -.1535D-09,
19278      #    0.4083D-09, 0.2116D-09, 0.9985D-10, -.3683D-11, 0.6403D-10,
19279      #    0.2144D-10, 0.7432D-11, 0.7975D-10, -.1710D-10, 0.2668D-10,
19280      #    -.1262D-10, 0.4799D-11, 0.3884D-11, -.4044D-11, 0.4642D-11,
19281      #    -.6977D-11, 0.6772D-11, 0.2195D-10, 0.1218D-10, 0.8504D-11,
19282      #    -.4265D-11, -.5370D-11, -.1092D-10, -.2660D-10, -.4248D-10,
19283      #    -.7007D-10, -.1082D-09, -.1669D-09, -.2471D-09, -.3489D-09,
19284      #    -.4687D-09, -.6066D-09, -.7951D-09, -.1165D-08, -.2068D-08,
19285      #    -.4211D-08, -.8778D-08, -.1752D-07, -.3277D-07, -.5755D-07,
19286      #    -.9563D-07, -.1516D-06, -.2311D-06, -.3402D-06, -.4856D-06,
19287      #    -.6733D-06, -.9060D-06, -.1180D-05, -.1478D-05, -.1760D-05,
19288      #    -.1953D-05, -.1940D-05, -.1557D-05, -.6336D-06, 0.9465D-06,
19289      #    0.3136D-05, 0.5659D-05, 0.8059D-05, 0.9882D-05, 0.1085D-04,
19290      #    0.1093D-04, 0.1026D-04, 0.9090D-05, 0.7666D-05, 0.6207D-05,
19291      #    0.4860D-05, 0.3705D-05, 0.2766D-05, 0.2031D-05, 0.1472D-05,
19292      #    0.1057D-05/
19293
19294       data (calcpts(j,47), j = 1,neta) /0.2895D-09, -.2610D-09,
19295      #    -.3456D-09, -.1412D-09, -.3047D-10, -.2021D-10, -.2062D-09,
19296      #    -.9289D-10, 0.4744D-10, -.9101D-10, -.2432D-10, -.1832D-10,
19297      #    0.5847D-10, -.2453D-10, -.3673D-10, -.2271D-10, 0.1469D-10,
19298      #    -.5788D-11, -.7590D-11, -.1979D-10, 0.1805D-10, -.6081D-11,
19299      #    -.2603D-11, -.8448D-11, -.6680D-11, -.1677D-10, -.2327D-10,
19300      #    -.3327D-10, -.5595D-10, -.7616D-10, -.1179D-09, -.1698D-09,
19301      #    -.2286D-09, -.3027D-09, -.4085D-09, -.6112D-09, -.1086D-08,
19302      #    -.2176D-08, -.4463D-08, -.8801D-08, -.1634D-07, -.2859D-07,
19303      #    -.4746D-07, -.7531D-07, -.1151D-06, -.1702D-06, -.2447D-06,
19304      #    -.3423D-06, -.4663D-06, -.6178D-06, -.7926D-06, -.9777D-06,
19305      #    -.1144D-05, -.1239D-05, -.1182D-05, -.8625D-06, -.1674D-06,
19306      #    0.9738D-06, 0.2517D-05, 0.4263D-05, 0.5896D-05, 0.7111D-05,
19307      #    0.7731D-05, 0.7740D-05, 0.7242D-05, 0.6402D-05, 0.5391D-05,
19308      #    0.4360D-05, 0.3411D-05, 0.2599D-05, 0.1938D-05, 0.1422D-05,
19309      #    0.1030D-05/
19310
19311       data (calcpts(j,48), j = 1,neta) /-.1464D-09, 0.1705D-10,
19312      #    0.2130D-09, -.6478D-10, 0.5286D-09, 0.1417D-09, 0.3096D-09,
19313      #    0.1552D-09, -.5639D-10, 0.1330D-09, 0.1519D-09, 0.5894D-10,
19314      #    0.5478D-10, 0.4993D-10, 0.4679D-10, -.7341D-10, 0.3779D-10,
19315      #    0.4836D-10, 0.5389D-10, 0.6009D-11, -.5886D-12, 0.1044D-10,
19316      #    -.2832D-11, 0.1719D-10, 0.4355D-11, -.2739D-11, -.1025D-10,
19317      #    -.1470D-10, -.1767D-10, -.3432D-10, -.5392D-10, -.7840D-10,
19318      #    -.1105D-09, -.1499D-09, -.2074D-09, -.3156D-09, -.5618D-09,
19319      #    -.1113D-08, -.2252D-08, -.4395D-08, -.8110D-08, -.1414D-07,
19320      #    -.2344D-07, -.3724D-07, -.5702D-07, -.8466D-07, -.1223D-06,
19321      #    -.1724D-06, -.2372D-06, -.3185D-06, -.4163D-06, -.5270D-06,
19322      #    -.6404D-06, -.7353D-06, -.7752D-06, -.7035D-06, -.4463D-06,
19323      #    0.7188D-07, 0.8923D-06, 0.1977D-05, 0.3184D-05, 0.4294D-05,
19324      #    0.5103D-05, 0.5499D-05, 0.5475D-05, 0.5106D-05, 0.4503D-05,
19325      #    0.3787D-05, 0.3060D-05, 0.2392D-05, 0.1821D-05, 0.1357D-05,
19326      #    0.9954D-06/
19327
19328       data (calcpts(j,49), j = 1,neta) /0.5682D-09, 0.1002D-08,
19329      #    -.8636D-09, 0.3879D-09, -.6704D-09, -.1877D-09, 0.6433D-10,
19330      #    0.4983D-09, 0.2832D-09, 0.1430D-09, -.1107D-09, -.2155D-09,
19331      #    -.7760D-10, 0.9064D-10, 0.5010D-10, 0.5425D-10, -.2434D-10,
19332      #    0.2420D-11, -.3557D-10, -.2176D-10, 0.2093D-10, 0.3055D-11,
19333      #    -.5441D-12, 0.2863D-11, 0.5720D-12, -.4297D-11, -.8496D-11,
19334      #    0.8641D-12, -.1555D-10, -.1598D-10, -.2747D-10, -.3948D-10,
19335      #    -.5439D-10, -.7508D-10, -.1040D-09, -.1614D-09, -.2881D-09,
19336      #    -.5647D-09, -.1129D-08, -.2184D-08, -.4008D-08, -.6967D-08,
19337      #    -.1154D-07, -.1834D-07, -.2814D-07, -.4188D-07, -.6078D-07,
19338      #    -.8618D-07, -.1195D-06, -.1623D-06, -.2151D-06, -.2778D-06,
19339      #    -.3471D-06, -.4155D-06, -.4677D-06, -.4778D-06, -.4068D-06,
19340      #    -.2046D-06, 0.1783D-06, 0.7663D-06, 0.1528D-05, 0.2361D-05,
19341      #    0.3115D-05, 0.3654D-05, 0.3904D-05, 0.3867D-05, 0.3595D-05,
19342      #    0.3165D-05, 0.2658D-05, 0.2146D-05, 0.1677D-05, 0.1275D-05,
19343      #    0.9499D-06/
19344
19345       data (dlaeta(j), j = 1,neta) /
19346      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
19347      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
19348      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
19349      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
19350      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
19351      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
19352      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
19353      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
19354      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
19355      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
19356      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
19357      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
19358      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
19359      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
19360      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
19361
19362       data (dlaxi(j), j = 1,nxi) /
19363      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
19364      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
19365      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
19366      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
19367      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
19368      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
19369      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
19370      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
19371      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
19372      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
19373
19374       dleta = dlog10(eta)
19375       dlxi = dlog10(xi)
19376       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
19377       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
19378       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
19379       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
19380       call locate(dlaeta,neta, dleta, ieta)
19381       call locate(dlaxi, nxi, dlxi, ixi)
19382 c     interpolating between the appropriate points
19383       delxi = 1d0/6d0
19384       deleta = 1d0/6d0
19385 c  lagrange 3-pt.
19386       if (ixi .le. 2) ixi = 2
19387       if (ixi .ge. 48) ixi = 48
19388       if (ieta .le. 2) ieta = 2
19389       if (ieta .ge. 72) ieta = 72
19390       pxi = (dlxi - dlaxi(ixi))/delxi
19391       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
19392      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
19393      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
19394       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
19395      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
19396      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
19397       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
19398      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
19399      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
19400       peta = (dleta - dlaeta(ieta))/deleta
19401       h1_FLg = peta*(peta-1d0)/2d0*f(-1) +
19402      #     (1d0 - peta**2)*f(0) +
19403 CMB  #     + peta*(peta+1d0)/2d0*f(1)
19404      #     peta*(peta+1d0)/2d0*f(1)
19405       return
19406       end
19407
19408 c     ==========================================
19409       double precision function h1bar_Lg(eta,xi)
19410 c     ==========================================
19411
19412 c     eq (12) in PLB347 (1995) 143 - 151 for the longitudinal piece
19413 c     MSbar scheme
19414 c     This routine is called subclbar in the original code.
19415 c     Called sclbar in updated code (03/06/96).
19416
19417       implicit none
19418       integer neta, nxi
19419       parameter (neta = 73, nxi = 49)
19420       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
19421       double precision eta, xi, dleta, dlxi
19422       double precision pxi, peta, f(-1:1), delxi, deleta
19423       integer j, ieta, ixi
19424
19425       data (calcpts(j, 1), j = 1,neta) /0.7071D-08, 0.8567D-08,
19426      #    0.1038D-07, 0.1257D-07, 0.1524D-07, 0.1846D-07, 0.2236D-07,
19427      #    0.2710D-07, 0.3283D-07, 0.3978D-07, 0.4822D-07, 0.5844D-07,
19428      #    0.7084D-07, 0.8591D-07, 0.1042D-06, 0.1265D-06, 0.1537D-06,
19429      #    0.1870D-06, 0.2279D-06, 0.2786D-06, 0.3418D-06, 0.4217D-06,
19430      #    0.5243D-06, 0.6586D-06, 0.8386D-06, 0.1086D-05, 0.1434D-05,
19431      #    0.1933D-05, 0.2658D-05, 0.3705D-05, 0.5187D-05, 0.7191D-05,
19432      #    0.9704D-05, 0.1252D-04, 0.1518D-04, 0.1707D-04, 0.1771D-04,
19433      #    0.1701D-04, 0.1527D-04, 0.1299D-04, 0.1059D-04, 0.8349D-05,
19434      #    0.6403D-05, 0.4797D-05, 0.3525D-05, 0.2546D-05, 0.1816D-05,
19435      #    0.1282D-05, 0.8938D-06, 0.6230D-06, 0.4303D-06, 0.2961D-06,
19436      #    0.2068D-06, 0.1394D-06, 0.9358D-07, 0.6473D-07, 0.4295D-07,
19437      #    0.3262D-07, 0.1892D-07, 0.1412D-07, 0.1085D-07, 0.8620D-08,
19438      #    0.7103D-08, 0.6068D-08, 0.5363D-08, -.1784D-08, -.2111D-08,
19439      #    -.2334D-08, -.2486D-08, -.2589D-08, -.2660D-08, -.2708D-08,
19440      #    -.2741D-08/
19441
19442       data (calcpts(j, 2), j = 1,neta) /0.1038D-07, 0.1257D-07,
19443      #    0.1523D-07, 0.1845D-07, 0.2236D-07, 0.2709D-07, 0.3282D-07,
19444      #    0.3977D-07, 0.4818D-07, 0.5839D-07, 0.7077D-07, 0.8577D-07,
19445      #    0.1040D-06, 0.1261D-06, 0.1529D-06, 0.1857D-06, 0.2256D-06,
19446      #    0.2745D-06, 0.3345D-06, 0.4089D-06, 0.5016D-06, 0.6189D-06,
19447      #    0.7695D-06, 0.9666D-06, 0.1231D-05, 0.1593D-05, 0.2104D-05,
19448      #    0.2837D-05, 0.3901D-05, 0.5438D-05, 0.7612D-05, 0.1055D-04,
19449      #    0.1424D-04, 0.1838D-04, 0.2228D-04, 0.2506D-04, 0.2600D-04,
19450      #    0.2497D-04, 0.2241D-04, 0.1906D-04, 0.1554D-04, 0.1225D-04,
19451      #    0.9395D-05, 0.7042D-05, 0.5175D-05, 0.3742D-05, 0.2663D-05,
19452      #    0.1879D-05, 0.1317D-05, 0.9144D-06, 0.6334D-06, 0.4387D-06,
19453      #    0.2970D-06, 0.2074D-06, 0.1398D-06, 0.9388D-07, 0.6503D-07,
19454      #    0.4321D-07, 0.3288D-07, 0.1917D-07, 0.1438D-07, 0.1111D-07,
19455      #    0.8879D-08, 0.7360D-08, 0.6325D-08, 0.5620D-08, 0.5140D-08,
19456      #    0.4813D-08, 0.4590D-08, 0.4438D-08, 0.4335D-08, 0.4264D-08,
19457      #    0.4216D-08/
19458
19459       data (calcpts(j, 3), j = 1,neta) /0.1522D-07, 0.1844D-07,
19460      #    0.2234D-07, 0.2707D-07, 0.3280D-07, 0.3974D-07, 0.4815D-07,
19461      #    0.5834D-07, 0.7068D-07, 0.8565D-07, 0.1038D-06, 0.1258D-06,
19462      #    0.1525D-06, 0.1850D-06, 0.2244D-06, 0.2724D-06, 0.3309D-06,
19463      #    0.4026D-06, 0.4907D-06, 0.5998D-06, 0.7358D-06, 0.9079D-06,
19464      #    0.1129D-05, 0.1418D-05, 0.1805D-05, 0.2338D-05, 0.3087D-05,
19465      #    0.4163D-05, 0.5723D-05, 0.7978D-05, 0.1117D-04, 0.1548D-04,
19466      #    0.2090D-04, 0.2696D-04, 0.3269D-04, 0.3676D-04, 0.3814D-04,
19467      #    0.3662D-04, 0.3287D-04, 0.2796D-04, 0.2279D-04, 0.1796D-04,
19468      #    0.1378D-04, 0.1033D-04, 0.7581D-05, 0.5477D-05, 0.3902D-05,
19469      #    0.2753D-05, 0.1925D-05, 0.1338D-05, 0.9239D-06, 0.6335D-06,
19470      #    0.4377D-06, 0.2956D-06, 0.1991D-06, 0.1380D-06, 0.9217D-07,
19471      #    0.6328D-07, 0.4146D-07, 0.2447D-07, 0.1743D-07, 0.1263D-07,
19472      #    0.9369D-08, 0.4751D-09, -.1043D-08, -.2076D-08, -.2780D-08,
19473      #    -.3260D-08, -.3587D-08, -.3809D-08, -.3961D-08, -.4065D-08,
19474      #    -.4135D-08/
19475
19476       data (calcpts(j, 4), j = 1,neta) /0.2234D-07, 0.2706D-07,
19477      #    0.3278D-07, 0.3972D-07, 0.4813D-07, 0.5831D-07, 0.7065D-07,
19478      #    0.8560D-07, 0.1037D-06, 0.1257D-06, 0.1523D-06, 0.1846D-06,
19479      #    0.2238D-06, 0.2714D-06, 0.3292D-06, 0.3996D-06, 0.4856D-06,
19480      #    0.5907D-06, 0.7200D-06, 0.8801D-06, 0.1080D-05, 0.1332D-05,
19481      #    0.1656D-05, 0.2081D-05, 0.2649D-05, 0.3430D-05, 0.4529D-05,
19482      #    0.6107D-05, 0.8395D-05, 0.1171D-04, 0.1638D-04, 0.2272D-04,
19483      #    0.3066D-04, 0.3956D-04, 0.4796D-04, 0.5393D-04, 0.5596D-04,
19484      #    0.5373D-04, 0.4823D-04, 0.4102D-04, 0.3344D-04, 0.2636D-04,
19485      #    0.2021D-04, 0.1515D-04, 0.1113D-04, 0.8040D-05, 0.5732D-05,
19486      #    0.4043D-05, 0.2826D-05, 0.1960D-05, 0.1359D-05, 0.9340D-06,
19487      #    0.6419D-06, 0.4389D-06, 0.2964D-06, 0.2064D-06, 0.1387D-06,
19488      #    0.9274D-07, 0.6384D-07, 0.4204D-07, 0.3172D-07, 0.1801D-07,
19489      #    0.1322D-07, 0.9956D-08, 0.7730D-08, -.4522D-09, -.1485D-08,
19490      #    -.2189D-08, -.2668D-08, -.2995D-08, -.3218D-08, -.3369D-08,
19491      #    -.3473D-08/
19492
19493       data (calcpts(j, 5), j = 1,neta) /0.3277D-07, 0.3971D-07,
19494      #    0.4810D-07, 0.5828D-07, 0.7061D-07, 0.8555D-07, 0.1036D-06,
19495      #    0.1256D-06, 0.1522D-06, 0.1844D-06, 0.2235D-06, 0.2708D-06,
19496      #    0.3283D-06, 0.3982D-06, 0.4830D-06, 0.5863D-06, 0.7124D-06,
19497      #    0.8667D-06, 0.1056D-05, 0.1291D-05, 0.1584D-05, 0.1954D-05,
19498      #    0.2430D-05, 0.3052D-05, 0.3886D-05, 0.5032D-05, 0.6644D-05,
19499      #    0.8958D-05, 0.1231D-04, 0.1717D-04, 0.2403D-04, 0.3332D-04,
19500      #    0.4497D-04, 0.5803D-04, 0.7035D-04, 0.7913D-04, 0.8209D-04,
19501      #    0.7883D-04, 0.7075D-04, 0.6016D-04, 0.4905D-04, 0.3866D-04,
19502      #    0.2965D-04, 0.2222D-04, 0.1633D-04, 0.1179D-04, 0.8411D-05,
19503      #    0.5937D-05, 0.4149D-05, 0.2887D-05, 0.1997D-05, 0.1377D-05,
19504      #    0.9428D-06, 0.6499D-06, 0.4463D-06, 0.3037D-06, 0.2070D-06,
19505      #    0.1459D-06, 0.9995D-07, 0.7108D-07, 0.4928D-07, 0.3230D-07,
19506      #    0.2527D-07, 0.2048D-07, 0.1055D-07, 0.8328D-08, 0.6813D-08,
19507      #    0.5781D-08, 0.5079D-08, 0.4599D-08, 0.4273D-08, 0.4051D-08,
19508      #    0.3899D-08/
19509
19510       data (calcpts(j, 6), j = 1,neta) /0.4805D-07, 0.5822D-07,
19511      #    0.7053D-07, 0.8545D-07, 0.1035D-06, 0.1254D-06, 0.1520D-06,
19512      #    0.1842D-06, 0.2231D-06, 0.2704D-06, 0.3277D-06, 0.3971D-06,
19513      #    0.4815D-06, 0.5839D-06, 0.7082D-06, 0.8597D-06, 0.1045D-05,
19514      #    0.1271D-05, 0.1549D-05, 0.1893D-05, 0.2323D-05, 0.2866D-05,
19515      #    0.3563D-05, 0.4475D-05, 0.5698D-05, 0.7377D-05, 0.9741D-05,
19516      #    0.1313D-04, 0.1806D-04, 0.2517D-04, 0.3524D-04, 0.4885D-04,
19517      #    0.6594D-04, 0.8508D-04, 0.1032D-03, 0.1160D-03, 0.1204D-03,
19518      #    0.1156D-03, 0.1037D-03, 0.8819D-04, 0.7189D-04, 0.5667D-04,
19519      #    0.4346D-04, 0.3256D-04, 0.2392D-04, 0.1729D-04, 0.1232D-04,
19520      #    0.8691D-05, 0.6081D-05, 0.4225D-05, 0.2921D-05, 0.2010D-05,
19521      #    0.1380D-05, 0.9449D-06, 0.6514D-06, 0.4410D-06, 0.3051D-06,
19522      #    0.2084D-06, 0.1406D-06, 0.9476D-07, 0.6592D-07, 0.4414D-07,
19523      #    0.3385D-07, 0.2016D-07, 0.1538D-07, 0.1212D-07, 0.9899D-08,
19524      #    0.8387D-08, 0.6908D-09, -.1138D-10, -.4898D-09, -.8155D-09,
19525      #    -.1037D-08/
19526
19527       data (calcpts(j, 7), j = 1,neta) /0.7044D-07, 0.8534D-07,
19528      #    0.1034D-06, 0.1253D-06, 0.1518D-06, 0.1839D-06, 0.2228D-06,
19529      #    0.2699D-06, 0.3270D-06, 0.3963D-06, 0.4803D-06, 0.5821D-06,
19530      #    0.7057D-06, 0.8558D-06, 0.1038D-05, 0.1260D-05, 0.1531D-05,
19531      #    0.1863D-05, 0.2270D-05, 0.2775D-05, 0.3405D-05, 0.4200D-05,
19532      #    0.5222D-05, 0.6559D-05, 0.8351D-05, 0.1081D-04, 0.1428D-04,
19533      #    0.1925D-04, 0.2646D-04, 0.3688D-04, 0.5164D-04, 0.7160D-04,
19534      #    0.9666D-04, 0.1247D-03, 0.1512D-03, 0.1701D-03, 0.1764D-03,
19535      #    0.1694D-03, 0.1520D-03, 0.1292D-03, 0.1053D-03, 0.8300D-04,
19536      #    0.6365D-04, 0.4768D-04, 0.3504D-04, 0.2532D-04, 0.1805D-04,
19537      #    0.1274D-04, 0.8887D-05, 0.6193D-05, 0.4276D-05, 0.2941D-05,
19538      #    0.2053D-05, 0.1382D-05, 0.9261D-06, 0.6392D-06, 0.4224D-06,
19539      #    0.3199D-06, 0.1833D-06, 0.1356D-06, 0.1032D-06, 0.8102D-07,
19540      #    0.6595D-07, 0.5567D-07, 0.4867D-07, 0.4390D-07, 0.4065D-07,
19541      #    0.3843D-07, 0.3693D-07, 0.3590D-07, 0.3520D-07, 0.3472D-07,
19542      #    0.3440D-07/
19543
19544       data (calcpts(j, 8), j = 1,neta) /0.1032D-06, 0.1250D-06,
19545      #    0.1515D-06, 0.1835D-06, 0.2223D-06, 0.2694D-06, 0.3264D-06,
19546      #    0.3955D-06, 0.4791D-06, 0.5806D-06, 0.7037D-06, 0.8529D-06,
19547      #    0.1034D-05, 0.1254D-05, 0.1521D-05, 0.1846D-05, 0.2243D-05,
19548      #    0.2729D-05, 0.3326D-05, 0.4065D-05, 0.4988D-05, 0.6154D-05,
19549      #    0.7650D-05, 0.9609D-05, 0.1223D-04, 0.1583D-04, 0.2091D-04,
19550      #    0.2819D-04, 0.3875D-04, 0.5401D-04, 0.7562D-04, 0.1049D-03,
19551      #    0.1415D-03, 0.1826D-03, 0.2215D-03, 0.2492D-03, 0.2585D-03,
19552      #    0.2481D-03, 0.2226D-03, 0.1892D-03, 0.1542D-03, 0.1215D-03,
19553      #    0.9315D-04, 0.6981D-04, 0.5128D-04, 0.3707D-04, 0.2644D-04,
19554      #    0.1866D-04, 0.1302D-04, 0.9091D-05, 0.6303D-05, 0.4304D-05,
19555      #    0.2964D-05, 0.2075D-05, 0.1403D-05, 0.9480D-06, 0.6617D-06,
19556      #    0.4450D-06, 0.3427D-06, 0.2064D-06, 0.1589D-06, 0.1265D-06,
19557      #    0.1045D-06, 0.8944D-07, 0.1253D-07, 0.5554D-08, 0.8006D-09,
19558      #    -.2439D-08, -.4644D-08, -.6148D-08, -.7172D-08, -.7870D-08,
19559      #    -.8345D-08/
19560
19561       data (calcpts(j, 9), j = 1,neta) /0.1510D-06, 0.1829D-06,
19562      #    0.2216D-06, 0.2685D-06, 0.3253D-06, 0.3941D-06, 0.4775D-06,
19563      #    0.5786D-06, 0.7010D-06, 0.8495D-06, 0.1030D-05, 0.1248D-05,
19564      #    0.1513D-05, 0.1834D-05, 0.2225D-05, 0.2701D-05, 0.3282D-05,
19565      #    0.3992D-05, 0.4866D-05, 0.5948D-05, 0.7297D-05, 0.9002D-05,
19566      #    0.1119D-04, 0.1406D-04, 0.1789D-04, 0.2316D-04, 0.3058D-04,
19567      #    0.4123D-04, 0.5667D-04, 0.7900D-04, 0.1106D-03, 0.1534D-03,
19568      #    0.2071D-03, 0.2673D-03, 0.3241D-03, 0.3646D-03, 0.3781D-03,
19569      #    0.3629D-03, 0.3255D-03, 0.2765D-03, 0.2252D-03, 0.1775D-03,
19570      #    0.1361D-03, 0.1019D-03, 0.7488D-04, 0.5409D-04, 0.3859D-04,
19571      #    0.2717D-04, 0.1898D-04, 0.1318D-04, 0.9152D-05, 0.6280D-05,
19572      #    0.4277D-05, 0.2938D-05, 0.1983D-05, 0.1379D-05, 0.9252D-06,
19573      #    0.6396D-06, 0.4236D-06, 0.2553D-06, 0.1859D-06, 0.1387D-06,
19574      #    0.3983D-07, 0.1788D-07, 0.2928D-08, -.7253D-08, -.1419D-07,
19575      #    -.1892D-07, -.2214D-07, -.2433D-07, -.2583D-07, -.2685D-07,
19576      #    -.2754D-07/
19577
19578       data (calcpts(j,10), j = 1,neta) /0.2207D-06, 0.2674D-06,
19579      #    0.3239D-06, 0.3924D-06, 0.4755D-06, 0.5761D-06, 0.6980D-06,
19580      #    0.8458D-06, 0.1025D-05, 0.1242D-05, 0.1505D-05, 0.1824D-05,
19581      #    0.2211D-05, 0.2681D-05, 0.3252D-05, 0.3948D-05, 0.4797D-05,
19582      #    0.5836D-05, 0.7113D-05, 0.8694D-05, 0.1066D-04, 0.1316D-04,
19583      #    0.1636D-04, 0.2054D-04, 0.2614D-04, 0.3384D-04, 0.4467D-04,
19584      #    0.6022D-04, 0.8277D-04, 0.1154D-03, 0.1615D-03, 0.2240D-03,
19585      #    0.3025D-03, 0.3905D-03, 0.4737D-03, 0.5328D-03, 0.5527D-03,
19586      #    0.5302D-03, 0.4753D-03, 0.4036D-03, 0.3286D-03, 0.2589D-03,
19587      #    0.1984D-03, 0.1486D-03, 0.1092D-03, 0.7896D-04, 0.5628D-04,
19588      #    0.3968D-04, 0.2778D-04, 0.1927D-04, 0.1335D-04, 0.9172D-05,
19589      #    0.6298D-05, 0.4299D-05, 0.2963D-05, 0.2012D-05, 0.1345D-05,
19590      #    0.9590D-06, 0.6082D-06, 0.4600D-06, 0.2924D-06, 0.2235D-06,
19591      #    0.1100D-06, 0.7802D-07, 0.5624D-07, 0.4141D-07, 0.3130D-07,
19592      #    0.2441D-07, 0.1972D-07, 0.1652D-07, 0.1435D-07, 0.1286D-07,
19593      #    0.1185D-07/
19594
19595       data (calcpts(j,11), j = 1,neta) /0.3220D-06, 0.3901D-06,
19596      #    0.4725D-06, 0.5725D-06, 0.6937D-06, 0.8405D-06, 0.1018D-05,
19597      #    0.1234D-05, 0.1495D-05, 0.1811D-05, 0.2195D-05, 0.2661D-05,
19598      #    0.3226D-05, 0.3912D-05, 0.4745D-05, 0.5760D-05, 0.6999D-05,
19599      #    0.8514D-05, 0.1038D-04, 0.1268D-04, 0.1556D-04, 0.1919D-04,
19600      #    0.2385D-04, 0.2996D-04, 0.3812D-04, 0.4934D-04, 0.6512D-04,
19601      #    0.8776D-04, 0.1206D-03, 0.1681D-03, 0.2354D-03, 0.3265D-03,
19602      #    0.4410D-03, 0.5695D-03, 0.6909D-03, 0.7773D-03, 0.8061D-03,
19603      #    0.7730D-03, 0.6925D-03, 0.5877D-03, 0.4781D-03, 0.3765D-03,
19604      #    0.2886D-03, 0.2162D-03, 0.1589D-03, 0.1148D-03, 0.8193D-04,
19605      #    0.5780D-04, 0.4049D-04, 0.2811D-04, 0.1949D-04, 0.1344D-04,
19606      #    0.9262D-05, 0.6335D-05, 0.4346D-05, 0.3018D-05, 0.2074D-05,
19607      #    0.1411D-05, 0.1028D-05, 0.6800D-06, 0.4667D-06, 0.3667D-06,
19608      #    0.2320D-06, 0.1856D-06, 0.1540D-06, 0.1325D-06, 0.1178D-06,
19609      #    0.1078D-06, 0.1010D-06, 0.9635D-07, 0.9319D-07, 0.9104D-07,
19610      #    0.8957D-07/
19611
19612       data (calcpts(j,12), j = 1,neta) /0.4683D-06, 0.5674D-06,
19613      #    0.6873D-06, 0.8327D-06, 0.1009D-05, 0.1222D-05, 0.1481D-05,
19614      #    0.1795D-05, 0.2174D-05, 0.2635D-05, 0.3193D-05, 0.3870D-05,
19615      #    0.4692D-05, 0.5689D-05, 0.6901D-05, 0.8377D-05, 0.1018D-04,
19616      #    0.1238D-04, 0.1509D-04, 0.1844D-04, 0.2262D-04, 0.2790D-04,
19617      #    0.3468D-04, 0.4354D-04, 0.5541D-04, 0.7170D-04, 0.9460D-04,
19618      #    0.1275D-03, 0.1751D-03, 0.2441D-03, 0.3418D-03, 0.4742D-03,
19619      #    0.6407D-03, 0.8277D-03, 0.1005D-02, 0.1130D-02, 0.1172D-02,
19620      #    0.1123D-02, 0.1005D-02, 0.8521D-03, 0.6927D-03, 0.5450D-03,
19621      #    0.4176D-03, 0.3128D-03, 0.2299D-03, 0.1662D-03, 0.1186D-03,
19622      #    0.8370D-04, 0.5860D-04, 0.4075D-04, 0.2823D-04, 0.1950D-04,
19623      #    0.1342D-04, 0.9210D-05, 0.6376D-05, 0.4340D-05, 0.3028D-05,
19624      #    0.2093D-05, 0.1437D-05, 0.1060D-05, 0.7149D-06, 0.5039D-06,
19625      #    0.4057D-06, 0.2720D-06, 0.2264D-06, 0.1953D-06, 0.1741D-06,
19626      #    0.1597D-06, 0.1499D-06, 0.1431D-06, 0.1386D-06, 0.1355D-06,
19627      #    0.1334D-06/
19628
19629       data (calcpts(j,13), j = 1,neta) /0.6783D-06, 0.8219D-06,
19630      #    0.9956D-06, 0.1206D-05, 0.1462D-05, 0.1771D-05, 0.2145D-05,
19631      #    0.2600D-05, 0.3150D-05, 0.3817D-05, 0.4626D-05, 0.5606D-05,
19632      #    0.6796D-05, 0.8242D-05, 0.9996D-05, 0.1213D-04, 0.1474D-04,
19633      #    0.1793D-04, 0.2186D-04, 0.2671D-04, 0.3276D-04, 0.4041D-04,
19634      #    0.5021D-04, 0.6303D-04, 0.8018D-04, 0.1037D-03, 0.1368D-03,
19635      #    0.1842D-03, 0.2531D-03, 0.3527D-03, 0.4939D-03, 0.6854D-03,
19636      #    0.9269D-03, 0.1198D-02, 0.1455D-02, 0.1638D-02, 0.1697D-02,
19637      #    0.1625D-02, 0.1452D-02, 0.1229D-02, 0.9978D-03, 0.7844D-03,
19638      #    0.6007D-03, 0.4499D-03, 0.3307D-03, 0.2392D-03, 0.1708D-03,
19639      #    0.1206D-03, 0.8451D-04, 0.5882D-04, 0.4067D-04, 0.2798D-04,
19640      #    0.1955D-04, 0.1315D-04, 0.9469D-05, 0.6745D-05, 0.4676D-05,
19641      #    0.3051D-05, 0.2398D-05, 0.1953D-05, 0.9828D-06, 0.7760D-06,
19642      #    0.6353D-06, 0.5393D-06, 0.4738D-06, 0.4293D-06, 0.3989D-06,
19643      #    0.3782D-06, 0.3641D-06, 0.3545D-06, 0.3480D-06, 0.3435D-06,
19644      #    0.3405D-06/
19645
19646       data (calcpts(j,14), j = 1,neta) /0.9761D-06, 0.1183D-05,
19647      #    0.1433D-05, 0.1736D-05, 0.2103D-05, 0.2548D-05, 0.3087D-05,
19648      #    0.3741D-05, 0.4532D-05, 0.5492D-05, 0.6656D-05, 0.8067D-05,
19649      #    0.9780D-05, 0.1186D-04, 0.1438D-04, 0.1746D-04, 0.2121D-04,
19650      #    0.2580D-04, 0.3145D-04, 0.3843D-04, 0.4712D-04, 0.5811D-04,
19651      #    0.7220D-04, 0.9060D-04, 0.1152D-03, 0.1490D-03, 0.1964D-03,
19652      #    0.2644D-03, 0.3630D-03, 0.5058D-03, 0.7084D-03, 0.9837D-03,
19653      #    0.1331D-02, 0.1722D-02, 0.2093D-02, 0.2357D-02, 0.2442D-02,
19654      #    0.2335D-02, 0.2083D-02, 0.1759D-02, 0.1425D-02, 0.1118D-02,
19655      #    0.8558D-03, 0.6404D-03, 0.4707D-03, 0.3408D-03, 0.2433D-03,
19656      #    0.1714D-03, 0.1205D-03, 0.8340D-04, 0.5819D-04, 0.4026D-04,
19657      #    0.2781D-04, 0.1890D-04, 0.1263D-04, 0.9049D-05, 0.6393D-05,
19658      #    0.4368D-05, 0.2775D-05, 0.2145D-05, 0.1714D-05, 0.7546D-06,
19659      #    0.5551D-06, 0.4189D-06, 0.3261D-06, 0.2630D-06, 0.2199D-06,
19660      #    0.1906D-06, 0.1707D-06, 0.1570D-06, 0.1478D-06, 0.1414D-06,
19661      #    0.1371D-06/
19662
19663       data (calcpts(j,15), j = 1,neta) /0.1392D-05, 0.1687D-05,
19664      #    0.2044D-05, 0.2476D-05, 0.3000D-05, 0.3635D-05, 0.4404D-05,
19665      #    0.5337D-05, 0.6465D-05, 0.7835D-05, 0.9495D-05, 0.1151D-04,
19666      #    0.1395D-04, 0.1692D-04, 0.2052D-04, 0.2491D-04, 0.3026D-04,
19667      #    0.3680D-04, 0.4485D-04, 0.5480D-04, 0.6719D-04, 0.8283D-04,
19668      #    0.1029D-03, 0.1290D-03, 0.1640D-03, 0.2119D-03, 0.2792D-03,
19669      #    0.3756D-03, 0.5155D-03, 0.7180D-03, 0.1006D-02, 0.1397D-02,
19670      #    0.1893D-02, 0.2452D-02, 0.2984D-02, 0.3362D-02, 0.3482D-02,
19671      #    0.3324D-02, 0.2956D-02, 0.2488D-02, 0.2009D-02, 0.1574D-02,
19672      #    0.1203D-02, 0.9001D-03, 0.6612D-03, 0.4787D-03, 0.3412D-03,
19673      #    0.2412D-03, 0.1686D-03, 0.1173D-03, 0.8115D-04, 0.5598D-04,
19674      #    0.3859D-04, 0.2589D-04, 0.1793D-04, 0.1186D-04, 0.8419D-05,
19675      #    0.5190D-05, 0.3898D-05, 0.2351D-05, 0.1751D-05, 0.6754D-06,
19676      #    0.3970D-06, 0.2070D-06, 0.7757D-07, -.1055D-07, -.7060D-07,
19677      #    -.1115D-06, -.1394D-06, -.1584D-06, -.1713D-06, -.1801D-06,
19678      #    -.1862D-06/
19679
19680       data (calcpts(j,16), j = 1,neta) /0.1963D-05, 0.2378D-05,
19681      #    0.2881D-05, 0.3490D-05, 0.4229D-05, 0.5124D-05, 0.6208D-05,
19682      #    0.7522D-05, 0.9113D-05, 0.1104D-04, 0.1338D-04, 0.1622D-04,
19683      #    0.1966D-04, 0.2384D-04, 0.2892D-04, 0.3510D-04, 0.4264D-04,
19684      #    0.5186D-04, 0.6319D-04, 0.7719D-04, 0.9463D-04, 0.1166D-03,
19685      #    0.1448D-03, 0.1815D-03, 0.2304D-03, 0.2975D-03, 0.3914D-03,
19686      #    0.5261D-03, 0.7214D-03, 0.1005D-02, 0.1407D-02, 0.1957D-02,
19687      #    0.2654D-02, 0.3445D-02, 0.4200D-02, 0.4737D-02, 0.4905D-02,
19688      #    0.4672D-02, 0.4139D-02, 0.3467D-02, 0.2788D-02, 0.2177D-02,
19689      #    0.1661D-02, 0.1242D-02, 0.9134D-03, 0.6611D-03, 0.4721D-03,
19690      #    0.3337D-03, 0.2342D-03, 0.1627D-03, 0.1128D-03, 0.7755D-04,
19691      #    0.5352D-04, 0.3630D-04, 0.2484D-04, 0.1728D-04, 0.1149D-04,
19692      #    0.7571D-05, 0.5140D-05, 0.3272D-05, 0.2453D-05, 0.1894D-05,
19693      #    0.8474D-06, 0.5881D-06, 0.4114D-06, 0.2911D-06, 0.2091D-06,
19694      #    0.1532D-06, 0.1152D-06, 0.8923D-07, 0.7155D-07, 0.5952D-07,
19695      #    0.5132D-07/
19696
19697       data (calcpts(j,17), j = 1,neta) /0.2719D-05, 0.3294D-05,
19698      #    0.3990D-05, 0.4835D-05, 0.5858D-05, 0.7098D-05, 0.8599D-05,
19699      #    0.1042D-04, 0.1262D-04, 0.1530D-04, 0.1854D-04, 0.2247D-04,
19700      #    0.2724D-04, 0.3303D-04, 0.4005D-04, 0.4862D-04, 0.5906D-04,
19701      #    0.7181D-04, 0.8748D-04, 0.1068D-03, 0.1309D-03, 0.1613D-03,
19702      #    0.2001D-03, 0.2506D-03, 0.3179D-03, 0.4097D-03, 0.5383D-03,
19703      #    0.7223D-03, 0.9891D-03, 0.1376D-02, 0.1929D-02, 0.2685D-02,
19704      #    0.3648D-02, 0.4749D-02, 0.5806D-02, 0.6560D-02, 0.6792D-02,
19705      #    0.6451D-02, 0.5686D-02, 0.4731D-02, 0.3782D-02, 0.2938D-02,
19706      #    0.2236D-02, 0.1671D-02, 0.1228D-02, 0.8906D-03, 0.6366D-03,
19707      #    0.4510D-03, 0.3165D-03, 0.2206D-03, 0.1529D-03, 0.1054D-03,
19708      #    0.7247D-04, 0.5007D-04, 0.3397D-04, 0.2328D-04, 0.1627D-04,
19709      #    0.1085D-04, 0.7844D-05, 0.4920D-05, 0.3835D-05, 0.2430D-05,
19710      #    0.1926D-05, 0.1583D-05, 0.6827D-06, 0.5235D-06, 0.4149D-06,
19711      #    0.3410D-06, 0.2907D-06, 0.2563D-06, 0.2329D-06, 0.2170D-06,
19712      #    0.2062D-06/
19713
19714       data (calcpts(j,18), j = 1,neta) /0.3677D-05, 0.4455D-05,
19715      #    0.5396D-05, 0.6538D-05, 0.7922D-05, 0.9598D-05, 0.1163D-04,
19716      #    0.1409D-04, 0.1707D-04, 0.2068D-04, 0.2507D-04, 0.3038D-04,
19717      #    0.3683D-04, 0.4466D-04, 0.5415D-04, 0.6572D-04, 0.7983D-04,
19718      #    0.9706D-04, 0.1182D-03, 0.1443D-03, 0.1768D-03, 0.2176D-03,
19719      #    0.2697D-03, 0.3374D-03, 0.4273D-03, 0.5497D-03, 0.7207D-03,
19720      #    0.9649D-03, 0.1319D-02, 0.1833D-02, 0.2568D-02, 0.3579D-02,
19721      #    0.4879D-02, 0.6374D-02, 0.7823D-02, 0.8865D-02, 0.9184D-02,
19722      #    0.8698D-02, 0.7616D-02, 0.6282D-02, 0.4975D-02, 0.3839D-02,
19723      #    0.2909D-02, 0.2170D-02, 0.1597D-02, 0.1158D-02, 0.8295D-03,
19724      #    0.5883D-03, 0.4137D-03, 0.2884D-03, 0.2003D-03, 0.1379D-03,
19725      #    0.9479D-04, 0.6551D-04, 0.4453D-04, 0.3054D-04, 0.2084D-04,
19726      #    0.1450D-04, 0.9540D-05, 0.6857D-05, 0.4815D-05, 0.3211D-05,
19727      #    0.1906D-05, 0.1471D-05, 0.1174D-05, 0.9723D-06, 0.1680D-06,
19728      #    0.7420D-07, 0.1038D-07, -.3316D-07, -.6282D-07, -.8302D-07,
19729      #    -.9678D-07/
19730
19731       data (calcpts(j,19), j = 1,neta) /0.4815D-05, 0.5834D-05,
19732      #    0.7067D-05, 0.8563D-05, 0.1038D-04, 0.1257D-04, 0.1523D-04,
19733      #    0.1845D-04, 0.2236D-04, 0.2709D-04, 0.3283D-04, 0.3979D-04,
19734      #    0.4823D-04, 0.5848D-04, 0.7091D-04, 0.8605D-04, 0.1045D-03,
19735      #    0.1270D-03, 0.1547D-03, 0.1887D-03, 0.2310D-03, 0.2842D-03,
19736      #    0.3518D-03, 0.4393D-03, 0.5551D-03, 0.7123D-03, 0.9310D-03,
19737      #    0.1242D-02, 0.1694D-02, 0.2349D-02, 0.3290D-02, 0.4593D-02,
19738      #    0.6281D-02, 0.8248D-02, 0.1018D-01, 0.1159D-01, 0.1204D-01,
19739      #    0.1138D-01, 0.9887D-02, 0.8062D-02, 0.6306D-02, 0.4815D-02,
19740      #    0.3625D-02, 0.2697D-02, 0.1984D-02, 0.1442D-02, 0.1035D-02,
19741      #    0.7363D-03, 0.5187D-03, 0.3626D-03, 0.2517D-03, 0.1742D-03,
19742      #    0.1200D-03, 0.8207D-04, 0.5639D-04, 0.3855D-04, 0.2627D-04,
19743      #    0.1773D-04, 0.1218D-04, 0.8433D-05, 0.5453D-05, 0.3663D-05,
19744      #    0.2898D-05, 0.1710D-05, 0.1355D-05, 0.1113D-05, 0.2814D-06,
19745      #    0.1690D-06, 0.9258D-07, 0.4042D-07, 0.4880D-08, -.1932D-07,
19746      #    -.3580D-07/
19747
19748       data (calcpts(j,20), j = 1,neta) /0.6052D-05, 0.7332D-05,
19749      #    0.8882D-05, 0.1076D-04, 0.1304D-04, 0.1580D-04, 0.1914D-04,
19750      #    0.2319D-04, 0.2810D-04, 0.3405D-04, 0.4126D-04, 0.5000D-04,
19751      #    0.6060D-04, 0.7348D-04, 0.8909D-04, 0.1081D-03, 0.1313D-03,
19752      #    0.1595D-03, 0.1941D-03, 0.2368D-03, 0.2896D-03, 0.3558D-03,
19753      #    0.4397D-03, 0.5479D-03, 0.6905D-03, 0.8828D-03, 0.1149D-02,
19754      #    0.1527D-02, 0.2073D-02, 0.2866D-02, 0.4009D-02, 0.5604D-02,
19755      #    0.7695D-02, 0.1017D-01, 0.1265D-01, 0.1452D-01, 0.1516D-01,
19756      #    0.1433D-01, 0.1237D-01, 0.9951D-02, 0.7656D-02, 0.5758D-02,
19757      #    0.4289D-02, 0.3177D-02, 0.2336D-02, 0.1702D-02, 0.1227D-02,
19758      #    0.8756D-03, 0.6190D-03, 0.4342D-03, 0.3023D-03, 0.2098D-03,
19759      #    0.1449D-03, 0.9966D-04, 0.6879D-04, 0.4702D-04, 0.3254D-04,
19760      #    0.2208D-04, 0.1546D-04, 0.1077D-04, 0.7606D-05, 0.5022D-05,
19761      #    0.3505D-05, 0.2924D-05, 0.1862D-05, 0.1593D-05, 0.1409D-05,
19762      #    0.6174D-06, 0.5323D-06, 0.4742D-06, 0.4347D-06, 0.4077D-06,
19763      #    0.3894D-06/
19764
19765       data (calcpts(j,21), j = 1,neta) /0.7225D-05, 0.8754D-05,
19766      #    0.1060D-04, 0.1285D-04, 0.1557D-04, 0.1886D-04, 0.2285D-04,
19767      #    0.2769D-04, 0.3354D-04, 0.4064D-04, 0.4925D-04, 0.5969D-04,
19768      #    0.7234D-04, 0.8770D-04, 0.1063D-03, 0.1290D-03, 0.1566D-03,
19769      #    0.1902D-03, 0.2314D-03, 0.2821D-03, 0.3446D-03, 0.4228D-03,
19770      #    0.5215D-03, 0.6482D-03, 0.8139D-03, 0.1036D-02, 0.1341D-02,
19771      #    0.1772D-02, 0.2391D-02, 0.3291D-02, 0.4591D-02, 0.6420D-02,
19772      #    0.8852D-02, 0.1179D-01, 0.1482D-01, 0.1722D-01, 0.1815D-01,
19773      #    0.1725D-01, 0.1484D-01, 0.1179D-01, 0.8890D-02, 0.6547D-02,
19774      #    0.4798D-02, 0.3523D-02, 0.2586D-02, 0.1889D-02, 0.1369D-02,
19775      #    0.9817D-03, 0.6970D-03, 0.4904D-03, 0.3405D-03, 0.2364D-03,
19776      #    0.1636D-03, 0.1165D-03, 0.7802D-04, 0.5204D-04, 0.3676D-04,
19777      #    0.2420D-04, 0.1352D-04, 0.1079D-04, 0.8921D-05, 0.7650D-05,
19778      #    0.1180D-06, -.4722D-06, -.8743D-06, -.1148D-05, -.1335D-05,
19779      #    -.1462D-05, -.1548D-05, -.1607D-05, -.1648D-05, -.1675D-05,
19780      #    -.1694D-05/
19781
19782       data (calcpts(j,22), j = 1,neta) /0.8126D-05, 0.9846D-05,
19783      #    0.1193D-04, 0.1445D-04, 0.1751D-04, 0.2121D-04, 0.2570D-04,
19784      #    0.3114D-04, 0.3772D-04, 0.4571D-04, 0.5539D-04, 0.6712D-04,
19785      #    0.8135D-04, 0.9862D-04, 0.1195D-03, 0.1450D-03, 0.1760D-03,
19786      #    0.2137D-03, 0.2598D-03, 0.3164D-03, 0.3862D-03, 0.4730D-03,
19787      #    0.5821D-03, 0.7212D-03, 0.9018D-03, 0.1142D-02, 0.1468D-02,
19788      #    0.1925D-02, 0.2577D-02, 0.3522D-02, 0.4889D-02, 0.6829D-02,
19789      #    0.9448D-02, 0.1269D-01, 0.1617D-01, 0.1908D-01, 0.2047D-01,
19790      #    0.1972D-01, 0.1705D-01, 0.1345D-01, 0.9946D-02, 0.7133D-02,
19791      #    0.5103D-02, 0.3690D-02, 0.2694D-02, 0.1972D-02, 0.1441D-02,
19792      #    0.1041D-02, 0.7446D-03, 0.5284D-03, 0.3724D-03, 0.2599D-03,
19793      #    0.1772D-03, 0.1258D-03, 0.8889D-04, 0.5733D-04, 0.4279D-04,
19794      #    0.3074D-04, 0.2041D-04, 0.1124D-04, 0.9540D-05, 0.8379D-05,
19795      #    0.9215D-06, 0.3822D-06, 0.1478D-07, -.2354D-06, -.4059D-06,
19796      #    -.5221D-06, -.6012D-06, -.6551D-06, -.6919D-06, -.7169D-06,
19797      #    -.7339D-06/
19798
19799       data (calcpts(j,23), j = 1,neta) /0.8555D-05, 0.1037D-04,
19800      #    0.1256D-04, 0.1521D-04, 0.1843D-04, 0.2233D-04, 0.2706D-04,
19801      #    0.3278D-04, 0.3971D-04, 0.4812D-04, 0.5831D-04, 0.7066D-04,
19802      #    0.8563D-04, 0.1038D-03, 0.1258D-03, 0.1526D-03, 0.1851D-03,
19803      #    0.2247D-03, 0.2731D-03, 0.3323D-03, 0.4050D-03, 0.4952D-03,
19804      #    0.6079D-03, 0.7506D-03, 0.9342D-03, 0.1175D-02, 0.1500D-02,
19805      #    0.1948D-02, 0.2582D-02, 0.3494D-02, 0.4813D-02, 0.6696D-02,
19806      #    0.9276D-02, 0.1255D-01, 0.1623D-01, 0.1956D-01, 0.2150D-01,
19807      #    0.2122D-01, 0.1870D-01, 0.1484D-01, 0.1085D-01, 0.7583D-02,
19808      #    0.5254D-02, 0.3705D-02, 0.2674D-02, 0.1958D-02, 0.1439D-02,
19809      #    0.1054D-02, 0.7605D-03, 0.5451D-03, 0.3902D-03, 0.2743D-03,
19810      #    0.1917D-03, 0.1316D-03, 0.9125D-04, 0.6188D-04, 0.4216D-04,
19811      #    0.3112D-04, 0.2148D-04, 0.1279D-04, 0.1140D-04, 0.3796D-05,
19812      #    0.3154D-05, 0.2717D-05, 0.2418D-05, 0.2215D-05, 0.2077D-05,
19813      #    0.1983D-05, 0.1919D-05, 0.1875D-05, 0.1845D-05, 0.1825D-05,
19814      #    0.1811D-05/
19815
19816       data (calcpts(j,24), j = 1,neta) /0.8413D-05, 0.1019D-04,
19817      #    0.1235D-04, 0.1496D-04, 0.1813D-04, 0.2196D-04, 0.2661D-04,
19818      #    0.3224D-04, 0.3905D-04, 0.4732D-04, 0.5734D-04, 0.6948D-04,
19819      #    0.8420D-04, 0.1020D-03, 0.1237D-03, 0.1500D-03, 0.1819D-03,
19820      #    0.2207D-03, 0.2680D-03, 0.3259D-03, 0.3968D-03, 0.4842D-03,
19821      #    0.5930D-03, 0.7296D-03, 0.9037D-03, 0.1130D-02, 0.1429D-02,
19822      #    0.1837D-02, 0.2406D-02, 0.3215D-02, 0.4381D-02, 0.6047D-02,
19823      #    0.8359D-02, 0.1138D-01, 0.1491D-01, 0.1838D-01, 0.2084D-01,
19824      #    0.2132D-01, 0.1945D-01, 0.1584D-01, 0.1168D-01, 0.8046D-02,
19825      #    0.5399D-02, 0.3674D-02, 0.2589D-02, 0.1882D-02, 0.1394D-02,
19826      #    0.1027D-02, 0.7572D-03, 0.5472D-03, 0.3965D-03, 0.2795D-03,
19827      #    0.1985D-03, 0.1375D-03, 0.9440D-04, 0.6770D-04, 0.4313D-04,
19828      #    0.3334D-04, 0.2454D-04, 0.1643D-04, 0.8770D-05, 0.8095D-05,
19829      #    0.7637D-05, 0.6570D-06, 0.4437D-06, 0.2984D-06, 0.1995D-06,
19830      #    0.1320D-06, 0.8611D-07, 0.5480D-07, 0.3347D-07, 0.1894D-07,
19831      #    0.9044D-08/
19832
19833       data (calcpts(j,25), j = 1,neta) /0.7746D-05, 0.9385D-05,
19834      #    0.1137D-04, 0.1377D-04, 0.1669D-04, 0.2022D-04, 0.2450D-04,
19835      #    0.2968D-04, 0.3595D-04, 0.4356D-04, 0.5279D-04, 0.6396D-04,
19836      #    0.7750D-04, 0.9393D-04, 0.1138D-03, 0.1380D-03, 0.1673D-03,
19837      #    0.2030D-03, 0.2464D-03, 0.2993D-03, 0.3640D-03, 0.4435D-03,
19838      #    0.5418D-03, 0.6644D-03, 0.8191D-03, 0.1017D-02, 0.1276D-02,
19839      #    0.1623D-02, 0.2097D-02, 0.2763D-02, 0.3711D-02, 0.5062D-02,
19840      #    0.6951D-02, 0.9470D-02, 0.1255D-01, 0.1582D-01, 0.1854D-01,
19841      #    0.1980D-01, 0.1897D-01, 0.1619D-01, 0.1236D-01, 0.8615D-02,
19842      #    0.5685D-02, 0.3727D-02, 0.2527D-02, 0.1798D-02, 0.1322D-02,
19843      #    0.9898D-03, 0.7401D-03, 0.5472D-03, 0.3930D-03, 0.2873D-03,
19844      #    0.2008D-03, 0.1385D-03, 0.9903D-04, 0.6815D-04, 0.4528D-04,
19845      #    0.2999D-04, 0.2199D-04, 0.1441D-04, 0.1379D-04, 0.6702D-05,
19846      #    0.6414D-05, 0.6217D-05, -.5833D-06, -.6745D-06, -.7366D-06,
19847      #    -.7790D-06, -.8078D-06, -.8274D-06, -.8408D-06, -.8499D-06,
19848      #    -.8561D-06/
19849
19850       data (calcpts(j,26), j = 1,neta) /0.6715D-05, 0.8136D-05,
19851      #    0.9855D-05, 0.1194D-04, 0.1447D-04, 0.1753D-04, 0.2123D-04,
19852      #    0.2573D-04, 0.3117D-04, 0.3776D-04, 0.4576D-04, 0.5544D-04,
19853      #    0.6718D-04, 0.8141D-04, 0.9864D-04, 0.1196D-03, 0.1450D-03,
19854      #    0.1758D-03, 0.2132D-03, 0.2589D-03, 0.3145D-03, 0.3827D-03,
19855      #    0.4666D-03, 0.5705D-03, 0.7003D-03, 0.8648D-03, 0.1076D-02,
19856      #    0.1354D-02, 0.1727D-02, 0.2241D-02, 0.2960D-02, 0.3976D-02,
19857      #    0.5397D-02, 0.7320D-02, 0.9753D-02, 0.1251D-01, 0.1514D-01,
19858      #    0.1691D-01, 0.1715D-01, 0.1558D-01, 0.1263D-01, 0.9184D-02,
19859      #    0.6147D-02, 0.3950D-02, 0.2568D-02, 0.1754D-02, 0.1266D-02,
19860      #    0.9457D-03, 0.7134D-03, 0.5339D-03, 0.3943D-03, 0.2873D-03,
19861      #    0.2062D-03, 0.1459D-03, 0.1026D-03, 0.7161D-04, 0.5138D-04,
19862      #    0.3698D-04, 0.2292D-04, 0.1576D-04, 0.8751D-05, 0.8521D-05,
19863      #    0.1697D-05, 0.1590D-05, 0.1517D-05, 0.1467D-05, 0.1433D-05,
19864      #    0.1410D-05, 0.1394D-05, 0.1384D-05, 0.1376D-05, 0.1371D-05,
19865      #    0.1368D-05/
19866
19867       data (calcpts(j,27), j = 1,neta) /0.5527D-05, 0.6697D-05,
19868      #    0.8112D-05, 0.9828D-05, 0.1191D-04, 0.1443D-04, 0.1748D-04,
19869      #    0.2118D-04, 0.2565D-04, 0.3108D-04, 0.3766D-04, 0.4563D-04,
19870      #    0.5529D-04, 0.6700D-04, 0.8117D-04, 0.9838D-04, 0.1193D-03,
19871      #    0.1446D-03, 0.1753D-03, 0.2127D-03, 0.2582D-03, 0.3138D-03,
19872      #    0.3820D-03, 0.4658D-03, 0.5698D-03, 0.7001D-03, 0.8652D-03,
19873      #    0.1078D-02, 0.1359D-02, 0.1736D-02, 0.2254D-02, 0.2975D-02,
19874      #    0.3975D-02, 0.5336D-02, 0.7100D-02, 0.9208D-02, 0.1142D-01,
19875      #    0.1330D-01, 0.1427D-01, 0.1389D-01, 0.1213D-01, 0.9453D-02,
19876      #    0.6646D-02, 0.4334D-02, 0.2749D-02, 0.1791D-02, 0.1239D-02,
19877      #    0.9080D-03, 0.6858D-03, 0.5201D-03, 0.3907D-03, 0.2893D-03,
19878      #    0.2107D-03, 0.1511D-03, 0.1076D-03, 0.7520D-04, 0.5248D-04,
19879      #    0.3666D-04, 0.2566D-04, 0.1810D-04, 0.1261D-04, 0.8501D-05,
19880      #    0.6429D-05, 0.4380D-05, 0.3013D-05, 0.2324D-05, 0.1642D-05,
19881      #    0.1631D-05, 0.9573D-06, 0.9524D-06, 0.9491D-06, 0.9468D-06,
19882      #    0.9452D-06/
19883
19884       data (calcpts(j,28), j = 1,neta) /0.4356D-05, 0.5278D-05,
19885      #    0.6393D-05, 0.7746D-05, 0.9385D-05, 0.1137D-04, 0.1377D-04,
19886      #    0.1669D-04, 0.2022D-04, 0.2450D-04, 0.2968D-04, 0.3596D-04,
19887      #    0.4357D-04, 0.5279D-04, 0.6396D-04, 0.7751D-04, 0.9394D-04,
19888      #    0.1139D-03, 0.1380D-03, 0.1674D-03, 0.2031D-03, 0.2466D-03,
19889      #    0.2997D-03, 0.3648D-03, 0.4450D-03, 0.5445D-03, 0.6690D-03,
19890      #    0.8273D-03, 0.1031D-02, 0.1300D-02, 0.1660D-02, 0.2150D-02,
19891      #    0.2822D-02, 0.3731D-02, 0.4925D-02, 0.6402D-02, 0.8068D-02,
19892      #    0.9700D-02, 0.1093D-01, 0.1138D-01, 0.1074D-01, 0.9100D-02,
19893      #    0.6902D-02, 0.4741D-02, 0.3044D-02, 0.1922D-02, 0.1261D-02,
19894      #    0.8844D-03, 0.6548D-03, 0.4977D-03, 0.3789D-03, 0.2847D-03,
19895      #    0.2103D-03, 0.1528D-03, 0.1097D-03, 0.7798D-04, 0.5441D-04,
19896      #    0.3824D-04, 0.2613D-04, 0.1806D-04, 0.1267D-04, 0.8635D-05,
19897      #    0.5944D-05, 0.3927D-05, 0.3250D-05, 0.1909D-05, 0.1237D-05,
19898      #    0.1233D-05, 0.5641D-06, 0.5624D-06, 0.5613D-06, 0.5605D-06,
19899      #    0.5600D-06/
19900
19901       data (calcpts(j,29), j = 1,neta) /0.3316D-05, 0.4017D-05,
19902      #    0.4866D-05, 0.5896D-05, 0.7143D-05, 0.8654D-05, 0.1048D-04,
19903      #    0.1270D-04, 0.1539D-04, 0.1864D-04, 0.2259D-04, 0.2737D-04,
19904      #    0.3316D-04, 0.4018D-04, 0.4868D-04, 0.5898D-04, 0.7148D-04,
19905      #    0.8663D-04, 0.1050D-03, 0.1273D-03, 0.1544D-03, 0.1873D-03,
19906      #    0.2274D-03, 0.2764D-03, 0.3363D-03, 0.4102D-03, 0.5017D-03,
19907      #    0.6164D-03, 0.7619D-03, 0.9490D-03, 0.1194D-02, 0.1520D-02,
19908      #    0.1957D-02, 0.2541D-02, 0.3310D-02, 0.4278D-02, 0.5426D-02,
19909      #    0.6659D-02, 0.7797D-02, 0.8574D-02, 0.8706D-02, 0.8034D-02,
19910      #    0.6662D-02, 0.4955D-02, 0.3351D-02, 0.2133D-02, 0.1347D-02,
19911      #    0.8913D-03, 0.6316D-03, 0.4717D-03, 0.3603D-03, 0.2743D-03,
19912      #    0.2056D-03, 0.1516D-03, 0.1102D-03, 0.7889D-04, 0.5555D-04,
19913      #    0.3887D-04, 0.2687D-04, 0.1887D-04, 0.1287D-04, 0.8864D-05,
19914      #    0.6196D-05, 0.4195D-05, 0.2861D-05, 0.1528D-05, 0.8609D-06,
19915      #    0.8608D-06, 0.1940D-06, 0.1939D-06, 0.1939D-06, 0.1938D-06,
19916      #    0.1938D-06/
19917
19918       data (calcpts(j,30), j = 1,neta) /0.2456D-05, 0.2976D-05,
19919      #    0.3605D-05, 0.4368D-05, 0.5292D-05, 0.6411D-05, 0.7767D-05,
19920      #    0.9411D-05, 0.1140D-04, 0.1381D-04, 0.1674D-04, 0.2027D-04,
19921      #    0.2456D-04, 0.2976D-04, 0.3606D-04, 0.4369D-04, 0.5294D-04,
19922      #    0.6415D-04, 0.7774D-04, 0.9423D-04, 0.1142D-03, 0.1385D-03,
19923      #    0.1680D-03, 0.2040D-03, 0.2478D-03, 0.3016D-03, 0.3675D-03,
19924      #    0.4493D-03, 0.5515D-03, 0.6804D-03, 0.8454D-03, 0.1060D-02,
19925      #    0.1340D-02, 0.1708D-02, 0.2186D-02, 0.2794D-02, 0.3532D-02,
19926      #    0.4376D-02, 0.5249D-02, 0.6019D-02, 0.6490D-02, 0.6471D-02,
19927      #    0.5869D-02, 0.4789D-02, 0.3513D-02, 0.2351D-02, 0.1490D-02,
19928      #    0.9437D-03, 0.6290D-03, 0.4496D-03, 0.3378D-03, 0.2583D-03,
19929      #    0.1967D-03, 0.1476D-03, 0.1085D-03, 0.7861D-04, 0.5603D-04,
19930      #    0.3942D-04, 0.2812D-04, 0.1948D-04, 0.1350D-04, 0.9509D-05,
19931      #    0.6184D-05, 0.4190D-05, 0.2860D-05, 0.2196D-05, 0.1531D-05,
19932      #    0.8655D-06, 0.8663D-06, 0.2002D-06, 0.2006D-06, 0.2009D-06,
19933      #    0.2010D-06/
19934
19935       data (calcpts(j,31), j = 1,neta) /0.1782D-05, 0.2159D-05,
19936      #    0.2615D-05, 0.3168D-05, 0.3839D-05, 0.4650D-05, 0.5634D-05,
19937      #    0.6826D-05, 0.8269D-05, 0.1002D-04, 0.1214D-04, 0.1471D-04,
19938      #    0.1782D-04, 0.2159D-04, 0.2615D-04, 0.3169D-04, 0.3839D-04,
19939      #    0.4652D-04, 0.5637D-04, 0.6831D-04, 0.8278D-04, 0.1003D-03,
19940      #    0.1217D-03, 0.1476D-03, 0.1791D-03, 0.2175D-03, 0.2644D-03,
19941      #    0.3220D-03, 0.3931D-03, 0.4814D-03, 0.5922D-03, 0.7325D-03,
19942      #    0.9115D-03, 0.1141D-02, 0.1435D-02, 0.1805D-02, 0.2259D-02,
19943      #    0.2796D-02, 0.3394D-02, 0.3997D-02, 0.4507D-02, 0.4786D-02,
19944      #    0.4704D-02, 0.4211D-02, 0.3395D-02, 0.2465D-02, 0.1639D-02,
19945      #    0.1036D-02, 0.6582D-03, 0.4417D-03, 0.3174D-03, 0.2395D-03,
19946      #    0.1833D-03, 0.1396D-03, 0.1045D-03, 0.7664D-04, 0.5541D-04,
19947      #    0.3948D-04, 0.2819D-04, 0.1956D-04, 0.1358D-04, 0.9596D-05,
19948      #    0.6273D-05, 0.4280D-05, 0.2951D-05, 0.2288D-05, 0.1623D-05,
19949      #    0.9582D-06, 0.9592D-06, 0.2932D-06, 0.2937D-06, 0.2940D-06,
19950      #    0.2942D-06/
19951
19952       data (calcpts(j,32), j = 1,neta) /0.1272D-05, 0.1541D-05,
19953      #    0.1866D-05, 0.2261D-05, 0.2740D-05, 0.3319D-05, 0.4021D-05,
19954      #    0.4872D-05, 0.5902D-05, 0.7150D-05, 0.8664D-05, 0.1050D-04,
19955      #    0.1272D-04, 0.1541D-04, 0.1866D-04, 0.2261D-04, 0.2740D-04,
19956      #    0.3320D-04, 0.4022D-04, 0.4874D-04, 0.5904D-04, 0.7155D-04,
19957      #    0.8673D-04, 0.1051D-03, 0.1274D-03, 0.1546D-03, 0.1876D-03,
19958      #    0.2278D-03, 0.2770D-03, 0.3373D-03, 0.4117D-03, 0.5039D-03,
19959      #    0.6187D-03, 0.7624D-03, 0.9419D-03, 0.1164D-02, 0.1437D-02,
19960      #    0.1763D-02, 0.2141D-02, 0.2555D-02, 0.2964D-02, 0.3298D-02,
19961      #    0.3459D-02, 0.3363D-02, 0.2980D-02, 0.2382D-02, 0.1717D-02,
19962      #    0.1136D-02, 0.7172D-03, 0.4566D-03, 0.3082D-03, 0.2229D-03,
19963      #    0.1680D-03, 0.1290D-03, 0.9783D-04, 0.7330D-04, 0.5406D-04,
19964      #    0.3879D-04, 0.2751D-04, 0.1953D-04, 0.1356D-04, 0.9569D-05,
19965      #    0.6245D-05, 0.4252D-05, 0.2923D-05, 0.2259D-05, 0.1594D-05,
19966      #    0.9291D-06, 0.2634D-06, 0.2640D-06, 0.2645D-06, 0.2648D-06,
19967      #    0.2650D-06/
19968
19969       data (calcpts(j,33), j = 1,neta) /0.8970D-06, 0.1087D-05,
19970      #    0.1317D-05, 0.1595D-05, 0.1933D-05, 0.2341D-05, 0.2837D-05,
19971      #    0.3437D-05, 0.4163D-05, 0.5044D-05, 0.6112D-05, 0.7404D-05,
19972      #    0.8970D-05, 0.1087D-04, 0.1317D-04, 0.1595D-04, 0.1933D-04,
19973      #    0.2341D-04, 0.2837D-04, 0.3437D-04, 0.4163D-04, 0.5045D-04,
19974      #    0.6112D-04, 0.7405D-04, 0.8972D-04, 0.1087D-03, 0.1317D-03,
19975      #    0.1597D-03, 0.1936D-03, 0.2347D-03, 0.2848D-03, 0.3457D-03,
19976      #    0.4200D-03, 0.5106D-03, 0.6210D-03, 0.7547D-03, 0.9159D-03,
19977      #    0.1109D-02, 0.1336D-02, 0.1597D-02, 0.1879D-02, 0.2154D-02,
19978      #    0.2370D-02, 0.2463D-02, 0.2373D-02, 0.2087D-02, 0.1657D-02,
19979      #    0.1189D-02, 0.7842D-03, 0.4950D-03, 0.3161D-03, 0.2139D-03,
19980      #    0.1556D-03, 0.1179D-03, 0.9002D-04, 0.6880D-04, 0.5155D-04,
19981      #    0.3760D-04, 0.2763D-04, 0.1966D-04, 0.1368D-04, 0.9687D-05,
19982      #    0.7028D-05, 0.5033D-05, 0.3036D-05, 0.2372D-05, 0.1707D-05,
19983      #    0.1042D-05, 0.1042D-05, 0.3762D-06, 0.3766D-06, 0.3768D-06,
19984      #    0.3770D-06/
19985
19986       data (calcpts(j,34), j = 1,neta) /0.6268D-06, 0.7595D-06,
19987      #    0.9200D-06, 0.1115D-05, 0.1351D-05, 0.1636D-05, 0.1982D-05,
19988      #    0.2402D-05, 0.2909D-05, 0.3525D-05, 0.4271D-05, 0.5174D-05,
19989      #    0.6268D-05, 0.7595D-05, 0.9200D-05, 0.1115D-04, 0.1350D-04,
19990      #    0.1636D-04, 0.1982D-04, 0.2401D-04, 0.2908D-04, 0.3523D-04,
19991      #    0.4268D-04, 0.5169D-04, 0.6260D-04, 0.7581D-04, 0.9176D-04,
19992      #    0.1110D-03, 0.1343D-03, 0.1624D-03, 0.1961D-03, 0.2367D-03,
19993      #    0.2851D-03, 0.3429D-03, 0.4115D-03, 0.4925D-03, 0.5880D-03,
19994      #    0.7006D-03, 0.8336D-03, 0.9893D-03, 0.1167D-02, 0.1358D-02,
19995      #    0.1540D-02, 0.1681D-02, 0.1733D-02, 0.1659D-02, 0.1450D-02,
19996      #    0.1146D-02, 0.8190D-03, 0.5392D-03, 0.3403D-03, 0.2178D-03,
19997      #    0.1480D-03, 0.1076D-03, 0.8157D-04, 0.6259D-04, 0.4758D-04,
19998      #    0.3556D-04, 0.2612D-04, 0.1887D-04, 0.1348D-04, 0.9490D-05,
19999      #    0.6696D-05, 0.4633D-05, 0.3236D-05, 0.2238D-05, 0.1572D-05,
20000      #    0.1106D-05, 0.7737D-06, 0.5075D-06, 0.3744D-06, 0.3079D-06,
20001      #    0.1747D-06/
20002
20003       data (calcpts(j,35), j = 1,neta) /0.4350D-06, 0.5271D-06,
20004      #    0.6385D-06, 0.7736D-06, 0.9373D-06, 0.1136D-05, 0.1376D-05,
20005      #    0.1667D-05, 0.2019D-05, 0.2446D-05, 0.2964D-05, 0.3591D-05,
20006      #    0.4350D-05, 0.5271D-05, 0.6385D-05, 0.7735D-05, 0.9372D-05,
20007      #    0.1135D-04, 0.1375D-04, 0.1666D-04, 0.2018D-04, 0.2445D-04,
20008      #    0.2961D-04, 0.3585D-04, 0.4340D-04, 0.5253D-04, 0.6354D-04,
20009      #    0.7681D-04, 0.9277D-04, 0.1119D-03, 0.1347D-03, 0.1618D-03,
20010      #    0.1937D-03, 0.2310D-03, 0.2742D-03, 0.3239D-03, 0.3809D-03,
20011      #    0.4467D-03, 0.5232D-03, 0.6132D-03, 0.7186D-03, 0.8385D-03,
20012      #    0.9666D-03, 0.1088D-02, 0.1179D-02, 0.1209D-02, 0.1152D-02,
20013      #    0.1002D-02, 0.7892D-03, 0.5624D-03, 0.3697D-03, 0.2333D-03,
20014      #    0.1496D-03, 0.1018D-03, 0.7418D-04, 0.5625D-04, 0.4316D-04,
20015      #    0.3279D-04, 0.2447D-04, 0.1795D-04, 0.1296D-04, 0.9234D-05,
20016      #    0.6505D-05, 0.4508D-05, 0.3110D-05, 0.2178D-05, 0.1446D-05,
20017      #    0.9797D-06, 0.6468D-06, 0.4471D-06, 0.3140D-06, 0.1808D-06,
20018      #    0.1142D-06/
20019
20020       data (calcpts(j,36), j = 1,neta) /0.3005D-06, 0.3641D-06,
20021      #    0.4410D-06, 0.5343D-06, 0.6474D-06, 0.7844D-06, 0.9503D-06,
20022      #    0.1151D-05, 0.1395D-05, 0.1690D-05, 0.2047D-05, 0.2480D-05,
20023      #    0.3005D-05, 0.3641D-05, 0.4410D-05, 0.5343D-05, 0.6473D-05,
20024      #    0.7842D-05, 0.9500D-05, 0.1151D-04, 0.1394D-04, 0.1688D-04,
20025      #    0.2044D-04, 0.2475D-04, 0.2996D-04, 0.3624D-04, 0.4381D-04,
20026      #    0.5293D-04, 0.6385D-04, 0.7688D-04, 0.9234D-04, 0.1105D-03,
20027      #    0.1317D-03, 0.1561D-03, 0.1837D-03, 0.2147D-03, 0.2492D-03,
20028      #    0.2879D-03, 0.3319D-03, 0.3831D-03, 0.4434D-03, 0.5142D-03,
20029      #    0.5948D-03, 0.6807D-03, 0.7617D-03, 0.8210D-03, 0.8378D-03,
20030      #    0.7949D-03, 0.6898D-03, 0.5417D-03, 0.3854D-03, 0.2531D-03,
20031      #    0.1597D-03, 0.1025D-03, 0.6996D-04, 0.5100D-04, 0.3870D-04,
20032      #    0.2972D-04, 0.2253D-04, 0.1688D-04, 0.1235D-04, 0.8956D-05,
20033      #    0.6359D-05, 0.4494D-05, 0.3096D-05, 0.2163D-05, 0.1497D-05,
20034      #    0.1031D-05, 0.6979D-06, 0.4981D-06, 0.2982D-06, 0.2317D-06,
20035      #    0.1651D-06/
20036
20037       data (calcpts(j,37), j = 1,neta) /0.2068D-06, 0.2505D-06,
20038      #    0.3035D-06, 0.3677D-06, 0.4455D-06, 0.5397D-06, 0.6539D-06,
20039      #    0.7923D-06, 0.9597D-06, 0.1163D-05, 0.1409D-05, 0.1707D-05,
20040      #    0.2068D-05, 0.2505D-05, 0.3035D-05, 0.3677D-05, 0.4454D-05,
20041      #    0.5396D-05, 0.6537D-05, 0.7918D-05, 0.9589D-05, 0.1161D-04,
20042      #    0.1406D-04, 0.1703D-04, 0.2060D-04, 0.2492D-04, 0.3011D-04,
20043      #    0.3636D-04, 0.4383D-04, 0.5271D-04, 0.6320D-04, 0.7547D-04,
20044      #    0.8960D-04, 0.1057D-03, 0.1236D-03, 0.1432D-03, 0.1645D-03,
20045      #    0.1875D-03, 0.2130D-03, 0.2420D-03, 0.2759D-03, 0.3161D-03,
20046      #    0.3636D-03, 0.4177D-03, 0.4753D-03, 0.5293D-03, 0.5682D-03,
20047      #    0.5779D-03, 0.5467D-03, 0.4734D-03, 0.3711D-03, 0.2636D-03,
20048      #    0.1730D-03, 0.1092D-03, 0.7015D-04, 0.4791D-04, 0.3500D-04,
20049      #    0.2655D-04, 0.2036D-04, 0.1550D-04, 0.1157D-04, 0.8508D-05,
20050      #    0.6110D-05, 0.4379D-05, 0.3046D-05, 0.2114D-05, 0.1514D-05,
20051      #    0.1048D-05, 0.7145D-06, 0.5147D-06, 0.3148D-06, 0.2482D-06,
20052      #    0.1816D-06/
20053
20054       data (calcpts(j,38), j = 1,neta) /0.1419D-06, 0.1719D-06,
20055      #    0.2082D-06, 0.2523D-06, 0.3057D-06, 0.3703D-06, 0.4487D-06,
20056      #    0.5436D-06, 0.6585D-06, 0.7978D-06, 0.9667D-06, 0.1171D-05,
20057      #    0.1419D-05, 0.1719D-05, 0.2082D-05, 0.2523D-05, 0.3056D-05,
20058      #    0.3702D-05, 0.4485D-05, 0.5433D-05, 0.6579D-05, 0.7968D-05,
20059      #    0.9649D-05, 0.1168D-04, 0.1413D-04, 0.1709D-04, 0.2065D-04,
20060      #    0.2492D-04, 0.3002D-04, 0.3607D-04, 0.4320D-04, 0.5149D-04,
20061      #    0.6098D-04, 0.7165D-04, 0.8339D-04, 0.9600D-04, 0.1093D-03,
20062      #    0.1234D-03, 0.1383D-03, 0.1548D-03, 0.1737D-03, 0.1960D-03,
20063      #    0.2228D-03, 0.2547D-03, 0.2911D-03, 0.3297D-03, 0.3658D-03,
20064      #    0.3915D-03, 0.3972D-03, 0.3750D-03, 0.3241D-03, 0.2537D-03,
20065      #    0.1801D-03, 0.1181D-03, 0.7455D-04, 0.4790D-04, 0.3279D-04,
20066      #    0.2393D-04, 0.1820D-04, 0.1394D-04, 0.1061D-04, 0.7880D-05,
20067      #    0.5815D-05, 0.4149D-05, 0.2950D-05, 0.2084D-05, 0.1417D-05,
20068      #    0.1017D-05, 0.6842D-06, 0.2843D-06, 0.2844D-06, 0.2178D-06,
20069      #    0.1512D-06/
20070
20071       data (calcpts(j,39), j = 1,neta) /0.9721D-07, 0.1178D-06,
20072      #    0.1427D-06, 0.1729D-06, 0.2094D-06, 0.2537D-06, 0.3074D-06,
20073      #    0.3724D-06, 0.4511D-06, 0.5466D-06, 0.6623D-06, 0.8023D-06,
20074      #    0.9720D-06, 0.1178D-05, 0.1427D-05, 0.1728D-05, 0.2094D-05,
20075      #    0.2537D-05, 0.3073D-05, 0.3722D-05, 0.4507D-05, 0.5459D-05,
20076      #    0.6610D-05, 0.8000D-05, 0.9679D-05, 0.1170D-04, 0.1414D-04,
20077      #    0.1705D-04, 0.2054D-04, 0.2466D-04, 0.2951D-04, 0.3513D-04,
20078      #    0.4153D-04, 0.4867D-04, 0.5644D-04, 0.6466D-04, 0.7316D-04,
20079      #    0.8184D-04, 0.9078D-04, 0.1003D-03, 0.1108D-03, 0.1231D-03,
20080      #    0.1379D-03, 0.1558D-03, 0.1771D-03, 0.2016D-03, 0.2277D-03,
20081      #    0.2518D-03, 0.2689D-03, 0.2724D-03, 0.2567D-03, 0.2216D-03,
20082      #    0.1733D-03, 0.1230D-03, 0.8063D-04, 0.5093D-04, 0.3276D-04,
20083      #    0.2239D-04, 0.1640D-04, 0.1247D-04, 0.9535D-05, 0.7270D-05,
20084      #    0.5404D-05, 0.4005D-05, 0.2872D-05, 0.2072D-05, 0.1473D-05,
20085      #    0.1006D-05, 0.7395D-06, 0.4729D-06, 0.3396D-06, 0.2730D-06,
20086      #    0.2064D-06/
20087
20088       data (calcpts(j,40), j = 1,neta) /0.6647D-07, 0.8054D-07,
20089      #    0.9756D-07, 0.1182D-06, 0.1432D-06, 0.1735D-06, 0.2102D-06,
20090      #    0.2547D-06, 0.3085D-06, 0.3738D-06, 0.4529D-06, 0.5486D-06,
20091      #    0.6647D-06, 0.8053D-06, 0.9755D-06, 0.1182D-05, 0.1432D-05,
20092      #    0.1734D-05, 0.2101D-05, 0.2545D-05, 0.3082D-05, 0.3732D-05,
20093      #    0.4519D-05, 0.5470D-05, 0.6617D-05, 0.8001D-05, 0.9662D-05,
20094      #    0.1166D-04, 0.1403D-04, 0.1684D-04, 0.2014D-04, 0.2395D-04,
20095      #    0.2828D-04, 0.3308D-04, 0.3826D-04, 0.4367D-04, 0.4917D-04,
20096      #    0.5464D-04, 0.6008D-04, 0.6564D-04, 0.7160D-04, 0.7835D-04,
20097      #    0.8637D-04, 0.9616D-04, 0.1081D-03, 0.1225D-03, 0.1390D-03,
20098      #    0.1566D-03, 0.1729D-03, 0.1843D-03, 0.1864D-03, 0.1755D-03,
20099      #    0.1513D-03, 0.1183D-03, 0.8387D-04, 0.5499D-04, 0.3474D-04,
20100      #    0.2235D-04, 0.1530D-04, 0.1119D-04, 0.8507D-05, 0.6528D-05,
20101      #    0.4955D-05, 0.3703D-05, 0.2716D-05, 0.1963D-05, 0.1397D-05,
20102      #    0.9834D-06, 0.6902D-06, 0.4835D-06, 0.3369D-06, 0.2303D-06,
20103      #    0.1636D-06/
20104
20105       data (calcpts(j,41), j = 1,neta) /0.4540D-07, 0.5501D-07,
20106      #    0.6663D-07, 0.8073D-07, 0.9782D-07, 0.1185D-06, 0.1436D-06,
20107      #    0.1740D-06, 0.2107D-06, 0.2553D-06, 0.3093D-06, 0.3747D-06,
20108      #    0.4540D-06, 0.5501D-06, 0.6663D-06, 0.8072D-06, 0.9780D-06,
20109      #    0.1185D-05, 0.1435D-05, 0.1738D-05, 0.2105D-05, 0.2549D-05,
20110      #    0.3087D-05, 0.3736D-05, 0.4519D-05, 0.5464D-05, 0.6598D-05,
20111      #    0.7957D-05, 0.9578D-05, 0.1149D-04, 0.1374D-04, 0.1633D-04,
20112      #    0.1926D-04, 0.2250D-04, 0.2597D-04, 0.2956D-04, 0.3316D-04,
20113      #    0.3667D-04, 0.4005D-04, 0.4337D-04, 0.4679D-04, 0.5052D-04,
20114      #    0.5486D-04, 0.6013D-04, 0.6665D-04, 0.7469D-04, 0.8439D-04,
20115      #    0.9556D-04, 0.1074D-03, 0.1184D-03, 0.1261D-03, 0.1274D-03,
20116      #    0.1198D-03, 0.1033D-03, 0.8069D-04, 0.5719D-04, 0.3748D-04,
20117      #    0.2367D-04, 0.1524D-04, 0.1043D-04, 0.7626D-05, 0.5800D-05,
20118      #    0.4447D-05, 0.3374D-05, 0.2521D-05, 0.1848D-05, 0.1328D-05,
20119      #    0.9483D-06, 0.6683D-06, 0.4617D-06, 0.3217D-06, 0.2217D-06,
20120      #    0.1484D-06/
20121
20122       data (calcpts(j,42), j = 1,neta) /0.3100D-07, 0.3755D-07,
20123      #    0.4549D-07, 0.5512D-07, 0.6678D-07, 0.8090D-07, 0.9801D-07,
20124      #    0.1188D-06, 0.1439D-06, 0.1743D-06, 0.2112D-06, 0.2558D-06,
20125      #    0.3099D-06, 0.3755D-06, 0.4549D-06, 0.5511D-06, 0.6677D-06,
20126      #    0.8088D-06, 0.9797D-06, 0.1187D-05, 0.1437D-05, 0.1740D-05,
20127      #    0.2107D-05, 0.2550D-05, 0.3085D-05, 0.3729D-05, 0.4503D-05,
20128      #    0.5431D-05, 0.6536D-05, 0.7841D-05, 0.9368D-05, 0.1113D-04,
20129      #    0.1312D-04, 0.1531D-04, 0.1765D-04, 0.2005D-04, 0.2243D-04,
20130      #    0.2471D-04, 0.2685D-04, 0.2888D-04, 0.3088D-04, 0.3297D-04,
20131      #    0.3533D-04, 0.3814D-04, 0.4162D-04, 0.4599D-04, 0.5141D-04,
20132      #    0.5796D-04, 0.6552D-04, 0.7356D-04, 0.8100D-04, 0.8616D-04,
20133      #    0.8698D-04, 0.8179D-04, 0.7046D-04, 0.5502D-04, 0.3899D-04,
20134      #    0.2555D-04, 0.1615D-04, 0.1039D-04, 0.7120D-05, 0.5207D-05,
20135      #    0.3961D-05, 0.3035D-05, 0.2308D-05, 0.1722D-05, 0.1262D-05,
20136      #    0.9083D-06, 0.6484D-06, 0.4550D-06, 0.3217D-06, 0.2217D-06,
20137      #    0.1551D-06/
20138
20139       data (calcpts(j,43), j = 1,neta) /0.2115D-07, 0.2562D-07,
20140      #    0.3104D-07, 0.3760D-07, 0.4556D-07, 0.5520D-07, 0.6687D-07,
20141      #    0.8102D-07, 0.9814D-07, 0.1189D-06, 0.1441D-06, 0.1745D-06,
20142      #    0.2115D-06, 0.2562D-06, 0.3103D-06, 0.3760D-06, 0.4555D-06,
20143      #    0.5518D-06, 0.6684D-06, 0.8097D-06, 0.9804D-06, 0.1187D-05,
20144      #    0.1438D-05, 0.1740D-05, 0.2105D-05, 0.2544D-05, 0.3072D-05,
20145      #    0.3704D-05, 0.4457D-05, 0.5347D-05, 0.6387D-05, 0.7585D-05,
20146      #    0.8936D-05, 0.1042D-04, 0.1200D-04, 0.1362D-04, 0.1520D-04,
20147      #    0.1670D-04, 0.1808D-04, 0.1934D-04, 0.2054D-04, 0.2173D-04,
20148      #    0.2303D-04, 0.2453D-04, 0.2637D-04, 0.2869D-04, 0.3162D-04,
20149      #    0.3529D-04, 0.3972D-04, 0.4485D-04, 0.5030D-04, 0.5534D-04,
20150      #    0.5882D-04, 0.5935D-04, 0.5579D-04, 0.4805D-04, 0.3751D-04,
20151      #    0.2657D-04, 0.1742D-04, 0.1101D-04, 0.7086D-05, 0.4853D-05,
20152      #    0.3553D-05, 0.2700D-05, 0.2073D-05, 0.1573D-05, 0.1167D-05,
20153      #    0.8600D-06, 0.6200D-06, 0.4400D-06, 0.3134D-06, 0.2201D-06,
20154      #    0.1534D-06/
20155
20156       data (calcpts(j,44), j = 1,neta) /0.1442D-07, 0.1747D-07,
20157      #    0.2116D-07, 0.2564D-07, 0.3107D-07, 0.3764D-07, 0.4560D-07,
20158      #    0.5525D-07, 0.6692D-07, 0.8108D-07, 0.9824D-07, 0.1190D-06,
20159      #    0.1442D-06, 0.1747D-06, 0.2116D-06, 0.2564D-06, 0.3106D-06,
20160      #    0.3763D-06, 0.4558D-06, 0.5521D-06, 0.6685D-06, 0.8096D-06,
20161      #    0.9802D-06, 0.1186D-05, 0.1435D-05, 0.1735D-05, 0.2094D-05,
20162      #    0.2525D-05, 0.3039D-05, 0.3645D-05, 0.4353D-05, 0.5168D-05,
20163      #    0.6086D-05, 0.7095D-05, 0.8165D-05, 0.9254D-05, 0.1032D-04,
20164      #    0.1131D-04, 0.1221D-04, 0.1301D-04, 0.1374D-04, 0.1444D-04,
20165      #    0.1516D-04, 0.1597D-04, 0.1694D-04, 0.1816D-04, 0.1971D-04,
20166      #    0.2169D-04, 0.2416D-04, 0.2718D-04, 0.3065D-04, 0.3435D-04,
20167      #    0.3778D-04, 0.4014D-04, 0.4048D-04, 0.3803D-04, 0.3275D-04,
20168      #    0.2556D-04, 0.1811D-04, 0.1187D-04, 0.7499D-05, 0.4826D-05,
20169      #    0.3306D-05, 0.2419D-05, 0.1840D-05, 0.1413D-05, 0.1073D-05,
20170      #    0.7996D-06, 0.5863D-06, 0.4197D-06, 0.2997D-06, 0.2130D-06,
20171      #    0.1463D-06/
20172
20173       data (calcpts(j,45), j = 1,neta) /0.9834D-08, 0.1192D-07,
20174      #    0.1443D-07, 0.1749D-07, 0.2119D-07, 0.2567D-07, 0.3110D-07,
20175      #    0.3768D-07, 0.4564D-07, 0.5530D-07, 0.6700D-07, 0.8117D-07,
20176      #    0.9834D-07, 0.1191D-06, 0.1443D-06, 0.1748D-06, 0.2118D-06,
20177      #    0.2566D-06, 0.3108D-06, 0.3765D-06, 0.4559D-06, 0.5521D-06,
20178      #    0.6685D-06, 0.8090D-06, 0.9786D-06, 0.1183D-05, 0.1428D-05,
20179      #    0.1722D-05, 0.2072D-05, 0.2485D-05, 0.2968D-05, 0.3523D-05,
20180      #    0.4148D-05, 0.4833D-05, 0.5559D-05, 0.6296D-05, 0.7012D-05,
20181      #    0.7676D-05, 0.8269D-05, 0.8788D-05, 0.9244D-05, 0.9661D-05,
20182      #    0.1007D-04, 0.1051D-04, 0.1102D-04, 0.1166D-04, 0.1247D-04,
20183      #    0.1351D-04, 0.1485D-04, 0.1653D-04, 0.1857D-04, 0.2094D-04,
20184      #    0.2345D-04, 0.2578D-04, 0.2738D-04, 0.2760D-04, 0.2593D-04,
20185      #    0.2233D-04, 0.1743D-04, 0.1234D-04, 0.8090D-05, 0.5112D-05,
20186      #    0.3293D-05, 0.2254D-05, 0.1654D-05, 0.1254D-05, 0.9610D-06,
20187      #    0.7277D-06, 0.5477D-06, 0.4011D-06, 0.2877D-06, 0.2077D-06,
20188      #    0.1477D-06/
20189
20190       data (calcpts(j,46), j = 1,neta) /0.6703D-08, 0.8121D-08,
20191      #    0.9837D-08, 0.1192D-07, 0.1444D-07, 0.1750D-07, 0.2120D-07,
20192      #    0.2568D-07, 0.3111D-07, 0.3769D-07, 0.4567D-07, 0.5532D-07,
20193      #    0.6702D-07, 0.8121D-07, 0.9836D-07, 0.1192D-06, 0.1444D-06,
20194      #    0.1749D-06, 0.2119D-06, 0.2566D-06, 0.3108D-06, 0.3763D-06,
20195      #    0.4556D-06, 0.5514D-06, 0.6670D-06, 0.8063D-06, 0.9734D-06,
20196      #    0.1174D-05, 0.1412D-05, 0.1694D-05, 0.2022D-05, 0.2400D-05,
20197      #    0.2825D-05, 0.3292D-05, 0.3785D-05, 0.4284D-05, 0.4768D-05,
20198      #    0.5214D-05, 0.5608D-05, 0.5947D-05, 0.6237D-05, 0.6492D-05,
20199      #    0.6730D-05, 0.6974D-05, 0.7248D-05, 0.7579D-05, 0.7998D-05,
20200      #    0.8541D-05, 0.9245D-05, 0.1015D-04, 0.1129D-04, 0.1268D-04,
20201      #    0.1429D-04, 0.1600D-04, 0.1758D-04, 0.1867D-04, 0.1881D-04,
20202      #    0.1768D-04, 0.1522D-04, 0.1187D-04, 0.8410D-05, 0.5511D-05,
20203      #    0.3483D-05, 0.2243D-05, 0.1537D-05, 0.1125D-05, 0.8554D-06,
20204      #    0.6561D-06, 0.4988D-06, 0.3721D-06, 0.2728D-06, 0.1974D-06,
20205      #    0.1408D-06/
20206
20207       data (calcpts(j,47), j = 1,neta) /0.4567D-08, 0.5534D-08,
20208      #    0.6703D-08, 0.8122D-08, 0.9841D-08, 0.1192D-07, 0.1444D-07,
20209      #    0.1750D-07, 0.2120D-07, 0.2568D-07, 0.3112D-07, 0.3770D-07,
20210      #    0.4567D-07, 0.5534D-07, 0.6703D-07, 0.8121D-07, 0.9838D-07,
20211      #    0.1192D-06, 0.1444D-06, 0.1749D-06, 0.2118D-06, 0.2564D-06,
20212      #    0.3105D-06, 0.3757D-06, 0.4545D-06, 0.5494D-06, 0.6633D-06,
20213      #    0.7997D-06, 0.9622D-06, 0.1154D-05, 0.1378D-05, 0.1635D-05,
20214      #    0.1925D-05, 0.2242D-05, 0.2577D-05, 0.2916D-05, 0.3243D-05,
20215      #    0.3544D-05, 0.3808D-05, 0.4032D-05, 0.4219D-05, 0.4378D-05,
20216      #    0.4520D-05, 0.4658D-05, 0.4807D-05, 0.4980D-05, 0.5197D-05,
20217      #    0.5476D-05, 0.5841D-05, 0.6317D-05, 0.6932D-05, 0.7708D-05,
20218      #    0.8653D-05, 0.9745D-05, 0.1091D-04, 0.1199D-04, 0.1273D-04,
20219      #    0.1283D-04, 0.1205D-04, 0.1037D-04, 0.8089D-05, 0.5729D-05,
20220      #    0.3755D-05, 0.2372D-05, 0.1527D-05, 0.1047D-05, 0.7661D-06,
20221      #    0.5821D-06, 0.4461D-06, 0.3387D-06, 0.2527D-06, 0.1854D-06,
20222      #    0.1334D-06/
20223
20224       data (calcpts(j,48), j = 1,neta) /0.3113D-08, 0.3771D-08,
20225      #    0.4568D-08, 0.5535D-08, 0.6707D-08, 0.8125D-08, 0.9843D-08,
20226      #    0.1193D-07, 0.1445D-07, 0.1750D-07, 0.2121D-07, 0.2569D-07,
20227      #    0.3113D-07, 0.3771D-07, 0.4568D-07, 0.5534D-07, 0.6705D-07,
20228      #    0.8122D-07, 0.9839D-07, 0.1192D-06, 0.1443D-06, 0.1748D-06,
20229      #    0.2116D-06, 0.2561D-06, 0.3097D-06, 0.3744D-06, 0.4520D-06,
20230      #    0.5450D-06, 0.6557D-06, 0.7863D-06, 0.9388D-06, 0.1114D-05,
20231      #    0.1311D-05, 0.1527D-05, 0.1755D-05, 0.1986D-05, 0.2208D-05,
20232      #    0.2411D-05, 0.2588D-05, 0.2738D-05, 0.2860D-05, 0.2962D-05,
20233      #    0.3048D-05, 0.3128D-05, 0.3210D-05, 0.3302D-05, 0.3414D-05,
20234      #    0.3557D-05, 0.3744D-05, 0.3991D-05, 0.4314D-05, 0.4731D-05,
20235      #    0.5259D-05, 0.5902D-05, 0.6646D-05, 0.7437D-05, 0.8169D-05,
20236      #    0.8672D-05, 0.8739D-05, 0.8207D-05, 0.7063D-05, 0.5512D-05,
20237      #    0.3904D-05, 0.2558D-05, 0.1616D-05, 0.1041D-05, 0.7134D-06,
20238      #    0.5221D-06, 0.3968D-06, 0.3048D-06, 0.2315D-06, 0.1728D-06,
20239      #    0.1261D-06/
20240
20241       data (calcpts(j,49), j = 1,neta) /0.2121D-08, 0.2570D-08,
20242      #    0.3113D-08, 0.3772D-08, 0.4570D-08, 0.5536D-08, 0.6708D-08,
20243      #    0.8127D-08, 0.9844D-08, 0.1193D-07, 0.1445D-07, 0.1751D-07,
20244      #    0.2121D-07, 0.2570D-07, 0.3113D-07, 0.3771D-07, 0.4569D-07,
20245      #    0.5535D-07, 0.6704D-07, 0.8121D-07, 0.9834D-07, 0.1191D-06,
20246      #    0.1442D-06, 0.1745D-06, 0.2111D-06, 0.2551D-06, 0.3080D-06,
20247      #    0.3714D-06, 0.4468D-06, 0.5358D-06, 0.6397D-06, 0.7591D-06,
20248      #    0.8934D-06, 0.1040D-05, 0.1195D-05, 0.1352D-05, 0.1503D-05,
20249      #    0.1641D-05, 0.1761D-05, 0.1861D-05, 0.1942D-05, 0.2007D-05,
20250      #    0.2061D-05, 0.2109D-05, 0.2155D-05, 0.2205D-05, 0.2263D-05,
20251      #    0.2336D-05, 0.2431D-05, 0.2557D-05, 0.2724D-05, 0.2944D-05,
20252      #    0.3228D-05, 0.3586D-05, 0.4024D-05, 0.4530D-05, 0.5069D-05,
20253      #    0.5567D-05, 0.5910D-05, 0.5955D-05, 0.5592D-05, 0.4813D-05,
20254      #    0.3756D-05, 0.2660D-05, 0.1743D-05, 0.1101D-05, 0.7091D-06,
20255      #    0.4858D-06, 0.3558D-06, 0.2705D-06, 0.2078D-06, 0.1578D-06,
20256      #    0.1178D-06/
20257
20258       data (dlaeta(j), j = 1,neta) /
20259      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
20260      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
20261      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
20262      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
20263      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
20264      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
20265      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
20266      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
20267      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
20268      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
20269      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
20270      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
20271      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
20272      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
20273      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
20274
20275       data (dlaxi(j), j = 1,nxi) /
20276      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
20277      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
20278      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
20279      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
20280      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
20281      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
20282      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
20283      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
20284      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
20285      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
20286
20287       dleta = dlog10(eta)
20288       dlxi = dlog10(xi)
20289       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
20290       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
20291       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
20292       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
20293       call locate(dlaeta,neta, dleta, ieta)
20294       call locate(dlaxi, nxi, dlxi, ixi)
20295 c     interpolating between the appropriate points
20296       delxi = 1d0/6d0
20297       deleta = 1d0/6d0
20298 c  lagrange 3-pt.
20299       if (ixi .le. 2) ixi = 2
20300       if (ixi .ge. 48) ixi = 48
20301       if (ieta .le. 2) ieta = 2
20302       if (ixi .ge. 72) ieta = 72
20303          pxi = (dlxi - dlaxi(ixi))/delxi
20304          f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
20305      #        (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
20306      #        pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
20307          f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
20308      #        (1d0 - pxi**2)*calcpts(ieta,ixi) +
20309      #        pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
20310          f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
20311      #        (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
20312      #        pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
20313          peta = (dleta - dlaeta(ieta))/deleta
20314          h1bar_Lg = peta*(peta-1d0)/2d0*f(-1) +
20315      #        (1d0 - peta**2)*f(0) +
20316 CMB  #        + peta*(peta+1d0)/2d0*f(1)
20317      #        peta*(peta+1d0)/2d0*f(1)
20318       return
20319       end
20320
20321 CDECK  ID>, QCORRT.
20322
20323 c     ========================================
20324       double precision function h1_HTq(eta,xi)
20325 c     ========================================
20326
20327 c     eq (26) in PLB347 (1995) 143 - 151 for the transverse piece
20328 c     MSbar scheme
20329 c     This routine is called subcqht in the original code.
20330 c     Called schqt in updated code (03/06/96).
20331
20332       implicit none
20333       integer neta, nxi
20334       parameter (neta = 73, nxi = 49)
20335       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
20336       double precision eta, xi, dleta, dlxi
20337       double precision pxi, peta, f(-1:1), delxi, deleta
20338       integer j, ieta, ixi
20339
20340       data (calcpts(j, 1), j = 1,neta) /-.9757D-09, -.1701D-08,
20341      #    -.2961D-08, -.5155D-08, -.8967D-08, -.1559D-07, -.2708D-07,
20342      #    -.4703D-07, -.8158D-07, -.1415D-06, -.2452D-06, -.4245D-06,
20343      #    -.7345D-06, -.1270D-05, -.2194D-05, -.3787D-05, -.6531D-05,
20344      #    -.1125D-04, -.1936D-04, -.3327D-04, -.5709D-04, -.9784D-04,
20345      #    -.1674D-03, -.2859D-03, -.4868D-03, -.8266D-03, -.1398D-02,
20346      #    -.2352D-02, -.3932D-02, -.6512D-02, -.1065D-01, -.1711D-01,
20347      #    -.2682D-01, -.4073D-01, -.5935D-01, -.8225D-01, -.1077D+00,
20348      #    -.1325D+00, -.1534D+00, -.1673D+00, -.1729D+00, -.1704D+00,
20349      #    -.1612D+00, -.1472D+00, -.1307D+00, -.1132D+00, -.9612D-01,
20350      #    -.8027D-01, -.6602D-01, -.5365D-01, -.4317D-01, -.3440D-01,
20351      #    -.2727D-01, -.2137D-01, -.1673D-01, -.1295D-01, -.1003D-01,
20352      #    -.7682D-02, -.5769D-02, -.4444D-02, -.3410D-02, -.2522D-02,
20353      #    -.1930D-02, -.1485D-02, -.1039D-02, -.7414D-03, -.5931D-03,
20354      #    -.4443D-03, -.2950D-03, -.2956D-03, -.1459D-03, -.1462D-03,
20355      #    -.1464D-03/
20356
20357       data (calcpts(j, 2), j = 1,neta) /-.9756D-09, -.1701D-08,
20358      #    -.2961D-08, -.5155D-08, -.8966D-08, -.1559D-07, -.2708D-07,
20359      #    -.4701D-07, -.8156D-07, -.1415D-06, -.2452D-06, -.4245D-06,
20360      #    -.7345D-06, -.1270D-05, -.2194D-05, -.3786D-05, -.6529D-05,
20361      #    -.1125D-04, -.1936D-04, -.3327D-04, -.5708D-04, -.9783D-04,
20362      #    -.1674D-03, -.2857D-03, -.4866D-03, -.8264D-03, -.1397D-02,
20363      #    -.2352D-02, -.3932D-02, -.6511D-02, -.1065D-01, -.1711D-01,
20364      #    -.2682D-01, -.4073D-01, -.5935D-01, -.8225D-01, -.1076D+00,
20365      #    -.1325D+00, -.1534D+00, -.1673D+00, -.1729D+00, -.1704D+00,
20366      #    -.1612D+00, -.1472D+00, -.1307D+00, -.1132D+00, -.9610D-01,
20367      #    -.8026D-01, -.6600D-01, -.5363D-01, -.4316D-01, -.3439D-01,
20368      #    -.2725D-01, -.2135D-01, -.1672D-01, -.1293D-01, -.1001D-01,
20369      #    -.7667D-02, -.5903D-02, -.4428D-02, -.3395D-02, -.2507D-02,
20370      #    -.1914D-02, -.1470D-02, -.1023D-02, -.8760D-03, -.5777D-03,
20371      #    -.4288D-03, -.2796D-03, -.2801D-03, -.1305D-03, -.1308D-03,
20372      #    -.1309D-03/
20373
20374       data (calcpts(j, 3), j = 1,neta) /-.9753D-09, -.1700D-08,
20375      #    -.2960D-08, -.5153D-08, -.8964D-08, -.1558D-07, -.2707D-07,
20376      #    -.4701D-07, -.8154D-07, -.1414D-06, -.2450D-06, -.4243D-06,
20377      #    -.7343D-06, -.1270D-05, -.2193D-05, -.3785D-05, -.6528D-05,
20378      #    -.1124D-04, -.1935D-04, -.3325D-04, -.5708D-04, -.9781D-04,
20379      #    -.1673D-03, -.2857D-03, -.4866D-03, -.8262D-03, -.1397D-02,
20380      #    -.2351D-02, -.3931D-02, -.6510D-02, -.1064D-01, -.1710D-01,
20381      #    -.2681D-01, -.4072D-01, -.5934D-01, -.8223D-01, -.1076D+00,
20382      #    -.1325D+00, -.1533D+00, -.1673D+00, -.1729D+00, -.1704D+00,
20383      #    -.1612D+00, -.1472D+00, -.1307D+00, -.1132D+00, -.9611D-01,
20384      #    -.8024D-01, -.6598D-01, -.5376D-01, -.4314D-01, -.3437D-01,
20385      #    -.2723D-01, -.2133D-01, -.1670D-01, -.1291D-01, -.9990D-02,
20386      #    -.7644D-02, -.5881D-02, -.4405D-02, -.3372D-02, -.2484D-02,
20387      #    -.1892D-02, -.1447D-02, -.1001D-02, -.8533D-03, -.5550D-03,
20388      #    -.4062D-03, -.2570D-03, -.2575D-03, -.1079D-03, -.1081D-03,
20389      #    -.1083D-03/
20390
20391       data (calcpts(j, 4), j = 1,neta) /-.9749D-09, -.1699D-08,
20392      #    -.2960D-08, -.5150D-08, -.8961D-08, -.1558D-07, -.2706D-07,
20393      #    -.4698D-07, -.8151D-07, -.1414D-06, -.2450D-06, -.4241D-06,
20394      #    -.7340D-06, -.1269D-05, -.2192D-05, -.3785D-05, -.6526D-05,
20395      #    -.1124D-04, -.1934D-04, -.3325D-04, -.5704D-04, -.9777D-04,
20396      #    -.1673D-03, -.2855D-03, -.4864D-03, -.8260D-03, -.1397D-02,
20397      #    -.2351D-02, -.3930D-02, -.6508D-02, -.1064D-01, -.1710D-01,
20398      #    -.2680D-01, -.4071D-01, -.5932D-01, -.8222D-01, -.1076D+00,
20399      #    -.1325D+00, -.1533D+00, -.1673D+00, -.1729D+00, -.1704D+00,
20400      #    -.1611D+00, -.1472D+00, -.1306D+00, -.1132D+00, -.9609D-01,
20401      #    -.8020D-01, -.6610D-01, -.5373D-01, -.4325D-01, -.3448D-01,
20402      #    -.2720D-01, -.2144D-01, -.1666D-01, -.1288D-01, -.9957D-02,
20403      #    -.7611D-02, -.5847D-02, -.4372D-02, -.3339D-02, -.2601D-02,
20404      #    -.1859D-02, -.1414D-02, -.1118D-02, -.8201D-03, -.5218D-03,
20405      #    -.3729D-03, -.3737D-03, -.2243D-03, -.2246D-03, -.7488D-04,
20406      #    -.7505D-04/
20407
20408       data (calcpts(j, 5), j = 1,neta) /-.9743D-09, -.1698D-08,
20409      #    -.2958D-08, -.5147D-08, -.8956D-08, -.1557D-07, -.2705D-07,
20410      #    -.4696D-07, -.8146D-07, -.1413D-06, -.2448D-06, -.4240D-06,
20411      #    -.7335D-06, -.1268D-05, -.2191D-05, -.3781D-05, -.6522D-05,
20412      #    -.1124D-04, -.1933D-04, -.3323D-04, -.5702D-04, -.9773D-04,
20413      #    -.1672D-03, -.2855D-03, -.4862D-03, -.8256D-03, -.1396D-02,
20414      #    -.2350D-02, -.3928D-02, -.6505D-02, -.1064D-01, -.1709D-01,
20415      #    -.2679D-01, -.4069D-01, -.5930D-01, -.8219D-01, -.1076D+00,
20416      #    -.1324D+00, -.1533D+00, -.1672D+00, -.1729D+00, -.1703D+00,
20417      #    -.1611D+00, -.1472D+00, -.1306D+00, -.1132D+00, -.9609D-01,
20418      #    -.8015D-01, -.6605D-01, -.5368D-01, -.4320D-01, -.3444D-01,
20419      #    -.2730D-01, -.2140D-01, -.1661D-01, -.1298D-01, -.9909D-02,
20420      #    -.7712D-02, -.5799D-02, -.4473D-02, -.3440D-02, -.2552D-02,
20421      #    -.1960D-02, -.1365D-02, -.1069D-02, -.7713D-03, -.6230D-03,
20422      #    -.4742D-03, -.3249D-03, -.1755D-03, -.1758D-03, -.1761D-03,
20423      #    -.2626D-04/
20424
20425       data (calcpts(j, 6), j = 1,neta) /-.9735D-09, -.1697D-08,
20426      #    -.2955D-08, -.5144D-08, -.8947D-08, -.1555D-07, -.2702D-07,
20427      #    -.4691D-07, -.8139D-07, -.1411D-06, -.2447D-06, -.4236D-06,
20428      #    -.7330D-06, -.1267D-05, -.2189D-05, -.3779D-05, -.6517D-05,
20429      #    -.1123D-04, -.1932D-04, -.3320D-04, -.5697D-04, -.9766D-04,
20430      #    -.1671D-03, -.2853D-03, -.4858D-03, -.8250D-03, -.1395D-02,
20431      #    -.2348D-02, -.3925D-02, -.6501D-02, -.1063D-01, -.1708D-01,
20432      #    -.2678D-01, -.4067D-01, -.5927D-01, -.8214D-01, -.1075D+00,
20433      #    -.1324D+00, -.1532D+00, -.1672D+00, -.1728D+00, -.1703D+00,
20434      #    -.1611D+00, -.1472D+00, -.1306D+00, -.1132D+00, -.9608D-01,
20435      #    -.8023D-01, -.6598D-01, -.5361D-01, -.4313D-01, -.3436D-01,
20436      #    -.2723D-01, -.2132D-01, -.1669D-01, -.1291D-01, -.9987D-02,
20437      #    -.7641D-02, -.5877D-02, -.4402D-02, -.3369D-02, -.2480D-02,
20438      #    -.1888D-02, -.1444D-02, -.1147D-02, -.8498D-03, -.5515D-03,
20439      #    -.4026D-03, -.2534D-03, -.2540D-03, -.1043D-03, -.1046D-03,
20440      #    -.1047D-03/
20441
20442       data (calcpts(j, 7), j = 1,neta) /-.9721D-09, -.1695D-08,
20443      #    -.2951D-08, -.5137D-08, -.8936D-08, -.1553D-07, -.2698D-07,
20444      #    -.4686D-07, -.8129D-07, -.1410D-06, -.2443D-06, -.4231D-06,
20445      #    -.7321D-06, -.1266D-05, -.2187D-05, -.3774D-05, -.6510D-05,
20446      #    -.1121D-04, -.1930D-04, -.3317D-04, -.5691D-04, -.9755D-04,
20447      #    -.1669D-03, -.2849D-03, -.4853D-03, -.8241D-03, -.1394D-02,
20448      #    -.2346D-02, -.3921D-02, -.6495D-02, -.1062D-01, -.1707D-01,
20449      #    -.2676D-01, -.4064D-01, -.5922D-01, -.8209D-01, -.1075D+00,
20450      #    -.1323D+00, -.1531D+00, -.1671D+00, -.1727D+00, -.1702D+00,
20451      #    -.1610D+00, -.1471D+00, -.1306D+00, -.1131D+00, -.9606D-01,
20452      #    -.8013D-01, -.6602D-01, -.5365D-01, -.4318D-01, -.3441D-01,
20453      #    -.2727D-01, -.2137D-01, -.1674D-01, -.1295D-01, -.1003D-01,
20454      #    -.7686D-02, -.5772D-02, -.4447D-02, -.3414D-02, -.2526D-02,
20455      #    -.1933D-02, -.1489D-02, -.1042D-02, -.7449D-03, -.5966D-03,
20456      #    -.4477D-03, -.2985D-03, -.5991D-03, -.1494D-03, -.1497D-03,
20457      #    -.1498D-03/
20458
20459       data (calcpts(j, 8), j = 1,neta) /-.9703D-09, -.1691D-08,
20460      #    -.2945D-08, -.5127D-08, -.8919D-08, -.1550D-07, -.2693D-07,
20461      #    -.4678D-07, -.8114D-07, -.1407D-06, -.2438D-06, -.4223D-06,
20462      #    -.7308D-06, -.1264D-05, -.2183D-05, -.3768D-05, -.6498D-05,
20463      #    -.1119D-04, -.1926D-04, -.3311D-04, -.5682D-04, -.9739D-04,
20464      #    -.1666D-03, -.2846D-03, -.4845D-03, -.8229D-03, -.1392D-02,
20465      #    -.2342D-02, -.3917D-02, -.6486D-02, -.1061D-01, -.1705D-01,
20466      #    -.2672D-01, -.4059D-01, -.5917D-01, -.8200D-01, -.1074D+00,
20467      #    -.1322D+00, -.1530D+00, -.1670D+00, -.1726D+00, -.1702D+00,
20468      #    -.1610D+00, -.1471D+00, -.1305D+00, -.1131D+00, -.9603D-01,
20469      #    -.8013D-01, -.6602D-01, -.5365D-01, -.4318D-01, -.3441D-01,
20470      #    -.2727D-01, -.2137D-01, -.1674D-01, -.1295D-01, -.1003D-01,
20471      #    -.7682D-02, -.5768D-02, -.4443D-02, -.3410D-02, -.2522D-02,
20472      #    -.1930D-02, -.1485D-02, -.1039D-02, -.7411D-03, -.5928D-03,
20473      #    -.4439D-03, -.2947D-03, -.2952D-03, -.1456D-03, -.1459D-03,
20474      #    -.1460D-03/
20475
20476       data (calcpts(j, 9), j = 1,neta) /-.9676D-09, -.1687D-08,
20477      #    -.2937D-08, -.5112D-08, -.8895D-08, -.1546D-07, -.2687D-07,
20478      #    -.4664D-07, -.8092D-07, -.1403D-06, -.2433D-06, -.4212D-06,
20479      #    -.7289D-06, -.1260D-05, -.2177D-05, -.3759D-05, -.6482D-05,
20480      #    -.1117D-04, -.1922D-04, -.3304D-04, -.5668D-04, -.9717D-04,
20481      #    -.1663D-03, -.2839D-03, -.4836D-03, -.8212D-03, -.1389D-02,
20482      #    -.2338D-02, -.3909D-02, -.6474D-02, -.1059D-01, -.1701D-01,
20483      #    -.2668D-01, -.4052D-01, -.5907D-01, -.8188D-01, -.1072D+00,
20484      #    -.1320D+00, -.1528D+00, -.1668D+00, -.1725D+00, -.1700D+00,
20485      #    -.1608D+00, -.1470D+00, -.1304D+00, -.1130D+00, -.9599D-01,
20486      #    -.8021D-01, -.6595D-01, -.5358D-01, -.4310D-01, -.3448D-01,
20487      #    -.2719D-01, -.2129D-01, -.1666D-01, -.1288D-01, -.9954D-02,
20488      #    -.7607D-02, -.5844D-02, -.4518D-02, -.3335D-02, -.2597D-02,
20489      #    -.1855D-02, -.1410D-02, -.1114D-02, -.8161D-03, -.6677D-03,
20490      #    -.3689D-03, -.3697D-03, -.2202D-03, -.2206D-03, -.7083D-04,
20491      #    -.7100D-04/
20492
20493       data (calcpts(j,10), j = 1,neta) /-.9636D-09, -.1680D-08,
20494      #    -.2925D-08, -.5093D-08, -.8858D-08, -.1540D-07, -.2675D-07,
20495      #    -.4646D-07, -.8061D-07, -.1398D-06, -.2423D-06, -.4196D-06,
20496      #    -.7262D-06, -.1256D-05, -.2169D-05, -.3745D-05, -.6458D-05,
20497      #    -.1113D-04, -.1915D-04, -.3292D-04, -.5650D-04, -.9684D-04,
20498      #    -.1657D-03, -.2829D-03, -.4819D-03, -.8185D-03, -.1384D-02,
20499      #    -.2331D-02, -.3897D-02, -.6455D-02, -.1056D-01, -.1697D-01,
20500      #    -.2661D-01, -.4042D-01, -.5892D-01, -.8169D-01, -.1070D+00,
20501      #    -.1318D+00, -.1526D+00, -.1666D+00, -.1723D+00, -.1698D+00,
20502      #    -.1607D+00, -.1468D+00, -.1304D+00, -.1130D+00, -.9592D-01,
20503      #    -.8004D-01, -.6593D-01, -.5355D-01, -.4308D-01, -.3445D-01,
20504      #    -.2717D-01, -.2141D-01, -.1663D-01, -.1285D-01, -.9924D-02,
20505      #    -.7578D-02, -.5814D-02, -.4489D-02, -.3306D-02, -.2567D-02,
20506      #    -.1975D-02, -.1380D-02, -.1084D-02, -.7864D-03, -.6381D-03,
20507      #    -.4892D-03, -.3400D-03, -.1905D-03, -.1909D-03, -.1912D-03,
20508      #    -.4133D-04/
20509
20510       data (calcpts(j,11), j = 1,neta) /-.9579D-09, -.1670D-08,
20511      #    -.2909D-08, -.5063D-08, -.8807D-08, -.1531D-07, -.2660D-07,
20512      #    -.4619D-07, -.8015D-07, -.1390D-06, -.2409D-06, -.4172D-06,
20513      #    -.7221D-06, -.1249D-05, -.2157D-05, -.3724D-05, -.6425D-05,
20514      #    -.1107D-04, -.1905D-04, -.3275D-04, -.5621D-04, -.9635D-04,
20515      #    -.1649D-03, -.2816D-03, -.4796D-03, -.8148D-03, -.1378D-02,
20516      #    -.2320D-02, -.3880D-02, -.6428D-02, -.1051D-01, -.1690D-01,
20517      #    -.2650D-01, -.4027D-01, -.5871D-01, -.8143D-01, -.1067D+00,
20518      #    -.1314D+00, -.1522D+00, -.1662D+00, -.1719D+00, -.1695D+00,
20519      #    -.1604D+00, -.1467D+00, -.1302D+00, -.1128D+00, -.9583D-01,
20520      #    -.8002D-01, -.6590D-01, -.5353D-01, -.4305D-01, -.3442D-01,
20521      #    -.2714D-01, -.2138D-01, -.1660D-01, -.1296D-01, -.9893D-02,
20522      #    -.7696D-02, -.5782D-02, -.4457D-02, -.3424D-02, -.2535D-02,
20523      #    -.1943D-02, -.1498D-02, -.1052D-02, -.7544D-03, -.6061D-03,
20524      #    -.4573D-03, -.3081D-03, -.3086D-03, -.1590D-03, -.1592D-03,
20525      #    -.1594D-03/
20526
20527       data (calcpts(j,12), j = 1,neta) /-.9496D-09, -.1655D-08,
20528      #    -.2882D-08, -.5018D-08, -.8732D-08, -.1518D-07, -.2638D-07,
20529      #    -.4581D-07, -.7948D-07, -.1379D-06, -.2389D-06, -.4138D-06,
20530      #    -.7163D-06, -.1239D-05, -.2140D-05, -.3695D-05, -.6374D-05,
20531      #    -.1098D-04, -.1890D-04, -.3250D-04, -.5580D-04, -.9566D-04,
20532      #    -.1637D-03, -.2796D-03, -.4764D-03, -.8092D-03, -.1369D-02,
20533      #    -.2305D-02, -.3856D-02, -.6388D-02, -.1045D-01, -.1680D-01,
20534      #    -.2635D-01, -.4005D-01, -.5842D-01, -.8104D-01, -.1062D+00,
20535      #    -.1309D+00, -.1517D+00, -.1657D+00, -.1714D+00, -.1691D+00,
20536      #    -.1601D+00, -.1464D+00, -.1300D+00, -.1127D+00, -.9571D-01,
20537      #    -.7993D-01, -.6581D-01, -.5358D-01, -.4310D-01, -.3433D-01,
20538      #    -.2719D-01, -.2128D-01, -.1665D-01, -.1286D-01, -.9941D-02,
20539      #    -.7594D-02, -.5830D-02, -.4504D-02, -.3321D-02, -.2583D-02,
20540      #    -.1841D-02, -.1396D-02, -.1099D-02, -.8019D-03, -.6536D-03,
20541      #    -.5047D-03, -.3555D-03, -.2061D-03, -.2064D-03, -.5667D-04,
20542      #    -.5683D-04/
20543
20544       data (calcpts(j,13), j = 1,neta) /-.9376D-09, -.1635D-08,
20545      #    -.2848D-08, -.4956D-08, -.8623D-08, -.1499D-07, -.2605D-07,
20546      #    -.4526D-07, -.7853D-07, -.1362D-06, -.2361D-06, -.4090D-06,
20547      #    -.7079D-06, -.1224D-05, -.2116D-05, -.3653D-05, -.6303D-05,
20548      #    -.1086D-04, -.1870D-04, -.3215D-04, -.5520D-04, -.9465D-04,
20549      #    -.1620D-03, -.2768D-03, -.4716D-03, -.8013D-03, -.1356D-02,
20550      #    -.2284D-02, -.3821D-02, -.6331D-02, -.1036D-01, -.1666D-01,
20551      #    -.2614D-01, -.3974D-01, -.5798D-01, -.8048D-01, -.1055D+00,
20552      #    -.1301D+00, -.1509D+00, -.1649D+00, -.1707D+00, -.1685D+00,
20553      #    -.1596D+00, -.1460D+00, -.1297D+00, -.1124D+00, -.9551D-01,
20554      #    -.7983D-01, -.6570D-01, -.5347D-01, -.4298D-01, -.3436D-01,
20555      #    -.2707D-01, -.2131D-01, -.1668D-01, -.1289D-01, -.9969D-02,
20556      #    -.7622D-02, -.5858D-02, -.4383D-02, -.3350D-02, -.2611D-02,
20557      #    -.1869D-02, -.1424D-02, -.1128D-02, -.8301D-03, -.5318D-03,
20558      #    -.3829D-03, -.3837D-03, -.2342D-03, -.2346D-03, -.8482D-04,
20559      #    -.8498D-04/
20560
20561       data (calcpts(j,14), j = 1,neta) /-.9204D-09, -.1605D-08,
20562      #    -.2795D-08, -.4866D-08, -.8469D-08, -.1473D-07, -.2560D-07,
20563      #    -.4445D-07, -.7715D-07, -.1338D-06, -.2320D-06, -.4019D-06,
20564      #    -.6958D-06, -.1204D-05, -.2080D-05, -.3592D-05, -.6199D-05,
20565      #    -.1068D-04, -.1840D-04, -.3164D-04, -.5435D-04, -.9320D-04,
20566      #    -.1596D-03, -.2727D-03, -.4649D-03, -.7900D-03, -.1337D-02,
20567      #    -.2253D-02, -.3769D-02, -.6250D-02, -.1023D-01, -.1646D-01,
20568      #    -.2583D-01, -.3929D-01, -.5737D-01, -.7968D-01, -.1046D+00,
20569      #    -.1291D+00, -.1497D+00, -.1638D+00, -.1697D+00, -.1676D+00,
20570      #    -.1588D+00, -.1454D+00, -.1292D+00, -.1121D+00, -.9525D-01,
20571      #    -.7958D-01, -.6559D-01, -.5335D-01, -.4286D-01, -.3424D-01,
20572      #    -.2709D-01, -.2133D-01, -.1655D-01, -.1291D-01, -.9990D-02,
20573      #    -.7643D-02, -.5878D-02, -.4403D-02, -.3369D-02, -.2481D-02,
20574      #    -.1889D-02, -.1444D-02, -.9974D-03, -.8498D-03, -.5515D-03,
20575      #    -.4026D-03, -.2534D-03, -.2539D-03, -.1043D-03, -.1045D-03,
20576      #    -.1047D-03/
20577
20578       data (calcpts(j,15), j = 1,neta) /-.8962D-09, -.1563D-08,
20579      #    -.2722D-08, -.4740D-08, -.8250D-08, -.1435D-07, -.2495D-07,
20580      #    -.4333D-07, -.7521D-07, -.1305D-06, -.2262D-06, -.3921D-06,
20581      #    -.6789D-06, -.1175D-05, -.2030D-05, -.3508D-05, -.6055D-05,
20582      #    -.1044D-04, -.1798D-04, -.3094D-04, -.5313D-04, -.9118D-04,
20583      #    -.1562D-03, -.2669D-03, -.4551D-03, -.7740D-03, -.1311D-02,
20584      #    -.2209D-02, -.3699D-02, -.6135D-02, -.1005D-01, -.1617D-01,
20585      #    -.2540D-01, -.3866D-01, -.5649D-01, -.7854D-01, -.1032D+00,
20586      #    -.1275D+00, -.1481D+00, -.1622D+00, -.1683D+00, -.1663D+00,
20587      #    -.1578D+00, -.1445D+00, -.1285D+00, -.1115D+00, -.9485D-01,
20588      #    -.7930D-01, -.6530D-01, -.5320D-01, -.4285D-01, -.3422D-01,
20589      #    -.2707D-01, -.2116D-01, -.1653D-01, -.1289D-01, -.9964D-02,
20590      #    -.7616D-02, -.5851D-02, -.4375D-02, -.3342D-02, -.2603D-02,
20591      #    -.1861D-02, -.1416D-02, -.1120D-02, -.8220D-03, -.5236D-03,
20592      #    -.3747D-03, -.3755D-03, -.2260D-03, -.2264D-03, -.7662D-04,
20593      #    -.7679D-04/
20594
20595       data (calcpts(j,16), j = 1,neta) /-.8625D-09, -.1504D-08,
20596      #    -.2621D-08, -.4566D-08, -.7948D-08, -.1382D-07, -.2404D-07,
20597      #    -.4176D-07, -.7252D-07, -.1259D-06, -.2183D-06, -.3784D-06,
20598      #    -.6554D-06, -.1134D-05, -.1961D-05, -.3389D-05, -.5854D-05,
20599      #    -.1010D-04, -.1740D-04, -.2994D-04, -.5146D-04, -.8834D-04,
20600      #    -.1514D-03, -.2589D-03, -.4418D-03, -.7518D-03, -.1274D-02,
20601      #    -.2149D-02, -.3600D-02, -.5975D-02, -.9793D-02, -.1577D-01,
20602      #    -.2479D-01, -.3777D-01, -.5526D-01, -.7694D-01, -.1012D+00,
20603      #    -.1253D+00, -.1458D+00, -.1599D+00, -.1662D+00, -.1645D+00,
20604      #    -.1563D+00, -.1433D+00, -.1275D+00, -.1108D+00, -.9428D-01,
20605      #    -.7886D-01, -.6500D-01, -.5289D-01, -.4268D-01, -.3404D-01,
20606      #    -.2689D-01, -.2113D-01, -.1649D-01, -.1285D-01, -.9927D-02,
20607      #    -.7578D-02, -.5813D-02, -.4487D-02, -.3303D-02, -.2564D-02,
20608      #    -.1972D-02, -.1377D-02, -.1080D-02, -.7829D-03, -.6345D-03,
20609      #    -.4856D-03, -.3363D-03, -.1869D-03, -.1872D-03, -.1874D-03,
20610      #    -.3761D-04/
20611
20612       data (calcpts(j,17), j = 1,neta) /-.8172D-09, -.1426D-08,
20613      #    -.2485D-08, -.4329D-08, -.7537D-08, -.1312D-07, -.2281D-07,
20614      #    -.3965D-07, -.6887D-07, -.1196D-06, -.2075D-06, -.3598D-06,
20615      #    -.6235D-06, -.1080D-05, -.1868D-05, -.3230D-05, -.5580D-05,
20616      #    -.9629D-05, -.1660D-04, -.2859D-04, -.4918D-04, -.8450D-04,
20617      #    -.1449D-03, -.2481D-03, -.4236D-03, -.7215D-03, -.1224D-02,
20618      #    -.2066D-02, -.3465D-02, -.5756D-02, -.9444D-02, -.1523D-01,
20619      #    -.2397D-01, -.3657D-01, -.5358D-01, -.7474D-01, -.9852D-01,
20620      #    -.1222D+00, -.1426D+00, -.1568D+00, -.1633D+00, -.1619D+00,
20621      #    -.1541D+00, -.1415D+00, -.1261D+00, -.1097D+00, -.9348D-01,
20622      #    -.7826D-01, -.6453D-01, -.5255D-01, -.4248D-01, -.3383D-01,
20623      #    -.2682D-01, -.2105D-01, -.1641D-01, -.1277D-01, -.9846D-02,
20624      #    -.7497D-02, -.5731D-02, -.4404D-02, -.3370D-02, -.2481D-02,
20625      #    -.1889D-02, -.1444D-02, -.9970D-03, -.8494D-03, -.5510D-03,
20626      #    -.4021D-03, -.2528D-03, -.2533D-03, -.1037D-03, -.1039D-03,
20627      #    -.1040D-03/
20628
20629       data (calcpts(j,18), j = 1,neta) /-.7578D-09, -.1323D-08,
20630      #    -.2305D-08, -.4019D-08, -.7001D-08, -.1219D-07, -.2121D-07,
20631      #    -.3688D-07, -.6411D-07, -.1114D-06, -.1933D-06, -.3355D-06,
20632      #    -.5817D-06, -.1008D-05, -.1745D-05, -.3020D-05, -.5221D-05,
20633      #    -.9018D-05, -.1556D-04, -.2683D-04, -.4618D-04, -.7943D-04,
20634      #    -.1364D-03, -.2337D-03, -.3996D-03, -.6815D-03, -.1157D-02,
20635      #    -.1957D-02, -.3286D-02, -.5468D-02, -.8983D-02, -.1451D-01,
20636      #    -.2287D-01, -.3496D-01, -.5134D-01, -.7178D-01, -.9490D-01,
20637      #    -.1181D+00, -.1382D+00, -.1524D+00, -.1592D+00, -.1584D+00,
20638      #    -.1511D+00, -.1391D+00, -.1242D+00, -.1082D+00, -.9234D-01,
20639      #    -.7741D-01, -.6394D-01, -.5208D-01, -.4199D-01, -.3363D-01,
20640      #    -.2661D-01, -.2099D-01, -.1634D-01, -.1270D-01, -.9773D-02,
20641      #    -.7572D-02, -.5805D-02, -.4328D-02, -.3294D-02, -.2554D-02,
20642      #    -.1961D-02, -.1366D-02, -.1070D-02, -.7719D-03, -.6235D-03,
20643      #    -.4745D-03, -.3253D-03, -.1758D-03, -.1761D-03, -.1763D-03,
20644      #    -.2648D-04/
20645
20646       data (calcpts(j,19), j = 1,neta) /-.6837D-09, -.1194D-08,
20647      #    -.2083D-08, -.3632D-08, -.6331D-08, -.1103D-07, -.1920D-07,
20648      #    -.3342D-07, -.5811D-07, -.1010D-06, -.1756D-06, -.3049D-06,
20649      #    -.5291D-06, -.9180D-06, -.1591D-05, -.2756D-05, -.4770D-05,
20650      #    -.8247D-05, -.1425D-04, -.2460D-04, -.4242D-04, -.7304D-04,
20651      #    -.1256D-03, -.2156D-03, -.3694D-03, -.6310D-03, -.1073D-02,
20652      #    -.1818D-02, -.3060D-02, -.5101D-02, -.8399D-02, -.1359D-01,
20653      #    -.2148D-01, -.3290D-01, -.4845D-01, -.6795D-01, -.9016D-01,
20654      #    -.1126D+00, -.1323D+00, -.1466D+00, -.1537D+00, -.1536D+00,
20655      #    -.1470D+00, -.1357D+00, -.1216D+00, -.1062D+00, -.9079D-01,
20656      #    -.7624D-01, -.6307D-01, -.5150D-01, -.4153D-01, -.3330D-01,
20657      #    -.2642D-01, -.2079D-01, -.1629D-01, -.1264D-01, -.9713D-02,
20658      #    -.7510D-02, -.5743D-02, -.4415D-02, -.3380D-02, -.2490D-02,
20659      #    -.1897D-02, -.1452D-02, -.1005D-02, -.8569D-03, -.5584D-03,
20660      #    -.4095D-03, -.2602D-03, -.2606D-03, -.1110D-03, -.1112D-03,
20661      #    -.1113D-03/
20662
20663       data (calcpts(j,20), j = 1,neta) /-.5962D-09, -.1042D-08,
20664      #    -.1819D-08, -.3174D-08, -.5539D-08, -.9657D-08, -.1683D-07,
20665      #    -.2932D-07, -.5105D-07, -.8884D-07, -.1546D-06, -.2687D-06,
20666      #    -.4670D-06, -.8111D-06, -.1407D-05, -.2442D-05, -.4233D-05,
20667      #    -.7332D-05, -.1269D-04, -.2195D-04, -.3790D-04, -.6541D-04,
20668      #    -.1127D-03, -.1939D-03, -.3329D-03, -.5701D-03, -.9723D-03,
20669      #    -.1651D-02, -.2786D-02, -.4658D-02, -.7690D-02, -.1248D-01,
20670      #    -.1977D-01, -.3039D-01, -.4490D-01, -.6321D-01, -.8422D-01,
20671      #    -.1057D+00, -.1249D+00, -.1390D+00, -.1466D+00, -.1472D+00,
20672      #    -.1416D+00, -.1313D+00, -.1180D+00, -.1034D+00, -.8867D-01,
20673      #    -.7465D-01, -.6189D-01, -.5070D-01, -.4100D-01, -.3275D-01,
20674      #    -.2600D-01, -.2051D-01, -.1600D-01, -.1250D-01, -.9717D-02,
20675      #    -.7362D-02, -.5743D-02, -.4264D-02, -.3228D-02, -.2488D-02,
20676      #    -.1894D-02, -.1449D-02, -.1002D-02, -.8541D-03, -.5555D-03,
20677      #    -.4065D-03, -.2571D-03, -.2576D-03, -.1079D-03, -.1081D-03,
20678      #    -.1082D-03/
20679
20680       data (calcpts(j,21), j = 1,neta) /-.5001D-09, -.8748D-09,
20681      #    -.1529D-08, -.2673D-08, -.4668D-08, -.8149D-08, -.1422D-07,
20682      #    -.2481D-07, -.4325D-07, -.7538D-07, -.1314D-06, -.2288D-06,
20683      #    -.3982D-06, -.6928D-06, -.1205D-05, -.2093D-05, -.3636D-05,
20684      #    -.6313D-05, -.1095D-04, -.1898D-04, -.3286D-04, -.5686D-04,
20685      #    -.9827D-04, -.1695D-03, -.2919D-03, -.5014D-03, -.8579D-03,
20686      #    -.1462D-02, -.2475D-02, -.4152D-02, -.6880D-02, -.1120D-01,
20687      #    -.1781D-01, -.2748D-01, -.4076D-01, -.5762D-01, -.7714D-01,
20688      #    -.9737D-01, -.1157D+00, -.1297D+00, -.1376D+00, -.1391D+00,
20689      #    -.1346D+00, -.1255D+00, -.1134D+00, -.9984D-01, -.8594D-01,
20690      #    -.7260D-01, -.6036D-01, -.4950D-01, -.4014D-01, -.3222D-01,
20691      #    -.2560D-01, -.2025D-01, -.1588D-01, -.1237D-01, -.9580D-02,
20692      #    -.7372D-02, -.5601D-02, -.4271D-02, -.3234D-02, -.2493D-02,
20693      #    -.1899D-02, -.1453D-02, -.1006D-02, -.8581D-03, -.5595D-03,
20694      #    -.4104D-03, -.2610D-03, -.2614D-03, -.1117D-03, -.1119D-03,
20695      #    -.1120D-03/
20696
20697       data (calcpts(j,22), j = 1,neta) /-.4031D-09, -.7061D-09,
20698      #    -.1236D-08, -.2163D-08, -.3785D-08, -.6618D-08, -.1157D-07,
20699      #    -.2022D-07, -.3532D-07, -.6168D-07, -.1077D-06, -.1879D-06,
20700      #    -.3279D-06, -.5717D-06, -.9962D-06, -.1736D-05, -.3023D-05,
20701      #    -.5262D-05, -.9154D-05, -.1592D-04, -.2764D-04, -.4797D-04,
20702      #    -.8319D-04, -.1440D-03, -.2489D-03, -.4291D-03, -.7372D-03,
20703      #    -.1261D-02, -.2144D-02, -.3612D-02, -.6008D-02, -.9826D-02,
20704      #    -.1569D-01, -.2430D-01, -.3619D-01, -.5140D-01, -.6916D-01,
20705      #    -.8779D-01, -.1050D+00, -.1185D+00, -.1268D+00, -.1292D+00,
20706      #    -.1260D+00, -.1184D+00, -.1077D+00, -.9531D-01, -.8244D-01,
20707      #    -.6995D-01, -.5838D-01, -.4804D-01, -.3906D-01, -.3142D-01,
20708      #    -.2505D-01, -.1975D-01, -.1552D-01, -.1215D-01, -.9361D-02,
20709      #    -.7300D-02, -.5526D-02, -.4194D-02, -.3156D-02, -.2415D-02,
20710      #    -.1820D-02, -.1374D-02, -.1077D-02, -.7786D-03, -.6298D-03,
20711      #    -.4806D-03, -.3312D-03, -.1816D-03, -.1818D-03, -.1820D-03,
20712      #    -.3212D-04/
20713
20714       data (calcpts(j,23), j = 1,neta) /-.3134D-09, -.5500D-09,
20715      #    -.9646D-09, -.1691D-08, -.2965D-08, -.5197D-08, -.9103D-08,
20716      #    -.1595D-07, -.2791D-07, -.4887D-07, -.8554D-07, -.1496D-06,
20717      #    -.2617D-06, -.4577D-06, -.7999D-06, -.1398D-05, -.2442D-05,
20718      #    -.4264D-05, -.7442D-05, -.1298D-04, -.2263D-04, -.3942D-04,
20719      #    -.6863D-04, -.1193D-03, -.2070D-03, -.3584D-03, -.6184D-03,
20720      #    -.1063D-02, -.1815D-02, -.3071D-02, -.5132D-02, -.8431D-02,
20721      #    -.1352D-01, -.2103D-01, -.3146D-01, -.4487D-01, -.6066D-01,
20722      #    -.7742D-01, -.9319D-01, -.1060D+00, -.1144D+00, -.1176D+00,
20723      #    -.1158D+00, -.1098D+00, -.1007D+00, -.8980D-01, -.7819D-01,
20724      #    -.6671D-01, -.5595D-01, -.4624D-01, -.3773D-01, -.3045D-01,
20725      #    -.2434D-01, -.1928D-01, -.1516D-01, -.1184D-01, -.9195D-02,
20726      #    -.7100D-02, -.5428D-02, -.4094D-02, -.3205D-02, -.2463D-02,
20727      #    -.1868D-02, -.1421D-02, -.9738D-03, -.8254D-03, -.5265D-03,
20728      #    -.3772D-03, -.3777D-03, -.2281D-03, -.2283D-03, -.7849D-04,
20729      #    -.7860D-04/
20730
20731       data (calcpts(j,24), j = 1,neta) /-.2374D-09, -.4175D-09,
20732      #    -.7336D-09, -.1290D-08, -.2266D-08, -.3981D-08, -.6991D-08,
20733      #    -.1228D-07, -.2155D-07, -.3782D-07, -.6639D-07, -.1165D-06,
20734      #    -.2044D-06, -.3585D-06, -.6283D-06, -.1102D-05, -.1931D-05,
20735      #    -.3384D-05, -.5927D-05, -.1038D-04, -.1816D-04, -.3176D-04,
20736      #    -.5551D-04, -.9690D-04, -.1689D-03, -.2937D-03, -.5089D-03,
20737      #    -.8786D-03, -.1507D-02, -.2562D-02, -.4301D-02, -.7096D-02,
20738      #    -.1143D-01, -.1785D-01, -.2680D-01, -.3838D-01, -.5210D-01,
20739      #    -.6683D-01, -.8092D-01, -.9276D-01, -.1010D+00, -.1049D+00,
20740      #    -.1044D+00, -.1000D+00, -.9264D-01, -.8337D-01, -.7319D-01,
20741      #    -.6290D-01, -.5307D-01, -.4410D-01, -.3615D-01, -.2930D-01,
20742      #    -.2349D-01, -.1868D-01, -.1473D-01, -.1154D-01, -.8972D-02,
20743      #    -.6932D-02, -.5333D-02, -.4087D-02, -.3106D-02, -.2363D-02,
20744      #    -.1782D-02, -.1350D-02, -.1007D-02, -.7538D-03, -.5598D-03,
20745      #    -.4254D-03, -.3059D-03, -.2312D-03, -.1714D-03, -.1265D-03,
20746      #    -.9662D-04/
20747
20748       data (calcpts(j,25), j = 1,neta) /-.1774D-09, -.3127D-09,
20749      #    -.5509D-09, -.9707D-09, -.1710D-08, -.3011D-08, -.5303D-08,
20750      #    -.9337D-08, -.1643D-07, -.2893D-07, -.5093D-07, -.8963D-07,
20751      #    -.1577D-06, -.2775D-06, -.4880D-06, -.8585D-06, -.1510D-05,
20752      #    -.2655D-05, -.4667D-05, -.8202D-05, -.1440D-04, -.2529D-04,
20753      #    -.4437D-04, -.7774D-04, -.1360D-03, -.2376D-03, -.4134D-03,
20754      #    -.7165D-03, -.1234D-02, -.2107D-02, -.3550D-02, -.5880D-02,
20755      #    -.9503D-02, -.1489D-01, -.2243D-01, -.3223D-01, -.4391D-01,
20756      #    -.5654D-01, -.6882D-01, -.7940D-01, -.8719D-01, -.9148D-01,
20757      #    -.9209D-01, -.8928D-01, -.8370D-01, -.7615D-01, -.6751D-01,
20758      #    -.5853D-01, -.4976D-01, -.4162D-01, -.3432D-01, -.2795D-01,
20759      #    -.2252D-01, -.1797D-01, -.1421D-01, -.1116D-01, -.8697D-02,
20760      #    -.6743D-02, -.5201D-02, -.3983D-02, -.3046D-02, -.2317D-02,
20761      #    -.1751D-02, -.1318D-02, -.9900D-03, -.7512D-03, -.5570D-03,
20762      #    -.4076D-03, -.3029D-03, -.2282D-03, -.1684D-03, -.1235D-03,
20763      #    -.9358D-04/
20764
20765       data (calcpts(j,26), j = 1,neta) /-.1325D-09, -.2341D-09,
20766      #    -.4132D-09, -.7299D-09, -.1289D-08, -.2275D-08, -.4017D-08,
20767      #    -.7092D-08, -.1251D-07, -.2209D-07, -.3899D-07, -.6881D-07,
20768      #    -.1214D-06, -.2143D-06, -.3779D-06, -.6668D-06, -.1176D-05,
20769      #    -.2075D-05, -.3658D-05, -.6450D-05, -.1136D-04, -.2001D-04,
20770      #    -.3524D-04, -.6195D-04, -.1088D-03, -.1906D-03, -.3328D-03,
20771      #    -.5788D-03, -.1000D-02, -.1713D-02, -.2896D-02, -.4811D-02,
20772      #    -.7796D-02, -.1225D-01, -.1850D-01, -.2664D-01, -.3638D-01,
20773      #    -.4699D-01, -.5742D-01, -.6661D-01, -.7368D-01, -.7806D-01,
20774      #    -.7950D-01, -.7808D-01, -.7415D-01, -.6833D-01, -.6128D-01,
20775      #    -.5369D-01, -.4608D-01, -.3885D-01, -.3225D-01, -.2642D-01,
20776      #    -.2140D-01, -.1715D-01, -.1363D-01, -.1074D-01, -.8402D-02,
20777      #    -.6534D-02, -.5034D-02, -.3874D-02, -.2966D-02, -.2251D-02,
20778      #    -.1714D-02, -.1281D-02, -.9678D-03, -.7288D-03, -.5345D-03,
20779      #    -.4000D-03, -.2953D-03, -.2205D-03, -.1606D-03, -.1157D-03,
20780      #    -.8582D-04/
20781
20782       data (calcpts(j,27), j = 1,neta) /-.9971D-10, -.1765D-09,
20783      #    -.3122D-09, -.5525D-09, -.9778D-09, -.1730D-08, -.3060D-08,
20784      #    -.5415D-08, -.9575D-08, -.1694D-07, -.2997D-07, -.5302D-07,
20785      #    -.9377D-07, -.1659D-06, -.2933D-06, -.5187D-06, -.9174D-06,
20786      #    -.1622D-05, -.2867D-05, -.5068D-05, -.8950D-05, -.1581D-04,
20787      #    -.2790D-04, -.4919D-04, -.8659D-04, -.1521D-03, -.2663D-03,
20788      #    -.4644D-03, -.8047D-03, -.1381D-02, -.2340D-02, -.3896D-02,
20789      #    -.6326D-02, -.9956D-02, -.1506D-01, -.2172D-01, -.2972D-01,
20790      #    -.3847D-01, -.4714D-01, -.5491D-01, -.6110D-01, -.6527D-01,
20791      #    -.6720D-01, -.6685D-01, -.6439D-01, -.6017D-01, -.5472D-01,
20792      #    -.4851D-01, -.4210D-01, -.3585D-01, -.3001D-01, -.2477D-01,
20793      #    -.2020D-01, -.1628D-01, -.1299D-01, -.1028D-01, -.8074D-02,
20794      #    -.6307D-02, -.4880D-02, -.3763D-02, -.2884D-02, -.2213D-02,
20795      #    -.1675D-02, -.1272D-02, -.9585D-03, -.7193D-03, -.5399D-03,
20796      #    -.4053D-03, -.3006D-03, -.2257D-03, -.1659D-03, -.1359D-03,
20797      #    -.9100D-04/
20798
20799       data (calcpts(j,28), j = 1,neta) /-.7575D-10, -.1343D-09,
20800      #    -.2379D-09, -.4217D-09, -.7476D-09, -.1325D-08, -.2348D-08,
20801      #    -.4161D-08, -.7371D-08, -.1306D-07, -.2316D-07, -.4103D-07,
20802      #    -.7270D-07, -.1288D-06, -.2282D-06, -.4043D-06, -.7165D-06,
20803      #    -.1269D-05, -.2247D-05, -.3980D-05, -.7042D-05, -.1246D-04,
20804      #    -.2204D-04, -.3892D-04, -.6865D-04, -.1208D-03, -.2119D-03,
20805      #    -.3702D-03, -.6426D-03, -.1105D-02, -.1875D-02, -.3125D-02,
20806      #    -.5081D-02, -.8007D-02, -.1212D-01, -.1750D-01, -.2397D-01,
20807      #    -.3107D-01, -.3814D-01, -.4455D-01, -.4980D-01, -.5355D-01,
20808      #    -.5564D-01, -.5603D-01, -.5474D-01, -.5193D-01, -.4793D-01,
20809      #    -.4311D-01, -.3787D-01, -.3262D-01, -.2758D-01, -.2296D-01,
20810      #    -.1886D-01, -.1530D-01, -.1228D-01, -.9767D-02, -.7703D-02,
20811      #    -.6038D-02, -.4698D-02, -.3625D-02, -.2790D-02, -.2133D-02,
20812      #    -.1625D-02, -.1236D-02, -.9374D-03, -.6981D-03, -.5336D-03,
20813      #    -.3989D-03, -.2941D-03, -.2192D-03, -.1593D-03, -.1294D-03,
20814      #    -.8445D-04/
20815
20816       data (calcpts(j,29), j = 1,neta) /-.5802D-10, -.1030D-09,
20817      #    -.1826D-09, -.3241D-09, -.5753D-09, -.1021D-08, -.1811D-08,
20818      #    -.3214D-08, -.5700D-08, -.1011D-07, -.1795D-07, -.3184D-07,
20819      #    -.5649D-07, -.1002D-06, -.1778D-06, -.3154D-06, -.5596D-06,
20820      #    -.9924D-06, -.1760D-05, -.3121D-05, -.5529D-05, -.9797D-05,
20821      #    -.1735D-04, -.3068D-04, -.5418D-04, -.9549D-04, -.1677D-03,
20822      #    -.2933D-03, -.5096D-03, -.8771D-03, -.1490D-02, -.2486D-02,
20823      #    -.4045D-02, -.6378D-02, -.9662D-02, -.1396D-01, -.1912D-01,
20824      #    -.2480D-01, -.3048D-01, -.3568D-01, -.4000D-01, -.4322D-01,
20825      #    -.4524D-01, -.4603D-01, -.4556D-01, -.4389D-01, -.4116D-01,
20826      #    -.3760D-01, -.3353D-01, -.2925D-01, -.2502D-01, -.2105D-01,
20827      #    -.1744D-01, -.1425D-01, -.1151D-01, -.9213D-02, -.7295D-02,
20828      #    -.5747D-02, -.4480D-02, -.3481D-02, -.2674D-02, -.2047D-02,
20829      #    -.1569D-02, -.1195D-02, -.8956D-03, -.6712D-03, -.5065D-03,
20830      #    -.3868D-03, -.2820D-03, -.2071D-03, -.1622D-03, -.1172D-03,
20831      #    -.8727D-04/
20832
20833       data (calcpts(j,30), j = 1,neta) /-.4465D-10, -.7931D-10,
20834      #    -.1408D-09, -.2500D-09, -.4441D-09, -.7886D-09, -.1400D-08,
20835      #    -.2487D-08, -.4415D-08, -.7840D-08, -.1393D-07, -.2473D-07,
20836      #    -.4390D-07, -.7797D-07, -.1384D-06, -.2457D-06, -.4364D-06,
20837      #    -.7745D-06, -.1375D-05, -.2440D-05, -.4326D-05, -.7672D-05,
20838      #    -.1360D-04, -.2406D-04, -.4253D-04, -.7503D-04, -.1318D-03,
20839      #    -.2308D-03, -.4013D-03, -.6912D-03, -.1175D-02, -.1961D-02,
20840      #    -.3193D-02, -.5037D-02, -.7633D-02, -.1103D-01, -.1511D-01,
20841      #    -.1961D-01, -.2411D-01, -.2825D-01, -.3174D-01, -.3441D-01,
20842      #    -.3622D-01, -.3714D-01, -.3718D-01, -.3633D-01, -.3462D-01,
20843      #    -.3216D-01, -.2915D-01, -.2581D-01, -.2237D-01, -.1905D-01,
20844      #    -.1595D-01, -.1315D-01, -.1071D-01, -.8630D-02, -.6874D-02,
20845      #    -.5443D-02, -.4264D-02, -.3324D-02, -.2577D-02, -.1979D-02,
20846      #    -.1515D-02, -.1156D-02, -.8717D-03, -.6621D-03, -.4974D-03,
20847      #    -.3776D-03, -.2728D-03, -.2129D-03, -.1529D-03, -.1080D-03,
20848      #    -.7802D-04/
20849
20850       data (calcpts(j,31), j = 1,neta) /-.3440D-10, -.6113D-10,
20851      #    -.1086D-09, -.1929D-09, -.3429D-09, -.6091D-09, -.1082D-08,
20852      #    -.1923D-08, -.3415D-08, -.6069D-08, -.1078D-07, -.1916D-07,
20853      #    -.3404D-07, -.6048D-07, -.1074D-06, -.1908D-06, -.3390D-06,
20854      #    -.6021D-06, -.1069D-05, -.1899D-05, -.3368D-05, -.5977D-05,
20855      #    -.1060D-04, -.1877D-04, -.3319D-04, -.5857D-04, -.1030D-03,
20856      #    -.1803D-03, -.3138D-03, -.5406D-03, -.9193D-03, -.1535D-02,
20857      #    -.2500D-02, -.3944D-02, -.5979D-02, -.8639D-02, -.1184D-01,
20858      #    -.1536D-01, -.1890D-01, -.2216D-01, -.2492D-01, -.2709D-01,
20859      #    -.2861D-01, -.2951D-01, -.2980D-01, -.2947D-01, -.2851D-01,
20860      #    -.2694D-01, -.2485D-01, -.2238D-01, -.1970D-01, -.1700D-01,
20861      #    -.1440D-01, -.1200D-01, -.9863D-02, -.8004D-02, -.6424D-02,
20862      #    -.5112D-02, -.4037D-02, -.3155D-02, -.2453D-02, -.1899D-02,
20863      #    -.1450D-02, -.1106D-02, -.8366D-03, -.6419D-03, -.4772D-03,
20864      #    -.3573D-03, -.2674D-03, -.2075D-03, -.1476D-03, -.1176D-03,
20865      #    -.8762D-04/
20866
20867       data (calcpts(j,32), j = 1,neta) /-.2646D-10, -.4703D-10,
20868      #    -.8355D-10, -.1485D-09, -.2640D-09, -.4692D-09, -.8339D-09,
20869      #    -.1482D-08, -.2633D-08, -.4681D-08, -.8322D-08, -.1479D-07,
20870      #    -.2628D-07, -.4672D-07, -.8298D-07, -.1475D-06, -.2621D-06,
20871      #    -.4657D-06, -.8273D-06, -.1470D-05, -.2608D-05, -.4629D-05,
20872      #    -.8211D-05, -.1455D-04, -.2573D-04, -.4543D-04, -.7989D-04,
20873      #    -.1399D-03, -.2436D-03, -.4197D-03, -.7140D-03, -.1193D-02,
20874      #    -.1942D-02, -.3065D-02, -.4646D-02, -.6713D-02, -.9201D-02,
20875      #    -.1194D-01, -.1469D-01, -.1723D-01, -.1939D-01, -.2111D-01,
20876      #    -.2235D-01, -.2315D-01, -.2353D-01, -.2348D-01, -.2301D-01,
20877      #    -.2209D-01, -.2074D-01, -.1901D-01, -.1703D-01, -.1492D-01,
20878      #    -.1282D-01, -.1082D-01, -.8980D-02, -.7357D-02, -.5955D-02,
20879      #    -.4776D-02, -.3775D-02, -.2968D-02, -.2325D-02, -.1801D-02,
20880      #    -.1382D-02, -.1067D-02, -.8126D-03, -.6178D-03, -.4680D-03,
20881      #    -.3481D-03, -.2582D-03, -.1983D-03, -.1383D-03, -.1083D-03,
20882      #    -.7837D-04/
20883
20884       data (calcpts(j,33), j = 1,neta) /-.2028D-10, -.3607D-10,
20885      #    -.6408D-10, -.1139D-09, -.2026D-09, -.3601D-09, -.6402D-09,
20886      #    -.1138D-08, -.2022D-08, -.3596D-08, -.6394D-08, -.1136D-07,
20887      #    -.2020D-07, -.3592D-07, -.6381D-07, -.1134D-06, -.2017D-06,
20888      #    -.3583D-06, -.6367D-06, -.1131D-05, -.2008D-05, -.3565D-05,
20889      #    -.6325D-05, -.1121D-04, -.1983D-04, -.3501D-04, -.6158D-04,
20890      #    -.1079D-03, -.1878D-03, -.3237D-03, -.5507D-03, -.9200D-03,
20891      #    -.1498D-02, -.2365D-02, -.3585D-02, -.5180D-02, -.7100D-02,
20892      #    -.9213D-02, -.1133D-01, -.1330D-01, -.1497D-01, -.1631D-01,
20893      #    -.1731D-01, -.1798D-01, -.1835D-01, -.1844D-01, -.1825D-01,
20894      #    -.1776D-01, -.1695D-01, -.1583D-01, -.1444D-01, -.1288D-01,
20895      #    -.1124D-01, -.9618D-02, -.8088D-02, -.6698D-02, -.5473D-02,
20896      #    -.4416D-02, -.3534D-02, -.2801D-02, -.2187D-02, -.1708D-02,
20897      #    -.1319D-02, -.1019D-02, -.7796D-03, -.5998D-03, -.4500D-03,
20898      #    -.3451D-03, -.2551D-03, -.1952D-03, -.1502D-03, -.1052D-03,
20899      #    -.7526D-04/
20900
20901       data (calcpts(j,34), j = 1,neta) /-.1548D-10, -.2753D-10,
20902      #    -.4892D-10, -.8700D-10, -.1547D-09, -.2750D-09, -.4890D-09,
20903      #    -.8695D-09, -.1545D-08, -.2748D-08, -.4886D-08, -.8686D-08,
20904      #    -.1544D-07, -.2746D-07, -.4879D-07, -.8674D-07, -.1542D-06,
20905      #    -.2741D-06, -.4870D-06, -.8655D-06, -.1536D-05, -.2728D-05,
20906      #    -.4841D-05, -.8578D-05, -.1518D-04, -.2680D-04, -.4715D-04,
20907      #    -.8263D-04, -.1438D-03, -.2480D-03, -.4219D-03, -.7048D-03,
20908      #    -.1148D-02, -.1812D-02, -.2747D-02, -.3969D-02, -.5440D-02,
20909      #    -.7059D-02, -.8685D-02, -.1019D-01, -.1148D-01, -.1251D-01,
20910      #    -.1329D-01, -.1383D-01, -.1416D-01, -.1430D-01, -.1425D-01,
20911      #    -.1401D-01, -.1356D-01, -.1289D-01, -.1198D-01, -.1089D-01,
20912      #    -.9674D-02, -.8414D-02, -.7176D-02, -.6017D-02, -.4969D-02,
20913      #    -.4050D-02, -.3261D-02, -.2598D-02, -.2052D-02, -.1607D-02,
20914      #    -.1251D-02, -.9661D-03, -.7414D-03, -.5675D-03, -.4311D-03,
20915      #    -.3217D-03, -.2468D-03, -.1868D-03, -.1418D-03, -.9683D-04,
20916      #    -.8184D-04/
20917
20918       data (calcpts(j,35), j = 1,neta) /-.1176D-10, -.2091D-10,
20919      #    -.3717D-10, -.6610D-10, -.1176D-09, -.2090D-09, -.3716D-09,
20920      #    -.6608D-09, -.1174D-08, -.2089D-08, -.3714D-08, -.6603D-08,
20921      #    -.1174D-07, -.2088D-07, -.3710D-07, -.6597D-07, -.1173D-06,
20922      #    -.2085D-06, -.3705D-06, -.6584D-06, -.1169D-05, -.2076D-05,
20923      #    -.3683D-05, -.6527D-05, -.1155D-04, -.2040D-04, -.3589D-04,
20924      #    -.6290D-04, -.1095D-03, -.1888D-03, -.3212D-03, -.5366D-03,
20925      #    -.8741D-03, -.1379D-02, -.2091D-02, -.3022D-02, -.4142D-02,
20926      #    -.5375D-02, -.6612D-02, -.7758D-02, -.8741D-02, -.9532D-02,
20927      #    -.1013D-01, -.1056D-01, -.1084D-01, -.1098D-01, -.1100D-01,
20928      #    -.1090D-01, -.1066D-01, -.1028D-01, -.9728D-02, -.9012D-02,
20929      #    -.8163D-02, -.7228D-02, -.6268D-02, -.5330D-02, -.4457D-02,
20930      #    -.3671D-02, -.2984D-02, -.2398D-02, -.1906D-02, -.1503D-02,
20931      #    -.1175D-02, -.9116D-03, -.7033D-03, -.5384D-03, -.4110D-03,
20932      #    -.3120D-03, -.2356D-03, -.1771D-03, -.1321D-03, -.9912D-04,
20933      #    -.7362D-04/
20934
20935       data (calcpts(j,36), j = 1,neta) /-.8892D-11, -.1581D-10,
20936      #    -.2811D-10, -.4998D-10, -.8890D-10, -.1581D-09, -.2810D-09,
20937      #    -.4998D-09, -.8883D-09, -.1580D-08, -.2810D-08, -.4996D-08,
20938      #    -.8882D-08, -.1580D-07, -.2807D-07, -.4991D-07, -.8876D-07,
20939      #    -.1578D-06, -.2804D-06, -.4983D-06, -.8847D-06, -.1571D-05,
20940      #    -.2788D-05, -.4941D-05, -.8744D-05, -.1544D-04, -.2717D-04,
20941      #    -.4762D-04, -.8290D-04, -.1429D-03, -.2432D-03, -.4063D-03,
20942      #    -.6619D-03, -.1045D-02, -.1584D-02, -.2288D-02, -.3136D-02,
20943      #    -.4070D-02, -.5007D-02, -.5874D-02, -.6620D-02, -.7220D-02,
20944      #    -.7678D-02, -.8011D-02, -.8234D-02, -.8364D-02, -.8411D-02,
20945      #    -.8378D-02, -.8261D-02, -.8053D-02, -.7736D-02, -.7299D-02,
20946      #    -.6743D-02, -.6090D-02, -.5378D-02, -.4650D-02, -.3945D-02,
20947      #    -.3290D-02, -.2705D-02, -.2194D-02, -.1760D-02, -.1396D-02,
20948      #    -.1099D-02, -.8578D-03, -.6645D-03, -.5115D-03, -.3916D-03,
20949      #    -.2986D-03, -.2267D-03, -.1712D-03, -.1277D-03, -.9622D-04,
20950      #    -.7223D-04/
20951
20952       data (calcpts(j,37), j = 1,neta) /-.6692D-11, -.1190D-10,
20953      #    -.2115D-10, -.3762D-10, -.6691D-10, -.1190D-09, -.2115D-09,
20954      #    -.3762D-09, -.6687D-09, -.1189D-08, -.2115D-08, -.3761D-08,
20955      #    -.6687D-08, -.1189D-07, -.2113D-07, -.3758D-07, -.6683D-07,
20956      #    -.1188D-06, -.2111D-06, -.3752D-06, -.6662D-06, -.1183D-05,
20957      #    -.2100D-05, -.3721D-05, -.6585D-05, -.1163D-04, -.2046D-04,
20958      #    -.3586D-04, -.6244D-04, -.1077D-03, -.1832D-03, -.3060D-03,
20959      #    -.4985D-03, -.7868D-03, -.1193D-02, -.1724D-02, -.2362D-02,
20960      #    -.3065D-02, -.3771D-02, -.4425D-02, -.4986D-02, -.5439D-02,
20961      #    -.5787D-02, -.6041D-02, -.6216D-02, -.6326D-02, -.6379D-02,
20962      #    -.6379D-02, -.6326D-02, -.6217D-02, -.6042D-02, -.5789D-02,
20963      #    -.5448D-02, -.5021D-02, -.4524D-02, -.3984D-02, -.3437D-02,
20964      #    -.2909D-02, -.2421D-02, -.1985D-02, -.1608D-02, -.1287D-02,
20965      #    -.1020D-02, -.8012D-03, -.6243D-03, -.4834D-03, -.3709D-03,
20966      #    -.2840D-03, -.2165D-03, -.1640D-03, -.1235D-03, -.9201D-04,
20967      #    -.6951D-04/
20968
20969       data (calcpts(j,38), j = 1,neta) /-.5013D-11, -.8916D-11,
20970      #    -.1585D-10, -.2818D-10, -.5013D-10, -.8914D-10, -.1585D-09,
20971      #    -.2819D-09, -.5010D-09, -.8911D-09, -.1585D-08, -.2818D-08,
20972      #    -.5011D-08, -.8911D-08, -.1584D-07, -.2816D-07, -.5008D-07,
20973      #    -.8901D-07, -.1582D-06, -.2812D-06, -.4993D-06, -.8866D-06,
20974      #    -.1574D-05, -.2789D-05, -.4935D-05, -.8717D-05, -.1534D-04,
20975      #    -.2688D-04, -.4680D-04, -.8069D-04, -.1373D-03, -.2294D-03,
20976      #    -.3737D-03, -.5898D-03, -.8941D-03, -.1292D-02, -.1771D-02,
20977      #    -.2298D-02, -.2827D-02, -.3317D-02, -.3738D-02, -.4078D-02,
20978      #    -.4339D-02, -.4531D-02, -.4666D-02, -.4755D-02, -.4804D-02,
20979      #    -.4819D-02, -.4799D-02, -.4744D-02, -.4650D-02, -.4508D-02,
20980      #    -.4310D-02, -.4048D-02, -.3721D-02, -.3345D-02, -.2940D-02,
20981      #    -.2530D-02, -.2137D-02, -.1776D-02, -.1453D-02, -.1175D-02,
20982      #    -.9379D-03, -.7415D-03, -.5826D-03, -.4521D-03, -.3501D-03,
20983      #    -.2677D-03, -.2047D-03, -.1552D-03, -.1177D-03, -.8770D-04,
20984      #    -.6671D-04/
20985
20986       data (calcpts(j,39), j = 1,neta) /-.3741D-11, -.6654D-11,
20987      #    -.1183D-10, -.2104D-10, -.3742D-10, -.6653D-10, -.1183D-09,
20988      #    -.2104D-09, -.3740D-09, -.6651D-09, -.1183D-08, -.2103D-08,
20989      #    -.3740D-08, -.6652D-08, -.1182D-07, -.2102D-07, -.3738D-07,
20990      #    -.6644D-07, -.1181D-06, -.2099D-06, -.3727D-06, -.6618D-06,
20991      #    -.1175D-05, -.2082D-05, -.3684D-05, -.6508D-05, -.1145D-04,
20992      #    -.2007D-04, -.3494D-04, -.6024D-04, -.1025D-03, -.1713D-03,
20993      #    -.2790D-03, -.4403D-03, -.6675D-03, -.9646D-03, -.1322D-02,
20994      #    -.1715D-02, -.2110D-02, -.2476D-02, -.2791D-02, -.3045D-02,
20995      #    -.3240D-02, -.3385D-02, -.3487D-02, -.3557D-02, -.3599D-02,
20996      #    -.3617D-02, -.3614D-02, -.3589D-02, -.3539D-02, -.3461D-02,
20997      #    -.3349D-02, -.3196D-02, -.2996D-02, -.2749D-02, -.2466D-02,
20998      #    -.2164D-02, -.1858D-02, -.1568D-02, -.1299D-02, -.1062D-02,
20999      #    -.8571D-03, -.6832D-03, -.5408D-03, -.4223D-03, -.3293D-03,
21000      #    -.2543D-03, -.1943D-03, -.1494D-03, -.1134D-03, -.8486D-04,
21001      #    -.6387D-04/
21002
21003       data (calcpts(j,40), j = 1,neta) /-.2780D-11, -.4945D-11,
21004      #    -.8790D-11, -.1563D-10, -.2781D-10, -.4944D-10, -.8792D-10,
21005      #    -.1564D-09, -.2779D-09, -.4943D-09, -.8792D-09, -.1563D-08,
21006      #    -.2780D-08, -.4944D-08, -.8786D-08, -.1562D-07, -.2778D-07,
21007      #    -.4939D-07, -.8778D-07, -.1560D-06, -.2770D-06, -.4919D-06,
21008      #    -.8731D-06, -.1547D-05, -.2739D-05, -.4837D-05, -.8511D-05,
21009      #    -.1492D-04, -.2597D-04, -.4478D-04, -.7619D-04, -.1273D-03,
21010      #    -.2074D-03, -.3273D-03, -.4962D-03, -.7170D-03, -.9827D-03,
21011      #    -.1275D-02, -.1569D-02, -.1841D-02, -.2074D-02, -.2263D-02,
21012      #    -.2409D-02, -.2517D-02, -.2594D-02, -.2647D-02, -.2681D-02,
21013      #    -.2699D-02, -.2703D-02, -.2693D-02, -.2668D-02, -.2626D-02,
21014      #    -.2564D-02, -.2477D-02, -.2360D-02, -.2208D-02, -.2023D-02,
21015      #    -.1812D-02, -.1586D-02, -.1360D-02, -.1145D-02, -.9475D-03,
21016      #    -.7736D-03, -.6222D-03, -.4962D-03, -.3913D-03, -.3058D-03,
21017      #    -.2368D-03, -.1828D-03, -.1408D-03, -.1063D-03, -.8082D-04,
21018      #    -.6132D-04/
21019
21020       data (calcpts(j,41), j = 1,neta) /-.2059D-11, -.3662D-11,
21021      #    -.6509D-11, -.1158D-10, -.2059D-10, -.3661D-10, -.6510D-10,
21022      #    -.1158D-09, -.2058D-09, -.3660D-09, -.6511D-09, -.1158D-08,
21023      #    -.2058D-08, -.3661D-08, -.6506D-08, -.1157D-07, -.2057D-07,
21024      #    -.3657D-07, -.6500D-07, -.1155D-06, -.2051D-06, -.3643D-06,
21025      #    -.6465D-06, -.1146D-05, -.2028D-05, -.3582D-05, -.6303D-05,
21026      #    -.1105D-04, -.1923D-04, -.3316D-04, -.5642D-04, -.9427D-04,
21027      #    -.1536D-03, -.2424D-03, -.3674D-03, -.5310D-03, -.7278D-03,
21028      #    -.9443D-03, -.1162D-02, -.1363D-02, -.1536D-02, -.1676D-02,
21029      #    -.1784D-02, -.1864D-02, -.1922D-02, -.1962D-02, -.1988D-02,
21030      #    -.2004D-02, -.2011D-02, -.2008D-02, -.1996D-02, -.1974D-02,
21031      #    -.1940D-02, -.1891D-02, -.1825D-02, -.1736D-02, -.1622D-02,
21032      #    -.1484D-02, -.1327D-02, -.1160D-02, -.9928D-03, -.8341D-03,
21033      #    -.6894D-03, -.5615D-03, -.4517D-03, -.3587D-03, -.2823D-03,
21034      #    -.2208D-03, -.1713D-03, -.1323D-03, -.1008D-03, -.7679D-04,
21035      #    -.5729D-04/
21036
21037       data (calcpts(j,42), j = 1,neta) /-.1520D-11, -.2703D-11,
21038      #    -.4804D-11, -.8545D-11, -.1520D-10, -.2702D-10, -.4806D-10,
21039      #    -.8547D-10, -.1519D-09, -.2702D-09, -.4806D-09, -.8545D-09,
21040      #    -.1519D-08, -.2702D-08, -.4802D-08, -.8540D-08, -.1519D-07,
21041      #    -.2700D-07, -.4798D-07, -.8528D-07, -.1514D-06, -.2689D-06,
21042      #    -.4773D-06, -.8459D-06, -.1497D-05, -.2644D-05, -.4653D-05,
21043      #    -.8154D-05, -.1420D-04, -.2448D-04, -.4165D-04, -.6959D-04,
21044      #    -.1134D-03, -.1789D-03, -.2712D-03, -.3920D-03, -.5372D-03,
21045      #    -.6971D-03, -.8576D-03, -.1006D-02, -.1134D-02, -.1237D-02,
21046      #    -.1317D-02, -.1376D-02, -.1419D-02, -.1449D-02, -.1469D-02,
21047      #    -.1482D-02, -.1489D-02, -.1490D-02, -.1485D-02, -.1474D-02,
21048      #    -.1455D-02, -.1428D-02, -.1391D-02, -.1340D-02, -.1274D-02,
21049      #    -.1189D-02, -.1086D-02, -.9692D-03, -.8460D-03, -.7231D-03,
21050      #    -.6067D-03, -.5007D-03, -.4073D-03, -.3272D-03, -.2599D-03,
21051      #    -.2045D-03, -.1595D-03, -.1234D-03, -.9489D-04, -.7254D-04,
21052      #    -.5514D-04/
21053
21054       data (calcpts(j,43), j = 1,neta) /-.1118D-11, -.1989D-11,
21055      #    -.3535D-11, -.6287D-11, -.1118D-10, -.1988D-10, -.3536D-10,
21056      #    -.6289D-10, -.1118D-09, -.1988D-09, -.3536D-09, -.6287D-09,
21057      #    -.1118D-08, -.1988D-08, -.3534D-08, -.6284D-08, -.1118D-07,
21058      #    -.1986D-07, -.3531D-07, -.6275D-07, -.1114D-06, -.1979D-06,
21059      #    -.3512D-06, -.6224D-06, -.1102D-05, -.1946D-05, -.3424D-05,
21060      #    -.6000D-05, -.1045D-04, -.1801D-04, -.3065D-04, -.5121D-04,
21061      #    -.8342D-04, -.1317D-03, -.1996D-03, -.2884D-03, -.3953D-03,
21062      #    -.5129D-03, -.6310D-03, -.7404D-03, -.8344D-03, -.9105D-03,
21063      #    -.9691D-03, -.1013D-02, -.1044D-02, -.1066D-02, -.1082D-02,
21064      #    -.1092D-02, -.1097D-02, -.1100D-02, -.1098D-02, -.1093D-02,
21065      #    -.1084D-02, -.1069D-02, -.1048D-02, -.1020D-02, -.9815D-03,
21066      #    -.9317D-03, -.8684D-03, -.7922D-03, -.7063D-03, -.6156D-03,
21067      #    -.5255D-03, -.4402D-03, -.3628D-03, -.2947D-03, -.2365D-03,
21068      #    -.1876D-03, -.1474D-03, -.1149D-03, -.8879D-04, -.6824D-04,
21069      #    -.5204D-04/
21070
21071       data (calcpts(j,44), j = 1,neta) /-.8203D-12, -.1459D-11,
21072      #    -.2593D-11, -.4612D-11, -.8204D-11, -.1459D-10, -.2594D-10,
21073      #    -.4614D-10, -.8200D-10, -.1458D-09, -.2594D-09, -.4613D-09,
21074      #    -.8202D-09, -.1459D-08, -.2592D-08, -.4610D-08, -.8198D-08,
21075      #    -.1457D-07, -.2590D-07, -.4604D-07, -.8174D-07, -.1452D-06,
21076      #    -.2576D-06, -.4566D-06, -.8081D-06, -.1427D-05, -.2512D-05,
21077      #    -.4402D-05, -.7664D-05, -.1321D-04, -.2248D-04, -.3757D-04,
21078      #    -.6120D-04, -.9659D-04, -.1464D-03, -.2116D-03, -.2900D-03,
21079      #    -.3763D-03, -.4630D-03, -.5432D-03, -.6122D-03, -.6679D-03,
21080      #    -.7110D-03, -.7430D-03, -.7662D-03, -.7826D-03, -.7939D-03,
21081      #    -.8015D-03, -.8062D-03, -.8086D-03, -.8088D-03, -.8068D-03,
21082      #    -.8022D-03, -.7944D-03, -.7828D-03, -.7667D-03, -.7451D-03,
21083      #    -.7161D-03, -.6790D-03, -.6323D-03, -.5761D-03, -.5130D-03,
21084      #    -.4466D-03, -.3806D-03, -.3185D-03, -.2621D-03, -.2128D-03,
21085      #    -.1705D-03, -.1351D-03, -.1060D-03, -.8242D-04, -.6367D-04,
21086      #    -.4882D-04/
21087
21088       data (calcpts(j,45), j = 1,neta) /-.6004D-12, -.1068D-11,
21089      #    -.1898D-11, -.3376D-11, -.6005D-11, -.1068D-10, -.1899D-10,
21090      #    -.3377D-10, -.6002D-10, -.1068D-09, -.1899D-09, -.3376D-09,
21091      #    -.6003D-09, -.1068D-08, -.1897D-08, -.3374D-08, -.6001D-08,
21092      #    -.1067D-07, -.1896D-07, -.3370D-07, -.5983D-07, -.1062D-06,
21093      #    -.1886D-06, -.3342D-06, -.5915D-06, -.1045D-05, -.1838D-05,
21094      #    -.3222D-05, -.5610D-05, -.9672D-05, -.1646D-04, -.2750D-04,
21095      #    -.4479D-04, -.7070D-04, -.1072D-03, -.1549D-03, -.2123D-03,
21096      #    -.2754D-03, -.3389D-03, -.3976D-03, -.4481D-03, -.4889D-03,
21097      #    -.5204D-03, -.5439D-03, -.5608D-03, -.5729D-03, -.5812D-03,
21098      #    -.5869D-03, -.5906D-03, -.5927D-03, -.5935D-03, -.5929D-03,
21099      #    -.5908D-03, -.5869D-03, -.5807D-03, -.5718D-03, -.5596D-03,
21100      #    -.5434D-03, -.5222D-03, -.4948D-03, -.4602D-03, -.4188D-03,
21101      #    -.3725D-03, -.3239D-03, -.2758D-03, -.2305D-03, -.1895D-03,
21102      #    -.1537D-03, -.1229D-03, -.9744D-04, -.7629D-04, -.5934D-04,
21103      #    -.4584D-04/
21104
21105       data (calcpts(j,46), j = 1,neta) /-.4382D-12, -.7794D-12,
21106      #    -.1385D-11, -.2464D-11, -.4383D-11, -.7793D-11, -.1386D-10,
21107      #    -.2465D-10, -.4381D-10, -.7791D-10, -.1386D-09, -.2464D-09,
21108      #    -.4381D-09, -.7792D-09, -.1385D-08, -.2463D-08, -.4380D-08,
21109      #    -.7785D-08, -.1384D-07, -.2459D-07, -.4367D-07, -.7755D-07,
21110      #    -.1376D-06, -.2439D-06, -.4317D-06, -.7625D-06, -.1342D-05,
21111      #    -.2351D-05, -.4094D-05, -.7059D-05, -.1201D-04, -.2007D-04,
21112      #    -.3269D-04, -.5160D-04, -.7822D-04, -.1130D-03, -.1549D-03,
21113      #    -.2010D-03, -.2473D-03, -.2902D-03, -.3270D-03, -.3568D-03,
21114      #    -.3798D-03, -.3969D-03, -.4093D-03, -.4181D-03, -.4243D-03,
21115      #    -.4285D-03, -.4313D-03, -.4330D-03, -.4338D-03, -.4339D-03,
21116      #    -.4331D-03, -.4312D-03, -.4281D-03, -.4233D-03, -.4165D-03,
21117      #    -.4073D-03, -.3952D-03, -.3795D-03, -.3590D-03, -.3339D-03,
21118      #    -.3036D-03, -.2697D-03, -.2342D-03, -.1992D-03, -.1662D-03,
21119      #    -.1365D-03, -.1106D-03, -.8839D-04, -.6994D-04, -.5479D-04,
21120      #    -.4249D-04/
21121
21122       data (calcpts(j,47), j = 1,neta) /-.3191D-12, -.5675D-12,
21123      #    -.1009D-11, -.1794D-11, -.3191D-11, -.5674D-11, -.1009D-10,
21124      #    -.1795D-10, -.3190D-10, -.5673D-10, -.1009D-09, -.1794D-09,
21125      #    -.3190D-09, -.5674D-09, -.1008D-08, -.1793D-08, -.3189D-08,
21126      #    -.5668D-08, -.1007D-07, -.1791D-07, -.3179D-07, -.5646D-07,
21127      #    -.1002D-06, -.1776D-06, -.3143D-06, -.5552D-06, -.9769D-06,
21128      #    -.1712D-05, -.2981D-05, -.5140D-05, -.8745D-05, -.1461D-04,
21129      #    -.2380D-04, -.3757D-04, -.5695D-04, -.8230D-04, -.1128D-03,
21130      #    -.1464D-03, -.1801D-03, -.2113D-03, -.2381D-03, -.2598D-03,
21131      #    -.2765D-03, -.2890D-03, -.2980D-03, -.3045D-03, -.3090D-03,
21132      #    -.3120D-03, -.3141D-03, -.3155D-03, -.3162D-03, -.3165D-03,
21133      #    -.3162D-03, -.3154D-03, -.3139D-03, -.3114D-03, -.3077D-03,
21134      #    -.3026D-03, -.2957D-03, -.2868D-03, -.2752D-03, -.2603D-03,
21135      #    -.2417D-03, -.2195D-03, -.1948D-03, -.1690D-03, -.1435D-03,
21136      #    -.1197D-03, -.9825D-04, -.7935D-04, -.6345D-04, -.5010D-04,
21137      #    -.3915D-04/
21138
21139       data (calcpts(j,48), j = 1,neta) /-.2319D-12, -.4124D-12,
21140      #    -.7330D-12, -.1304D-11, -.2319D-11, -.4123D-11, -.7332D-11,
21141      #    -.1304D-10, -.2318D-10, -.4122D-10, -.7332D-10, -.1304D-09,
21142      #    -.2318D-09, -.4123D-09, -.7327D-09, -.1303D-08, -.2317D-08,
21143      #    -.4119D-08, -.7321D-08, -.1301D-07, -.2310D-07, -.4103D-07,
21144      #    -.7282D-07, -.1291D-06, -.2284D-06, -.4035D-06, -.7099D-06,
21145      #    -.1244D-05, -.2166D-05, -.3735D-05, -.6355D-05, -.1062D-04,
21146      #    -.1730D-04, -.2730D-04, -.4139D-04, -.5981D-04, -.8197D-04,
21147      #    -.1064D-03, -.1309D-03, -.1535D-03, -.1730D-03, -.1888D-03,
21148      #    -.2010D-03, -.2100D-03, -.2166D-03, -.2213D-03, -.2245D-03,
21149      #    -.2268D-03, -.2283D-03, -.2293D-03, -.2300D-03, -.2303D-03,
21150      #    -.2303D-03, -.2299D-03, -.2292D-03, -.2280D-03, -.2261D-03,
21151      #    -.2233D-03, -.2195D-03, -.2143D-03, -.2077D-03, -.1992D-03,
21152      #    -.1883D-03, -.1747D-03, -.1585D-03, -.1406D-03, -.1218D-03,
21153      #    -.1034D-03, -.8612D-04, -.7060D-04, -.5695D-04, -.4555D-04,
21154      #    -.3595D-04/
21155
21156       data (calcpts(j,49), j = 1,neta) /-.1681D-12, -.2990D-12,
21157      #    -.5315D-12, -.9453D-12, -.1681D-11, -.2990D-11, -.5317D-11,
21158      #    -.9456D-11, -.1681D-10, -.2989D-10, -.5317D-10, -.9454D-10,
21159      #    -.1681D-09, -.2990D-09, -.5313D-09, -.9449D-09, -.1680D-08,
21160      #    -.2987D-08, -.5309D-08, -.9436D-08, -.1675D-07, -.2975D-07,
21161      #    -.5281D-07, -.9359D-07, -.1656D-06, -.2926D-06, -.5148D-06,
21162      #    -.9022D-06, -.1571D-05, -.2708D-05, -.4608D-05, -.7700D-05,
21163      #    -.1254D-04, -.1980D-04, -.3001D-04, -.4337D-04, -.5944D-04,
21164      #    -.7713D-04, -.9489D-04, -.1113D-03, -.1255D-03, -.1369D-03,
21165      #    -.1457D-03, -.1523D-03, -.1571D-03, -.1604D-03, -.1628D-03,
21166      #    -.1645D-03, -.1656D-03, -.1663D-03, -.1668D-03, -.1671D-03,
21167      #    -.1672D-03, -.1671D-03, -.1668D-03, -.1662D-03, -.1652D-03,
21168      #    -.1638D-03, -.1617D-03, -.1588D-03, -.1550D-03, -.1502D-03,
21169      #    -.1439D-03, -.1359D-03, -.1260D-03, -.1143D-03, -.1012D-03,
21170      #    -.8765D-04, -.7430D-04, -.6185D-04, -.5062D-04, -.4087D-04,
21171      #    -.3257D-04/
21172
21173       data (dlaeta(j), j = 1,neta) /
21174      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
21175      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
21176      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
21177      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
21178      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
21179      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
21180      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
21181      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
21182      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
21183      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
21184      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
21185      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
21186      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
21187      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
21188      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
21189
21190       data (dlaxi(j), j = 1,nxi) /
21191      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
21192      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
21193      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
21194      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
21195      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
21196      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
21197      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
21198      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
21199      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
21200      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
21201
21202       dleta = dlog10(eta)
21203       dlxi = dlog10(xi)
21204       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
21205       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
21206       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
21207       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
21208       call locate(dlaeta,neta, dleta, ieta)
21209       call locate(dlaxi, nxi, dlxi, ixi)
21210 c     interpolating between the appropriate points
21211       delxi = 1d0/6d0
21212       deleta = 1d0/6d0
21213 c  lagrange 3-pt.
21214       if (ixi .le. 2) ixi = 2
21215       if (ixi .ge. 48) ixi = 48
21216       if (ieta .le. 2) ieta = 2
21217       if (ieta .ge. 72) ieta = 72
21218       pxi = (dlxi - dlaxi(ixi))/delxi
21219       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
21220      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
21221      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
21222       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
21223      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
21224      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
21225       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
21226      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
21227      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
21228       peta = (dleta - dlaeta(ieta))/deleta
21229       h1_HTq = peta*(peta-1d0)/2d0*f(-1) +
21230      #     (1d0 - peta**2)*f(0) +
21231 CMB  #     + peta*(peta+1d0)/2d0*f(1)
21232      #     peta*(peta+1d0)/2d0*f(1)
21233       return
21234       end
21235
21236 c     ===========================================
21237       double precision function h1bar_HTq(eta,xi)
21238 c     ===========================================
21239
21240 c     eq (27) in PLB347 (1995) 143 - 151 for the transverse piece
21241 c     MSbar scheme
21242 c     This routine is called subcqhtbar in the original code.
21243 c     Called sqtbar in updated code (03/06/96).
21244
21245       implicit none
21246       integer neta, nxi
21247       parameter (neta = 73, nxi = 49)
21248       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
21249       double precision eta, xi, dleta, dlxi
21250       double precision pxi, peta, f(-1:1), delxi, deleta
21251       integer j, ieta, ixi
21252
21253       data (calcpts(j, 1), j = 1,neta) /0.9803D-10, 0.1739D-09,
21254      #    0.3086D-09, 0.5482D-09, 0.9743D-09, 0.1731D-08, 0.3078D-08,
21255      #    0.5473D-08, 0.9724D-08, 0.1729D-07, 0.3076D-07, 0.5469D-07,
21256      #    0.9724D-07, 0.1729D-06, 0.3073D-06, 0.5465D-06, 0.9718D-06,
21257      #    0.1727D-05, 0.3070D-05, 0.5455D-05, 0.9683D-05, 0.1719D-04,
21258      #    0.3050D-04, 0.5401D-04, 0.9550D-04, 0.1684D-03, 0.2957D-03,
21259      #    0.5166D-03, 0.8955D-03, 0.1534D-02, 0.2586D-02, 0.4266D-02,
21260      #    0.6826D-02, 0.1052D-01, 0.1546D-01, 0.2147D-01, 0.2798D-01,
21261      #    0.3406D-01, 0.3874D-01, 0.4130D-01, 0.4150D-01, 0.3958D-01,
21262      #    0.3613D-01, 0.3180D-01, 0.2716D-01, 0.2264D-01, 0.1849D-01,
21263      #    0.1485D-01, 0.1178D-01, 0.9225D-02, 0.7162D-02, 0.5499D-02,
21264      #    0.4200D-02, 0.3187D-02, 0.2403D-02, 0.1803D-02, 0.1348D-02,
21265      #    0.1000D-02, 0.7489D-03, 0.5516D-03, 0.4103D-03, 0.2962D-03,
21266      #    0.2103D-03, 0.1530D-03, 0.1099D-03, 0.8117D-04, 0.6703D-04,
21267      #    0.3763D-04, 0.3803D-04, 0.2330D-04, 0.2349D-04, 0.8619D-05,
21268      #    0.8705D-05/
21269
21270       data (calcpts(j, 2), j = 1,neta) /0.9804D-10, 0.1739D-09,
21271      #    0.3085D-09, 0.5481D-09, 0.9742D-09, 0.1731D-08, 0.3077D-08,
21272      #    0.5472D-08, 0.9723D-08, 0.1729D-07, 0.3076D-07, 0.5468D-07,
21273      #    0.9722D-07, 0.1729D-06, 0.3073D-06, 0.5464D-06, 0.9717D-06,
21274      #    0.1727D-05, 0.3069D-05, 0.5455D-05, 0.9682D-05, 0.1719D-04,
21275      #    0.3050D-04, 0.5401D-04, 0.9548D-04, 0.1684D-03, 0.2957D-03,
21276      #    0.5165D-03, 0.8953D-03, 0.1534D-02, 0.2586D-02, 0.4265D-02,
21277      #    0.6827D-02, 0.1052D-01, 0.1546D-01, 0.2147D-01, 0.2797D-01,
21278      #    0.3407D-01, 0.3875D-01, 0.4129D-01, 0.4150D-01, 0.3958D-01,
21279      #    0.3613D-01, 0.3180D-01, 0.2716D-01, 0.2264D-01, 0.1850D-01,
21280      #    0.1486D-01, 0.1177D-01, 0.9227D-02, 0.7149D-02, 0.5501D-02,
21281      #    0.4202D-02, 0.3189D-02, 0.2405D-02, 0.1804D-02, 0.1350D-02,
21282      #    0.1002D-02, 0.7507D-03, 0.5534D-03, 0.4121D-03, 0.2980D-03,
21283      #    0.2120D-03, 0.1548D-03, 0.1117D-03, 0.8293D-04, 0.5380D-04,
21284      #    0.3939D-04, 0.2480D-04, 0.2507D-04, 0.1026D-04, 0.1039D-04,
21285      #    0.1047D-04/
21286
21287       data (calcpts(j, 3), j = 1,neta) /0.9802D-10, 0.1739D-09,
21288      #    0.3085D-09, 0.5481D-09, 0.9742D-09, 0.1731D-08, 0.3077D-08,
21289      #    0.5472D-08, 0.9722D-08, 0.1729D-07, 0.3076D-07, 0.5468D-07,
21290      #    0.9722D-07, 0.1729D-06, 0.3072D-06, 0.5464D-06, 0.9717D-06,
21291      #    0.1727D-05, 0.3069D-05, 0.5454D-05, 0.9682D-05, 0.1719D-04,
21292      #    0.3049D-04, 0.5400D-04, 0.9548D-04, 0.1684D-03, 0.2956D-03,
21293      #    0.5165D-03, 0.8953D-03, 0.1534D-02, 0.2585D-02, 0.4265D-02,
21294      #    0.6825D-02, 0.1052D-01, 0.1546D-01, 0.2147D-01, 0.2798D-01,
21295      #    0.3406D-01, 0.3873D-01, 0.4130D-01, 0.4150D-01, 0.3958D-01,
21296      #    0.3613D-01, 0.3180D-01, 0.2716D-01, 0.2264D-01, 0.1849D-01,
21297      #    0.1485D-01, 0.1178D-01, 0.9223D-02, 0.7160D-02, 0.5497D-02,
21298      #    0.4198D-02, 0.3184D-02, 0.2401D-02, 0.1800D-02, 0.1345D-02,
21299      #    0.9976D-03, 0.7463D-03, 0.5490D-03, 0.4077D-03, 0.2936D-03,
21300      #    0.2227D-03, 0.1654D-03, 0.1223D-03, 0.7854D-04, 0.6441D-04,
21301      #    0.5000D-04, 0.3540D-04, 0.2068D-04, 0.2087D-04, 0.5994D-05,
21302      #    0.6081D-05/
21303
21304       data (calcpts(j, 4), j = 1,neta) /0.9800D-10, 0.1739D-09,
21305      #    0.3085D-09, 0.5480D-09, 0.9740D-09, 0.1731D-08, 0.3077D-08,
21306      #    0.5471D-08, 0.9721D-08, 0.1729D-07, 0.3075D-07, 0.5467D-07,
21307      #    0.9720D-07, 0.1729D-06, 0.3072D-06, 0.5463D-06, 0.9715D-06,
21308      #    0.1727D-05, 0.3069D-05, 0.5454D-05, 0.9680D-05, 0.1718D-04,
21309      #    0.3049D-04, 0.5399D-04, 0.9547D-04, 0.1684D-03, 0.2956D-03,
21310      #    0.5164D-03, 0.8952D-03, 0.1533D-02, 0.2585D-02, 0.4264D-02,
21311      #    0.6824D-02, 0.1052D-01, 0.1546D-01, 0.2147D-01, 0.2797D-01,
21312      #    0.3407D-01, 0.3873D-01, 0.4129D-01, 0.4149D-01, 0.3959D-01,
21313      #    0.3613D-01, 0.3181D-01, 0.2716D-01, 0.2264D-01, 0.1850D-01,
21314      #    0.1485D-01, 0.1178D-01, 0.9225D-02, 0.7161D-02, 0.5498D-02,
21315      #    0.4199D-02, 0.3186D-02, 0.2402D-02, 0.1801D-02, 0.1347D-02,
21316      #    0.9991D-03, 0.7478D-03, 0.5506D-03, 0.4092D-03, 0.2951D-03,
21317      #    0.2242D-03, 0.1519D-03, 0.1088D-03, 0.8006D-04, 0.6593D-04,
21318      #    0.5152D-04, 0.3692D-04, 0.2220D-04, 0.2239D-04, 0.7513D-05,
21319      #    0.7599D-05/
21320
21321       data (calcpts(j, 5), j = 1,neta) /0.9798D-10, 0.1738D-09,
21322      #    0.3084D-09, 0.5479D-09, 0.9738D-09, 0.1730D-08, 0.3076D-08,
21323      #    0.5470D-08, 0.9718D-08, 0.1728D-07, 0.3074D-07, 0.5466D-07,
21324      #    0.9718D-07, 0.1728D-06, 0.3071D-06, 0.5462D-06, 0.9713D-06,
21325      #    0.1726D-05, 0.3068D-05, 0.5452D-05, 0.9678D-05, 0.1718D-04,
21326      #    0.3048D-04, 0.5398D-04, 0.9544D-04, 0.1683D-03, 0.2955D-03,
21327      #    0.5163D-03, 0.8950D-03, 0.1533D-02, 0.2584D-02, 0.4263D-02,
21328      #    0.6823D-02, 0.1052D-01, 0.1546D-01, 0.2146D-01, 0.2797D-01,
21329      #    0.3406D-01, 0.3872D-01, 0.4130D-01, 0.4149D-01, 0.3958D-01,
21330      #    0.3613D-01, 0.3180D-01, 0.2715D-01, 0.2263D-01, 0.1849D-01,
21331      #    0.1486D-01, 0.1177D-01, 0.9228D-02, 0.7150D-02, 0.5502D-02,
21332      #    0.4202D-02, 0.3189D-02, 0.2406D-02, 0.1805D-02, 0.1350D-02,
21333      #    0.1002D-02, 0.7510D-03, 0.5538D-03, 0.3974D-03, 0.2984D-03,
21334      #    0.2124D-03, 0.1551D-03, 0.1120D-03, 0.8327D-04, 0.5414D-04,
21335      #    0.3973D-04, 0.2513D-04, 0.2541D-04, 0.1059D-04, 0.1072D-04,
21336      #    0.1081D-04/
21337
21338       data (calcpts(j, 6), j = 1,neta) /0.9794D-10, 0.1738D-09,
21339      #    0.3083D-09, 0.5477D-09, 0.9735D-09, 0.1730D-08, 0.3075D-08,
21340      #    0.5468D-08, 0.9715D-08, 0.1728D-07, 0.3073D-07, 0.5464D-07,
21341      #    0.9715D-07, 0.1728D-06, 0.3070D-06, 0.5460D-06, 0.9710D-06,
21342      #    0.1726D-05, 0.3067D-05, 0.5450D-05, 0.9674D-05, 0.1718D-04,
21343      #    0.3047D-04, 0.5396D-04, 0.9541D-04, 0.1683D-03, 0.2954D-03,
21344      #    0.5161D-03, 0.8947D-03, 0.1532D-02, 0.2584D-02, 0.4262D-02,
21345      #    0.6821D-02, 0.1052D-01, 0.1546D-01, 0.2146D-01, 0.2796D-01,
21346      #    0.3405D-01, 0.3872D-01, 0.4128D-01, 0.4148D-01, 0.3958D-01,
21347      #    0.3612D-01, 0.3180D-01, 0.2716D-01, 0.2263D-01, 0.1849D-01,
21348      #    0.1486D-01, 0.1177D-01, 0.9228D-02, 0.7149D-02, 0.5501D-02,
21349      #    0.4201D-02, 0.3188D-02, 0.2405D-02, 0.1804D-02, 0.1349D-02,
21350      #    0.1001D-02, 0.7498D-03, 0.5525D-03, 0.4112D-03, 0.2971D-03,
21351      #    0.2111D-03, 0.1539D-03, 0.1108D-03, 0.8203D-04, 0.6790D-04,
21352      #    0.3849D-04, 0.3889D-04, 0.2416D-04, 0.9350D-05, 0.9477D-05,
21353      #    0.9564D-05/
21354
21355       data (calcpts(j, 7), j = 1,neta) /0.9790D-10, 0.1737D-09,
21356      #    0.3081D-09, 0.5474D-09, 0.9730D-09, 0.1729D-08, 0.3073D-08,
21357      #    0.5465D-08, 0.9711D-08, 0.1727D-07, 0.3072D-07, 0.5461D-07,
21358      #    0.9710D-07, 0.1727D-06, 0.3069D-06, 0.5457D-06, 0.9705D-06,
21359      #    0.1725D-05, 0.3065D-05, 0.5448D-05, 0.9670D-05, 0.1717D-04,
21360      #    0.3046D-04, 0.5394D-04, 0.9537D-04, 0.1682D-03, 0.2953D-03,
21361      #    0.5159D-03, 0.8943D-03, 0.1532D-02, 0.2582D-02, 0.4260D-02,
21362      #    0.6819D-02, 0.1051D-01, 0.1545D-01, 0.2145D-01, 0.2795D-01,
21363      #    0.3404D-01, 0.3871D-01, 0.4127D-01, 0.4147D-01, 0.3956D-01,
21364      #    0.3612D-01, 0.3180D-01, 0.2715D-01, 0.2263D-01, 0.1849D-01,
21365      #    0.1486D-01, 0.1177D-01, 0.9229D-02, 0.7150D-02, 0.5501D-02,
21366      #    0.4202D-02, 0.3189D-02, 0.2405D-02, 0.1804D-02, 0.1349D-02,
21367      #    0.1001D-02, 0.7501D-03, 0.5528D-03, 0.4114D-03, 0.2973D-03,
21368      #    0.2114D-03, 0.1541D-03, 0.1110D-03, 0.8225D-04, 0.6811D-04,
21369      #    0.3871D-04, 0.3911D-04, 0.2438D-04, 0.9568D-05, 0.9695D-05,
21370      #    0.9782D-05/
21371
21372       data (calcpts(j, 8), j = 1,neta) /0.9783D-10, 0.1736D-09,
21373      #    0.3079D-09, 0.5470D-09, 0.9723D-09, 0.1728D-08, 0.3071D-08,
21374      #    0.5461D-08, 0.9704D-08, 0.1726D-07, 0.3069D-07, 0.5457D-07,
21375      #    0.9703D-07, 0.1726D-06, 0.3066D-06, 0.5453D-06, 0.9698D-06,
21376      #    0.1724D-05, 0.3063D-05, 0.5444D-05, 0.9663D-05, 0.1715D-04,
21377      #    0.3043D-04, 0.5390D-04, 0.9530D-04, 0.1681D-03, 0.2951D-03,
21378      #    0.5155D-03, 0.8937D-03, 0.1531D-02, 0.2581D-02, 0.4258D-02,
21379      #    0.6815D-02, 0.1051D-01, 0.1544D-01, 0.2144D-01, 0.2794D-01,
21380      #    0.3404D-01, 0.3870D-01, 0.4126D-01, 0.4146D-01, 0.3956D-01,
21381      #    0.3611D-01, 0.3178D-01, 0.2714D-01, 0.2263D-01, 0.1848D-01,
21382      #    0.1485D-01, 0.1178D-01, 0.9218D-02, 0.7154D-02, 0.5505D-02,
21383      #    0.4206D-02, 0.3192D-02, 0.2409D-02, 0.1807D-02, 0.1353D-02,
21384      #    0.1005D-02, 0.7385D-03, 0.5562D-03, 0.3999D-03, 0.3008D-03,
21385      #    0.2148D-03, 0.1575D-03, 0.1144D-03, 0.8568D-04, 0.5654D-04,
21386      #    0.4213D-04, 0.2753D-04, 0.2781D-04, 0.1299D-04, 0.1312D-04,
21387      #    0.1321D-04/
21388
21389       data (calcpts(j, 9), j = 1,neta) /0.9773D-10, 0.1734D-09,
21390      #    0.3076D-09, 0.5464D-09, 0.9713D-09, 0.1726D-08, 0.3068D-08,
21391      #    0.5455D-08, 0.9693D-08, 0.1724D-07, 0.3066D-07, 0.5451D-07,
21392      #    0.9693D-07, 0.1724D-06, 0.3063D-06, 0.5447D-06, 0.9688D-06,
21393      #    0.1722D-05, 0.3060D-05, 0.5438D-05, 0.9653D-05, 0.1714D-04,
21394      #    0.3040D-04, 0.5384D-04, 0.9520D-04, 0.1679D-03, 0.2948D-03,
21395      #    0.5150D-03, 0.8928D-03, 0.1529D-02, 0.2578D-02, 0.4254D-02,
21396      #    0.6808D-02, 0.1050D-01, 0.1543D-01, 0.2143D-01, 0.2792D-01,
21397      #    0.3401D-01, 0.3868D-01, 0.4125D-01, 0.4145D-01, 0.3954D-01,
21398      #    0.3611D-01, 0.3177D-01, 0.2715D-01, 0.2263D-01, 0.1848D-01,
21399      #    0.1486D-01, 0.1177D-01, 0.9223D-02, 0.7158D-02, 0.5509D-02,
21400      #    0.4209D-02, 0.3195D-02, 0.2412D-02, 0.1810D-02, 0.1355D-02,
21401      #    0.1008D-02, 0.7413D-03, 0.5440D-03, 0.4026D-03, 0.3035D-03,
21402      #    0.2175D-03, 0.1603D-03, 0.1171D-03, 0.8839D-04, 0.5926D-04,
21403      #    0.4485D-04, 0.3025D-04, 0.3052D-04, 0.1571D-04, 0.1584D-04,
21404      #    0.1592D-04/
21405
21406       data (calcpts(j,10), j = 1,neta) /0.9756D-10, 0.1731D-09,
21407      #    0.3071D-09, 0.5456D-09, 0.9697D-09, 0.1723D-08, 0.3063D-08,
21408      #    0.5447D-08, 0.9679D-08, 0.1721D-07, 0.3062D-07, 0.5443D-07,
21409      #    0.9678D-07, 0.1721D-06, 0.3058D-06, 0.5439D-06, 0.9673D-06,
21410      #    0.1719D-05, 0.3055D-05, 0.5430D-05, 0.9637D-05, 0.1711D-04,
21411      #    0.3035D-04, 0.5376D-04, 0.9505D-04, 0.1677D-03, 0.2943D-03,
21412      #    0.5142D-03, 0.8915D-03, 0.1527D-02, 0.2575D-02, 0.4248D-02,
21413      #    0.6801D-02, 0.1048D-01, 0.1541D-01, 0.2141D-01, 0.2790D-01,
21414      #    0.3398D-01, 0.3866D-01, 0.4121D-01, 0.4142D-01, 0.3952D-01,
21415      #    0.3609D-01, 0.3177D-01, 0.2714D-01, 0.2261D-01, 0.1847D-01,
21416      #    0.1485D-01, 0.1177D-01, 0.9215D-02, 0.7149D-02, 0.5499D-02,
21417      #    0.4199D-02, 0.3185D-02, 0.2401D-02, 0.1799D-02, 0.1344D-02,
21418      #    0.9965D-03, 0.7451D-03, 0.5477D-03, 0.4064D-03, 0.2922D-03,
21419      #    0.2212D-03, 0.1640D-03, 0.1208D-03, 0.9209D-04, 0.6295D-04,
21420      #    0.4854D-04, 0.3394D-04, 0.1922D-04, 0.1940D-04, 0.1953D-04,
21421      #    0.4614D-05/
21422
21423       data (calcpts(j,11), j = 1,neta) /0.9733D-10, 0.1727D-09,
21424      #    0.3064D-09, 0.5443D-09, 0.9675D-09, 0.1719D-08, 0.3056D-08,
21425      #    0.5434D-08, 0.9656D-08, 0.1717D-07, 0.3055D-07, 0.5431D-07,
21426      #    0.9657D-07, 0.1717D-06, 0.3052D-06, 0.5427D-06, 0.9650D-06,
21427      #    0.1715D-05, 0.3048D-05, 0.5417D-05, 0.9615D-05, 0.1707D-04,
21428      #    0.3029D-04, 0.5364D-04, 0.9484D-04, 0.1673D-03, 0.2937D-03,
21429      #    0.5131D-03, 0.8895D-03, 0.1524D-02, 0.2570D-02, 0.4240D-02,
21430      #    0.6788D-02, 0.1047D-01, 0.1539D-01, 0.2138D-01, 0.2786D-01,
21431      #    0.3395D-01, 0.3862D-01, 0.4118D-01, 0.4139D-01, 0.3949D-01,
21432      #    0.3606D-01, 0.3175D-01, 0.2711D-01, 0.2261D-01, 0.1847D-01,
21433      #    0.1484D-01, 0.1176D-01, 0.9213D-02, 0.7146D-02, 0.5496D-02,
21434      #    0.4195D-02, 0.3180D-02, 0.2411D-02, 0.1809D-02, 0.1354D-02,
21435      #    0.1006D-02, 0.7398D-03, 0.5425D-03, 0.4010D-03, 0.3019D-03,
21436      #    0.2159D-03, 0.1586D-03, 0.1155D-03, 0.8672D-04, 0.5758D-04,
21437      #    0.4316D-04, 0.2856D-04, 0.2883D-04, 0.1402D-04, 0.1415D-04,
21438      #    0.1423D-04/
21439
21440       data (calcpts(j,12), j = 1,neta) /0.9701D-10, 0.1721D-09,
21441      #    0.3054D-09, 0.5425D-09, 0.9642D-09, 0.1714D-08, 0.3046D-08,
21442      #    0.5416D-08, 0.9625D-08, 0.1712D-07, 0.3044D-07, 0.5412D-07,
21443      #    0.9624D-07, 0.1712D-06, 0.3041D-06, 0.5409D-06, 0.9619D-06,
21444      #    0.1710D-05, 0.3038D-05, 0.5400D-05, 0.9584D-05, 0.1702D-04,
21445      #    0.3019D-04, 0.5346D-04, 0.9453D-04, 0.1667D-03, 0.2927D-03,
21446      #    0.5115D-03, 0.8867D-03, 0.1519D-02, 0.2562D-02, 0.4228D-02,
21447      #    0.6769D-02, 0.1044D-01, 0.1535D-01, 0.2133D-01, 0.2781D-01,
21448      #    0.3388D-01, 0.3855D-01, 0.4112D-01, 0.4133D-01, 0.3945D-01,
21449      #    0.3602D-01, 0.3172D-01, 0.2710D-01, 0.2260D-01, 0.1846D-01,
21450      #    0.1484D-01, 0.1176D-01, 0.9208D-02, 0.7154D-02, 0.5502D-02,
21451      #    0.4200D-02, 0.3185D-02, 0.2400D-02, 0.1799D-02, 0.1343D-02,
21452      #    0.1010D-02, 0.7437D-03, 0.5463D-03, 0.4048D-03, 0.2906D-03,
21453      #    0.2196D-03, 0.1623D-03, 0.1191D-03, 0.9040D-04, 0.6126D-04,
21454      #    0.4684D-04, 0.3224D-04, 0.1751D-04, 0.1769D-04, 0.1782D-04,
21455      #    0.2904D-05/
21456
21457       data (calcpts(j,13), j = 1,neta) /0.9653D-10, 0.1713D-09,
21458      #    0.3039D-09, 0.5399D-09, 0.9596D-09, 0.1705D-08, 0.3031D-08,
21459      #    0.5390D-08, 0.9577D-08, 0.1703D-07, 0.3030D-07, 0.5386D-07,
21460      #    0.9577D-07, 0.1703D-06, 0.3027D-06, 0.5382D-06, 0.9572D-06,
21461      #    0.1701D-05, 0.3023D-05, 0.5373D-05, 0.9537D-05, 0.1693D-04,
21462      #    0.3004D-04, 0.5321D-04, 0.9408D-04, 0.1659D-03, 0.2913D-03,
21463      #    0.5091D-03, 0.8826D-03, 0.1512D-02, 0.2551D-02, 0.4210D-02,
21464      #    0.6742D-02, 0.1040D-01, 0.1530D-01, 0.2126D-01, 0.2773D-01,
21465      #    0.3380D-01, 0.3846D-01, 0.4104D-01, 0.4126D-01, 0.3938D-01,
21466      #    0.3598D-01, 0.3168D-01, 0.2707D-01, 0.2257D-01, 0.1845D-01,
21467      #    0.1482D-01, 0.1175D-01, 0.9208D-02, 0.7152D-02, 0.5498D-02,
21468      #    0.4195D-02, 0.3179D-02, 0.2408D-02, 0.1806D-02, 0.1350D-02,
21469      #    0.1002D-02, 0.7506D-03, 0.5531D-03, 0.4116D-03, 0.2974D-03,
21470      #    0.2113D-03, 0.1540D-03, 0.1108D-03, 0.8206D-04, 0.6791D-04,
21471      #    0.3849D-04, 0.3888D-04, 0.2415D-04, 0.2433D-04, 0.9458D-05,
21472      #    0.9543D-05/
21473
21474       data (calcpts(j,14), j = 1,neta) /0.9585D-10, 0.1701D-09,
21475      #    0.3017D-09, 0.5360D-09, 0.9528D-09, 0.1693D-08, 0.3010D-08,
21476      #    0.5352D-08, 0.9510D-08, 0.1691D-07, 0.3008D-07, 0.5348D-07,
21477      #    0.9509D-07, 0.1691D-06, 0.3005D-06, 0.5344D-06, 0.9504D-06,
21478      #    0.1689D-05, 0.3002D-05, 0.5335D-05, 0.9470D-05, 0.1681D-04,
21479      #    0.2983D-04, 0.5283D-04, 0.9341D-04, 0.1648D-03, 0.2893D-03,
21480      #    0.5056D-03, 0.8766D-03, 0.1502D-02, 0.2534D-02, 0.4184D-02,
21481      #    0.6704D-02, 0.1034D-01, 0.1522D-01, 0.2116D-01, 0.2761D-01,
21482      #    0.3367D-01, 0.3833D-01, 0.4091D-01, 0.4114D-01, 0.3930D-01,
21483      #    0.3591D-01, 0.3162D-01, 0.2703D-01, 0.2253D-01, 0.1843D-01,
21484      #    0.1481D-01, 0.1174D-01, 0.9207D-02, 0.7131D-02, 0.5490D-02,
21485      #    0.4200D-02, 0.3182D-02, 0.2396D-02, 0.1808D-02, 0.1352D-02,
21486      #    0.1004D-02, 0.7369D-03, 0.5542D-03, 0.3976D-03, 0.2983D-03,
21487      #    0.2122D-03, 0.1549D-03, 0.1117D-03, 0.8293D-04, 0.5377D-04,
21488      #    0.3935D-04, 0.2474D-04, 0.2500D-04, 0.1018D-04, 0.1031D-04,
21489      #    0.1039D-04/
21490
21491       data (calcpts(j,15), j = 1,neta) /0.9484D-10, 0.1683D-09,
21492      #    0.2986D-09, 0.5305D-09, 0.9430D-09, 0.1676D-08, 0.2979D-08,
21493      #    0.5297D-08, 0.9412D-08, 0.1674D-07, 0.2977D-07, 0.5293D-07,
21494      #    0.9412D-07, 0.1674D-06, 0.2975D-06, 0.5290D-06, 0.9407D-06,
21495      #    0.1672D-05, 0.2971D-05, 0.5281D-05, 0.9373D-05, 0.1664D-04,
21496      #    0.2953D-04, 0.5229D-04, 0.9248D-04, 0.1631D-03, 0.2864D-03,
21497      #    0.5006D-03, 0.8680D-03, 0.1488D-02, 0.2511D-02, 0.4147D-02,
21498      #    0.6646D-02, 0.1026D-01, 0.1511D-01, 0.2102D-01, 0.2744D-01,
21499      #    0.3347D-01, 0.3814D-01, 0.4072D-01, 0.4099D-01, 0.3916D-01,
21500      #    0.3580D-01, 0.3155D-01, 0.2697D-01, 0.2249D-01, 0.1839D-01,
21501      #    0.1478D-01, 0.1173D-01, 0.9194D-02, 0.7127D-02, 0.5482D-02,
21502      #    0.4189D-02, 0.3185D-02, 0.2397D-02, 0.1809D-02, 0.1352D-02,
21503      #    0.1003D-02, 0.7511D-03, 0.5532D-03, 0.4115D-03, 0.2971D-03,
21504      #    0.2110D-03, 0.1536D-03, 0.1104D-03, 0.8161D-04, 0.6744D-04,
21505      #    0.3800D-04, 0.3839D-04, 0.2365D-04, 0.2383D-04, 0.8947D-05,
21506      #    0.9030D-05/
21507
21508       data (calcpts(j,16), j = 1,neta) /0.9341D-10, 0.1658D-09,
21509      #    0.2941D-09, 0.5226D-09, 0.9290D-09, 0.1651D-08, 0.2935D-08,
21510      #    0.5219D-08, 0.9272D-08, 0.1649D-07, 0.2933D-07, 0.5215D-07,
21511      #    0.9273D-07, 0.1649D-06, 0.2930D-06, 0.5211D-06, 0.9268D-06,
21512      #    0.1647D-05, 0.2927D-05, 0.5203D-05, 0.9235D-05, 0.1640D-04,
21513      #    0.2909D-04, 0.5153D-04, 0.9111D-04, 0.1607D-03, 0.2823D-03,
21514      #    0.4934D-03, 0.8558D-03, 0.1467D-02, 0.2477D-02, 0.4092D-02,
21515      #    0.6564D-02, 0.1014D-01, 0.1494D-01, 0.2081D-01, 0.2718D-01,
21516      #    0.3319D-01, 0.3784D-01, 0.4044D-01, 0.4073D-01, 0.3894D-01,
21517      #    0.3563D-01, 0.3141D-01, 0.2687D-01, 0.2244D-01, 0.1834D-01,
21518      #    0.1475D-01, 0.1170D-01, 0.9181D-02, 0.7122D-02, 0.5486D-02,
21519      #    0.4189D-02, 0.3183D-02, 0.2393D-02, 0.1804D-02, 0.1346D-02,
21520      #    0.9968D-03, 0.7442D-03, 0.5461D-03, 0.4042D-03, 0.3047D-03,
21521      #    0.2185D-03, 0.1611D-03, 0.1178D-03, 0.8900D-04, 0.5981D-04,
21522      #    0.4536D-04, 0.3073D-04, 0.3099D-04, 0.1617D-04, 0.1628D-04,
21523      #    0.1637D-04/
21524
21525       data (calcpts(j,17), j = 1,neta) /0.9140D-10, 0.1622D-09,
21526      #    0.2878D-09, 0.5114D-09, 0.9091D-09, 0.1616D-08, 0.2872D-08,
21527      #    0.5107D-08, 0.9075D-08, 0.1614D-07, 0.2871D-07, 0.5104D-07,
21528      #    0.9076D-07, 0.1614D-06, 0.2868D-06, 0.5100D-06, 0.9071D-06,
21529      #    0.1612D-05, 0.2865D-05, 0.5092D-05, 0.9038D-05, 0.1605D-04,
21530      #    0.2847D-04, 0.5044D-04, 0.8919D-04, 0.1574D-03, 0.2764D-03,
21531      #    0.4832D-03, 0.8382D-03, 0.1438D-02, 0.2428D-02, 0.4014D-02,
21532      #    0.6444D-02, 0.9965D-02, 0.1470D-01, 0.2049D-01, 0.2681D-01,
21533      #    0.3278D-01, 0.3741D-01, 0.4002D-01, 0.4037D-01, 0.3863D-01,
21534      #    0.3538D-01, 0.3122D-01, 0.2673D-01, 0.2233D-01, 0.1826D-01,
21535      #    0.1470D-01, 0.1167D-01, 0.9149D-02, 0.7108D-02, 0.5465D-02,
21536      #    0.4178D-02, 0.3168D-02, 0.2391D-02, 0.1800D-02, 0.1341D-02,
21537      #    0.1006D-02, 0.7379D-03, 0.5545D-03, 0.3973D-03, 0.2977D-03,
21538      #    0.2113D-03, 0.1538D-03, 0.1105D-03, 0.8168D-04, 0.6746D-04,
21539      #    0.3800D-04, 0.3836D-04, 0.2361D-04, 0.8782D-05, 0.8897D-05,
21540      #    0.8976D-05/
21541
21542       data (calcpts(j,18), j = 1,neta) /0.8860D-10, 0.1573D-09,
21543      #    0.2791D-09, 0.4959D-09, 0.8816D-09, 0.1567D-08, 0.2785D-08,
21544      #    0.4953D-08, 0.8802D-08, 0.1565D-07, 0.2784D-07, 0.4950D-07,
21545      #    0.8801D-07, 0.1565D-06, 0.2782D-06, 0.4947D-06, 0.8797D-06,
21546      #    0.1564D-05, 0.2779D-05, 0.4939D-05, 0.8766D-05, 0.1557D-04,
21547      #    0.2762D-04, 0.4892D-04, 0.8653D-04, 0.1527D-03, 0.2682D-03,
21548      #    0.4689D-03, 0.8138D-03, 0.1396D-02, 0.2360D-02, 0.3904D-02,
21549      #    0.6272D-02, 0.9714D-02, 0.1435D-01, 0.2004D-01, 0.2626D-01,
21550      #    0.3217D-01, 0.3678D-01, 0.3942D-01, 0.3983D-01, 0.3817D-01,
21551      #    0.3502D-01, 0.3095D-01, 0.2653D-01, 0.2218D-01, 0.1817D-01,
21552      #    0.1462D-01, 0.1162D-01, 0.9119D-02, 0.7079D-02, 0.5455D-02,
21553      #    0.4161D-02, 0.3161D-02, 0.2381D-02, 0.1787D-02, 0.1342D-02,
21554      #    0.9912D-03, 0.7374D-03, 0.5534D-03, 0.3960D-03, 0.2961D-03,
21555      #    0.2096D-03, 0.1520D-03, 0.1086D-03, 0.7971D-04, 0.6547D-04,
21556      #    0.5098D-04, 0.3633D-04, 0.2157D-04, 0.2173D-04, 0.6842D-05,
21557      #    0.6917D-05/
21558
21559       data (calcpts(j,19), j = 1,neta) /0.8482D-10, 0.1506D-09,
21560      #    0.2673D-09, 0.4749D-09, 0.8443D-09, 0.1501D-08, 0.2668D-08,
21561      #    0.4744D-08, 0.8430D-08, 0.1499D-07, 0.2667D-07, 0.4741D-07,
21562      #    0.8431D-07, 0.1499D-06, 0.2664D-06, 0.4738D-06, 0.8427D-06,
21563      #    0.1498D-05, 0.2662D-05, 0.4730D-05, 0.8397D-05, 0.1491D-04,
21564      #    0.2646D-04, 0.4687D-04, 0.8290D-04, 0.1463D-03, 0.2570D-03,
21565      #    0.4495D-03, 0.7805D-03, 0.1340D-02, 0.2266D-02, 0.3752D-02,
21566      #    0.6036D-02, 0.9363D-02, 0.1386D-01, 0.1939D-01, 0.2547D-01,
21567      #    0.3127D-01, 0.3585D-01, 0.3853D-01, 0.3902D-01, 0.3751D-01,
21568      #    0.3448D-01, 0.3054D-01, 0.2622D-01, 0.2195D-01, 0.1800D-01,
21569      #    0.1451D-01, 0.1154D-01, 0.9062D-02, 0.7047D-02, 0.5424D-02,
21570      #    0.4152D-02, 0.3145D-02, 0.2376D-02, 0.1795D-02, 0.1333D-02,
21571      #    0.9950D-03, 0.7403D-03, 0.5407D-03, 0.3978D-03, 0.2977D-03,
21572      #    0.2110D-03, 0.1532D-03, 0.1098D-03, 0.8080D-04, 0.6651D-04,
21573      #    0.3700D-04, 0.3733D-04, 0.2255D-04, 0.2271D-04, 0.7810D-05,
21574      #    0.7881D-05/
21575
21576       data (calcpts(j,20), j = 1,neta) /0.7986D-10, 0.1418D-09,
21577      #    0.2517D-09, 0.4474D-09, 0.7953D-09, 0.1414D-08, 0.2513D-08,
21578      #    0.4469D-08, 0.7942D-08, 0.1413D-07, 0.2512D-07, 0.4467D-07,
21579      #    0.7942D-07, 0.1413D-06, 0.2510D-06, 0.4464D-06, 0.7938D-06,
21580      #    0.1411D-05, 0.2508D-05, 0.4457D-05, 0.7912D-05, 0.1405D-04,
21581      #    0.2493D-04, 0.4416D-04, 0.7812D-04, 0.1379D-03, 0.2423D-03,
21582      #    0.4239D-03, 0.7362D-03, 0.1265D-02, 0.2140D-02, 0.3548D-02,
21583      #    0.5716D-02, 0.8883D-02, 0.1318D-01, 0.1849D-01, 0.2436D-01,
21584      #    0.3002D-01, 0.3454D-01, 0.3727D-01, 0.3788D-01, 0.3654D-01,
21585      #    0.3370D-01, 0.2993D-01, 0.2577D-01, 0.2163D-01, 0.1777D-01,
21586      #    0.1435D-01, 0.1142D-01, 0.8980D-02, 0.6985D-02, 0.5391D-02,
21587      #    0.4121D-02, 0.3137D-02, 0.2363D-02, 0.1778D-02, 0.1328D-02,
21588      #    0.9888D-03, 0.7330D-03, 0.5476D-03, 0.4042D-03, 0.2886D-03,
21589      #    0.2167D-03, 0.1588D-03, 0.1152D-03, 0.8615D-04, 0.5680D-04,
21590      #    0.4225D-04, 0.2756D-04, 0.1276D-04, 0.1290D-04, 0.1300D-04,
21591      #    -.1933D-05/
21592
21593       data (calcpts(j,21), j = 1,neta) /0.7364D-10, 0.1308D-09,
21594      #    0.2322D-09, 0.4128D-09, 0.7339D-09, 0.1304D-08, 0.2319D-08,
21595      #    0.4124D-08, 0.7329D-08, 0.1304D-07, 0.2318D-07, 0.4122D-07,
21596      #    0.7330D-07, 0.1304D-06, 0.2317D-06, 0.4120D-06, 0.7326D-06,
21597      #    0.1302D-05, 0.2314D-05, 0.4113D-05, 0.7302D-05, 0.1297D-04,
21598      #    0.2301D-04, 0.4076D-04, 0.7211D-04, 0.1273D-03, 0.2237D-03,
21599      #    0.3915D-03, 0.6803D-03, 0.1169D-02, 0.1980D-02, 0.3287D-02,
21600      #    0.5304D-02, 0.8258D-02, 0.1229D-01, 0.1729D-01, 0.2287D-01,
21601      #    0.2830D-01, 0.3273D-01, 0.3549D-01, 0.3628D-01, 0.3517D-01,
21602      #    0.3260D-01, 0.2908D-01, 0.2514D-01, 0.2116D-01, 0.1744D-01,
21603      #    0.1412D-01, 0.1126D-01, 0.8865D-02, 0.6916D-02, 0.5332D-02,
21604      #    0.4094D-02, 0.3115D-02, 0.2349D-02, 0.1775D-02, 0.1322D-02,
21605      #    0.9960D-03, 0.7388D-03, 0.5525D-03, 0.4084D-03, 0.2924D-03,
21606      #    0.2202D-03, 0.1621D-03, 0.1184D-03, 0.8922D-04, 0.5982D-04,
21607      #    0.4522D-04, 0.3049D-04, 0.3068D-04, 0.1581D-04, 0.1590D-04,
21608      #    0.1596D-04/
21609
21610       data (calcpts(j,22), j = 1,neta) /0.6623D-10, 0.1177D-09,
21611      #    0.2090D-09, 0.3714D-09, 0.6605D-09, 0.1174D-08, 0.2087D-08,
21612      #    0.3712D-08, 0.6597D-08, 0.1173D-07, 0.2087D-07, 0.3711D-07,
21613      #    0.6598D-07, 0.1173D-06, 0.2085D-06, 0.3708D-06, 0.6595D-06,
21614      #    0.1172D-05, 0.2083D-05, 0.3703D-05, 0.6573D-05, 0.1167D-04,
21615      #    0.2071D-04, 0.3670D-04, 0.6493D-04, 0.1146D-03, 0.2015D-03,
21616      #    0.3527D-03, 0.6130D-03, 0.1054D-02, 0.1787D-02, 0.2969D-02,
21617      #    0.4798D-02, 0.7487D-02, 0.1117D-01, 0.1578D-01, 0.2096D-01,
21618      #    0.2608D-01, 0.3034D-01, 0.3312D-01, 0.3410D-01, 0.3330D-01,
21619      #    0.3108D-01, 0.2789D-01, 0.2425D-01, 0.2052D-01, 0.1698D-01,
21620      #    0.1379D-01, 0.1103D-01, 0.8707D-02, 0.6800D-02, 0.5253D-02,
21621      #    0.4030D-02, 0.3071D-02, 0.2328D-02, 0.1748D-02, 0.1307D-02,
21622      #    0.9787D-03, 0.7349D-03, 0.5475D-03, 0.4027D-03, 0.3013D-03,
21623      #    0.2137D-03, 0.1554D-03, 0.1115D-03, 0.8225D-04, 0.6777D-04,
21624      #    0.5312D-04, 0.3836D-04, 0.2353D-04, 0.2364D-04, 0.8718D-05,
21625      #    0.8771D-05/
21626
21627       data (calcpts(j,23), j = 1,neta) /0.5794D-10, 0.1030D-09,
21628      #    0.1829D-09, 0.3251D-09, 0.5782D-09, 0.1028D-08, 0.1827D-08,
21629      #    0.3250D-08, 0.5776D-08, 0.1027D-07, 0.1827D-07, 0.3249D-07,
21630      #    0.5776D-07, 0.1027D-06, 0.1826D-06, 0.3247D-06, 0.5774D-06,
21631      #    0.1026D-05, 0.1824D-05, 0.3242D-05, 0.5756D-05, 0.1022D-04,
21632      #    0.1814D-04, 0.3214D-04, 0.5686D-04, 0.1004D-03, 0.1765D-03,
21633      #    0.3090D-03, 0.5373D-03, 0.9244D-03, 0.1568D-02, 0.2608D-02,
21634      #    0.4221D-02, 0.6599D-02, 0.9870D-02, 0.1399D-01, 0.1868D-01,
21635      #    0.2338D-01, 0.2740D-01, 0.3016D-01, 0.3134D-01, 0.3088D-01,
21636      #    0.2908D-01, 0.2633D-01, 0.2306D-01, 0.1963D-01, 0.1634D-01,
21637      #    0.1333D-01, 0.1071D-01, 0.8483D-02, 0.6647D-02, 0.5151D-02,
21638      #    0.3957D-02, 0.3017D-02, 0.2296D-02, 0.1726D-02, 0.1297D-02,
21639      #    0.9662D-03, 0.7208D-03, 0.5323D-03, 0.3868D-03, 0.2848D-03,
21640      #    0.2119D-03, 0.1533D-03, 0.1092D-03, 0.7987D-04, 0.5032D-04,
21641      #    0.3562D-04, 0.3583D-04, 0.2097D-04, 0.2107D-04, 0.6131D-05,
21642      #    0.6176D-05/
21643
21644       data (calcpts(j,24), j = 1,neta) /0.4927D-10, 0.8757D-10,
21645      #    0.1556D-09, 0.2766D-09, 0.4919D-09, 0.8745D-09, 0.1555D-08,
21646      #    0.2765D-08, 0.4915D-08, 0.8741D-08, 0.1555D-07, 0.2764D-07,
21647      #    0.4915D-07, 0.8742D-07, 0.1554D-06, 0.2763D-06, 0.4913D-06,
21648      #    0.8733D-06, 0.1552D-05, 0.2759D-05, 0.4898D-05, 0.8697D-05,
21649      #    0.1543D-04, 0.2735D-04, 0.4839D-04, 0.8545D-04, 0.1503D-03,
21650      #    0.2631D-03, 0.4576D-03, 0.7877D-03, 0.1337D-02, 0.2226D-02,
21651      #    0.3607D-02, 0.5649D-02, 0.8470D-02, 0.1205D-01, 0.1616D-01,
21652      #    0.2035D-01, 0.2403D-01, 0.2670D-01, 0.2803D-01, 0.2794D-01,
21653      #    0.2662D-01, 0.2436D-01, 0.2154D-01, 0.1851D-01, 0.1552D-01,
21654      #    0.1275D-01, 0.1029D-01, 0.8201D-02, 0.6450D-02, 0.5021D-02,
21655      #    0.3871D-02, 0.2965D-02, 0.2252D-02, 0.1692D-02, 0.1274D-02,
21656      #    0.9557D-03, 0.7087D-03, 0.5191D-03, 0.3878D-03, 0.2854D-03,
21657      #    0.2121D-03, 0.1532D-03, 0.1090D-03, 0.7959D-04, 0.6496D-04,
21658      #    0.5021D-04, 0.3538D-04, 0.2050D-04, 0.2058D-04, 0.5633D-05,
21659      #    0.5670D-05/
21660
21661       data (calcpts(j,25), j = 1,neta) /0.4076D-10, 0.7246D-10,
21662      #    0.1287D-09, 0.2289D-09, 0.4072D-09, 0.7238D-09, 0.1287D-08,
21663      #    0.2289D-08, 0.4068D-08, 0.7236D-08, 0.1287D-07, 0.2288D-07,
21664      #    0.4069D-07, 0.7237D-07, 0.1286D-06, 0.2287D-06, 0.4067D-06,
21665      #    0.7229D-06, 0.1285D-05, 0.2284D-05, 0.4055D-05, 0.7200D-05,
21666      #    0.1278D-04, 0.2264D-04, 0.4007D-04, 0.7075D-04, 0.1244D-03,
21667      #    0.2180D-03, 0.3791D-03, 0.6528D-03, 0.1109D-02, 0.1847D-02,
21668      #    0.2996D-02, 0.4701D-02, 0.7065D-02, 0.1008D-01, 0.1358D-01,
21669      #    0.1719D-01, 0.2045D-01, 0.2294D-01, 0.2435D-01, 0.2459D-01,
21670      #    0.2374D-01, 0.2201D-01, 0.1972D-01, 0.1713D-01, 0.1451D-01,
21671      #    0.1202D-01, 0.9781D-02, 0.7837D-02, 0.6189D-02, 0.4843D-02,
21672      #    0.3753D-02, 0.2882D-02, 0.2192D-02, 0.1657D-02, 0.1251D-02,
21673      #    0.9304D-03, 0.6969D-03, 0.5213D-03, 0.3893D-03, 0.2864D-03,
21674      #    0.2128D-03, 0.1537D-03, 0.1094D-03, 0.7983D-04, 0.6513D-04,
21675      #    0.3533D-04, 0.3547D-04, 0.2057D-04, 0.2063D-04, 0.5677D-05,
21676      #    0.5708D-05/
21677
21678       data (calcpts(j,26), j = 1,neta) /0.3290D-10, 0.5849D-10,
21679      #    0.1039D-09, 0.1848D-09, 0.3287D-09, 0.5844D-09, 0.1039D-08,
21680      #    0.1848D-08, 0.3285D-08, 0.5843D-08, 0.1039D-07, 0.1848D-07,
21681      #    0.3285D-07, 0.5843D-07, 0.1038D-06, 0.1847D-06, 0.3284D-06,
21682      #    0.5837D-06, 0.1038D-05, 0.1844D-05, 0.3274D-05, 0.5814D-05,
21683      #    0.1032D-04, 0.1829D-04, 0.3236D-04, 0.5714D-04, 0.1005D-03,
21684      #    0.1761D-03, 0.3064D-03, 0.5277D-03, 0.8966D-03, 0.1495D-02,
21685      #    0.2427D-02, 0.3813D-02, 0.5742D-02, 0.8218D-02, 0.1111D-01,
21686      #    0.1414D-01, 0.1693D-01, 0.1915D-01, 0.2055D-01, 0.2102D-01,
21687      #    0.2059D-01, 0.1940D-01, 0.1763D-01, 0.1554D-01, 0.1332D-01,
21688      #    0.1115D-01, 0.9167D-02, 0.7406D-02, 0.5896D-02, 0.4635D-02,
21689      #    0.3607D-02, 0.2772D-02, 0.2120D-02, 0.1612D-02, 0.1218D-02,
21690      #    0.9103D-03, 0.6754D-03, 0.4990D-03, 0.3663D-03, 0.2780D-03,
21691      #    0.2041D-03, 0.1448D-03, 0.1004D-03, 0.7070D-04, 0.5594D-04,
21692      #    0.4110D-04, 0.2621D-04, 0.2629D-04, 0.1134D-04, 0.1138D-04,
21693      #    0.1140D-04/
21694
21695       data (calcpts(j,27), j = 1,neta) /0.2600D-10, 0.4624D-10,
21696      #    0.8217D-10, 0.1461D-09, 0.2599D-09, 0.4621D-09, 0.8217D-09,
21697      #    0.1462D-08, 0.2598D-08, 0.4620D-08, 0.8218D-08, 0.1461D-07,
21698      #    0.2598D-07, 0.4621D-07, 0.8212D-07, 0.1460D-06, 0.2597D-06,
21699      #    0.4616D-06, 0.8204D-06, 0.1458D-05, 0.2589D-05, 0.4598D-05,
21700      #    0.8160D-05, 0.1446D-04, 0.2559D-04, 0.4520D-04, 0.7950D-04,
21701      #    0.1393D-03, 0.2424D-03, 0.4176D-03, 0.7099D-03, 0.1184D-02,
21702      #    0.1925D-02, 0.3027D-02, 0.4566D-02, 0.6551D-02, 0.8883D-02,
21703      #    0.1135D-01, 0.1367D-01, 0.1558D-01, 0.1688D-01, 0.1748D-01,
21704      #    0.1738D-01, 0.1664D-01, 0.1539D-01, 0.1378D-01, 0.1200D-01,
21705      #    0.1019D-01, 0.8465D-02, 0.6910D-02, 0.5540D-02, 0.4384D-02,
21706      #    0.3434D-02, 0.2666D-02, 0.2040D-02, 0.1558D-02, 0.1176D-02,
21707      #    0.8971D-03, 0.6761D-03, 0.4989D-03, 0.3657D-03, 0.2770D-03,
21708      #    0.2029D-03, 0.1435D-03, 0.1139D-03, 0.8413D-04, 0.5432D-04,
21709      #    0.3945D-04, 0.3954D-04, 0.2459D-04, 0.2463D-04, 0.9662D-05,
21710      #    0.9681D-05/
21711
21712       data (calcpts(j,28), j = 1,neta) /0.2019D-10, 0.3591D-10,
21713      #    0.6382D-10, 0.1135D-09, 0.2019D-09, 0.3589D-09, 0.6383D-09,
21714      #    0.1135D-08, 0.2018D-08, 0.3589D-08, 0.6383D-08, 0.1135D-07,
21715      #    0.2018D-07, 0.3589D-07, 0.6378D-07, 0.1134D-06, 0.2017D-06,
21716      #    0.3586D-06, 0.6373D-06, 0.1133D-05, 0.2011D-05, 0.3571D-05,
21717      #    0.6339D-05, 0.1123D-04, 0.1988D-04, 0.3511D-04, 0.6177D-04,
21718      #    0.1082D-03, 0.1884D-03, 0.3246D-03, 0.5519D-03, 0.9212D-03,
21719      #    0.1498D-02, 0.2359D-02, 0.3563D-02, 0.5121D-02, 0.6964D-02,
21720      #    0.8933D-02, 0.1081D-01, 0.1240D-01, 0.1354D-01, 0.1417D-01,
21721      #    0.1427D-01, 0.1389D-01, 0.1307D-01, 0.1192D-01, 0.1056D-01,
21722      #    0.9108D-02, 0.7674D-02, 0.6336D-02, 0.5136D-02, 0.4101D-02,
21723      #    0.3232D-02, 0.2533D-02, 0.1947D-02, 0.1492D-02, 0.1139D-02,
21724      #    0.8581D-03, 0.6512D-03, 0.4883D-03, 0.3548D-03, 0.2657D-03,
21725      #    0.1914D-03, 0.1469D-03, 0.1022D-03, 0.7239D-04, 0.5754D-04,
21726      #    0.4263D-04, 0.2770D-04, 0.2775D-04, 0.1278D-04, 0.1280D-04,
21727      #    0.1281D-04/
21728
21729       data (calcpts(j,29), j = 1,neta) /0.1546D-10, 0.2749D-10,
21730      #    0.4886D-10, 0.8690D-10, 0.1546D-09, 0.2748D-09, 0.4887D-09,
21731      #    0.8692D-09, 0.1545D-08, 0.2748D-08, 0.4887D-08, 0.8689D-08,
21732      #    0.1545D-07, 0.2748D-07, 0.4884D-07, 0.8685D-07, 0.1544D-06,
21733      #    0.2745D-06, 0.4879D-06, 0.8673D-06, 0.1540D-05, 0.2735D-05,
21734      #    0.4853D-05, 0.8601D-05, 0.1522D-04, 0.2689D-04, 0.4730D-04,
21735      #    0.8288D-04, 0.1443D-03, 0.2487D-03, 0.4229D-03, 0.7061D-03,
21736      #    0.1149D-02, 0.1810D-02, 0.2737D-02, 0.3941D-02, 0.5371D-02,
21737      #    0.6910D-02, 0.8397D-02, 0.9680D-02, 0.1065D-01, 0.1124D-01,
21738      #    0.1145D-01, 0.1129D-01, 0.1081D-01, 0.1005D-01, 0.9070D-02,
21739      #    0.7967D-02, 0.6826D-02, 0.5717D-02, 0.4696D-02, 0.3793D-02,
21740      #    0.3020D-02, 0.2373D-02, 0.1845D-02, 0.1422D-02, 0.1087D-02,
21741      #    0.8231D-03, 0.6214D-03, 0.4670D-03, 0.3481D-03, 0.2589D-03,
21742      #    0.1844D-03, 0.1397D-03, 0.1100D-03, 0.8011D-04, 0.5022D-04,
21743      #    0.3530D-04, 0.3535D-04, 0.2038D-04, 0.2041D-04, 0.5425D-05,
21744      #    0.5435D-05/
21745
21746       data (calcpts(j,30), j = 1,neta) /0.1170D-10, 0.2081D-10,
21747      #    0.3698D-10, 0.6577D-10, 0.1170D-09, 0.2080D-09, 0.3699D-09,
21748      #    0.6579D-09, 0.1169D-08, 0.2080D-08, 0.3699D-08, 0.6577D-08,
21749      #    0.1169D-07, 0.2080D-07, 0.3696D-07, 0.6573D-07, 0.1169D-06,
21750      #    0.2078D-06, 0.3693D-06, 0.6564D-06, 0.1166D-05, 0.2070D-05,
21751      #    0.3673D-05, 0.6510D-05, 0.1152D-04, 0.2035D-04, 0.3581D-04,
21752      #    0.6274D-04, 0.1092D-03, 0.1883D-03, 0.3203D-03, 0.5349D-03,
21753      #    0.8706D-03, 0.1372D-02, 0.2077D-02, 0.2994D-02, 0.4087D-02,
21754      #    0.5271D-02, 0.6427D-02, 0.7443D-02, 0.8232D-02, 0.8751D-02,
21755      #    0.8997D-02, 0.8982D-02, 0.8728D-02, 0.8257D-02, 0.7602D-02,
21756      #    0.6810D-02, 0.5944D-02, 0.5065D-02, 0.4224D-02, 0.3456D-02,
21757      #    0.2782D-02, 0.2208D-02, 0.1731D-02, 0.1343D-02, 0.1033D-02,
21758      #    0.7865D-03, 0.5963D-03, 0.4490D-03, 0.3358D-03, 0.2494D-03,
21759      #    0.1853D-03, 0.1375D-03, 0.1002D-03, 0.7333D-04, 0.5391D-04,
21760      #    0.3897D-04, 0.2851D-04, 0.2103D-04, 0.1505D-04, 0.1056D-04,
21761      #    0.7572D-05/
21762
21763       data (calcpts(j,31), j = 1,neta) /0.8769D-11, 0.1560D-10,
21764      #    0.2772D-10, 0.4930D-10, 0.8769D-10, 0.1559D-09, 0.2773D-09,
21765      #    0.4931D-09, 0.8765D-09, 0.1559D-08, 0.2773D-08, 0.4930D-08,
21766      #    0.8766D-08, 0.1559D-07, 0.2771D-07, 0.4927D-07, 0.8763D-07,
21767      #    0.1558D-06, 0.2768D-06, 0.4921D-06, 0.8737D-06, 0.1552D-05,
21768      #    0.2754D-05, 0.4880D-05, 0.8637D-05, 0.1526D-04, 0.2684D-04,
21769      #    0.4704D-04, 0.8189D-04, 0.1412D-03, 0.2402D-03, 0.4011D-03,
21770      #    0.6531D-03, 0.1030D-02, 0.1560D-02, 0.2250D-02, 0.3076D-02,
21771      #    0.3974D-02, 0.4858D-02, 0.5647D-02, 0.6275D-02, 0.6712D-02,
21772      #    0.6952D-02, 0.7007D-02, 0.6892D-02, 0.6622D-02, 0.6211D-02,
21773      #    0.5678D-02, 0.5058D-02, 0.4395D-02, 0.3728D-02, 0.3098D-02,
21774      #    0.2526D-02, 0.2029D-02, 0.1606D-02, 0.1256D-02, 0.9722D-03,
21775      #    0.7462D-03, 0.5675D-03, 0.4289D-03, 0.3231D-03, 0.2410D-03,
21776      #    0.1798D-03, 0.1335D-03, 0.9759D-04, 0.7218D-04, 0.5274D-04,
21777      #    0.3928D-04, 0.2881D-04, 0.1983D-04, 0.1535D-04, 0.1085D-04,
21778      #    0.7861D-05/
21779
21780       data (calcpts(j,32), j = 1,neta) /0.6519D-11, 0.1160D-10,
21781      #    0.2061D-10, 0.3665D-10, 0.6520D-10, 0.1159D-09, 0.2061D-09,
21782      #    0.3666D-09, 0.6517D-09, 0.1159D-08, 0.2062D-08, 0.3665D-08,
21783      #    0.6518D-08, 0.1159D-07, 0.2060D-07, 0.3664D-07, 0.6515D-07,
21784      #    0.1158D-06, 0.2058D-06, 0.3658D-06, 0.6496D-06, 0.1154D-05,
21785      #    0.2047D-05, 0.3629D-05, 0.6422D-05, 0.1134D-04, 0.1996D-04,
21786      #    0.3498D-04, 0.6089D-04, 0.1050D-03, 0.1786D-03, 0.2984D-03,
21787      #    0.4859D-03, 0.7664D-03, 0.1161D-02, 0.1676D-02, 0.2293D-02,
21788      #    0.2967D-02, 0.3634D-02, 0.4235D-02, 0.4725D-02, 0.5080D-02,
21789      #    0.5296D-02, 0.5379D-02, 0.5342D-02, 0.5198D-02, 0.4954D-02,
21790      #    0.4617D-02, 0.4200D-02, 0.3725D-02, 0.3224D-02, 0.2727D-02,
21791      #    0.2258D-02, 0.1837D-02, 0.1471D-02, 0.1162D-02, 0.9064D-03,
21792      #    0.7009D-03, 0.5369D-03, 0.4070D-03, 0.3070D-03, 0.2308D-03,
21793      #    0.1725D-03, 0.1277D-03, 0.9475D-04, 0.6932D-04, 0.5137D-04,
21794      #    0.3640D-04, 0.2742D-04, 0.1993D-04, 0.1394D-04, 0.9449D-05,
21795      #    0.6453D-05/
21796
21797       data (calcpts(j,33), j = 1,neta) /0.4816D-11, 0.8566D-11,
21798      #    0.1522D-10, 0.2708D-10, 0.4816D-10, 0.8564D-10, 0.1523D-09,
21799      #    0.2709D-09, 0.4814D-09, 0.8562D-09, 0.1523D-08, 0.2708D-08,
21800      #    0.4815D-08, 0.8564D-08, 0.1522D-07, 0.2706D-07, 0.4813D-07,
21801      #    0.8555D-07, 0.1521D-06, 0.2703D-06, 0.4799D-06, 0.8522D-06,
21802      #    0.1513D-05, 0.2681D-05, 0.4744D-05, 0.8380D-05, 0.1474D-04,
21803      #    0.2584D-04, 0.4499D-04, 0.7756D-04, 0.1320D-03, 0.2205D-03,
21804      #    0.3591D-03, 0.5665D-03, 0.8584D-03, 0.1239D-02, 0.1697D-02,
21805      #    0.2198D-02, 0.2696D-02, 0.3149D-02, 0.3523D-02, 0.3804D-02,
21806      #    0.3986D-02, 0.4076D-02, 0.4081D-02, 0.4010D-02, 0.3872D-02,
21807      #    0.3668D-02, 0.3403D-02, 0.3084D-02, 0.2726D-02, 0.2352D-02,
21808      #    0.1984D-02, 0.1640D-02, 0.1331D-02, 0.1065D-02, 0.8402D-03,
21809      #    0.6552D-03, 0.5045D-03, 0.3865D-03, 0.2938D-03, 0.2220D-03,
21810      #    0.1667D-03, 0.1248D-03, 0.9188D-04, 0.6793D-04, 0.4996D-04,
21811      #    0.3798D-04, 0.2750D-04, 0.2001D-04, 0.1552D-04, 0.1102D-04,
21812      #    0.8025D-05/
21813
21814       data (calcpts(j,34), j = 1,neta) /0.3536D-11, 0.6289D-11,
21815      #    0.1118D-10, 0.1988D-10, 0.3536D-10, 0.6287D-10, 0.1118D-09,
21816      #    0.1989D-09, 0.3534D-09, 0.6286D-09, 0.1118D-08, 0.1988D-08,
21817      #    0.3535D-08, 0.6287D-08, 0.1117D-07, 0.1987D-07, 0.3534D-07,
21818      #    0.6281D-07, 0.1116D-06, 0.1984D-06, 0.3523D-06, 0.6257D-06,
21819      #    0.1110D-05, 0.1968D-05, 0.3483D-05, 0.6152D-05, 0.1083D-04,
21820      #    0.1897D-04, 0.3303D-04, 0.5695D-04, 0.9689D-04, 0.1619D-03,
21821      #    0.2637D-03, 0.4161D-03, 0.6305D-03, 0.9107D-03, 0.1247D-02,
21822      #    0.1616D-02, 0.1985D-02, 0.2322D-02, 0.2604D-02, 0.2820D-02,
21823      #    0.2968D-02, 0.3052D-02, 0.3076D-02, 0.3048D-02, 0.2973D-02,
21824      #    0.2854D-02, 0.2692D-02, 0.2489D-02, 0.2249D-02, 0.1983D-02,
21825      #    0.1707D-02, 0.1436D-02, 0.1185D-02, 0.9606D-03, 0.7668D-03,
21826      #    0.6041D-03, 0.4696D-03, 0.3620D-03, 0.2767D-03, 0.2094D-03,
21827      #    0.1585D-03, 0.1181D-03, 0.8813D-04, 0.6567D-04, 0.4769D-04,
21828      #    0.3571D-04, 0.2672D-04, 0.1923D-04, 0.1473D-04, 0.1024D-04,
21829      #    0.7239D-05/
21830
21831       data (calcpts(j,35), j = 1,neta) /0.2583D-11, 0.4593D-11,
21832      #    0.8164D-11, 0.1452D-10, 0.2583D-10, 0.4592D-10, 0.8167D-10,
21833      #    0.1453D-09, 0.2582D-09, 0.4592D-09, 0.8167D-09, 0.1452D-08,
21834      #    0.2582D-08, 0.4592D-08, 0.8162D-08, 0.1451D-07, 0.2581D-07,
21835      #    0.4588D-07, 0.8154D-07, 0.1449D-06, 0.2573D-06, 0.4570D-06,
21836      #    0.8111D-06, 0.1438D-05, 0.2544D-05, 0.4494D-05, 0.7907D-05,
21837      #    0.1386D-04, 0.2413D-04, 0.4160D-04, 0.7078D-04, 0.1183D-03,
21838      #    0.1926D-03, 0.3040D-03, 0.4607D-03, 0.6655D-03, 0.9118D-03,
21839      #    0.1182D-02, 0.1452D-02, 0.1701D-02, 0.1910D-02, 0.2074D-02,
21840      #    0.2190D-02, 0.2262D-02, 0.2293D-02, 0.2288D-02, 0.2250D-02,
21841      #    0.2183D-02, 0.2087D-02, 0.1963D-02, 0.1810D-02, 0.1631D-02,
21842      #    0.1435D-02, 0.1233D-02, 0.1036D-02, 0.8523D-03, 0.6897D-03,
21843      #    0.5492D-03, 0.4326D-03, 0.3354D-03, 0.2591D-03, 0.1977D-03,
21844      #    0.1498D-03, 0.1123D-03, 0.8387D-04, 0.6289D-04, 0.4641D-04,
21845      #    0.3442D-04, 0.2543D-04, 0.1794D-04, 0.1344D-04, 0.8945D-05,
21846      #    0.7447D-05/
21847
21848       data (calcpts(j,36), j = 1,neta) /0.1878D-11, 0.3341D-11,
21849      #    0.5938D-11, 0.1056D-10, 0.1879D-10, 0.3340D-10, 0.5940D-10,
21850      #    0.1056D-09, 0.1878D-09, 0.3340D-09, 0.5940D-09, 0.1056D-08,
21851      #    0.1878D-08, 0.3340D-08, 0.5936D-08, 0.1056D-07, 0.1877D-07,
21852      #    0.3337D-07, 0.5931D-07, 0.1054D-06, 0.1872D-06, 0.3324D-06,
21853      #    0.5900D-06, 0.1046D-05, 0.1851D-05, 0.3269D-05, 0.5751D-05,
21854      #    0.1008D-04, 0.1755D-04, 0.3026D-04, 0.5148D-04, 0.8602D-04,
21855      #    0.1401D-03, 0.2211D-03, 0.3352D-03, 0.4842D-03, 0.6635D-03,
21856      #    0.8605D-03, 0.1058D-02, 0.1239D-02, 0.1394D-02, 0.1516D-02,
21857      #    0.1604D-02, 0.1663D-02, 0.1694D-02, 0.1700D-02, 0.1684D-02,
21858      #    0.1647D-02, 0.1591D-02, 0.1517D-02, 0.1423D-02, 0.1310D-02,
21859      #    0.1178D-02, 0.1035D-02, 0.8878D-03, 0.7447D-03, 0.6124D-03,
21860      #    0.4948D-03, 0.3937D-03, 0.3099D-03, 0.2395D-03, 0.1841D-03,
21861      #    0.1407D-03, 0.1062D-03, 0.7922D-04, 0.5974D-04, 0.4476D-04,
21862      #    0.3277D-04, 0.2377D-04, 0.1778D-04, 0.1328D-04, 0.8780D-05,
21863      #    0.7282D-05/
21864
21865       data (calcpts(j,37), j = 1,neta) /0.1361D-11, 0.2420D-11,
21866      #    0.4302D-11, 0.7651D-11, 0.1361D-10, 0.2420D-10, 0.4303D-10,
21867      #    0.7654D-10, 0.1360D-09, 0.2419D-09, 0.4304D-09, 0.7652D-09,
21868      #    0.1361D-08, 0.2420D-08, 0.4301D-08, 0.7648D-08, 0.1360D-07,
21869      #    0.2417D-07, 0.4297D-07, 0.7637D-07, 0.1356D-06, 0.2408D-06,
21870      #    0.4274D-06, 0.7575D-06, 0.1341D-05, 0.2368D-05, 0.4167D-05,
21871      #    0.7302D-05, 0.1271D-04, 0.2192D-04, 0.3730D-04, 0.6232D-04,
21872      #    0.1015D-03, 0.1602D-03, 0.2429D-03, 0.3509D-03, 0.4808D-03,
21873      #    0.6237D-03, 0.7669D-03, 0.8990D-03, 0.1012D-02, 0.1101D-02,
21874      #    0.1168D-02, 0.1214D-02, 0.1241D-02, 0.1252D-02, 0.1247D-02,
21875      #    0.1229D-02, 0.1197D-02, 0.1153D-02, 0.1097D-02, 0.1027D-02,
21876      #    0.9440D-03, 0.8481D-03, 0.7439D-03, 0.6371D-03, 0.5338D-03,
21877      #    0.4384D-03, 0.3538D-03, 0.2812D-03, 0.2206D-03, 0.1710D-03,
21878      #    0.1314D-03, 0.9996D-04, 0.7554D-04, 0.5680D-04, 0.4241D-04,
21879      #    0.3147D-04, 0.2322D-04, 0.1722D-04, 0.1258D-04, 0.9276D-05,
21880      #    0.6727D-05/
21881
21882       data (calcpts(j,38), j = 1,neta) /0.9823D-12, 0.1747D-11,
21883      #    0.3105D-11, 0.5523D-11, 0.9824D-11, 0.1747D-10, 0.3106D-10,
21884      #    0.5525D-10, 0.9820D-10, 0.1746D-09, 0.3106D-09, 0.5523D-09,
21885      #    0.9821D-09, 0.1747D-08, 0.3104D-08, 0.5520D-08, 0.9817D-08,
21886      #    0.1745D-07, 0.3102D-07, 0.5513D-07, 0.9788D-07, 0.1738D-06,
21887      #    0.3085D-06, 0.5468D-06, 0.9677D-06, 0.1709D-05, 0.3008D-05,
21888      #    0.5271D-05, 0.9178D-05, 0.1582D-04, 0.2692D-04, 0.4499D-04,
21889      #    0.7328D-04, 0.1157D-03, 0.1753D-03, 0.2533D-03, 0.3472D-03,
21890      #    0.4503D-03, 0.5539D-03, 0.6495D-03, 0.7313D-03, 0.7967D-03,
21891      #    0.8460D-03, 0.8807D-03, 0.9029D-03, 0.9140D-03, 0.9153D-03,
21892      #    0.9074D-03, 0.8906D-03, 0.8654D-03, 0.8319D-03, 0.7900D-03,
21893      #    0.7389D-03, 0.6781D-03, 0.6084D-03, 0.5330D-03, 0.4559D-03,
21894      #    0.3816D-03, 0.3129D-03, 0.2522D-03, 0.2002D-03, 0.1569D-03,
21895      #    0.1216D-03, 0.9324D-04, 0.7090D-04, 0.5351D-04, 0.4017D-04,
21896      #    0.2997D-04, 0.2218D-04, 0.1633D-04, 0.1198D-04, 0.8832D-05,
21897      #    0.6432D-05/
21898
21899       data (calcpts(j,39), j = 1,neta) /0.7071D-12, 0.1258D-11,
21900      #    0.2235D-11, 0.3976D-11, 0.7072D-11, 0.1257D-10, 0.2236D-10,
21901      #    0.3977D-10, 0.7069D-10, 0.1257D-09, 0.2236D-09, 0.3976D-09,
21902      #    0.7070D-09, 0.1257D-08, 0.2235D-08, 0.3974D-08, 0.7067D-08,
21903      #    0.1256D-07, 0.2233D-07, 0.3969D-07, 0.7046D-07, 0.1251D-06,
21904      #    0.2221D-06, 0.3936D-06, 0.6967D-06, 0.1231D-05, 0.2165D-05,
21905      #    0.3795D-05, 0.6607D-05, 0.1139D-04, 0.1938D-04, 0.3238D-04,
21906      #    0.5276D-04, 0.8326D-04, 0.1262D-03, 0.1824D-03, 0.2499D-03,
21907      #    0.3243D-03, 0.3988D-03, 0.4678D-03, 0.5269D-03, 0.5743D-03,
21908      #    0.6104D-03, 0.6362D-03, 0.6535D-03, 0.6634D-03, 0.6670D-03,
21909      #    0.6646D-03, 0.6564D-03, 0.6425D-03, 0.6230D-03, 0.5980D-03,
21910      #    0.5672D-03, 0.5300D-03, 0.4858D-03, 0.4354D-03, 0.3811D-03,
21911      #    0.3257D-03, 0.2723D-03, 0.2232D-03, 0.1797D-03, 0.1427D-03,
21912      #    0.1117D-03, 0.8649D-04, 0.6640D-04, 0.5051D-04, 0.3806D-04,
21913      #    0.2861D-04, 0.2142D-04, 0.1587D-04, 0.1182D-04, 0.8670D-05,
21914      #    0.6420D-05/
21915
21916       data (calcpts(j,40), j = 1,neta) /0.5074D-12, 0.9025D-12,
21917      #    0.1604D-11, 0.2853D-11, 0.5075D-11, 0.9023D-11, 0.1605D-10,
21918      #    0.2854D-10, 0.5073D-10, 0.9022D-10, 0.1605D-09, 0.2853D-09,
21919      #    0.5073D-09, 0.9023D-09, 0.1604D-08, 0.2852D-08, 0.5071D-08,
21920      #    0.9014D-08, 0.1602D-07, 0.2848D-07, 0.5056D-07, 0.8980D-07,
21921      #    0.1594D-06, 0.2825D-06, 0.4999D-06, 0.8830D-06, 0.1554D-05,
21922      #    0.2723D-05, 0.4741D-05, 0.8174D-05, 0.1391D-04, 0.2324D-04,
21923      #    0.3786D-04, 0.5975D-04, 0.9057D-04, 0.1309D-03, 0.1794D-03,
21924      #    0.2327D-03, 0.2863D-03, 0.3358D-03, 0.3783D-03, 0.4125D-03,
21925      #    0.4386D-03, 0.4576D-03, 0.4706D-03, 0.4788D-03, 0.4827D-03,
21926      #    0.4829D-03, 0.4794D-03, 0.4723D-03, 0.4614D-03, 0.4467D-03,
21927      #    0.4283D-03, 0.4058D-03, 0.3789D-03, 0.3470D-03, 0.3108D-03,
21928      #    0.2717D-03, 0.2321D-03, 0.1939D-03, 0.1586D-03, 0.1276D-03,
21929      #    0.1012D-03, 0.7919D-04, 0.6120D-04, 0.4695D-04, 0.3571D-04,
21930      #    0.2686D-04, 0.2011D-04, 0.1501D-04, 0.1111D-04, 0.8263D-05,
21931      #    0.6013D-05/
21932
21933       data (calcpts(j,41), j = 1,neta) /0.3632D-12, 0.6459D-12,
21934      #    0.1148D-11, 0.2042D-11, 0.3632D-11, 0.6458D-11, 0.1148D-10,
21935      #    0.2043D-10, 0.3630D-10, 0.6457D-10, 0.1149D-09, 0.2042D-09,
21936      #    0.3631D-09, 0.6458D-09, 0.1148D-08, 0.2041D-08, 0.3630D-08,
21937      #    0.6452D-08, 0.1147D-07, 0.2038D-07, 0.3619D-07, 0.6427D-07,
21938      #    0.1141D-06, 0.2022D-06, 0.3578D-06, 0.6320D-06, 0.1112D-05,
21939      #    0.1949D-05, 0.3393D-05, 0.5850D-05, 0.9954D-05, 0.1663D-04,
21940      #    0.2710D-04, 0.4276D-04, 0.6483D-04, 0.9367D-04, 0.1284D-03,
21941      #    0.1666D-03, 0.2049D-03, 0.2404D-03, 0.2708D-03, 0.2954D-03,
21942      #    0.3142D-03, 0.3280D-03, 0.3377D-03, 0.3440D-03, 0.3475D-03,
21943      #    0.3487D-03, 0.3476D-03, 0.3443D-03, 0.3385D-03, 0.3302D-03,
21944      #    0.3193D-03, 0.3059D-03, 0.2896D-03, 0.2702D-03, 0.2473D-03,
21945      #    0.2213D-03, 0.1933D-03, 0.1650D-03, 0.1377D-03, 0.1127D-03,
21946      #    0.9046D-04, 0.7172D-04, 0.5598D-04, 0.4323D-04, 0.3318D-04,
21947      #    0.2508D-04, 0.1894D-04, 0.1414D-04, 0.1054D-04, 0.7838D-05,
21948      #    0.5738D-05/
21949
21950       data (calcpts(j,42), j = 1,neta) /0.2594D-12, 0.4613D-12,
21951      #    0.8200D-12, 0.1458D-11, 0.2594D-11, 0.4613D-11, 0.8202D-11,
21952      #    0.1459D-10, 0.2593D-10, 0.4612D-10, 0.8203D-10, 0.1458D-09,
21953      #    0.2593D-09, 0.4612D-09, 0.8197D-09, 0.1458D-08, 0.2592D-08,
21954      #    0.4608D-08, 0.8190D-08, 0.1456D-07, 0.2585D-07, 0.4590D-07,
21955      #    0.8147D-07, 0.1444D-06, 0.2555D-06, 0.4514D-06, 0.7942D-06,
21956      #    0.1392D-05, 0.2423D-05, 0.4178D-05, 0.7110D-05, 0.1188D-04,
21957      #    0.1935D-04, 0.3054D-04, 0.4630D-04, 0.6691D-04, 0.9170D-04,
21958      #    0.1190D-03, 0.1464D-03, 0.1717D-03, 0.1935D-03, 0.2111D-03,
21959      #    0.2246D-03, 0.2345D-03, 0.2416D-03, 0.2463D-03, 0.2492D-03,
21960      #    0.2506D-03, 0.2506D-03, 0.2492D-03, 0.2463D-03, 0.2418D-03,
21961      #    0.2356D-03, 0.2277D-03, 0.2179D-03, 0.2063D-03, 0.1923D-03,
21962      #    0.1759D-03, 0.1573D-03, 0.1373D-03, 0.1171D-03, 0.9766D-04,
21963      #    0.7982D-04, 0.6408D-04, 0.5073D-04, 0.3964D-04, 0.3064D-04,
21964      #    0.2344D-04, 0.1774D-04, 0.1339D-04, 0.1009D-04, 0.7391D-05,
21965      #    0.5591D-05/
21966
21967       data (calcpts(j,43), j = 1,neta) /0.1849D-12, 0.3288D-12,
21968      #    0.5844D-12, 0.1039D-11, 0.1849D-11, 0.3287D-11, 0.5846D-11,
21969      #    0.1040D-10, 0.1848D-10, 0.3287D-10, 0.5846D-10, 0.1039D-09,
21970      #    0.1848D-09, 0.3287D-09, 0.5842D-09, 0.1039D-08, 0.1848D-08,
21971      #    0.3284D-08, 0.5837D-08, 0.1037D-07, 0.1842D-07, 0.3271D-07,
21972      #    0.5806D-07, 0.1029D-06, 0.1821D-06, 0.3217D-06, 0.5660D-06,
21973      #    0.9920D-06, 0.1727D-05, 0.2978D-05, 0.5067D-05, 0.8466D-05,
21974      #    0.1379D-04, 0.2177D-04, 0.3300D-04, 0.4768D-04, 0.6535D-04,
21975      #    0.8480D-04, 0.1043D-03, 0.1224D-03, 0.1379D-03, 0.1505D-03,
21976      #    0.1601D-03, 0.1672D-03, 0.1723D-03, 0.1758D-03, 0.1781D-03,
21977      #    0.1793D-03, 0.1797D-03, 0.1793D-03, 0.1780D-03, 0.1757D-03,
21978      #    0.1723D-03, 0.1678D-03, 0.1620D-03, 0.1550D-03, 0.1466D-03,
21979      #    0.1366D-03, 0.1249D-03, 0.1116D-03, 0.9738D-04, 0.8296D-04,
21980      #    0.6912D-04, 0.5646D-04, 0.4534D-04, 0.3586D-04, 0.2796D-04,
21981      #    0.2166D-04, 0.1656D-04, 0.1251D-04, 0.9358D-05, 0.7108D-05,
21982      #    0.5308D-05/
21983
21984       data (calcpts(j,44), j = 1,neta) /0.1315D-12, 0.2338D-12,
21985      #    0.4156D-12, 0.7392D-12, 0.1315D-11, 0.2338D-11, 0.4157D-11,
21986      #    0.7394D-11, 0.1314D-10, 0.2337D-10, 0.4158D-10, 0.7392D-10,
21987      #    0.1314D-09, 0.2338D-09, 0.4155D-09, 0.7389D-09, 0.1314D-08,
21988      #    0.2336D-08, 0.4151D-08, 0.7378D-08, 0.1310D-07, 0.2327D-07,
21989      #    0.4129D-07, 0.7318D-07, 0.1295D-06, 0.2288D-06, 0.4025D-06,
21990      #    0.7055D-06, 0.1228D-05, 0.2118D-05, 0.3604D-05, 0.6021D-05,
21991      #    0.9809D-05, 0.1548D-04, 0.2347D-04, 0.3391D-04, 0.4648D-04,
21992      #    0.6031D-04, 0.7419D-04, 0.8705D-04, 0.9810D-04, 0.1070D-03,
21993      #    0.1139D-03, 0.1190D-03, 0.1227D-03, 0.1252D-03, 0.1269D-03,
21994      #    0.1279D-03, 0.1284D-03, 0.1284D-03, 0.1278D-03, 0.1267D-03,
21995      #    0.1250D-03, 0.1225D-03, 0.1192D-03, 0.1150D-03, 0.1100D-03,
21996      #    0.1040D-03, 0.9684D-04, 0.8850D-04, 0.7906D-04, 0.6892D-04,
21997      #    0.5868D-04, 0.4886D-04, 0.3989D-04, 0.3200D-04, 0.2530D-04,
21998      #    0.1973D-04, 0.1522D-04, 0.1162D-04, 0.8801D-05, 0.6626D-05,
21999      #    0.4946D-05/
22000
22001       data (calcpts(j,45), j = 1,neta) /0.9338D-13, 0.1661D-12,
22002      #    0.2952D-12, 0.5250D-12, 0.9339D-12, 0.1660D-11, 0.2953D-11,
22003      #    0.5252D-11, 0.9334D-11, 0.1660D-10, 0.2953D-10, 0.5250D-10,
22004      #    0.9336D-10, 0.1660D-09, 0.2951D-09, 0.5248D-09, 0.9332D-09,
22005      #    0.1659D-08, 0.2948D-08, 0.5240D-08, 0.9305D-08, 0.1652D-07,
22006      #    0.2933D-07, 0.5198D-07, 0.9199D-07, 0.1625D-06, 0.2859D-06,
22007      #    0.5011D-06, 0.8724D-06, 0.1504D-05, 0.2559D-05, 0.4276D-05,
22008      #    0.6967D-05, 0.1099D-04, 0.1667D-04, 0.2409D-04, 0.3301D-04,
22009      #    0.4283D-04, 0.5270D-04, 0.6183D-04, 0.6968D-04, 0.7602D-04,
22010      #    0.8091D-04, 0.8454D-04, 0.8715D-04, 0.8899D-04, 0.9023D-04,
22011      #    0.9102D-04, 0.9146D-04, 0.9159D-04, 0.9142D-04, 0.9093D-04,
22012      #    0.9007D-04, 0.8875D-04, 0.8693D-04, 0.8453D-04, 0.8154D-04,
22013      #    0.7794D-04, 0.7367D-04, 0.6859D-04, 0.6266D-04, 0.5594D-04,
22014      #    0.4876D-04, 0.4149D-04, 0.3453D-04, 0.2818D-04, 0.2260D-04,
22015      #    0.1785D-04, 0.1394D-04, 0.1074D-04, 0.8206D-05, 0.6226D-05,
22016      #    0.4681D-05/
22017
22018       data (calcpts(j,46), j = 1,neta) /0.6618D-13, 0.1177D-12,
22019      #    0.2092D-12, 0.3721D-12, 0.6619D-12, 0.1177D-11, 0.2093D-11,
22020      #    0.3722D-11, 0.6616D-11, 0.1177D-10, 0.2093D-10, 0.3721D-10,
22021      #    0.6617D-10, 0.1177D-09, 0.2092D-09, 0.3720D-09, 0.6615D-09,
22022      #    0.1176D-08, 0.2090D-08, 0.3714D-08, 0.6595D-08, 0.1171D-07,
22023      #    0.2079D-07, 0.3684D-07, 0.6520D-07, 0.1152D-06, 0.2026D-06,
22024      #    0.3552D-06, 0.6184D-06, 0.1066D-05, 0.1814D-05, 0.3031D-05,
22025      #    0.4938D-05, 0.7793D-05, 0.1181D-04, 0.1707D-04, 0.2340D-04,
22026      #    0.3036D-04, 0.3735D-04, 0.4382D-04, 0.4939D-04, 0.5389D-04,
22027      #    0.5735D-04, 0.5993D-04, 0.6179D-04, 0.6311D-04, 0.6400D-04,
22028      #    0.6460D-04, 0.6495D-04, 0.6512D-04, 0.6510D-04, 0.6491D-04,
22029      #    0.6451D-04, 0.6385D-04, 0.6288D-04, 0.6156D-04, 0.5983D-04,
22030      #    0.5770D-04, 0.5513D-04, 0.5209D-04, 0.4849D-04, 0.4426D-04,
22031      #    0.3951D-04, 0.3441D-04, 0.2927D-04, 0.2435D-04, 0.1985D-04,
22032      #    0.1592D-04, 0.1257D-04, 0.9799D-05, 0.7549D-05, 0.5764D-05,
22033      #    0.4369D-05/
22034
22035       data (calcpts(j,47), j = 1,neta) /0.4684D-13, 0.8331D-13,
22036      #    0.1481D-12, 0.2634D-12, 0.4684D-12, 0.8329D-12, 0.1481D-11,
22037      #    0.2634D-11, 0.4682D-11, 0.8328D-11, 0.1481D-10, 0.2634D-10,
22038      #    0.4683D-10, 0.8329D-10, 0.1480D-09, 0.2632D-09, 0.4681D-09,
22039      #    0.8321D-09, 0.1479D-08, 0.2629D-08, 0.4667D-08, 0.8289D-08,
22040      #    0.1471D-07, 0.2607D-07, 0.4614D-07, 0.8151D-07, 0.1434D-06,
22041      #    0.2513D-06, 0.4376D-06, 0.7545D-06, 0.1284D-05, 0.2145D-05,
22042      #    0.3494D-05, 0.5515D-05, 0.8361D-05, 0.1208D-04, 0.1656D-04,
22043      #    0.2149D-04, 0.2643D-04, 0.3101D-04, 0.3495D-04, 0.3814D-04,
22044      #    0.4059D-04, 0.4242D-04, 0.4374D-04, 0.4467D-04, 0.4532D-04,
22045      #    0.4575D-04, 0.4603D-04, 0.4618D-04, 0.4622D-04, 0.4616D-04,
22046      #    0.4598D-04, 0.4567D-04, 0.4518D-04, 0.4448D-04, 0.4352D-04,
22047      #    0.4229D-04, 0.4076D-04, 0.3894D-04, 0.3678D-04, 0.3422D-04,
22048      #    0.3123D-04, 0.2786D-04, 0.2426D-04, 0.2062D-04, 0.1714D-04,
22049      #    0.1397D-04, 0.1120D-04, 0.8828D-05, 0.6878D-05, 0.5303D-05,
22050      #    0.4043D-05/
22051
22052       data (calcpts(j,48), j = 1,neta) /0.3311D-13, 0.5889D-13,
22053      #    0.1047D-12, 0.1862D-12, 0.3311D-12, 0.5887D-12, 0.1047D-11,
22054      #    0.1862D-11, 0.3310D-11, 0.5886D-11, 0.1047D-10, 0.1862D-10,
22055      #    0.3310D-10, 0.5887D-10, 0.1046D-09, 0.1861D-09, 0.3309D-09,
22056      #    0.5882D-09, 0.1045D-08, 0.1858D-08, 0.3299D-08, 0.5859D-08,
22057      #    0.1040D-07, 0.1843D-07, 0.3262D-07, 0.5761D-07, 0.1014D-06,
22058      #    0.1777D-06, 0.3093D-06, 0.5333D-06, 0.9075D-06, 0.1516D-05,
22059      #    0.2470D-05, 0.3898D-05, 0.5910D-05, 0.8540D-05, 0.1171D-04,
22060      #    0.1519D-04, 0.1869D-04, 0.2192D-04, 0.2471D-04, 0.2696D-04,
22061      #    0.2869D-04, 0.2999D-04, 0.3092D-04, 0.3158D-04, 0.3204D-04,
22062      #    0.3236D-04, 0.3256D-04, 0.3268D-04, 0.3274D-04, 0.3274D-04,
22063      #    0.3267D-04, 0.3252D-04, 0.3228D-04, 0.3193D-04, 0.3142D-04,
22064      #    0.3073D-04, 0.2985D-04, 0.2877D-04, 0.2747D-04, 0.2594D-04,
22065      #    0.2413D-04, 0.2202D-04, 0.1964D-04, 0.1709D-04, 0.1452D-04,
22066      #    0.1206D-04, 0.9827D-05, 0.7877D-05, 0.6212D-05, 0.4832D-05,
22067      #    0.3722D-05/
22068
22069       data (calcpts(j,49), j = 1,neta) /0.2337D-13, 0.4157D-13,
22070      #    0.7388D-13, 0.1314D-12, 0.2337D-12, 0.4156D-12, 0.7390D-12,
22071      #    0.1314D-11, 0.2336D-11, 0.4155D-11, 0.7391D-11, 0.1314D-10,
22072      #    0.2337D-10, 0.4156D-10, 0.7386D-10, 0.1313D-09, 0.2336D-09,
22073      #    0.4152D-09, 0.7379D-09, 0.1312D-08, 0.2329D-08, 0.4136D-08,
22074      #    0.7340D-08, 0.1301D-07, 0.2302D-07, 0.4067D-07, 0.7156D-07,
22075      #    0.1254D-06, 0.2184D-06, 0.3765D-06, 0.6406D-06, 0.1070D-05,
22076      #    0.1744D-05, 0.2752D-05, 0.4172D-05, 0.6028D-05, 0.8263D-05,
22077      #    0.1072D-04, 0.1319D-04, 0.1548D-04, 0.1744D-04, 0.1903D-04,
22078      #    0.2026D-04, 0.2117D-04, 0.2183D-04, 0.2230D-04, 0.2263D-04,
22079      #    0.2285D-04, 0.2300D-04, 0.2309D-04, 0.2314D-04, 0.2316D-04,
22080      #    0.2314D-04, 0.2308D-04, 0.2296D-04, 0.2279D-04, 0.2253D-04,
22081      #    0.2216D-04, 0.2167D-04, 0.2104D-04, 0.2028D-04, 0.1936D-04,
22082      #    0.1828D-04, 0.1700D-04, 0.1550D-04, 0.1382D-04, 0.1202D-04,
22083      #    0.1021D-04, 0.8483D-05, 0.6900D-05, 0.5535D-05, 0.4365D-05,
22084      #    0.3390D-05/
22085
22086       data (dlaeta(j), j = 1,neta) /
22087      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
22088      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
22089      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
22090      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
22091      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
22092      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
22093      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
22094      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
22095      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
22096      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
22097      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
22098      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
22099      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
22100      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
22101      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
22102
22103       data (dlaxi(j), j = 1,nxi) /
22104      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
22105      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
22106      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
22107      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
22108      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
22109      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
22110      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
22111      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
22112      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
22113      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
22114
22115       dleta = dlog10(eta)
22116       dlxi = dlog10(xi)
22117       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
22118       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
22119       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
22120       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
22121       call locate(dlaeta,neta, dleta, ieta)
22122       call locate(dlaxi, nxi, dlxi, ixi)
22123 c     interpolating between the appropriate points
22124       delxi = 1d0/6d0
22125       deleta = 1d0/6d0
22126 c  lagrange 3-pt.
22127       if (ixi .le. 2) ixi = 2
22128       if (ixi .ge. 48) ixi = 48
22129       if (ieta .le. 2) ieta = 2
22130       if (ieta .ge. 72) ieta = 72
22131       pxi = (dlxi - dlaxi(ixi))/delxi
22132       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
22133      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
22134      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
22135       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
22136      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
22137      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
22138       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
22139      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
22140      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
22141       peta = (dleta - dlaeta(ieta))/deleta
22142       h1bar_HTq = peta*(peta-1d0)/2d0*f(-1) +
22143      #     (1d0 - peta**2)*f(0) +
22144 CMB  #     + peta*(peta+1d0)/2d0*f(1)
22145      #     peta*(peta+1d0)/2d0*f(1)
22146       return
22147       end
22148
22149 c     =========================================
22150       double precision function h1f_LTq(eta,xi)
22151 c     =========================================
22152
22153 c     eq (28) in PLB347 (1995) 143 - 151 for the transverse piece
22154 c     This also takes into account the additional mass factorizations
22155 c     necessary from a low Q^2 photon coupling to the light quark.
22156 c     MSbar scheme
22157 c     This routine is called subd1tqf in the original code.
22158 c     Gives h1_LTq for Q2 < 1.5 GeV2 (use h1_LTq for Q2 > 1.5 GeV2)
22159
22160       implicit none
22161       integer neta, nxi
22162       parameter (neta = 45, nxi = 15)
22163       double precision calcpts(neta,nxi), aeta(neta), axi(nxi)
22164       double precision eta, xi, huge, small
22165       double precision t, u, y1, y2, y3, y4
22166       parameter (small = 1.d-8, huge = 1.d10)
22167       integer j, ieta, ixi
22168
22169       data (calcpts(j, 1), j=1,neta) /0.d0, 0.4019D-05, 0.1896D-04,
22170      #  0.3899D-04, 0.6269D-04, 0.8935D-04, 0.1037D-03, 0.4849D-03,
22171      #  0.9762D-03, 0.1525D-02, 0.2108D-02, 0.2406D-02, 0.5362D-02,
22172      #  0.7965D-02, 0.1012D-01, 0.1186D-01, 0.1328D-01, 0.1443D-01,
22173      #  0.1537D-01, 0.1616D-01, 0.1682D-01, 0.1986D-01, 0.2073D-01,
22174      #  0.2096D-01, 0.2088D-01, 0.2067D-01, 0.2037D-01, 0.2001D-01,
22175      #  0.1965D-01, 0.1929D-01, 0.1370D-01, 0.1084D-01, 0.9107D-02,
22176      #  0.7934D-02, 0.7464D-02, 0.4891D-02, 0.3756D-02, 0.2645D-02,
22177      #  0.2090D-02, 0.1746D-02, 0.1617D-02, 0.4779D-03, 0.2775D-03,
22178      #  0.4104D-04, 0.d0/
22179 c
22180       data (calcpts(j, 2), j=1,neta) /0.d0, 0.2321D-05, 0.1077D-04,
22181      #  0.2190D-04, 0.3488D-04, 0.4935D-04, 0.5706D-04, 0.2585D-03,
22182      #  0.5173D-03, 0.8102D-03, 0.1125D-02, 0.1287D-02, 0.2955D-02,
22183      #  0.4511D-02, 0.5861D-02, 0.7013D-02, 0.7984D-02, 0.8813D-02,
22184      #  0.9516D-02, 0.1012D-01, 0.1065D-01, 0.1352D-01, 0.1463D-01,
22185      #  0.1512D-01, 0.1529D-01, 0.1529D-01, 0.1518D-01, 0.1502D-01,
22186      #  0.1482D-01, 0.1460D-01, 0.1073D-01, 0.8586D-02, 0.7261D-02,
22187      #  0.6349D-02, 0.5983D-02, 0.3966D-02, 0.3061D-02, 0.2178D-02,
22188      #  0.1718D-02, 0.1440D-02, 0.1337D-02, 0.3998D-03, 0.2339D-03,
22189      #  0.3529D-04, 0.d0/
22190 c
22191       data (calcpts(j, 3), j=1,neta) /0.d0, 0.5064D-06, 0.2317D-05,
22192      #  0.4667D-05, 0.7383D-05, 0.1040D-04, 0.1200D-04, 0.5411D-04,
22193      #  0.1119D-03, 0.1832D-03, 0.2663D-03, 0.3119D-03, 0.8727D-03,
22194      #  0.1533D-02, 0.2214D-02, 0.2874D-02, 0.3495D-02, 0.4073D-02,
22195      #  0.4602D-02, 0.5091D-02, 0.5538D-02, 0.8424D-02, 0.9777D-02,
22196      #  0.1046D-01, 0.1080D-01, 0.1095D-01, 0.1098D-01, 0.1094D-01,
22197      #  0.1086D-01, 0.1075D-01, 0.8148D-02, 0.6592D-02, 0.5609D-02,
22198      #  0.4921D-02, 0.4650D-02, 0.3110D-02, 0.2411D-02, 0.1722D-02,
22199      #  0.1371D-02, 0.1150D-02, 0.1067D-02, 0.3261D-03, 0.1892D-03,
22200      #  0.2870D-04, 0.d0/
22201 c
22202       data (calcpts(j, 4), j=1,neta) /0.d0, 0.5228D-08, 0.2381D-07,
22203      #  0.4875D-07, 0.7962D-07, 0.1172D-06, 0.1388D-06, 0.1292D-05,
22204      #  0.4892D-05, 0.1220D-04, 0.2403D-04, 0.3177D-04, 0.1790D-03,
22205      #  0.4347D-03, 0.7627D-03, 0.1131D-02, 0.1518D-02, 0.1906D-02,
22206      #  0.2291D-02, 0.2660D-02, 0.3014D-02, 0.5617D-02, 0.7014D-02,
22207      #  0.7787D-02, 0.8220D-02, 0.8455D-02, 0.8574D-02, 0.8612D-02,
22208      #  0.8603D-02, 0.8558D-02, 0.6753D-02, 0.5525D-02, 0.4737D-02,
22209      #  0.4176D-02, 0.3954D-02, 0.2678D-02, 0.2087D-02, 0.1502D-02,
22210      #  0.1196D-02, 0.1007D-02, 0.9338D-03, 0.2877D-03, 0.1692D-03,
22211      #  0.2625D-04, 0.d0/
22212 c
22213       data (calcpts(j, 5), j=1,neta) /0.d0, 0.9101D-12, 0.4199D-10,
22214      #  0.2486D-09, 0.7987D-09, 0.1908D-08, 0.2745D-08, 0.1169D-06,
22215      #  0.6378D-06, 0.1896D-05, 0.4197D-05, 0.5822D-05, 0.4473D-04,
22216      #  0.1310D-03, 0.2623D-03, 0.4305D-03, 0.6257D-03, 0.8389D-03,
22217      #  0.1064D-02, 0.1294D-02, 0.1525D-02, 0.3522D-02, 0.4800D-02,
22218      #  0.5585D-02, 0.6078D-02, 0.6383D-02, 0.6571D-02, 0.6681D-02,
22219      #  0.6738D-02, 0.6764D-02, 0.5665D-02, 0.4725D-02, 0.4088D-02,
22220      #  0.3632D-02, 0.3446D-02, 0.2369D-02, 0.1861D-02, 0.1347D-02,
22221      #  0.1081D-02, 0.9132D-03, 0.8487D-03, 0.2657D-03, 0.1563D-03,
22222      #  0.2511D-04, 0.d0/
22223 c
22224       data (calcpts(j, 6), j=1,neta) /0.d0, 0.2657D-12, 0.1234D-10,
22225      #  0.7333D-10, 0.2366D-09, 0.5664D-09, 0.8165D-09, 0.3585D-07,
22226      #  0.2016D-06, 0.6159D-06, 0.1399D-05, 0.1963D-05, 0.1675D-04,
22227      #  0.5327D-04, 0.1141D-03, 0.1979D-03, 0.3015D-03, 0.4212D-03,
22228      #  0.5532D-03, 0.6942D-03, 0.8411D-03, 0.2292D-02, 0.3371D-02,
22229      #  0.4096D-02, 0.4583D-02, 0.4909D-02, 0.5129D-02, 0.5277D-02,
22230      #  0.5371D-02, 0.5431D-02, 0.4823D-02, 0.4098D-02, 0.3584D-02,
22231      #  0.3204D-02, 0.3046D-02, 0.2125D-02, 0.1683D-02, 0.1229D-02,
22232      #  0.9890D-03, 0.8394D-03, 0.7798D-03, 0.2471D-03, 0.1470D-03,
22233      #  0.2343D-04, 0.d0/
22234 c
22235       data (calcpts(j, 7), j=1,neta) /0.d0, 0.2199D-12, 0.1022D-10,
22236      #  0.6069D-10, 0.1959D-09, 0.4690D-09, 0.6762D-09, 0.2974D-07,
22237      #  0.1674D-06, 0.5122D-06, 0.1165D-05, 0.1637D-05, 0.1405D-04,
22238      #  0.4497D-04, 0.9692D-04, 0.1690D-03, 0.2589D-03, 0.3633D-03,
22239      #  0.4793D-03, 0.6040D-03, 0.7347D-03, 0.2058D-02, 0.3074D-02,
22240      #  0.3776D-02, 0.4248D-02, 0.4574D-02, 0.4796D-02, 0.4949D-02,
22241      #  0.5048D-02, 0.5115D-02, 0.4613D-02, 0.3939D-02, 0.3453D-02,
22242      #  0.3095D-02, 0.2944D-02, 0.2064D-02, 0.1636D-02, 0.1198D-02,
22243      #  0.9665D-03, 0.8193D-03, 0.7636D-03, 0.2445D-03, 0.1445D-03,
22244      #  0.2312D-04, 0.d0/
22245 c
22246       data (calcpts(j, 8), j=1,neta) /0.d0, 0.1569D-12, 0.7293D-11,
22247      #  0.4330D-10, 0.1397D-09, 0.3345D-09, 0.4823D-09, 0.2118D-07,
22248      #  0.1189D-06, 0.3635D-06, 0.8253D-06, 0.1158D-05, 0.9902D-05,
22249      #  0.3158D-04, 0.6792D-04, 0.1184D-03, 0.1815D-03, 0.2548D-03,
22250      #  0.3369D-03, 0.4252D-03, 0.5186D-03, 0.1495D-02, 0.2288D-02,
22251      #  0.2862D-02, 0.3269D-02, 0.3558D-02, 0.3766D-02, 0.3914D-02,
22252      #  0.4020D-02, 0.4095D-02, 0.3882D-02, 0.3377D-02, 0.2991D-02,
22253      #  0.2703D-02, 0.2580D-02, 0.1839D-02, 0.1469D-02, 0.1086D-02,
22254      #  0.8801D-03, 0.7482D-03, 0.6992D-03, 0.2261D-03, 0.1353D-03,
22255      #  0.2217D-04, 0.d0/
22256 c
22257       data (calcpts(j, 9), j=1,neta) /0.d0, 0.1509D-12, 0.7016D-11,
22258      #  0.4166D-10, 0.1344D-09, 0.3218D-09, 0.4636D-09, 0.2035D-07,
22259      #  0.1142D-06, 0.3489D-06, 0.7914D-06, 0.1111D-05, 0.9461D-05,
22260      #  0.3008D-04, 0.6453D-04, 0.1122D-03, 0.1716D-03, 0.2406D-03,
22261      #  0.3174D-03, 0.4000D-03, 0.4874D-03, 0.1394D-02, 0.2127D-02,
22262      #  0.2660D-02, 0.3038D-02, 0.3311D-02, 0.3506D-02, 0.3646D-02,
22263      #  0.3748D-02, 0.3820D-02, 0.3657D-02, 0.3196D-02, 0.2844D-02,
22264      #  0.2571D-02, 0.2460D-02, 0.1764D-02, 0.1415D-02, 0.1049D-02,
22265      #  0.8515D-03, 0.7264D-03, 0.6773D-03, 0.2231D-03, 0.1328D-03,
22266      #  0.2174D-04, 0.d0/
22267 c
22268       data (calcpts(j,10), j=1,neta) /0.d0, 0.1441D-12, 0.6693D-11,
22269      #  0.3978D-10, 0.1282D-09, 0.3069D-09, 0.4423D-09, 0.1938D-07,
22270      #  0.1087D-06, 0.3317D-06, 0.7515D-06, 0.1054D-05, 0.8930D-05,
22271      #  0.2825D-04, 0.6027D-04, 0.1043D-03, 0.1588D-03, 0.2217D-03,
22272      #  0.2913D-03, 0.3657D-03, 0.4437D-03, 0.1233D-02, 0.1845D-02,
22273      #  0.2274D-02, 0.2570D-02, 0.2775D-02, 0.2918D-02, 0.3018D-02,
22274      #  0.3085D-02, 0.3134D-02, 0.2930D-02, 0.2574D-02, 0.2306D-02,
22275      #  0.2102D-02, 0.2018D-02, 0.1478D-02, 0.1200D-02, 0.9031D-03,
22276      #  0.7391D-03, 0.6339D-03, 0.5926D-03, 0.1992D-03, 0.1202D-03,
22277      #  0.2022D-04, 0.d0/
22278 c
22279       data (calcpts(j,11), j=1,neta) /0.d0, 0.1434D-12, 0.6663D-11,
22280      #  0.3955D-10, 0.1276D-09, 0.3054D-09, 0.4402D-09, 0.1929D-07,
22281      #  0.1082D-06, 0.3299D-06, 0.7475D-06, 0.1048D-05, 0.8874D-05,
22282      #  0.2804D-04, 0.5983D-04, 0.1035D-03, 0.1574D-03, 0.2197D-03,
22283      #  0.2885D-03, 0.3621D-03, 0.4391D-03, 0.1215D-02, 0.1814D-02,
22284      #  0.2226D-02, 0.2508D-02, 0.2697D-02, 0.2825D-02, 0.2909D-02,
22285      #  0.2961D-02, 0.2994D-02, 0.2604D-02, 0.2208D-02, 0.1946D-02,
22286      #  0.1758D-02, 0.1681D-02, 0.1229D-02, 0.1005D-02, 0.7642D-03,
22287      #  0.6311D-03, 0.5433D-03, 0.5108D-03, 0.1779D-03, 0.1087D-03,
22288      #  0.1860D-04, 0.d0/
22289 c
22290       data (calcpts(j,12), j=1,neta) /0.d0, 0.1433D-12, 0.6657D-11,
22291      #  0.3953D-10, 0.1275D-09, 0.3053D-09, 0.4401D-09, 0.1929D-07,
22292      #  0.1081D-06, 0.3297D-06, 0.7470D-06, 0.1048D-05, 0.8868D-05,
22293      #  0.2804D-04, 0.5979D-04, 0.1034D-03, 0.1574D-03, 0.2196D-03,
22294      #  0.2883D-03, 0.3619D-03, 0.4391D-03, 0.1216D-02, 0.1818D-02,
22295      #  0.2238D-02, 0.2525D-02, 0.2720D-02, 0.2855D-02, 0.2943D-02,
22296      #  0.3000D-02, 0.3036D-02, 0.2630D-02, 0.2171D-02, 0.1860D-02,
22297      #  0.1643D-02, 0.1555D-02, 0.1076D-02, 0.8619D-03, 0.6490D-03,
22298      #  0.5361D-03, 0.4630D-03, 0.4353D-03, 0.1560D-03, 0.9623D-04,
22299      #  0.1727D-04, 0.d0/
22300 c
22301       data (calcpts(j,13), j=1,neta) /0.d0, 0.1401D-12, 0.6668D-11,
22302      #  0.3954D-10, 0.1275D-09, 0.3053D-09, 0.4398D-09, 0.1928D-07,
22303      #  0.1081D-06, 0.3296D-06, 0.7470D-06, 0.1048D-05, 0.8868D-05,
22304      #  0.2804D-04, 0.5979D-04, 0.1034D-03, 0.1574D-03, 0.2196D-03,
22305      #  0.2883D-03, 0.3621D-03, 0.4389D-03, 0.1217D-02, 0.1821D-02,
22306      #  0.2244D-02, 0.2535D-02, 0.2736D-02, 0.2876D-02, 0.2970D-02,
22307      #  0.3035D-02, 0.3074D-02, 0.2727D-02, 0.2277D-02, 0.1956D-02,
22308      #  0.1722D-02, 0.1625D-02, 0.1073D-02, 0.8265D-03, 0.5928D-03,
22309      #  0.4775D-03, 0.4067D-03, 0.3804D-03, 0.1358D-03, 0.8456D-04,
22310      #  0.1560D-04, 0.d0/
22311 c
22312       data (calcpts(j,14), j=1,neta) /0.d0, 0.4279D-12, 0.7533D-11,
22313      #  0.4041D-10, 0.1273D-09, 0.3024D-09, 0.4428D-09, 0.1926D-07,
22314      #  0.1081D-06, 0.3296D-06, 0.7469D-06, 0.1048D-05, 0.8865D-05,
22315      #  0.2804D-04, 0.5978D-04, 0.1034D-03, 0.1574D-03, 0.2196D-03,
22316      #  0.2885D-03, 0.3621D-03, 0.4392D-03, 0.1218D-02, 0.1824D-02,
22317      #  0.2249D-02, 0.2541D-02, 0.2744D-02, 0.2886D-02, 0.2982D-02,
22318      #  0.3050D-02, 0.3091D-02, 0.2793D-02, 0.2369D-02, 0.2064D-02,
22319      #  0.1838D-02, 0.1744D-02, 0.1188D-02, 0.9171D-03, 0.6428D-03,
22320      #  0.5015D-03, 0.4140D-03, 0.3816D-03, 0.1146D-03, 0.7074D-04,
22321      #  0.1332D-04, 0.d0/
22322 c
22323       data (calcpts(j,15), j=1,neta) /0.d0, 0.0000D+00, 0.8481D-11,
22324      #  0.1250D-10, 0.1173D-09, 0.3631D-09, 0.4731D-09, 0.1937D-07,
22325      #  0.1080D-06, 0.3296D-06, 0.7471D-06, 0.1048D-05, 0.8865D-05,
22326      #  0.2802D-04, 0.5976D-04, 0.1034D-03, 0.1574D-03, 0.2196D-03,
22327      #  0.2885D-03, 0.3619D-03, 0.4391D-03, 0.1218D-02, 0.1824D-02,
22328      #  0.2249D-02, 0.2543D-02, 0.2745D-02, 0.2888D-02, 0.2985D-02,
22329      #  0.3051D-02, 0.3095D-02, 0.2802D-02, 0.2385D-02, 0.2084D-02,
22330      #  0.1860D-02, 0.1769D-02, 0.1219D-02, 0.9522D-03, 0.6765D-03,
22331      #  0.5313D-03, 0.4398D-03, 0.4059D-03, 0.1124D-03, 0.6680D-04,
22332      #  0.1251D-04, 0.d0/
22333 c
22334       data (aeta(j), j = 1,neta) /small, 0.1000d-02, 0.3000d-02,
22335      #  0.5000d-02, 0.7000d-02, 0.9000d-02, 0.1000d-01, 0.3000d-01, 
22336      #  0.5000d-01, 0.7000d-01, 0.9000d-01, 0.1000d+00, 0.2000d+00, 
22337      #  0.3000d+00, 0.4000d+00, 0.5000d+00, 0.6000d+00, 0.7000d+00, 
22338      #  0.8000d+00, 0.9000d+00, 0.1000d+01, 0.2000d+01, 0.3000d+01,
22339      #  0.4000d+01, 0.5000d+01, 0.6000d+01, 0.7000d+01, 0.8000d+01, 
22340      #  0.9000d+01, 0.1000d+02, 0.3000d+02, 0.5000d+02, 0.7000d+02,
22341      #  0.9000d+02, 0.1000d+03, 0.2000d+03, 0.3000d+03, 0.5000d+03,
22342      #  0.7000d+03, 0.9000d+03, 0.1000d+04, 0.5000d+04, 0.1000d+05,
22343      #  0.1000d+06, huge/
22344 c
22345       data (axi(j), j = 1,nxi) /0.1000d-01, 0.3162d-01, 0.1000d+00,
22346      #  0.3162d+00, 0.1000d+01, 0.2500d+01, 0.3162d+01, 0.7500d+01, 
22347      #  0.1000d+02, 0.3162d+02, 0.1000d+03, 0.3162d+03, 0.1000d+04,
22348      #  0.5000d+04, 0.1000d+05/
22349 c
22350 c  here we have to choose the array elements that will go into the 
22351 c  interpolation.
22352       call locate(aeta, neta, eta, ieta)
22353       call locate(axi, nxi, xi, ixi)
22354       if (ieta .le. 1) ieta = 1
22355       if (ieta .gt. (neta - 1)) ieta = neta - 1
22356       if (ixi .le. 1) ixi = 1
22357       if (ixi .gt. (nxi - 1)) ixi = nxi - 1
22358       y1 = calcpts(ieta,ixi)
22359       y2 = calcpts(ieta+1,ixi)
22360       y3 = calcpts(ieta+1,ixi+1)
22361       y4 = calcpts(ieta,ixi+1)
22362 c interpolating between the points
22363       t = (eta - aeta(ieta))/(aeta(ieta + 1) - aeta(ieta))
22364       u = (xi - axi(ixi))/(axi(ixi + 1) - axi(ixi))
22365       h1f_LTq = (1.d0 - t)*(1.d0 - u)*y1 + t*(1.d0 - u)*y2 +
22366      #           t*u*y3 + (1.d0 - t)*u*y4
22367
22368       return
22369       end
22370
22371 c     =========================================
22372       double precision function h1_LTq(eta,xi)
22373 c     =========================================
22374
22375 c     eq (28) in PLB347 (1995) 143 - 151 for the transverse piece
22376 c     MSbar scheme
22377 c     This routine is called subd1tq in the original code.
22378 c     Gives h1_LTq for Q2 > 1.5 GeV2 (use h1f_LTq for Q2 < 1.5 GeV2)
22379 c     Called sclqt in updated code (03/06/96).
22380
22381       implicit none
22382       integer neta, nxi
22383       parameter (neta = 73, nxi = 49)
22384       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
22385       double precision eta, xi, dleta, dlxi
22386       double precision pxi, peta, f(-1:1), delxi, deleta
22387       integer j, ieta, ixi
22388
22389       data (calcpts(j, 1), j = 1,neta) /0.2418D-16, 0.9248D-16,
22390      #    0.3534D-15, 0.1349D-14, 0.5144D-14, 0.1956D-13, 0.7412D-13,
22391      #    0.2795D-12, 0.1046D-11, 0.3876D-11, 0.1417D-10, 0.5081D-10,
22392      #    0.1778D-09, 0.6021D-09, 0.1964D-08, 0.6116D-08, 0.1817D-07,
22393      #    0.5128D-07, 0.1377D-06, 0.3524D-06, 0.8631D-06, 0.2031D-05,
22394      #    0.4617D-05, 0.1017D-04, 0.2177D-04, 0.4545D-04, 0.9263D-04,
22395      #    0.1844D-03, 0.3577D-03, 0.6750D-03, 0.1232D-02, 0.2160D-02,
22396      #    0.3605D-02, 0.5666D-02, 0.8313D-02, 0.1131D-01, 0.1428D-01,
22397      #    0.1683D-01, 0.1868D-01, 0.1970D-01, 0.1988D-01, 0.1925D-01,
22398      #    0.1794D-01, 0.1616D-01, 0.1410D-01, 0.1198D-01, 0.9952D-02,
22399      #    0.8106D-02, 0.6494D-02, 0.5132D-02, 0.4007D-02, 0.3097D-02,
22400      #    0.2373D-02, 0.1806D-02, 0.1364D-02, 0.1025D-02, 0.7660D-03,
22401      #    0.5700D-03, 0.4222D-03, 0.3117D-03, 0.2294D-03, 0.1682D-03,
22402      #    0.1230D-03, 0.8970D-04, 0.6527D-04, 0.4739D-04, 0.3434D-04,
22403      #    0.2483D-04, 0.1791D-04, 0.1291D-04, 0.9285D-05, 0.6669D-05,
22404      #    0.4784D-05/
22405
22406       data (calcpts(j, 2), j = 1,neta) /0.1123D-16, 0.4299D-16,
22407      #    0.1644D-15, 0.6287D-15, 0.2400D-14, 0.9147D-14, 0.3479D-13,
22408      #    0.1318D-12, 0.4970D-12, 0.1860D-11, 0.6894D-11, 0.2520D-10,
22409      #    0.9034D-10, 0.3161D-09, 0.1071D-08, 0.3488D-08, 0.1087D-07,
22410      #    0.3229D-07, 0.9114D-07, 0.2447D-06, 0.6258D-06, 0.1532D-05,
22411      #    0.3602D-05, 0.8169D-05, 0.1794D-04, 0.3830D-04, 0.7952D-04,
22412      #    0.1608D-03, 0.3164D-03, 0.6040D-03, 0.1114D-02, 0.1971D-02,
22413      #    0.3317D-02, 0.5253D-02, 0.7759D-02, 0.1063D-01, 0.1349D-01,
22414      #    0.1597D-01, 0.1781D-01, 0.1886D-01, 0.1908D-01, 0.1852D-01,
22415      #    0.1731D-01, 0.1561D-01, 0.1366D-01, 0.1163D-01, 0.9669D-02,
22416      #    0.7886D-02, 0.6324D-02, 0.5003D-02, 0.3910D-02, 0.3025D-02,
22417      #    0.2321D-02, 0.1767D-02, 0.1336D-02, 0.1004D-02, 0.7509D-03,
22418      #    0.5590D-03, 0.4145D-03, 0.3060D-03, 0.2253D-03, 0.1653D-03,
22419      #    0.1209D-03, 0.8825D-04, 0.6423D-04, 0.4665D-04, 0.3381D-04,
22420      #    0.2445D-04, 0.1765D-04, 0.1272D-04, 0.9156D-05, 0.6579D-05,
22421      #    0.4719D-05/
22422
22423       data (calcpts(j, 3), j = 1,neta) /0.5218D-17, 0.1998D-16,
22424      #    0.7647D-16, 0.2925D-15, 0.1118D-14, 0.4268D-14, 0.1626D-13,
22425      #    0.6185D-13, 0.2343D-12, 0.8836D-12, 0.3308D-11, 0.1226D-10,
22426      #    0.4481D-10, 0.1607D-09, 0.5619D-09, 0.1904D-08, 0.6199D-08,
22427      #    0.1932D-07, 0.5739D-07, 0.1619D-06, 0.4344D-06, 0.1110D-05,
22428      #    0.2715D-05, 0.6374D-05, 0.1442D-04, 0.3158D-04, 0.6700D-04,
22429      #    0.1381D-03, 0.2762D-03, 0.5346D-03, 0.9981D-03, 0.1785D-02,
22430      #    0.3032D-02, 0.4842D-02, 0.7208D-02, 0.9939D-02, 0.1270D-01,
22431      #    0.1512D-01, 0.1694D-01, 0.1800D-01, 0.1828D-01, 0.1781D-01,
22432      #    0.1668D-01, 0.1509D-01, 0.1322D-01, 0.1127D-01, 0.9386D-02,
22433      #    0.7664D-02, 0.6155D-02, 0.4874D-02, 0.3813D-02, 0.2953D-02,
22434      #    0.2267D-02, 0.1726D-02, 0.1307D-02, 0.9832D-03, 0.7359D-03,
22435      #    0.5481D-03, 0.4065D-03, 0.3005D-03, 0.2212D-03, 0.1624D-03,
22436      #    0.1189D-03, 0.8678D-04, 0.6320D-04, 0.4592D-04, 0.3329D-04,
22437      #    0.2409D-04, 0.1740D-04, 0.1254D-04, 0.9027D-05, 0.6488D-05,
22438      #    0.4656D-05/
22439
22440       data (calcpts(j, 4), j = 1,neta) /0.2424D-17, 0.9281D-17,
22441      #    0.3554D-16, 0.1360D-15, 0.5202D-15, 0.1988D-14, 0.7590D-14,
22442      #    0.2893D-13, 0.1100D-12, 0.4168D-12, 0.1572D-11, 0.5883D-11,
22443      #    0.2180D-10, 0.7967D-10, 0.2858D-09, 0.9992D-09, 0.3381D-08,
22444      #    0.1102D-07, 0.3435D-07, 0.1020D-06, 0.2876D-06, 0.7709D-06,
22445      #    0.1968D-05, 0.4806D-05, 0.1125D-04, 0.2538D-04, 0.5526D-04,
22446      #    0.1164D-03, 0.2373D-03, 0.4670D-03, 0.8841D-03, 0.1601D-02,
22447      #    0.2748D-02, 0.4434D-02, 0.6657D-02, 0.9254D-02, 0.1191D-01,
22448      #    0.1426D-01, 0.1607D-01, 0.1716D-01, 0.1749D-01, 0.1710D-01,
22449      #    0.1605D-01, 0.1455D-01, 0.1278D-01, 0.1091D-01, 0.9102D-02,
22450      #    0.7443D-02, 0.5985D-02, 0.4745D-02, 0.3717D-02, 0.2881D-02,
22451      #    0.2214D-02, 0.1688D-02, 0.1278D-02, 0.9624D-03, 0.7208D-03,
22452      #    0.5372D-03, 0.3987D-03, 0.2948D-03, 0.2172D-03, 0.1595D-03,
22453      #    0.1168D-03, 0.8532D-04, 0.6216D-04, 0.4518D-04, 0.3276D-04,
22454      #    0.2371D-04, 0.1713D-04, 0.1236D-04, 0.8898D-05, 0.6398D-05,
22455      #    0.4592D-05/
22456
22457       data (calcpts(j, 5), j = 1,neta) /0.1125D-17, 0.4310D-17,
22458      #    0.1650D-16, 0.6320D-16, 0.2418D-15, 0.9251D-15, 0.3535D-14,
22459      #    0.1350D-13, 0.5145D-13, 0.1956D-12, 0.7412D-12, 0.2795D-11,
22460      #    0.1046D-10, 0.3878D-10, 0.1417D-09, 0.5081D-09, 0.1776D-08,
22461      #    0.6011D-08, 0.1959D-07, 0.6104D-07, 0.1810D-06, 0.5103D-06,
22462      #    0.1367D-05, 0.3486D-05, 0.8489D-05, 0.1981D-04, 0.4444D-04,
22463      #    0.9606D-04, 0.2001D-03, 0.4016D-03, 0.7731D-03, 0.1420D-02,
22464      #    0.2469D-02, 0.4028D-02, 0.6110D-02, 0.8570D-02, 0.1111D-01,
22465      #    0.1341D-01, 0.1520D-01, 0.1631D-01, 0.1670D-01, 0.1638D-01,
22466      #    0.1544D-01, 0.1402D-01, 0.1233D-01, 0.1055D-01, 0.8818D-02,
22467      #    0.7222D-02, 0.5816D-02, 0.4617D-02, 0.3619D-02, 0.2809D-02,
22468      #    0.2160D-02, 0.1649D-02, 0.1250D-02, 0.9416D-03, 0.7056D-03,
22469      #    0.5263D-03, 0.3909D-03, 0.2892D-03, 0.2132D-03, 0.1566D-03,
22470      #    0.1148D-03, 0.8385D-04, 0.6111D-04, 0.4444D-04, 0.3225D-04,
22471      #    0.2336D-04, 0.1688D-04, 0.1217D-04, 0.8769D-05, 0.6306D-05,
22472      #    0.4528D-05/
22473
22474       data (calcpts(j, 6), j = 1,neta) /0.5224D-18, 0.2001D-17,
22475      #    0.7665D-17, 0.2936D-16, 0.1124D-15, 0.4301D-15, 0.1646D-14,
22476      #    0.6288D-14, 0.2400D-13, 0.9149D-13, 0.3479D-12, 0.1318D-11,
22477      #    0.4969D-11, 0.1860D-10, 0.6894D-10, 0.2519D-09, 0.9032D-09,
22478      #    0.3154D-08, 0.1068D-07, 0.3480D-07, 0.1084D-06, 0.3215D-06,
22479      #    0.9049D-06, 0.2420D-05, 0.6157D-05, 0.1495D-04, 0.3471D-04,
22480      #    0.7731D-04, 0.1653D-03, 0.3392D-03, 0.6657D-03, 0.1244D-02,
22481      #    0.2195D-02, 0.3627D-02, 0.5567D-02, 0.7890D-02, 0.1033D-01,
22482      #    0.1256D-01, 0.1432D-01, 0.1546D-01, 0.1592D-01, 0.1566D-01,
22483      #    0.1480D-01, 0.1348D-01, 0.1189D-01, 0.1020D-01, 0.8535D-02,
22484      #    0.7002D-02, 0.5646D-02, 0.4488D-02, 0.3524D-02, 0.2738D-02,
22485      #    0.2108D-02, 0.1610D-02, 0.1221D-02, 0.9207D-03, 0.6905D-03,
22486      #    0.5154D-03, 0.3830D-03, 0.2835D-03, 0.2091D-03, 0.1537D-03,
22487      #    0.1127D-03, 0.8240D-04, 0.6008D-04, 0.4371D-04, 0.3172D-04,
22488      #    0.2298D-04, 0.1662D-04, 0.1199D-04, 0.8640D-05, 0.6216D-05,
22489      #    0.4464D-05/
22490
22491       data (calcpts(j, 7), j = 1,neta) /0.2426D-18, 0.9293D-18,
22492      #    0.3560D-17, 0.1363D-16, 0.5220D-16, 0.1998D-15, 0.7649D-15,
22493      #    0.2925D-14, 0.1118D-13, 0.4269D-13, 0.1628D-12, 0.6186D-12,
22494      #    0.2344D-11, 0.8837D-11, 0.3308D-10, 0.1226D-09, 0.4479D-09,
22495      #    0.1605D-08, 0.5606D-08, 0.1898D-07, 0.6182D-07, 0.1925D-06,
22496      #    0.5700D-06, 0.1602D-05, 0.4277D-05, 0.1085D-04, 0.2621D-04,
22497      #    0.6041D-04, 0.1331D-03, 0.2804D-03, 0.5631D-03, 0.1073D-02,
22498      #    0.1928D-02, 0.3234D-02, 0.5030D-02, 0.7214D-02, 0.9542D-02,
22499      #    0.1171D-01, 0.1346D-01, 0.1462D-01, 0.1512D-01, 0.1494D-01,
22500      #    0.1417D-01, 0.1295D-01, 0.1145D-01, 0.9839D-02, 0.8252D-02,
22501      #    0.6782D-02, 0.5476D-02, 0.4359D-02, 0.3428D-02, 0.2665D-02,
22502      #    0.2054D-02, 0.1571D-02, 0.1193D-02, 0.8998D-03, 0.6755D-03,
22503      #    0.5045D-03, 0.3752D-03, 0.2780D-03, 0.2050D-03, 0.1509D-03,
22504      #    0.1107D-03, 0.8093D-04, 0.5904D-04, 0.4298D-04, 0.3120D-04,
22505      #    0.2261D-04, 0.1635D-04, 0.1181D-04, 0.8511D-05, 0.6124D-05,
22506      #    0.4401D-05/
22507
22508       data (calcpts(j, 8), j = 1,neta) /0.1126D-18, 0.4314D-18,
22509      #    0.1653D-17, 0.6330D-17, 0.2424D-16, 0.9284D-16, 0.3554D-15,
22510      #    0.1360D-14, 0.5202D-14, 0.1989D-13, 0.7591D-13, 0.2894D-12,
22511      #    0.1100D-11, 0.4169D-11, 0.1572D-10, 0.5882D-10, 0.2180D-09,
22512      #    0.7962D-09, 0.2850D-08, 0.9960D-08, 0.3371D-07, 0.1097D-06,
22513      #    0.3413D-06, 0.1010D-05, 0.2832D-05, 0.7536D-05, 0.1902D-04,
22514      #    0.4563D-04, 0.1041D-03, 0.2262D-03, 0.4664D-03, 0.9094D-03,
22515      #    0.1667D-02, 0.2847D-02, 0.4498D-02, 0.6543D-02, 0.8759D-02,
22516      #    0.1086D-01, 0.1259D-01, 0.1378D-01, 0.1432D-01, 0.1422D-01,
22517      #    0.1354D-01, 0.1241D-01, 0.1101D-01, 0.9482D-02, 0.7970D-02,
22518      #    0.6561D-02, 0.5307D-02, 0.4230D-02, 0.3330D-02, 0.2594D-02,
22519      #    0.2001D-02, 0.1532D-02, 0.1164D-02, 0.8790D-03, 0.6603D-03,
22520      #    0.4935D-03, 0.3674D-03, 0.2723D-03, 0.2010D-03, 0.1480D-03,
22521      #    0.1086D-03, 0.7947D-04, 0.5801D-04, 0.4224D-04, 0.3068D-04,
22522      #    0.2224D-04, 0.1610D-04, 0.1163D-04, 0.8382D-05, 0.6033D-05,
22523      #    0.4337D-05/
22524
22525       data (calcpts(j, 9), j = 1,neta) /0.5227D-19, 0.2003D-18,
22526      #    0.7671D-18, 0.2938D-17, 0.1126D-16, 0.4311D-16, 0.1652D-15,
22527      #    0.6321D-15, 0.2419D-14, 0.9252D-14, 0.3537D-13, 0.1350D-12,
22528      #    0.5145D-12, 0.1956D-11, 0.7413D-11, 0.2794D-10, 0.1046D-09,
22529      #    0.3874D-09, 0.1415D-08, 0.5064D-08, 0.1770D-07, 0.5985D-07,
22530      #    0.1946D-06, 0.6045D-06, 0.1785D-05, 0.4993D-05, 0.1322D-04,
22531      #    0.3315D-04, 0.7875D-04, 0.1771D-03, 0.3768D-03, 0.7551D-03,
22532      #    0.1417D-02, 0.2472D-02, 0.3978D-02, 0.5880D-02, 0.7983D-02,
22533      #    0.1002D-01, 0.1173D-01, 0.1293D-01, 0.1353D-01, 0.1351D-01,
22534      #    0.1291D-01, 0.1188D-01, 0.1056D-01, 0.9123D-02, 0.7686D-02,
22535      #    0.6340D-02, 0.5138D-02, 0.4103D-02, 0.3234D-02, 0.2522D-02,
22536      #    0.1947D-02, 0.1492D-02, 0.1135D-02, 0.8582D-03, 0.6452D-03,
22537      #    0.4827D-03, 0.3594D-03, 0.2666D-03, 0.1969D-03, 0.1451D-03,
22538      #    0.1065D-03, 0.7800D-04, 0.5697D-04, 0.4149D-04, 0.3017D-04,
22539      #    0.2187D-04, 0.1584D-04, 0.1144D-04, 0.8253D-05, 0.5943D-05,
22540      #    0.4273D-05/
22541
22542       data (calcpts(j,10), j = 1,neta) /0.2427D-19, 0.9297D-19,
22543      #    0.3561D-18, 0.1364D-17, 0.5227D-17, 0.2003D-16, 0.7668D-16,
22544      #    0.2937D-15, 0.1124D-14, 0.4302D-14, 0.1646D-13, 0.6290D-13,
22545      #    0.2401D-12, 0.9151D-12, 0.3479D-11, 0.1318D-10, 0.4970D-10,
22546      #    0.1860D-09, 0.6888D-09, 0.2511D-08, 0.8997D-08, 0.3141D-07,
22547      #    0.1062D-06, 0.3449D-06, 0.1069D-05, 0.3147D-05, 0.8768D-05,
22548      #    0.2307D-04, 0.5728D-04, 0.1342D-03, 0.2958D-03, 0.6119D-03,
22549      #    0.1181D-02, 0.2110D-02, 0.3471D-02, 0.5228D-02, 0.7215D-02,
22550      #    0.9179D-02, 0.1087D-01, 0.1209D-01, 0.1275D-01, 0.1279D-01,
22551      #    0.1229D-01, 0.1135D-01, 0.1012D-01, 0.8766D-02, 0.7403D-02,
22552      #    0.6120D-02, 0.4968D-02, 0.3974D-02, 0.3136D-02, 0.2449D-02,
22553      #    0.1895D-02, 0.1453D-02, 0.1107D-02, 0.8375D-03, 0.6302D-03,
22554      #    0.4718D-03, 0.3516D-03, 0.2610D-03, 0.1931D-03, 0.1422D-03,
22555      #    0.1045D-03, 0.7655D-04, 0.5592D-04, 0.4075D-04, 0.2964D-04,
22556      #    0.2151D-04, 0.1557D-04, 0.1126D-04, 0.8124D-05, 0.5852D-05,
22557      #    0.4209D-05/
22558
22559       data (calcpts(j,11), j = 1,neta) /0.1127D-19, 0.4317D-19,
22560      #    0.1653D-18, 0.6334D-18, 0.2427D-17, 0.9297D-17, 0.3561D-16,
22561      #    0.1364D-15, 0.5223D-15, 0.2000D-14, 0.7653D-14, 0.2927D-13,
22562      #    0.1119D-12, 0.4270D-12, 0.1627D-11, 0.6187D-11, 0.2344D-10,
22563      #    0.8835D-10, 0.3306D-09, 0.1224D-08, 0.4463D-08, 0.1597D-07,
22564      #    0.5574D-07, 0.1881D-06, 0.6101D-06, 0.1885D-05, 0.5529D-05,
22565      #    0.1531D-04, 0.3992D-04, 0.9777D-04, 0.2246D-03, 0.4818D-03,
22566      #    0.9605D-03, 0.1767D-02, 0.2981D-02, 0.4590D-02, 0.6457D-02,
22567      #    0.8346D-02, 0.1001D-01, 0.1125D-01, 0.1196D-01, 0.1208D-01,
22568      #    0.1166D-01, 0.1081D-01, 0.9681D-02, 0.8409D-02, 0.7119D-02,
22569      #    0.5898D-02, 0.4799D-02, 0.3844D-02, 0.3040D-02, 0.2378D-02,
22570      #    0.1841D-02, 0.1414D-02, 0.1078D-02, 0.8166D-03, 0.6150D-03,
22571      #    0.4608D-03, 0.3438D-03, 0.2553D-03, 0.1890D-03, 0.1393D-03,
22572      #    0.1024D-03, 0.7509D-04, 0.5489D-04, 0.4002D-04, 0.2911D-04,
22573      #    0.2114D-04, 0.1531D-04, 0.1108D-04, 0.7995D-05, 0.5762D-05,
22574      #    0.4146D-05/
22575
22576       data (calcpts(j,12), j = 1,neta) /0.5232D-20, 0.2004D-19,
22577      #    0.7680D-19, 0.2941D-18, 0.1127D-17, 0.4318D-17, 0.1654D-16,
22578      #    0.6336D-16, 0.2427D-15, 0.9293D-15, 0.3558D-14, 0.1361D-13,
22579      #    0.5208D-13, 0.1991D-12, 0.7597D-12, 0.2895D-11, 0.1101D-10,
22580      #    0.4170D-10, 0.1571D-09, 0.5877D-09, 0.2175D-08, 0.7928D-08,
22581      #    0.2835D-07, 0.9882D-07, 0.3330D-06, 0.1077D-05, 0.3317D-05,
22582      #    0.9666D-05, 0.2652D-04, 0.6827D-04, 0.1641D-03, 0.3672D-03,
22583      #    0.7601D-03, 0.1446D-02, 0.2514D-02, 0.3972D-02, 0.5714D-02,
22584      #    0.7524D-02, 0.9161D-02, 0.1042D-01, 0.1117D-01, 0.1137D-01,
22585      #    0.1104D-01, 0.1028D-01, 0.9240D-02, 0.8052D-02, 0.6837D-02,
22586      #    0.5678D-02, 0.4629D-02, 0.3716D-02, 0.2943D-02, 0.2306D-02,
22587      #    0.1788D-02, 0.1375D-02, 0.1049D-02, 0.7957D-03, 0.5998D-03,
22588      #    0.4500D-03, 0.3359D-03, 0.2498D-03, 0.1850D-03, 0.1365D-03,
22589      #    0.1004D-03, 0.7362D-04, 0.5385D-04, 0.3929D-04, 0.2861D-04,
22590      #    0.2078D-04, 0.1506D-04, 0.1089D-04, 0.7866D-05, 0.5670D-05,
22591      #    0.4082D-05/
22592
22593       data (calcpts(j,13), j = 1,neta) /0.2432D-20, 0.9314D-20,
22594      #    0.3569D-19, 0.1367D-18, 0.5238D-18, 0.2007D-17, 0.7688D-17,
22595      #    0.2945D-16, 0.1128D-15, 0.4320D-15, 0.1654D-14, 0.6333D-14,
22596      #    0.2424D-13, 0.9270D-13, 0.3543D-12, 0.1352D-11, 0.5153D-11,
22597      #    0.1959D-10, 0.7419D-10, 0.2795D-09, 0.1045D-08, 0.3861D-08,
22598      #    0.1408D-07, 0.5031D-07, 0.1750D-06, 0.5883D-06, 0.1896D-05,
22599      #    0.5805D-05, 0.1678D-04, 0.4548D-04, 0.1150D-03, 0.2696D-03,
22600      #    0.5826D-03, 0.1153D-02, 0.2075D-02, 0.3379D-02, 0.4991D-02,
22601      #    0.6716D-02, 0.8320D-02, 0.9593D-02, 0.1039D-01, 0.1066D-01,
22602      #    0.1041D-01, 0.9750D-02, 0.8799D-02, 0.7695D-02, 0.6554D-02,
22603      #    0.5457D-02, 0.4459D-02, 0.3588D-02, 0.2847D-02, 0.2234D-02,
22604      #    0.1734D-02, 0.1336D-02, 0.1021D-02, 0.7749D-03, 0.5849D-03,
22605      #    0.4391D-03, 0.3281D-03, 0.2441D-03, 0.1809D-03, 0.1336D-03,
22606      #    0.9832D-04, 0.7217D-04, 0.5282D-04, 0.3855D-04, 0.2808D-04,
22607      #    0.2040D-04, 0.1480D-04, 0.1071D-04, 0.7737D-05, 0.5580D-05,
22608      #    0.4019D-05/
22609
22610       data (calcpts(j,14), j = 1,neta) /0.1131D-20, 0.4332D-20,
22611      #    0.1661D-19, 0.6360D-19, 0.2436D-18, 0.9334D-18, 0.3576D-17,
22612      #    0.1370D-16, 0.5248D-16, 0.2010D-15, 0.7700D-15, 0.2948D-14,
22613      #    0.1129D-13, 0.4318D-13, 0.1652D-12, 0.6312D-12, 0.2409D-11,
22614      #    0.9181D-11, 0.3489D-10, 0.1321D-09, 0.4977D-09, 0.1860D-08,
22615      #    0.6866D-08, 0.2501D-07, 0.8922D-07, 0.3097D-06, 0.1037D-05,
22616      #    0.3326D-05, 0.1010D-04, 0.2886D-04, 0.7695D-04, 0.1899D-03,
22617      #    0.4307D-03, 0.8910D-03, 0.1670D-02, 0.2820D-02, 0.4293D-02,
22618      #    0.5926D-02, 0.7491D-02, 0.8774D-02, 0.9617D-02, 0.9952D-02,
22619      #    0.9792D-02, 0.9219D-02, 0.8360D-02, 0.7339D-02, 0.6272D-02,
22620      #    0.5238D-02, 0.4292D-02, 0.3459D-02, 0.2751D-02, 0.2162D-02,
22621      #    0.1682D-02, 0.1296D-02, 0.9921D-03, 0.7541D-03, 0.5697D-03,
22622      #    0.4281D-03, 0.3203D-03, 0.2384D-03, 0.1769D-03, 0.1307D-03,
22623      #    0.9627D-04, 0.7069D-04, 0.5178D-04, 0.3781D-04, 0.2755D-04,
22624      #    0.2004D-04, 0.1454D-04, 0.1053D-04, 0.7608D-05, 0.5489D-05,
22625      #    0.3954D-05/
22626
22627       data (calcpts(j,15), j = 1,neta) /0.5274D-21, 0.2020D-20,
22628      #    0.7740D-20, 0.2965D-19, 0.1136D-18, 0.4353D-18, 0.1668D-17,
22629      #    0.6389D-17, 0.2448D-16, 0.9377D-16, 0.3591D-15, 0.1376D-14,
22630      #    0.5267D-14, 0.2016D-13, 0.7716D-13, 0.2951D-12, 0.1128D-11,
22631      #    0.4303D-11, 0.1640D-10, 0.6230D-10, 0.2358D-09, 0.8878D-09,
22632      #    0.3311D-08, 0.1223D-07, 0.4447D-07, 0.1583D-06, 0.5478D-06,
22633      #    0.1825D-05, 0.5810D-05, 0.1746D-04, 0.4913D-04, 0.1280D-03,
22634      #    0.3062D-03, 0.6659D-03, 0.1307D-02, 0.2299D-02, 0.3630D-02,
22635      #    0.5162D-02, 0.6679D-02, 0.7965D-02, 0.8849D-02, 0.9251D-02,
22636      #    0.9173D-02, 0.8691D-02, 0.7920D-02, 0.6984D-02, 0.5990D-02,
22637      #    0.5018D-02, 0.4122D-02, 0.3330D-02, 0.2654D-02, 0.2090D-02,
22638      #    0.1628D-02, 0.1257D-02, 0.9634D-03, 0.7332D-03, 0.5546D-03,
22639      #    0.4172D-03, 0.3123D-03, 0.2328D-03, 0.1728D-03, 0.1278D-03,
22640      #    0.9422D-04, 0.6924D-04, 0.5073D-04, 0.3708D-04, 0.2703D-04,
22641      #    0.1967D-04, 0.1428D-04, 0.1034D-04, 0.7479D-05, 0.5399D-05,
22642      #    0.3889D-05/
22643
22644       data (calcpts(j,16), j = 1,neta) /0.2473D-21, 0.9471D-21,
22645      #    0.3629D-20, 0.1390D-19, 0.5327D-19, 0.2040D-18, 0.7818D-18,
22646      #    0.2995D-17, 0.1148D-16, 0.4397D-16, 0.1685D-15, 0.6450D-15,
22647      #    0.2471D-14, 0.9459D-14, 0.3621D-13, 0.1386D-12, 0.5300D-12,
22648      #    0.2025D-11, 0.7727D-11, 0.2943D-10, 0.1118D-09, 0.4230D-09,
22649      #    0.1591D-08, 0.5928D-08, 0.2187D-07, 0.7937D-07, 0.2817D-06,
22650      #    0.9701D-06, 0.3212D-05, 0.1012D-04, 0.2997D-04, 0.8255D-04,
22651      #    0.2088D-03, 0.4799D-03, 0.9918D-03, 0.1830D-02, 0.3011D-02,
22652      #    0.4431D-02, 0.5892D-02, 0.7172D-02, 0.8091D-02, 0.8556D-02,
22653      #    0.8559D-02, 0.8166D-02, 0.7484D-02, 0.6629D-02, 0.5708D-02,
22654      #    0.4797D-02, 0.3953D-02, 0.3202D-02, 0.2558D-02, 0.2018D-02,
22655      #    0.1575D-02, 0.1218D-02, 0.9348D-03, 0.7124D-03, 0.5396D-03,
22656      #    0.4063D-03, 0.3045D-03, 0.2271D-03, 0.1688D-03, 0.1249D-03,
22657      #    0.9216D-04, 0.6777D-04, 0.4969D-04, 0.3635D-04, 0.2652D-04,
22658      #    0.1931D-04, 0.1402D-04, 0.1016D-04, 0.7350D-05, 0.5307D-05,
22659      #    0.3826D-05/
22660
22661       data (calcpts(j,17), j = 1,neta) /0.1173D-21, 0.4490D-21,
22662      #    0.1721D-20, 0.6589D-20, 0.2525D-19, 0.9674D-19, 0.3706D-18,
22663      #    0.1420D-17, 0.5441D-17, 0.2084D-16, 0.7985D-16, 0.3059D-15,
22664      #    0.1172D-14, 0.4486D-14, 0.1718D-13, 0.6576D-13, 0.2515D-12,
22665      #    0.9621D-12, 0.3677D-11, 0.1403D-10, 0.5340D-10, 0.2028D-09,
22666      #    0.7668D-09, 0.2877D-08, 0.1072D-07, 0.3948D-07, 0.1429D-06,
22667      #    0.5049D-06, 0.1728D-05, 0.5670D-05, 0.1761D-04, 0.5118D-04,
22668      #    0.1370D-03, 0.3338D-03, 0.7298D-03, 0.1420D-02, 0.2446D-02,
22669      #    0.3744D-02, 0.5136D-02, 0.6400D-02, 0.7347D-02, 0.7871D-02,
22670      #    0.7950D-02, 0.7644D-02, 0.7049D-02, 0.6275D-02, 0.5426D-02,
22671      #    0.4578D-02, 0.3783D-02, 0.3074D-02, 0.2460D-02, 0.1946D-02,
22672      #    0.1521D-02, 0.1179D-02, 0.9061D-03, 0.6915D-03, 0.5244D-03,
22673      #    0.3954D-03, 0.2965D-03, 0.2215D-03, 0.1647D-03, 0.1220D-03,
22674      #    0.9011D-04, 0.6632D-04, 0.4866D-04, 0.3561D-04, 0.2600D-04,
22675      #    0.1893D-04, 0.1376D-04, 0.9977D-05, 0.7221D-05, 0.5217D-05,
22676      #    0.3762D-05/
22677
22678       data (calcpts(j,18), j = 1,neta) /0.5694D-22, 0.2178D-21,
22679      #    0.8340D-21, 0.3197D-20, 0.1224D-19, 0.4692D-19, 0.1797D-18,
22680      #    0.6886D-18, 0.2639D-17, 0.1011D-16, 0.3873D-16, 0.1484D-15,
22681      #    0.5682D-15, 0.2177D-14, 0.8335D-14, 0.3192D-13, 0.1222D-12,
22682      #    0.4674D-12, 0.1787D-11, 0.6827D-11, 0.2604D-10, 0.9911D-10,
22683      #    0.3760D-09, 0.1421D-08, 0.5325D-08, 0.1981D-07, 0.7272D-07,
22684      #    0.2622D-06, 0.9210D-06, 0.3125D-05, 0.1012D-04, 0.3086D-04,
22685      #    0.8726D-04, 0.2252D-03, 0.5222D-03, 0.1074D-02, 0.1948D-02,
22686      #    0.3114D-02, 0.4422D-02, 0.5658D-02, 0.6624D-02, 0.7197D-02,
22687      #    0.7350D-02, 0.7127D-02, 0.6615D-02, 0.5923D-02, 0.5145D-02,
22688      #    0.4359D-02, 0.3615D-02, 0.2946D-02, 0.2364D-02, 0.1873D-02,
22689      #    0.1468D-02, 0.1140D-02, 0.8775D-03, 0.6706D-03, 0.5093D-03,
22690      #    0.3844D-03, 0.2888D-03, 0.2159D-03, 0.1607D-03, 0.1192D-03,
22691      #    0.8805D-04, 0.6485D-04, 0.4762D-04, 0.3488D-04, 0.2547D-04,
22692      #    0.1857D-04, 0.1350D-04, 0.9792D-05, 0.7092D-05, 0.5126D-05,
22693      #    0.3699D-05/
22694
22695       data (calcpts(j,19), j = 1,neta) /0.2892D-22, 0.1104D-21,
22696      #    0.4228D-21, 0.1620D-20, 0.6209D-20, 0.2379D-19, 0.9114D-19,
22697      #    0.3492D-18, 0.1338D-17, 0.5126D-17, 0.1964D-16, 0.7522D-16,
22698      #    0.2882D-15, 0.1104D-14, 0.4228D-14, 0.1618D-13, 0.6200D-13,
22699      #    0.2373D-12, 0.9077D-12, 0.3470D-11, 0.1325D-10, 0.5052D-10,
22700      #    0.1922D-09, 0.7287D-09, 0.2744D-08, 0.1028D-07, 0.3815D-07,
22701      #    0.1394D-06, 0.4995D-06, 0.1739D-05, 0.5822D-05, 0.1850D-04,
22702      #    0.5489D-04, 0.1494D-03, 0.3666D-03, 0.7981D-03, 0.1525D-02,
22703      #    0.2552D-02, 0.3762D-02, 0.4955D-02, 0.5926D-02, 0.6543D-02,
22704      #    0.6762D-02, 0.6616D-02, 0.6188D-02, 0.5574D-02, 0.4866D-02,
22705      #    0.4140D-02, 0.3447D-02, 0.2817D-02, 0.2268D-02, 0.1802D-02,
22706      #    0.1415D-02, 0.1101D-02, 0.8490D-03, 0.6498D-03, 0.4941D-03,
22707      #    0.3735D-03, 0.2810D-03, 0.2103D-03, 0.1566D-03, 0.1163D-03,
22708      #    0.8600D-04, 0.6339D-04, 0.4659D-04, 0.3414D-04, 0.2496D-04,
22709      #    0.1820D-04, 0.1324D-04, 0.9609D-05, 0.6963D-05, 0.5036D-05,
22710      #    0.3635D-05/
22711
22712       data (calcpts(j,20), j = 1,neta) /0.1592D-22, 0.6060D-22,
22713      #    0.2321D-21, 0.8892D-21, 0.3408D-20, 0.1305D-19, 0.5001D-19,
22714      #    0.1916D-18, 0.7341D-18, 0.2813D-17, 0.1078D-16, 0.4128D-16,
22715      #    0.1581D-15, 0.6058D-15, 0.2321D-14, 0.8889D-14, 0.3404D-13,
22716      #    0.1303D-12, 0.4986D-12, 0.1907D-11, 0.7287D-11, 0.2781D-10,
22717      #    0.1060D-09, 0.4028D-09, 0.1524D-08, 0.5727D-08, 0.2139D-07,
22718      #    0.7892D-07, 0.2864D-06, 0.1015D-05, 0.3480D-05, 0.1140D-04,
22719      #    0.3512D-04, 0.9989D-04, 0.2573D-03, 0.5892D-03, 0.1183D-02,
22720      #    0.2070D-02, 0.3171D-02, 0.4304D-02, 0.5265D-02, 0.5913D-02,
22721      #    0.6189D-02, 0.6116D-02, 0.5766D-02, 0.5228D-02, 0.4590D-02,
22722      #    0.3923D-02, 0.3279D-02, 0.2690D-02, 0.2172D-02, 0.1729D-02,
22723      #    0.1362D-02, 0.1062D-02, 0.8204D-03, 0.6291D-03, 0.4791D-03,
22724      #    0.3627D-03, 0.2730D-03, 0.2046D-03, 0.1526D-03, 0.1134D-03,
22725      #    0.8394D-04, 0.6194D-04, 0.4556D-04, 0.3341D-04, 0.2443D-04,
22726      #    0.1782D-04, 0.1298D-04, 0.9426D-05, 0.6834D-05, 0.4944D-05,
22727      #    0.3572D-05/
22728
22729       data (calcpts(j,21), j = 1,neta) /0.9878D-23, 0.3747D-22,
22730      #    0.1434D-21, 0.5498D-21, 0.2108D-20, 0.8071D-20, 0.3093D-19,
22731      #    0.1185D-18, 0.4539D-18, 0.1740D-17, 0.6663D-17, 0.2553D-16,
22732      #    0.9780D-16, 0.3747D-15, 0.1435D-14, 0.5498D-14, 0.2105D-13,
22733      #    0.8060D-13, 0.3086D-12, 0.1180D-11, 0.4512D-11, 0.1724D-10,
22734      #    0.6569D-10, 0.2499D-09, 0.9476D-09, 0.3569D-08, 0.1337D-07,
22735      #    0.4960D-07, 0.1814D-06, 0.6490D-06, 0.2256D-05, 0.7524D-05,
22736      #    0.2373D-04, 0.6951D-04, 0.1854D-03, 0.4410D-03, 0.9218D-03,
22737      #    0.1677D-02, 0.2660D-02, 0.3717D-02, 0.4652D-02, 0.5315D-02,
22738      #    0.5637D-02, 0.5630D-02, 0.5352D-02, 0.4886D-02, 0.4316D-02,
22739      #    0.3706D-02, 0.3113D-02, 0.2562D-02, 0.2076D-02, 0.1658D-02,
22740      #    0.1309D-02, 0.1023D-02, 0.7917D-03, 0.6083D-03, 0.4640D-03,
22741      #    0.3518D-03, 0.2652D-03, 0.1989D-03, 0.1486D-03, 0.1105D-03,
22742      #    0.8189D-04, 0.6046D-04, 0.4451D-04, 0.3267D-04, 0.2391D-04,
22743      #    0.1746D-04, 0.1272D-04, 0.9243D-05, 0.6705D-05, 0.4854D-05,
22744      #    0.3507D-05/
22745
22746       data (calcpts(j,22), j = 1,neta) /0.7062D-23, 0.2674D-22,
22747      #    0.1023D-21, 0.3922D-21, 0.1503D-20, 0.5758D-20, 0.2206D-19,
22748      #    0.8454D-19, 0.3239D-18, 0.1241D-17, 0.4755D-17, 0.1821D-16,
22749      #    0.6978D-16, 0.2673D-15, 0.1024D-14, 0.3923D-14, 0.1501D-13,
22750      #    0.5751D-13, 0.2202D-12, 0.8422D-12, 0.3221D-11, 0.1230D-10,
22751      #    0.4690D-10, 0.1785D-09, 0.6773D-09, 0.2553D-08, 0.9576D-08,
22752      #    0.3558D-07, 0.1304D-06, 0.4683D-06, 0.1637D-05, 0.5496D-05,
22753      #    0.1751D-04, 0.5196D-04, 0.1410D-03, 0.3428D-03, 0.7349D-03,
22754      #    0.1374D-02, 0.2240D-02, 0.3207D-02, 0.4098D-02, 0.4761D-02,
22755      #    0.5115D-02, 0.5162D-02, 0.4949D-02, 0.4551D-02, 0.4044D-02,
22756      #    0.3494D-02, 0.2946D-02, 0.2436D-02, 0.1980D-02, 0.1587D-02,
22757      #    0.1256D-02, 0.9835D-03, 0.7632D-03, 0.5874D-03, 0.4490D-03,
22758      #    0.3408D-03, 0.2574D-03, 0.1933D-03, 0.1446D-03, 0.1076D-03,
22759      #    0.7983D-04, 0.5901D-04, 0.4347D-04, 0.3194D-04, 0.2339D-04,
22760      #    0.1708D-04, 0.1246D-04, 0.9060D-05, 0.6576D-05, 0.4763D-05,
22761      #    0.3444D-05/
22762
22763       data (calcpts(j,23), j = 1,neta) /0.5736D-23, 0.2175D-22,
22764      #    0.8327D-22, 0.3192D-21, 0.1223D-20, 0.4686D-20, 0.1796D-19,
22765      #    0.6879D-19, 0.2635D-18, 0.1010D-17, 0.3869D-17, 0.1482D-16,
22766      #    0.5678D-16, 0.2175D-15, 0.8331D-15, 0.3191D-14, 0.1222D-13,
22767      #    0.4680D-13, 0.1791D-12, 0.6852D-12, 0.2620D-11, 0.1001D-10,
22768      #    0.3816D-10, 0.1452D-09, 0.5510D-09, 0.2081D-08, 0.7790D-08,
22769      #    0.2894D-07, 0.1060D-06, 0.3809D-06, 0.1330D-05, 0.4469D-05,
22770      #    0.1424D-04, 0.4233D-04, 0.1152D-03, 0.2819D-03, 0.6101D-03,
22771      #    0.1156D-02, 0.1914D-02, 0.2787D-02, 0.3618D-02, 0.4260D-02,
22772      #    0.4631D-02, 0.4718D-02, 0.4562D-02, 0.4226D-02, 0.3779D-02,
22773      #    0.3282D-02, 0.2781D-02, 0.2310D-02, 0.1884D-02, 0.1515D-02,
22774      #    0.1203D-02, 0.9446D-03, 0.7346D-03, 0.5665D-03, 0.4338D-03,
22775      #    0.3300D-03, 0.2495D-03, 0.1876D-03, 0.1405D-03, 0.1047D-03,
22776      #    0.7777D-04, 0.5754D-04, 0.4244D-04, 0.3120D-04, 0.2288D-04,
22777      #    0.1672D-04, 0.1220D-04, 0.8877D-05, 0.6446D-05, 0.4672D-05,
22778      #    0.3380D-05/
22779
22780       data (calcpts(j,24), j = 1,neta) /0.5089D-23, 0.1944D-22,
22781      #    0.7445D-22, 0.2853D-21, 0.1093D-20, 0.4188D-20, 0.1605D-19,
22782      #    0.6147D-19, 0.2355D-18, 0.9023D-18, 0.3458D-17, 0.1325D-16,
22783      #    0.5074D-16, 0.1944D-15, 0.7446D-15, 0.2851D-14, 0.1092D-13,
22784      #    0.4182D-13, 0.1601D-12, 0.6123D-12, 0.2342D-11, 0.8940D-11,
22785      #    0.3409D-10, 0.1297D-09, 0.4920D-09, 0.1857D-08, 0.6951D-08,
22786      #    0.2581D-07, 0.9449D-07, 0.3390D-06, 0.1182D-05, 0.3962D-05,
22787      #    0.1259D-04, 0.3729D-04, 0.1011D-03, 0.2465D-03, 0.5325D-03,
22788      #    0.1010D-02, 0.1679D-02, 0.2462D-02, 0.3223D-02, 0.3828D-02,
22789      #    0.4196D-02, 0.4308D-02, 0.4196D-02, 0.3912D-02, 0.3521D-02,
22790      #    0.3075D-02, 0.2619D-02, 0.2184D-02, 0.1790D-02, 0.1444D-02,
22791      #    0.1150D-02, 0.9055D-03, 0.7061D-03, 0.5459D-03, 0.4188D-03,
22792      #    0.3191D-03, 0.2416D-03, 0.1821D-03, 0.1365D-03, 0.1019D-03,
22793      #    0.7572D-04, 0.5609D-04, 0.4140D-04, 0.3047D-04, 0.2235D-04,
22794      #    0.1635D-04, 0.1194D-04, 0.8694D-05, 0.6317D-05, 0.4581D-05,
22795      #    0.3317D-05/
22796
22797       data (calcpts(j,25), j = 1,neta) /0.4752D-23, 0.1836D-22,
22798      #    0.7038D-22, 0.2695D-21, 0.1032D-20, 0.3957D-20, 0.1516D-19,
22799      #    0.5808D-19, 0.2225D-18, 0.8525D-18, 0.3266D-17, 0.1251D-16,
22800      #    0.4794D-16, 0.1836D-15, 0.7035D-15, 0.2694D-14, 0.1032D-13,
22801      #    0.3951D-13, 0.1512D-12, 0.5784D-12, 0.2211D-11, 0.8445D-11,
22802      #    0.3221D-10, 0.1225D-09, 0.4647D-09, 0.1753D-08, 0.6560D-08,
22803      #    0.2435D-07, 0.8906D-07, 0.3190D-06, 0.1111D-05, 0.3716D-05,
22804      #    0.1177D-04, 0.3473D-04, 0.9371D-04, 0.2271D-03, 0.4874D-03,
22805      #    0.9189D-03, 0.1521D-02, 0.2228D-02, 0.2918D-02, 0.3474D-02,
22806      #    0.3820D-02, 0.3941D-02, 0.3857D-02, 0.3616D-02, 0.3271D-02,
22807      #    0.2874D-02, 0.2460D-02, 0.2061D-02, 0.1697D-02, 0.1374D-02,
22808      #    0.1098D-02, 0.8669D-03, 0.6777D-03, 0.5250D-03, 0.4036D-03,
22809      #    0.3082D-03, 0.2339D-03, 0.1764D-03, 0.1325D-03, 0.9899D-04,
22810      #    0.7366D-04, 0.5461D-04, 0.4037D-04, 0.2973D-04, 0.2183D-04,
22811      #    0.1599D-04, 0.1168D-04, 0.8510D-05, 0.6187D-05, 0.4491D-05,
22812      #    0.3252D-05/
22813
22814       data (calcpts(j,26), j = 1,neta) /0.4554D-23, 0.1785D-22,
22815      #    0.6852D-22, 0.2624D-21, 0.1004D-20, 0.3849D-20, 0.1475D-19,
22816      #    0.5651D-19, 0.2165D-18, 0.8293D-18, 0.3177D-17, 0.1217D-16,
22817      #    0.4664D-16, 0.1787D-15, 0.6843D-15, 0.2621D-14, 0.1004D-13,
22818      #    0.3843D-13, 0.1471D-12, 0.5628D-12, 0.2151D-11, 0.8216D-11,
22819      #    0.3132D-10, 0.1192D-09, 0.4520D-09, 0.1705D-08, 0.6378D-08,
22820      #    0.2366D-07, 0.8651D-07, 0.3097D-06, 0.1077D-05, 0.3598D-05,
22821      #    0.1137D-04, 0.3346D-04, 0.8996D-04, 0.2169D-03, 0.4628D-03,
22822      #    0.8664D-03, 0.1424D-02, 0.2072D-02, 0.2699D-02, 0.3202D-02,
22823      #    0.3516D-02, 0.3627D-02, 0.3555D-02, 0.3344D-02, 0.3038D-02,
22824      #    0.2681D-02, 0.2306D-02, 0.1941D-02, 0.1603D-02, 0.1304D-02,
22825      #    0.1045D-02, 0.8282D-03, 0.6494D-03, 0.5043D-03, 0.3887D-03,
22826      #    0.2973D-03, 0.2261D-03, 0.1709D-03, 0.1284D-03, 0.9611D-04,
22827      #    0.7161D-04, 0.5316D-04, 0.3932D-04, 0.2899D-04, 0.2132D-04,
22828      #    0.1562D-04, 0.1142D-04, 0.8327D-05, 0.6058D-05, 0.4400D-05,
22829      #    0.3189D-05/
22830
22831       data (calcpts(j,27), j = 1,neta) /0.4428D-23, 0.1761D-22,
22832      #    0.6771D-22, 0.2590D-21, 0.9912D-21, 0.3800D-20, 0.1455D-19,
22833      #    0.5577D-19, 0.2136D-18, 0.8187D-18, 0.3136D-17, 0.1202D-16,
22834      #    0.4603D-16, 0.1764D-15, 0.6754D-15, 0.2587D-14, 0.9908D-14,
22835      #    0.3794D-13, 0.1452D-12, 0.5555D-12, 0.2124D-11, 0.8109D-11,
22836      #    0.3092D-10, 0.1176D-09, 0.4459D-09, 0.1683D-08, 0.6292D-08,
22837      #    0.2334D-07, 0.8531D-07, 0.3054D-06, 0.1062D-05, 0.3543D-05,
22838      #    0.1119D-04, 0.3286D-04, 0.8811D-04, 0.2118D-03, 0.4500D-03,
22839      #    0.8382D-03, 0.1369D-02, 0.1977D-02, 0.2558D-02, 0.3014D-02,
22840      #    0.3288D-02, 0.3373D-02, 0.3299D-02, 0.3102D-02, 0.2821D-02,
22841      #    0.2498D-02, 0.2157D-02, 0.1822D-02, 0.1512D-02, 0.1234D-02,
22842      #    0.9936D-03, 0.7897D-03, 0.6210D-03, 0.4838D-03, 0.3737D-03,
22843      #    0.2865D-03, 0.2181D-03, 0.1652D-03, 0.1244D-03, 0.9323D-04,
22844      #    0.6956D-04, 0.5171D-04, 0.3828D-04, 0.2826D-04, 0.2079D-04,
22845      #    0.1525D-04, 0.1116D-04, 0.8144D-05, 0.5930D-05, 0.4309D-05,
22846      #    0.3125D-05/
22847
22848       data (calcpts(j,28), j = 1,neta) /0.4341D-23, 0.1749D-22,
22849      #    0.6735D-22, 0.2576D-21, 0.9849D-21, 0.3777D-20, 0.1447D-19,
22850      #    0.5542D-19, 0.2124D-18, 0.8136D-18, 0.3117D-17, 0.1194D-16,
22851      #    0.4575D-16, 0.1752D-15, 0.6714D-15, 0.2571D-14, 0.9848D-14,
22852      #    0.3771D-13, 0.1443D-12, 0.5520D-12, 0.2110D-11, 0.8059D-11,
22853      #    0.3072D-10, 0.1169D-09, 0.4432D-09, 0.1672D-08, 0.6254D-08,
22854      #    0.2319D-07, 0.8475D-07, 0.3033D-06, 0.1054D-05, 0.3516D-05,
22855      #    0.1110D-04, 0.3256D-04, 0.8724D-04, 0.2094D-03, 0.4437D-03,
22856      #    0.8241D-03, 0.1341D-02, 0.1926D-02, 0.2476D-02, 0.2895D-02,
22857      #    0.3132D-02, 0.3189D-02, 0.3096D-02, 0.2897D-02, 0.2631D-02,
22858      #    0.2329D-02, 0.2016D-02, 0.1710D-02, 0.1424D-02, 0.1167D-02,
22859      #    0.9424D-03, 0.7516D-03, 0.5929D-03, 0.4632D-03, 0.3587D-03,
22860      #    0.2756D-03, 0.2103D-03, 0.1596D-03, 0.1204D-03, 0.9035D-04,
22861      #    0.6752D-04, 0.5024D-04, 0.3725D-04, 0.2752D-04, 0.2026D-04,
22862      #    0.1488D-04, 0.1090D-04, 0.7960D-05, 0.5800D-05, 0.4218D-05,
22863      #    0.3062D-05/
22864
22865       data (calcpts(j,29), j = 1,neta) /0.4268D-23, 0.1743D-22,
22866      #    0.6717D-22, 0.2568D-21, 0.9821D-21, 0.3767D-20, 0.1443D-19,
22867      #    0.5527D-19, 0.2118D-18, 0.8114D-18, 0.3108D-17, 0.1191D-16,
22868      #    0.4561D-16, 0.1748D-15, 0.6694D-15, 0.2563D-14, 0.9819D-14,
22869      #    0.3759D-13, 0.1439D-12, 0.5505D-12, 0.2105D-11, 0.8036D-11,
22870      #    0.3065D-10, 0.1166D-09, 0.4419D-09, 0.1668D-08, 0.6236D-08,
22871      #    0.2312D-07, 0.8450D-07, 0.3024D-06, 0.1051D-05, 0.3504D-05,
22872      #    0.1106D-04, 0.3243D-04, 0.8684D-04, 0.2082D-03, 0.4409D-03,
22873      #    0.8175D-03, 0.1328D-02, 0.1902D-02, 0.2436D-02, 0.2834D-02,
22874      #    0.3042D-02, 0.3069D-02, 0.2950D-02, 0.2738D-02, 0.2472D-02,
22875      #    0.2181D-02, 0.1887D-02, 0.1603D-02, 0.1339D-02, 0.1101D-02,
22876      #    0.8922D-03, 0.7140D-03, 0.5650D-03, 0.4426D-03, 0.3436D-03,
22877      #    0.2648D-03, 0.2025D-03, 0.1539D-03, 0.1163D-03, 0.8747D-04,
22878      #    0.6546D-04, 0.4878D-04, 0.3621D-04, 0.2678D-04, 0.1974D-04,
22879      #    0.1451D-04, 0.1064D-04, 0.7777D-05, 0.5671D-05, 0.4128D-05,
22880      #    0.2997D-05/
22881
22882       data (calcpts(j,30), j = 1,neta) /0.4237D-23, 0.1740D-22,
22883      #    0.6711D-22, 0.2565D-21, 0.9807D-21, 0.3762D-20, 0.1441D-19,
22884      #    0.5520D-19, 0.2115D-18, 0.8103D-18, 0.3105D-17, 0.1189D-16,
22885      #    0.4556D-16, 0.1746D-15, 0.6686D-15, 0.2561D-14, 0.9807D-14,
22886      #    0.3755D-13, 0.1437D-12, 0.5498D-12, 0.2102D-11, 0.8025D-11,
22887      #    0.3060D-10, 0.1164D-09, 0.4413D-09, 0.1665D-08, 0.6227D-08,
22888      #    0.2309D-07, 0.8437D-07, 0.3020D-06, 0.1049D-05, 0.3498D-05,
22889      #    0.1104D-04, 0.3237D-04, 0.8664D-04, 0.2078D-03, 0.4397D-03,
22890      #    0.8148D-03, 0.1323D-02, 0.1893D-02, 0.2421D-02, 0.2808D-02,
22891      #    0.3002D-02, 0.3006D-02, 0.2862D-02, 0.2626D-02, 0.2349D-02,
22892      #    0.2058D-02, 0.1775D-02, 0.1506D-02, 0.1259D-02, 0.1037D-02,
22893      #    0.8433D-03, 0.6771D-03, 0.5374D-03, 0.4224D-03, 0.3289D-03,
22894      #    0.2540D-03, 0.1947D-03, 0.1483D-03, 0.1123D-03, 0.8458D-04,
22895      #    0.6341D-04, 0.4733D-04, 0.3518D-04, 0.2604D-04, 0.1923D-04,
22896      #    0.1414D-04, 0.1038D-04, 0.7594D-05, 0.5542D-05, 0.4037D-05,
22897      #    0.2932D-05/
22898
22899       data (calcpts(j,31), j = 1,neta) /0.4208D-23, 0.1743D-22,
22900      #    0.6705D-22, 0.2565D-21, 0.9801D-21, 0.3759D-20, 0.1440D-19,
22901      #    0.5517D-19, 0.2113D-18, 0.8097D-18, 0.3102D-17, 0.1189D-16,
22902      #    0.4554D-16, 0.1745D-15, 0.6681D-15, 0.2559D-14, 0.9801D-14,
22903      #    0.3753D-13, 0.1436D-12, 0.5495D-12, 0.2100D-11, 0.8020D-11,
22904      #    0.3059D-10, 0.1163D-09, 0.4410D-09, 0.1664D-08, 0.6222D-08,
22905      #    0.2307D-07, 0.8433D-07, 0.3018D-06, 0.1048D-05, 0.3495D-05,
22906      #    0.1103D-04, 0.3234D-04, 0.8656D-04, 0.2075D-03, 0.4392D-03,
22907      #    0.8139D-03, 0.1321D-02, 0.1891D-02, 0.2420D-02, 0.2805D-02,
22908      #    0.2994D-02, 0.2985D-02, 0.2823D-02, 0.2565D-02, 0.2267D-02,
22909      #    0.1966D-02, 0.1682D-02, 0.1420D-02, 0.1185D-02, 0.9775D-03,
22910      #    0.7964D-03, 0.6411D-03, 0.5104D-03, 0.4023D-03, 0.3143D-03,
22911      #    0.2433D-03, 0.1870D-03, 0.1427D-03, 0.1083D-03, 0.8172D-04,
22912      #    0.6135D-04, 0.4586D-04, 0.3414D-04, 0.2530D-04, 0.1871D-04,
22913      #    0.1378D-04, 0.1012D-04, 0.7412D-05, 0.5414D-05, 0.3947D-05,
22914      #    0.2870D-05/
22915
22916       data (calcpts(j,32), j = 1,neta) /0.4152D-23, 0.1735D-22,
22917      #    0.6717D-22, 0.2562D-21, 0.9799D-21, 0.3757D-20, 0.1439D-19,
22918      #    0.5514D-19, 0.2113D-18, 0.8095D-18, 0.3102D-17, 0.1188D-16,
22919      #    0.4552D-16, 0.1745D-15, 0.6679D-15, 0.2559D-14, 0.9798D-14,
22920      #    0.3751D-13, 0.1436D-12, 0.5493D-12, 0.2100D-11, 0.8017D-11,
22921      #    0.3057D-10, 0.1163D-09, 0.4410D-09, 0.1664D-08, 0.6221D-08,
22922      #    0.2307D-07, 0.8430D-07, 0.3017D-06, 0.1048D-05, 0.3495D-05,
22923      #    0.1102D-04, 0.3234D-04, 0.8652D-04, 0.2075D-03, 0.4389D-03,
22924      #    0.8138D-03, 0.1321D-02, 0.1893D-02, 0.2423D-02, 0.2812D-02,
22925      #    0.3003D-02, 0.2994D-02, 0.2821D-02, 0.2546D-02, 0.2226D-02,
22926      #    0.1906D-02, 0.1613D-02, 0.1350D-02, 0.1121D-02, 0.9229D-03,
22927      #    0.7521D-03, 0.6066D-03, 0.4842D-03, 0.3826D-03, 0.2997D-03,
22928      #    0.2326D-03, 0.1792D-03, 0.1372D-03, 0.1043D-03, 0.7885D-04,
22929      #    0.5931D-04, 0.4440D-04, 0.3311D-04, 0.2457D-04, 0.1818D-04,
22930      #    0.1341D-04, 0.9858D-05, 0.7227D-05, 0.5284D-05, 0.3855D-05,
22931      #    0.2805D-05/
22932
22933       data (calcpts(j,33), j = 1,neta) /0.4175D-23, 0.1735D-22,
22934      #    0.6707D-22, 0.2565D-21, 0.9798D-21, 0.3757D-20, 0.1439D-19,
22935      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
22936      #    0.4551D-16, 0.1743D-15, 0.6679D-15, 0.2558D-14, 0.9797D-14,
22937      #    0.3751D-13, 0.1436D-12, 0.5492D-12, 0.2100D-11, 0.8017D-11,
22938      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
22939      #    0.2307D-07, 0.8429D-07, 0.3017D-06, 0.1048D-05, 0.3494D-05,
22940      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4389D-03,
22941      #    0.8139D-03, 0.1322D-02, 0.1895D-02, 0.2428D-02, 0.2823D-02,
22942      #    0.3020D-02, 0.3015D-02, 0.2841D-02, 0.2556D-02, 0.2220D-02,
22943      #    0.1881D-02, 0.1571D-02, 0.1300D-02, 0.1070D-02, 0.8756D-03,
22944      #    0.7119D-03, 0.5740D-03, 0.4589D-03, 0.3634D-03, 0.2853D-03,
22945      #    0.2222D-03, 0.1716D-03, 0.1316D-03, 0.1003D-03, 0.7599D-04,
22946      #    0.5727D-04, 0.4295D-04, 0.3207D-04, 0.2385D-04, 0.1767D-04,
22947      #    0.1304D-04, 0.9599D-05, 0.7044D-05, 0.5156D-05, 0.3764D-05,
22948      #    0.2742D-05/
22949
22950       data (calcpts(j,34), j = 1,neta) /0.4158D-23, 0.1734D-22,
22951      #    0.6731D-22, 0.2564D-21, 0.9796D-21, 0.3757D-20, 0.1439D-19,
22952      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
22953      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9797D-14,
22954      #    0.3750D-13, 0.1436D-12, 0.5492D-12, 0.2100D-11, 0.8016D-11,
22955      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
22956      #    0.2307D-07, 0.8429D-07, 0.3017D-06, 0.1048D-05, 0.3494D-05,
22957      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
22958      #    0.8140D-03, 0.1323D-02, 0.1898D-02, 0.2433D-02, 0.2834D-02,
22959      #    0.3038D-02, 0.3039D-02, 0.2871D-02, 0.2585D-02, 0.2240D-02,
22960      #    0.1886D-02, 0.1556D-02, 0.1271D-02, 0.1033D-02, 0.8375D-03,
22961      #    0.6769D-03, 0.5445D-03, 0.4352D-03, 0.3452D-03, 0.2715D-03,
22962      #    0.2118D-03, 0.1641D-03, 0.1261D-03, 0.9634D-04, 0.7314D-04,
22963      #    0.5523D-04, 0.4149D-04, 0.3104D-04, 0.2312D-04, 0.1715D-04,
22964      #    0.1267D-04, 0.9339D-05, 0.6861D-05, 0.5027D-05, 0.3674D-05,
22965      #    0.2677D-05/
22966
22967       data (calcpts(j,35), j = 1,neta) /0.4069D-23, 0.1734D-22,
22968      #    0.6731D-22, 0.2564D-21, 0.9805D-21, 0.3757D-20, 0.1439D-19,
22969      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
22970      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
22971      #    0.3750D-13, 0.1436D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
22972      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
22973      #    0.2307D-07, 0.8427D-07, 0.3017D-06, 0.1048D-05, 0.3494D-05,
22974      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
22975      #    0.8142D-03, 0.1323D-02, 0.1899D-02, 0.2438D-02, 0.2841D-02,
22976      #    0.3053D-02, 0.3063D-02, 0.2903D-02, 0.2620D-02, 0.2272D-02,
22977      #    0.1910D-02, 0.1565D-02, 0.1264D-02, 0.1013D-02, 0.8111D-03,
22978      #    0.6492D-03, 0.5190D-03, 0.4135D-03, 0.3278D-03, 0.2582D-03,
22979      #    0.2018D-03, 0.1566D-03, 0.1207D-03, 0.9242D-04, 0.7031D-04,
22980      #    0.5321D-04, 0.4004D-04, 0.3000D-04, 0.2238D-04, 0.1662D-04,
22981      #    0.1231D-04, 0.9080D-05, 0.6678D-05, 0.4898D-05, 0.3582D-05,
22982      #    0.2615D-05/
22983
22984       data (calcpts(j,36), j = 1,neta) /0.4145D-23, 0.1776D-22,
22985      #    0.6732D-22, 0.2571D-21, 0.9791D-21, 0.3755D-20, 0.1439D-19,
22986      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
22987      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
22988      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
22989      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
22990      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
22991      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
22992      #    0.8144D-03, 0.1324D-02, 0.1901D-02, 0.2441D-02, 0.2849D-02,
22993      #    0.3065D-02, 0.3083D-02, 0.2930D-02, 0.2655D-02, 0.2311D-02,
22994      #    0.1944D-02, 0.1590D-02, 0.1275D-02, 0.1011D-02, 0.7981D-03,
22995      #    0.6305D-03, 0.4989D-03, 0.3950D-03, 0.3122D-03, 0.2456D-03,
22996      #    0.1922D-03, 0.1494D-03, 0.1154D-03, 0.8852D-04, 0.6750D-04,
22997      #    0.5118D-04, 0.3859D-04, 0.2897D-04, 0.2165D-04, 0.1611D-04,
22998      #    0.1194D-04, 0.8820D-05, 0.6495D-05, 0.4769D-05, 0.3492D-05,
22999      #    0.2550D-05/
23000
23001       data (calcpts(j,37), j = 1,neta) /0.4138D-23, 0.1734D-22,
23002      #    0.6732D-22, 0.2570D-21, 0.9789D-21, 0.3757D-20, 0.1439D-19,
23003      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23004      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23005      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23006      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23007      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23008      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
23009      #    0.8145D-03, 0.1324D-02, 0.1902D-02, 0.2443D-02, 0.2853D-02,
23010      #    0.3074D-02, 0.3097D-02, 0.2952D-02, 0.2685D-02, 0.2348D-02,
23011      #    0.1982D-02, 0.1625D-02, 0.1301D-02, 0.1024D-02, 0.7987D-03,
23012      #    0.6221D-03, 0.4856D-03, 0.3806D-03, 0.2987D-03, 0.2343D-03,
23013      #    0.1832D-03, 0.1425D-03, 0.1102D-03, 0.8471D-04, 0.6473D-04,
23014      #    0.4917D-04, 0.3716D-04, 0.2795D-04, 0.2091D-04, 0.1559D-04,
23015      #    0.1157D-04, 0.8561D-05, 0.6312D-05, 0.4640D-05, 0.3402D-05,
23016      #    0.2487D-05/
23017
23018       data (calcpts(j,38), j = 1,neta) /0.3888D-23, 0.1774D-22,
23019      #    0.6732D-22, 0.2554D-21, 0.9805D-21, 0.3757D-20, 0.1439D-19,
23020      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23021      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23022      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23023      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23024      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23025      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
23026      #    0.8145D-03, 0.1324D-02, 0.1902D-02, 0.2445D-02, 0.2858D-02,
23027      #    0.3081D-02, 0.3110D-02, 0.2970D-02, 0.2709D-02, 0.2378D-02,
23028      #    0.2016D-02, 0.1661D-02, 0.1332D-02, 0.1047D-02, 0.8111D-03,
23029      #    0.6242D-03, 0.4803D-03, 0.3712D-03, 0.2883D-03, 0.2246D-03,
23030      #    0.1749D-03, 0.1360D-03, 0.1052D-03, 0.8099D-04, 0.6200D-04,
23031      #    0.4719D-04, 0.3573D-04, 0.2693D-04, 0.2019D-04, 0.1508D-04,
23032      #    0.1121D-04, 0.8303D-05, 0.6129D-05, 0.4512D-05, 0.3311D-05,
23033      #    0.2423D-05/
23034
23035       data (calcpts(j,39), j = 1,neta) /0.3883D-23, 0.1724D-22,
23036      #    0.6732D-22, 0.2544D-21, 0.9805D-21, 0.3756D-20, 0.1439D-19,
23037      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23038      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23039      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23040      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23041      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23042      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
23043      #    0.8147D-03, 0.1325D-02, 0.1904D-02, 0.2446D-02, 0.2859D-02,
23044      #    0.3085D-02, 0.3117D-02, 0.2982D-02, 0.2729D-02, 0.2401D-02,
23045      #    0.2046D-02, 0.1694D-02, 0.1365D-02, 0.1075D-02, 0.8318D-03,
23046      #    0.6356D-03, 0.4832D-03, 0.3680D-03, 0.2819D-03, 0.2172D-03,
23047      #    0.1680D-03, 0.1301D-03, 0.1005D-03, 0.7742D-04, 0.5934D-04,
23048      #    0.4526D-04, 0.3432D-04, 0.2591D-04, 0.1947D-04, 0.1456D-04,
23049      #    0.1084D-04, 0.8043D-05, 0.5948D-05, 0.4383D-05, 0.3220D-05,
23050      #    0.2360D-05/
23051
23052       data (calcpts(j,40), j = 1,neta) /0.4569D-23, 0.1774D-22,
23053      #    0.6616D-22, 0.2544D-21, 0.9809D-21, 0.3756D-20, 0.1439D-19,
23054      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23055      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23056      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23057      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23058      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23059      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4391D-03,
23060      #    0.8147D-03, 0.1325D-02, 0.1904D-02, 0.2448D-02, 0.2862D-02,
23061      #    0.3089D-02, 0.3123D-02, 0.2993D-02, 0.2742D-02, 0.2420D-02,
23062      #    0.2069D-02, 0.1721D-02, 0.1394D-02, 0.1104D-02, 0.8562D-03,
23063      #    0.6533D-03, 0.4932D-03, 0.3709D-03, 0.2799D-03, 0.2127D-03,
23064      #    0.1627D-03, 0.1251D-03, 0.9633D-04, 0.7409D-04, 0.5679D-04,
23065      #    0.4335D-04, 0.3294D-04, 0.2491D-04, 0.1875D-04, 0.1404D-04,
23066      #    0.1048D-04, 0.7787D-05, 0.5764D-05, 0.4254D-05, 0.3129D-05,
23067      #    0.2295D-05/
23068
23069       data (calcpts(j,41), j = 1,neta) /0.4535D-23, 0.1701D-22,
23070      #    0.6738D-22, 0.2558D-21, 0.9793D-21, 0.3755D-20, 0.1439D-19,
23071      #    0.5514D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23072      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23073      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23074      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23075      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23076      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23077      #    0.8147D-03, 0.1325D-02, 0.1904D-02, 0.2448D-02, 0.2862D-02,
23078      #    0.3092D-02, 0.3128D-02, 0.2998D-02, 0.2751D-02, 0.2433D-02,
23079      #    0.2087D-02, 0.1741D-02, 0.1418D-02, 0.1129D-02, 0.8806D-03,
23080      #    0.6739D-03, 0.5081D-03, 0.3795D-03, 0.2829D-03, 0.2117D-03,
23081      #    0.1596D-03, 0.1214D-03, 0.9278D-04, 0.7107D-04, 0.5441D-04,
23082      #    0.4154D-04, 0.3159D-04, 0.2393D-04, 0.1803D-04, 0.1354D-04,
23083      #    0.1011D-04, 0.7529D-05, 0.5583D-05, 0.4125D-05, 0.3039D-05,
23084      #    0.2232D-05/
23085
23086       data (calcpts(j,42), j = 1,neta) /0.5008D-23, 0.1776D-22,
23087      #    0.6751D-22, 0.2558D-21, 0.9809D-21, 0.3755D-20, 0.1439D-19,
23088      #    0.5514D-19, 0.2112D-18, 0.8092D-18, 0.3100D-17, 0.1188D-16,
23089      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23090      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23091      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23092      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23093      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23094      #    0.8147D-03, 0.1325D-02, 0.1904D-02, 0.2448D-02, 0.2864D-02,
23095      #    0.3093D-02, 0.3131D-02, 0.3003D-02, 0.2757D-02, 0.2443D-02,
23096      #    0.2100D-02, 0.1758D-02, 0.1437D-02, 0.1151D-02, 0.9024D-03,
23097      #    0.6945D-03, 0.5253D-03, 0.3918D-03, 0.2900D-03, 0.2144D-03,
23098      #    0.1592D-03, 0.1193D-03, 0.9015D-04, 0.6855D-04, 0.5228D-04,
23099      #    0.3984D-04, 0.3030D-04, 0.2297D-04, 0.1734D-04, 0.1303D-04,
23100      #    0.9756D-05, 0.7273D-05, 0.5401D-05, 0.3998D-05, 0.2949D-05,
23101      #    0.2169D-05/
23102
23103       data (calcpts(j,43), j = 1,neta) /0.4451D-23, 0.1773D-22,
23104      #    0.6620D-22, 0.2545D-21, 0.9812D-21, 0.3755D-20, 0.1439D-19,
23105      #    0.5513D-19, 0.2112D-18, 0.8094D-18, 0.3100D-17, 0.1188D-16,
23106      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23107      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23108      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23109      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23110      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23111      #    0.8147D-03, 0.1325D-02, 0.1904D-02, 0.2448D-02, 0.2864D-02,
23112      #    0.3095D-02, 0.3132D-02, 0.3006D-02, 0.2763D-02, 0.2449D-02,
23113      #    0.2109D-02, 0.1769D-02, 0.1451D-02, 0.1167D-02, 0.9204D-03,
23114      #    0.7127D-03, 0.5421D-03, 0.4059D-03, 0.3000D-03, 0.2200D-03,
23115      #    0.1614D-03, 0.1191D-03, 0.8873D-04, 0.6671D-04, 0.5048D-04,
23116      #    0.3833D-04, 0.2910D-04, 0.2205D-04, 0.1667D-04, 0.1254D-04,
23117      #    0.9401D-05, 0.7020D-05, 0.5222D-05, 0.3870D-05, 0.2859D-05,
23118      #    0.2105D-05/
23119
23120       data (calcpts(j,44), j = 1,neta) /0.4536D-23, 0.1766D-22,
23121      #    0.6613D-22, 0.2562D-21, 0.9802D-21, 0.3755D-20, 0.1439D-19,
23122      #    0.5513D-19, 0.2112D-18, 0.8095D-18, 0.3102D-17, 0.1188D-16,
23123      #    0.4551D-16, 0.1743D-15, 0.6678D-15, 0.2558D-14, 0.9795D-14,
23124      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23125      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23126      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23127      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23128      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23129      #    0.3095D-02, 0.3134D-02, 0.3008D-02, 0.2766D-02, 0.2454D-02,
23130      #    0.2115D-02, 0.1777D-02, 0.1462D-02, 0.1179D-02, 0.9344D-03,
23131      #    0.7277D-03, 0.5571D-03, 0.4196D-03, 0.3113D-03, 0.2282D-03,
23132      #    0.1661D-03, 0.1210D-03, 0.8875D-04, 0.6575D-04, 0.4919D-04,
23133      #    0.3705D-04, 0.2802D-04, 0.2120D-04, 0.1601D-04, 0.1206D-04,
23134      #    0.9053D-05, 0.6770D-05, 0.5043D-05, 0.3742D-05, 0.2769D-05,
23135      #    0.2042D-05/
23136
23137       data (calcpts(j,45), j = 1,neta) /0.4531D-23, 0.1743D-22,
23138      #    0.6650D-22, 0.2545D-21, 0.9850D-21, 0.3771D-20, 0.1438D-19,
23139      #    0.5526D-19, 0.2116D-18, 0.8094D-18, 0.3104D-17, 0.1188D-16,
23140      #    0.4551D-16, 0.1743D-15, 0.6679D-15, 0.2558D-14, 0.9795D-14,
23141      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23142      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23143      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23144      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23145      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23146      #    0.3096D-02, 0.3135D-02, 0.3009D-02, 0.2768D-02, 0.2457D-02,
23147      #    0.2120D-02, 0.1783D-02, 0.1469D-02, 0.1188D-02, 0.9449D-03,
23148      #    0.7394D-03, 0.5694D-03, 0.4317D-03, 0.3222D-03, 0.2370D-03,
23149      #    0.1725D-03, 0.1247D-03, 0.9030D-04, 0.6587D-04, 0.4854D-04,
23150      #    0.3615D-04, 0.2712D-04, 0.2043D-04, 0.1541D-04, 0.1160D-04,
23151      #    0.8714D-05, 0.6524D-05, 0.4866D-05, 0.3617D-05, 0.2679D-05,
23152      #    0.1979D-05/
23153
23154       data (calcpts(j,46), j = 1,neta) /0.4427D-23, 0.1749D-22,
23155      #    0.6682D-22, 0.2549D-21, 0.9752D-21, 0.3768D-20, 0.1432D-19,
23156      #    0.5490D-19, 0.2113D-18, 0.8091D-18, 0.3100D-17, 0.1188D-16,
23157      #    0.4550D-16, 0.1743D-15, 0.6677D-15, 0.2558D-14, 0.9795D-14,
23158      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23159      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23160      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23161      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23162      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23163      #    0.3096D-02, 0.3135D-02, 0.3011D-02, 0.2769D-02, 0.2460D-02,
23164      #    0.2122D-02, 0.1787D-02, 0.1474D-02, 0.1195D-02, 0.9525D-03,
23165      #    0.7480D-03, 0.5790D-03, 0.4416D-03, 0.3318D-03, 0.2457D-03,
23166      #    0.1794D-03, 0.1297D-03, 0.9321D-04, 0.6711D-04, 0.4869D-04,
23167      #    0.3573D-04, 0.2649D-04, 0.1980D-04, 0.1487D-04, 0.1117D-04,
23168      #    0.8388D-05, 0.6284D-05, 0.4692D-05, 0.3492D-05, 0.2591D-05,
23169      #    0.1916D-05/
23170
23171       data (calcpts(j,47), j = 1,neta) /0.4376D-23, 0.1851D-22,
23172      #    0.6717D-22, 0.2583D-21, 0.1000D-20, 0.3750D-20, 0.1439D-19,
23173      #    0.5514D-19, 0.2121D-18, 0.8097D-18, 0.3111D-17, 0.1190D-16,
23174      #    0.4551D-16, 0.1743D-15, 0.6681D-15, 0.2559D-14, 0.9798D-14,
23175      #    0.3750D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23176      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23177      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23178      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23179      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23180      #    0.3096D-02, 0.3135D-02, 0.3012D-02, 0.2771D-02, 0.2462D-02,
23181      #    0.2124D-02, 0.1790D-02, 0.1478D-02, 0.1199D-02, 0.9579D-03,
23182      #    0.7544D-03, 0.5861D-03, 0.4492D-03, 0.3398D-03, 0.2534D-03,
23183      #    0.1863D-03, 0.1351D-03, 0.9705D-04, 0.6938D-04, 0.4968D-04,
23184      #    0.3588D-04, 0.2621D-04, 0.1937D-04, 0.1442D-04, 0.1079D-04,
23185      #    0.8087D-05, 0.6054D-05, 0.4524D-05, 0.3371D-05, 0.2504D-05,
23186      #    0.1854D-05/
23187
23188       data (calcpts(j,48), j = 1,neta) /0.5678D-23, 0.1891D-22,
23189      #    0.7606D-22, 0.2568D-21, 0.9618D-21, 0.3826D-20, 0.1455D-19,
23190      #    0.5600D-19, 0.2135D-18, 0.8070D-18, 0.3093D-17, 0.1190D-16,
23191      #    0.4561D-16, 0.1745D-15, 0.6681D-15, 0.2561D-14, 0.9801D-14,
23192      #    0.3751D-13, 0.1436D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23193      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23194      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23195      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23196      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23197      #    0.3096D-02, 0.3135D-02, 0.3012D-02, 0.2772D-02, 0.2463D-02,
23198      #    0.2125D-02, 0.1792D-02, 0.1481D-02, 0.1202D-02, 0.9617D-03,
23199      #    0.7589D-03, 0.5913D-03, 0.4551D-03, 0.3459D-03, 0.2597D-03,
23200      #    0.1923D-03, 0.1404D-03, 0.1013D-03, 0.7233D-04, 0.5142D-04,
23201      #    0.3666D-04, 0.2636D-04, 0.1919D-04, 0.1412D-04, 0.1048D-04,
23202      #    0.7817D-05, 0.5841D-05, 0.4362D-05, 0.3252D-05, 0.2418D-05,
23203      #    0.1792D-05/
23204
23205       data (calcpts(j,49), j = 1,neta) /0.3773D-23, 0.1720D-22,
23206      #    0.6603D-22, 0.2522D-21, 0.1040D-20, 0.3992D-20, 0.1503D-19,
23207      #    0.5605D-19, 0.2113D-18, 0.8140D-18, 0.3115D-17, 0.1187D-16,
23208      #    0.4551D-16, 0.1745D-15, 0.6692D-15, 0.2561D-14, 0.9800D-14,
23209      #    0.3749D-13, 0.1435D-12, 0.5492D-12, 0.2098D-11, 0.8016D-11,
23210      #    0.3057D-10, 0.1163D-09, 0.4408D-09, 0.1664D-08, 0.6219D-08,
23211      #    0.2306D-07, 0.8427D-07, 0.3015D-06, 0.1048D-05, 0.3494D-05,
23212      #    0.1102D-04, 0.3232D-04, 0.8651D-04, 0.2075D-03, 0.4392D-03,
23213      #    0.8148D-03, 0.1325D-02, 0.1904D-02, 0.2449D-02, 0.2865D-02,
23214      #    0.3096D-02, 0.3136D-02, 0.3012D-02, 0.2772D-02, 0.2463D-02,
23215      #    0.2127D-02, 0.1792D-02, 0.1482D-02, 0.1204D-02, 0.9644D-03,
23216      #    0.7620D-03, 0.5949D-03, 0.4593D-03, 0.3505D-03, 0.2645D-03,
23217      #    0.1971D-03, 0.1451D-03, 0.1054D-03, 0.7557D-04, 0.5369D-04,
23218      #    0.3800D-04, 0.2695D-04, 0.1931D-04, 0.1400D-04, 0.1027D-04,
23219      #    0.7599D-05, 0.5652D-05, 0.4212D-05, 0.3138D-05, 0.2334D-05,
23220      #    0.1731D-05/
23221
23222       data (dlaeta(j), j = 1,neta) /
23223      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
23224      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
23225      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
23226      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
23227      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
23228      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
23229      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
23230      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
23231      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
23232      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
23233      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
23234      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
23235      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
23236      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
23237      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
23238
23239       data (dlaxi(j), j = 1,nxi) /
23240      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
23241      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
23242      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
23243      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
23244      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
23245      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
23246      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
23247      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
23248      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
23249      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
23250
23251       dleta = dlog10(eta)
23252       dlxi = dlog10(xi)
23253       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
23254       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
23255       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
23256       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
23257       call locate(dlaeta,neta, dleta, ieta)
23258       call locate(dlaxi, nxi, dlxi, ixi)
23259 c     interpolating between the appropriate points
23260       delxi = 1d0/6d0
23261       deleta = 1d0/6d0
23262 c  lagrange 3-pt.
23263       if (ixi .le. 2) ixi = 2
23264       if (ixi .ge. 48) ixi = 48
23265       if (ieta .le. 2) ieta = 2
23266       if (ieta .ge. 72) ieta = 72
23267       pxi = (dlxi - dlaxi(ixi))/delxi
23268       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
23269      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
23270      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
23271       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
23272      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
23273      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
23274       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
23275      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
23276      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
23277       peta = (dleta - dlaeta(ieta))/deleta
23278       h1_LTq = peta*(peta-1d0)/2d0*f(-1) +
23279      #     (1d0 - peta**2)*f(0) +
23280 CMB  #     + peta*(peta+1d0)/2d0*f(1)
23281      #     peta*(peta+1d0)/2d0*f(1)
23282       return
23283       end
23284
23285 c     ===========================================
23286       double precision function h1bar_LTq(eta,xi)
23287 c     ===========================================
23288
23289 c     eq (29) in PLB347 (1995) 143 - 151 only necessary for the 
23290 c     transverse piece
23291 c     MSbar scheme
23292 c     This routine is called subd1bar in the original code.
23293 c     Gives h1bar_LTq for Q2 < 1.5 GeV2 ( = 0 for  Q2 > 1.5 GeV2)
23294       
23295       implicit none
23296       integer neta, nxi
23297       parameter (neta = 45, nxi = 15)
23298       double precision calcpts(neta,nxi), aeta(neta), axi(nxi)
23299       double precision t, u, y1, y2, y3, y4
23300       double precision eta, xi, huge, small
23301       parameter (small = 1.d-8, huge = 1.d10)
23302       integer j, ieta, ixi
23303
23304       data (calcpts(j, 1), j=1,neta) /0.d0, -.3403d-06, -.1758d-05,
23305      #  -.3760d-05, -.6194d-05, -.8975d-05, -.1049d-04, -.5149d-04,
23306      #  -.1049d-03, -.1646d-03, -.2276d-03, -.2598d-03, -.5753d-03,
23307      #  -.8478d-03, -.1068d-02, -.1242d-02, -.1380d-02, -.1488d-02,
23308      #  -.1572d-02, -.1640d-02, -.1694d-02, -.1856d-02, -.1816d-02,
23309      #  -.1742d-02, -.1662d-02, -.1589d-02, -.1518d-02, -.1453d-02,
23310      #  -.1395d-02, -.1342d-02, -.7865d-03, -.5766d-03, -.4622d-03,
23311      #  -.3897d-03, -.3617d-03, -.2181d-03, -.1602d-03, -.1070d-03,
23312      #  -.8177d-04, -.6665d-04, -.6109d-04, -.1574d-04, -.8655d-05,
23313      #  -.1086d-05, 0.d0/
23314 c
23315       data (calcpts(j, 2), j=1,neta) /0.d0, -.2178d-06, -.1125d-05,
23316      #  -.2409d-05, -.3966d-05, -.5751d-05, -.6717d-05, -.3299d-04,
23317      #  -.6719d-04, -.1055d-03, -.1459d-03, -.1665d-03, -.3694d-03,
23318      #  -.5449d-03, -.6870d-03, -.8000d-03, -.8888d-03, -.9588d-03,
23319      #  -.1014d-02, -.1057d-02, -.1091d-02, -.1199d-02, -.1175d-02,
23320      #  -.1127d-02, -.1077d-02, -.1028d-02, -.9830d-03, -.9422d-03,
23321      #  -.9041d-03, -.8688d-03, -.5103d-03, -.3741d-03, -.3000d-03,
23322      #  -.2528d-03, -.2346d-03, -.1416d-03, -.1039d-03, -.6963d-04,
23323      #  -.5295d-04, -.4317d-04, -.3972d-04, -.1017d-04, -.5610d-05,
23324      #  -.7188d-06, 0.d0/
23325 c
23326       data (calcpts(j, 3), j=1,neta) /0.d0, -.5322d-07, -.2750d-06,
23327      #  -.5883d-06, -.9690d-06, -.1405d-05, -.1641d-05, -.8070d-05,
23328      #  -.1646d-04, -.2586d-04, -.3580d-04, -.4088d-04, -.9104d-04,
23329      #  -.1346d-03, -.1703d-03, -.1986d-03, -.2209d-03, -.2388d-03,
23330      #  -.2528d-03, -.2639d-03, -.2727d-03, -.3014d-03, -.2961d-03,
23331      #  -.2847d-03, -.2724d-03, -.2604d-03, -.2490d-03, -.2386d-03,
23332      #  -.2292d-03, -.2205d-03, -.1297d-03, -.9522d-04, -.7638d-04,
23333      #  -.6429d-04, -.5973d-04, -.3603d-04, -.2641d-04, -.1768d-04,
23334      #  -.1350d-04, -.1100d-04, -.1009d-04, -.2613d-05, -.1420d-05,
23335      #  -.1778d-06, 0.d0/
23336 c
23337       data (calcpts(j, 4), j=1,neta) /0.d0, -.6204d-09, -.3207d-08,
23338      #  -.6865d-08, -.1131d-07, -.1639d-07, -.1916d-07, -.9449d-07,
23339      #  -.1932d-06, -.3045d-06, -.4228d-06, -.4833d-06, -.1088d-05,
23340      #  -.1624d-05, -.2069d-05, -.2429d-05, -.2718d-05, -.2949d-05,
23341      #  -.3135d-05, -.3284d-05, -.3403d-05, -.3831d-05, -.3800d-05,
23342      #  -.3674d-05, -.3528d-05, -.3381d-05, -.3245d-05, -.3114d-05,
23343      #  -.2995d-05, -.2883d-05, -.1710d-05, -.1256d-05, -.1010d-05,
23344      #  -.8503d-06, -.7902d-06, -.4776d-06, -.3498d-06, -.2352d-06,
23345      #  -.1790d-06, -.1461d-06, -.1337d-06, -.3444d-07, -.1883d-07,
23346      #  -.2382d-08, 0.d0/
23347 c
23348       data (calcpts(j, 5), j=1,neta) /0.d0, -.4968d-15, -.2571d-14,
23349      #  -.5505d-14, -.9076d-14, -.1318d-13, -.1541d-13, -.7657d-13,
23350      #  -.1578d-12, -.2505d-12, -.3500d-12, -.4016d-12, -.9316d-12,
23351      #  -.1425d-11, -.1853d-11, -.2212d-11, -.2511d-11, -.2759d-11,
23352      #  -.2965d-11, -.3137d-11, -.3279d-11, -.3888d-11, -.3960d-11,
23353      #  -.3893d-11, -.3784d-11, -.3660d-11, -.3535d-11, -.3412d-11,
23354      #  -.3296d-11, -.3187d-11, -.1940d-11, -.1433d-11, -.1153d-11,
23355      #  -.9740d-12, -.9041d-12, -.5475d-12, -.4023d-12, -.2694d-12,
23356      #  -.2056d-12, -.1677d-12, -.1536d-12, -.3957d-13, -.2160d-13,
23357      #  -.2823d-14, 0.d0/
23358 c
23359       data (calcpts(j, 6), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23360      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23361      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23362      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23363      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23364      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23365      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23366      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23367      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23368      #  0.0000d+00, 0.d0/
23369 c
23370       data (calcpts(j, 7), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23371      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23372      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23373      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23374      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23375      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23376      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23377      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23378      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23379      #  0.0000d+00, 0.d0/
23380 c
23381       data (calcpts(j, 8), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23382      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23383      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23384      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23385      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23386      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23387      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23388      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23389      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23390      #  0.0000d+00, 0.d0/
23391 c
23392       data (calcpts(j, 9), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23393      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23394      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23395      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23396      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23397      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23398      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23399      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23400      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23401      #  0.0000d+00, 0.d0/
23402 c
23403       data (calcpts(j,10), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23404      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23405      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23406      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23407      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23408      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23409      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23410      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23411      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23412      #  0.0000d+00, 0.d0/
23413 c
23414       data (calcpts(j,11), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23415      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23416      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23417      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23418      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23419      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23420      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23421      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23422      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23423      #  0.0000d+00, 0.d0/
23424 c
23425       data (calcpts(j,12), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23426      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23427      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23428      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23429      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23430      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23431      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23432      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23433      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23434      #  0.0000d+00, 0.d0/
23435 c
23436       data (calcpts(j,13), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23437      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23438      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23439      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23440      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23441      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23442      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23443      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23444      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23445      #  0.0000d+00, 0.d0/
23446 c
23447       data (calcpts(j,14), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23448      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23449      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23450      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23451      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23452      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23453      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23454      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23455      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23456      #  0.0000d+00, 0.d0/
23457 c
23458       data (calcpts(j,15), j=1,neta) /0.d0, 0.0000d+00, 0.0000d+00,
23459      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23460      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23461      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23462      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23463      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23464      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23465      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23466      #  0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00, 0.0000d+00,
23467      #  0.0000d+00, 0.d0/
23468 c
23469       data (aeta(j), j = 1,neta) /small, 0.1000d-02, 0.3000d-02,
23470      #  0.5000d-02, 0.7000d-02, 0.9000d-02, 0.1000d-01, 0.3000d-01, 
23471      #  0.5000d-01, 0.7000d-01, 0.9000d-01, 0.1000d+00, 0.2000d+00, 
23472      #  0.3000d+00, 0.4000d+00, 0.5000d+00, 0.6000d+00, 0.7000d+00, 
23473      #  0.8000d+00, 0.9000d+00, 0.1000d+01, 0.2000d+01, 0.3000d+01,
23474      #  0.4000d+01, 0.5000d+01, 0.6000d+01, 0.7000d+01, 0.8000d+01, 
23475      #  0.9000d+01, 0.1000d+02, 0.3000d+02, 0.5000d+02, 0.7000d+02,
23476      #  0.9000d+02, 0.1000d+03, 0.2000d+03, 0.3000d+03, 0.5000d+03,
23477      #  0.7000d+03, 0.9000d+03, 0.1000d+04, 0.5000d+04, 0.1000d+05,
23478      #  0.1000d+06, huge/
23479 c
23480       data (axi(j), j = 1,nxi) /0.1000d-01, 0.3162d-01, 0.1000d+00,
23481      #  0.3162d+00, 0.1000d+01, 0.2500d+01, 0.3162d+01, 0.7500d+01, 
23482      #  0.1000d+02, 0.3162d+02, 0.1000d+03, 0.3162d+03, 0.1000d+04,
23483      #  0.5000d+04, 0.1000d+05/
23484 c
23485 c  here we have to choose the array elements that will go into the 
23486 c  interpolation.
23487       call locate(aeta, neta, eta, ieta)
23488       call locate(axi, nxi, xi, ixi)
23489       if (ieta .le. 1) ieta = 1
23490       if (ieta .gt. (neta - 1)) ieta = neta - 1
23491       if (ixi .le. 1) ixi = 1
23492       if (ixi .gt. (nxi - 1)) ixi = nxi - 1
23493       y1 = calcpts(ieta,ixi)
23494       y2 = calcpts(ieta+1,ixi)
23495       y3 = calcpts(ieta+1,ixi+1)
23496       y4 = calcpts(ieta,ixi+1)
23497 c interpolating between the points
23498       t = (eta - aeta(ieta))/(aeta(ieta + 1) - aeta(ieta))
23499       u = (xi - axi(ixi))/(axi(ixi + 1) - axi(ixi))
23500       h1bar_LTq = (1.d0 - t)*(1.d0 - u)*y1 + t*(1.d0 - u)*y2 +
23501      #             t*u*y3 + (1.d0 - t)*u*y4
23502
23503       return
23504       end
23505
23506 CDECK  ID>, QCORRL.
23507
23508 c     ===========================================
23509       double precision function h1_HLq(eta,xi)
23510 c     ===========================================
23511
23512 c     eq (26) in PLB347 (1995) 143 - 151 for the transverse piece
23513 c     MSbar scheme
23514 c     This routine is called subcqhl in the original code.
23515 c     Called schql in updated code (03/06/96).
23516
23517       implicit none
23518       integer neta, nxi
23519       parameter (neta = 73, nxi = 49)
23520       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
23521       double precision eta, xi, dleta, dlxi
23522       double precision pxi, peta, f(-1:1), delxi, deleta
23523       integer j, ieta, ixi
23524
23525       data (calcpts(j, 1), j = 1,neta) /-.2062D-13, -.3668D-13,
23526      #    -.6520D-13, -.1160D-12, -.2063D-12, -.3668D-12, -.6522D-12,
23527      #    -.1160D-11, -.2062D-11, -.3668D-11, -.6525D-11, -.1160D-10,
23528      #    -.2064D-10, -.3672D-10, -.6530D-10, -.1162D-09, -.2069D-09,
23529      #    -.3684D-09, -.6561D-09, -.1170D-08, -.2085D-08, -.3723D-08,
23530      #    -.6657D-08, -.1192D-07, -.2137D-07, -.3838D-07, -.6900D-07,
23531      #    -.1242D-06, -.2233D-06, -.3993D-06, -.7067D-06, -.1227D-05,
23532      #    -.2066D-05, -.3329D-05, -.5057D-05, -.7154D-05, -.9369D-05,
23533      #    -.1137D-04, -.1288D-04, -.1379D-04, -.1414D-04, -.1402D-04,
23534      #    -.1358D-04, -.1296D-04, -.1228D-04, -.1162D-04, -.1103D-04,
23535      #    -.1052D-04, -.1012D-04, -.9794D-05, -.9545D-05, -.9356D-05,
23536      #    -.9215D-05, -.9111D-05, -.9034D-05, -.8980D-05, -.8938D-05,
23537      #    -.8910D-05, -.8889D-05, -.8873D-05, -.8863D-05, -.8856D-05,
23538      #    -.8851D-05, -.8847D-05, -.8844D-05, -.8841D-05, -.8840D-05,
23539      #    -.8840D-05, -.8839D-05, -.8839D-05, -.8837D-05, -.8837D-05,
23540      #    -.8837D-05/
23541
23542       data (calcpts(j, 2), j = 1,neta) /-.3027D-13, -.5384D-13,
23543      #    -.9569D-13, -.1702D-12, -.3027D-12, -.5383D-12, -.9573D-12,
23544      #    -.1703D-11, -.3027D-11, -.5384D-11, -.9577D-11, -.1703D-10,
23545      #    -.3029D-10, -.5390D-10, -.9585D-10, -.1706D-09, -.3037D-09,
23546      #    -.5406D-09, -.9630D-09, -.1717D-08, -.3060D-08, -.5465D-08,
23547      #    -.9771D-08, -.1749D-07, -.3136D-07, -.5633D-07, -.1013D-06,
23548      #    -.1823D-06, -.3277D-06, -.5860D-06, -.1037D-05, -.1801D-05,
23549      #    -.3032D-05, -.4886D-05, -.7422D-05, -.1050D-04, -.1375D-04,
23550      #    -.1668D-04, -.1890D-04, -.2024D-04, -.2075D-04, -.2058D-04,
23551      #    -.1993D-04, -.1903D-04, -.1803D-04, -.1705D-04, -.1619D-04,
23552      #    -.1545D-04, -.1485D-04, -.1438D-04, -.1401D-04, -.1373D-04,
23553      #    -.1352D-04, -.1337D-04, -.1326D-04, -.1318D-04, -.1312D-04,
23554      #    -.1308D-04, -.1305D-04, -.1303D-04, -.1301D-04, -.1300D-04,
23555      #    -.1299D-04, -.1299D-04, -.1299D-04, -.1297D-04, -.1297D-04,
23556      #    -.1297D-04, -.1297D-04, -.1297D-04, -.1297D-04, -.1297D-04,
23557      #    -.1297D-04/
23558
23559       data (calcpts(j, 3), j = 1,neta) /-.4440D-13, -.7897D-13,
23560      #    -.1404D-12, -.2497D-12, -.4441D-12, -.7896D-12, -.1404D-11,
23561      #    -.2498D-11, -.4440D-11, -.7897D-11, -.1405D-10, -.2498D-10,
23562      #    -.4444D-10, -.7907D-10, -.1406D-09, -.2502D-09, -.4455D-09,
23563      #    -.7931D-09, -.1413D-08, -.2518D-08, -.4489D-08, -.8016D-08,
23564      #    -.1433D-07, -.2565D-07, -.4600D-07, -.8263D-07, -.1486D-06,
23565      #    -.2674D-06, -.4807D-06, -.8596D-06, -.1521D-05, -.2642D-05,
23566      #    -.4448D-05, -.7166D-05, -.1089D-04, -.1540D-04, -.2017D-04,
23567      #    -.2447D-04, -.2772D-04, -.2970D-04, -.3044D-04, -.3018D-04,
23568      #    -.2924D-04, -.2791D-04, -.2643D-04, -.2500D-04, -.2373D-04,
23569      #    -.2265D-04, -.2177D-04, -.2108D-04, -.2054D-04, -.2013D-04,
23570      #    -.1984D-04, -.1961D-04, -.1945D-04, -.1932D-04, -.1923D-04,
23571      #    -.1918D-04, -.1913D-04, -.1910D-04, -.1907D-04, -.1906D-04,
23572      #    -.1905D-04, -.1903D-04, -.1903D-04, -.1903D-04, -.1902D-04,
23573      #    -.1902D-04, -.1902D-04, -.1902D-04, -.1902D-04, -.1902D-04,
23574      #    -.1902D-04/
23575
23576       data (calcpts(j, 4), j = 1,neta) /-.6515D-13, -.1159D-12,
23577      #    -.2060D-12, -.3663D-12, -.6516D-12, -.1159D-11, -.2061D-11,
23578      #    -.3665D-11, -.6515D-11, -.1159D-10, -.2061D-10, -.3666D-10,
23579      #    -.6521D-10, -.1160D-09, -.2063D-09, -.3672D-09, -.6537D-09,
23580      #    -.1164D-08, -.2073D-08, -.3695D-08, -.6587D-08, -.1176D-07,
23581      #    -.2103D-07, -.3764D-07, -.6749D-07, -.1212D-06, -.2180D-06,
23582      #    -.3924D-06, -.7053D-06, -.1261D-05, -.2232D-05, -.3876D-05,
23583      #    -.6526D-05, -.1051D-04, -.1597D-04, -.2260D-04, -.2959D-04,
23584      #    -.3590D-04, -.4068D-04, -.4358D-04, -.4466D-04, -.4429D-04,
23585      #    -.4290D-04, -.4094D-04, -.3878D-04, -.3669D-04, -.3483D-04,
23586      #    -.3323D-04, -.3195D-04, -.3094D-04, -.3014D-04, -.2955D-04,
23587      #    -.2911D-04, -.2877D-04, -.2853D-04, -.2835D-04, -.2822D-04,
23588      #    -.2813D-04, -.2807D-04, -.2803D-04, -.2799D-04, -.2796D-04,
23589      #    -.2795D-04, -.2793D-04, -.2792D-04, -.2792D-04, -.2792D-04,
23590      #    -.2791D-04, -.2791D-04, -.2791D-04, -.2791D-04, -.2791D-04,
23591      #    -.2791D-04/
23592
23593       data (calcpts(j, 5), j = 1,neta) /-.9559D-13, -.1700D-12,
23594      #    -.3022D-12, -.5375D-12, -.9561D-12, -.1700D-11, -.3023D-11,
23595      #    -.5377D-11, -.9558D-11, -.1700D-10, -.3024D-10, -.5379D-10,
23596      #    -.9567D-10, -.1702D-09, -.3027D-09, -.5387D-09, -.9591D-09,
23597      #    -.1707D-08, -.3041D-08, -.5421D-08, -.9664D-08, -.1726D-07,
23598      #    -.3085D-07, -.5523D-07, -.9902D-07, -.1779D-06, -.3198D-06,
23599      #    -.5756D-06, -.1035D-05, -.1850D-05, -.3274D-05, -.5686D-05,
23600      #    -.9572D-05, -.1542D-04, -.2343D-04, -.3315D-04, -.4341D-04,
23601      #    -.5267D-04, -.5968D-04, -.6393D-04, -.6553D-04, -.6498D-04,
23602      #    -.6295D-04, -.6007D-04, -.5691D-04, -.5385D-04, -.5111D-04,
23603      #    -.4878D-04, -.4688D-04, -.4538D-04, -.4423D-04, -.4336D-04,
23604      #    -.4271D-04, -.4222D-04, -.4187D-04, -.4160D-04, -.4142D-04,
23605      #    -.4127D-04, -.4118D-04, -.4112D-04, -.4106D-04, -.4102D-04,
23606      #    -.4100D-04, -.4098D-04, -.4097D-04, -.4097D-04, -.4096D-04,
23607      #    -.4096D-04, -.4096D-04, -.4094D-04, -.4094D-04, -.4094D-04,
23608      #    -.4094D-04/
23609
23610       data (calcpts(j, 6), j = 1,neta) /-.1402D-12, -.2493D-12,
23611      #    -.4431D-12, -.7882D-12, -.1402D-11, -.2493D-11, -.4433D-11,
23612      #    -.7885D-11, -.1402D-10, -.2493D-10, -.4435D-10, -.7887D-10,
23613      #    -.1403D-09, -.2496D-09, -.4439D-09, -.7899D-09, -.1406D-08,
23614      #    -.2504D-08, -.4459D-08, -.7949D-08, -.1417D-07, -.2530D-07,
23615      #    -.4524D-07, -.8098D-07, -.1452D-06, -.2608D-06, -.4689D-06,
23616      #    -.8439D-06, -.1517D-05, -.2713D-05, -.4800D-05, -.8335D-05,
23617      #    -.1403D-04, -.2261D-04, -.3435D-04, -.4861D-04, -.6365D-04,
23618      #    -.7724D-04, -.8752D-04, -.9375D-04, -.9609D-04, -.9529D-04,
23619      #    -.9229D-04, -.8810D-04, -.8346D-04, -.7895D-04, -.7492D-04,
23620      #    -.7150D-04, -.6872D-04, -.6653D-04, -.6483D-04, -.6355D-04,
23621      #    -.6259D-04, -.6188D-04, -.6136D-04, -.6098D-04, -.6071D-04,
23622      #    -.6051D-04, -.6037D-04, -.6027D-04, -.6020D-04, -.6015D-04,
23623      #    -.6011D-04, -.6008D-04, -.6007D-04, -.6005D-04, -.6004D-04,
23624      #    -.6002D-04, -.6003D-04, -.6003D-04, -.6003D-04, -.6003D-04,
23625      #    -.6001D-04/
23626
23627       data (calcpts(j, 7), j = 1,neta) /-.2055D-12, -.3655D-12,
23628      #    -.6496D-12, -.1155D-11, -.2055D-11, -.3654D-11, -.6498D-11,
23629      #    -.1156D-10, -.2055D-10, -.3655D-10, -.6501D-10, -.1156D-09,
23630      #    -.2056D-09, -.3659D-09, -.6506D-09, -.1158D-08, -.2062D-08,
23631      #    -.3670D-08, -.6537D-08, -.1165D-07, -.2077D-07, -.3709D-07,
23632      #    -.6632D-07, -.1187D-06, -.2128D-06, -.3823D-06, -.6872D-06,
23633      #    -.1237D-05, -.2223D-05, -.3975D-05, -.7034D-05, -.1222D-04,
23634      #    -.2056D-04, -.3313D-04, -.5034D-04, -.7123D-04, -.9329D-04,
23635      #    -.1132D-03, -.1283D-03, -.1374D-03, -.1409D-03, -.1397D-03,
23636      #    -.1353D-03, -.1291D-03, -.1223D-03, -.1157D-03, -.1098D-03,
23637      #    -.1048D-03, -.1007D-03, -.9748D-04, -.9500D-04, -.9311D-04,
23638      #    -.9171D-04, -.9068D-04, -.8991D-04, -.8936D-04, -.8895D-04,
23639      #    -.8866D-04, -.8845D-04, -.8829D-04, -.8819D-04, -.8812D-04,
23640      #    -.8807D-04, -.8803D-04, -.8800D-04, -.8797D-04, -.8796D-04,
23641      #    -.8796D-04, -.8795D-04, -.8795D-04, -.8795D-04, -.8793D-04,
23642      #    -.8793D-04/
23643
23644       data (calcpts(j, 8), j = 1,neta) /-.3011D-12, -.5355D-12,
23645      #    -.9518D-12, -.1693D-11, -.3011D-11, -.5354D-11, -.9521D-11,
23646      #    -.1694D-10, -.3010D-10, -.5355D-10, -.9526D-10, -.1694D-09,
23647      #    -.3013D-09, -.5361D-09, -.9533D-09, -.1697D-08, -.3021D-08,
23648      #    -.5377D-08, -.9578D-08, -.1707D-07, -.3044D-07, -.5435D-07,
23649      #    -.9716D-07, -.1739D-06, -.3118D-06, -.5600D-06, -.1007D-05,
23650      #    -.1812D-05, -.3256D-05, -.5822D-05, -.1030D-04, -.1789D-04,
23651      #    -.3011D-04, -.4852D-04, -.7372D-04, -.1043D-03, -.1367D-03,
23652      #    -.1658D-03, -.1879D-03, -.2013D-03, -.2064D-03, -.2046D-03,
23653      #    -.1982D-03, -.1892D-03, -.1792D-03, -.1695D-03, -.1608D-03,
23654      #    -.1535D-03, -.1475D-03, -.1428D-03, -.1391D-03, -.1364D-03,
23655      #    -.1343D-03, -.1329D-03, -.1317D-03, -.1308D-03, -.1303D-03,
23656      #    -.1298D-03, -.1295D-03, -.1292D-03, -.1291D-03, -.1290D-03,
23657      #    -.1290D-03, -.1288D-03, -.1289D-03, -.1289D-03, -.1289D-03,
23658      #    -.1289D-03, -.1289D-03, -.1289D-03, -.1289D-03, -.1289D-03,
23659      #    -.1287D-03/
23660
23661       data (calcpts(j, 9), j = 1,neta) /-.4405D-12, -.7835D-12,
23662      #    -.1393D-11, -.2477D-11, -.4406D-11, -.7834D-11, -.1393D-10,
23663      #    -.2478D-10, -.4405D-10, -.7835D-10, -.1394D-09, -.2479D-09,
23664      #    -.4409D-09, -.7844D-09, -.1395D-08, -.2483D-08, -.4420D-08,
23665      #    -.7868D-08, -.1401D-07, -.2498D-07, -.4453D-07, -.7951D-07,
23666      #    -.1422D-06, -.2544D-06, -.4561D-06, -.8192D-06, -.1473D-05,
23667      #    -.2650D-05, -.4762D-05, -.8514D-05, -.1506D-04, -.2615D-04,
23668      #    -.4403D-04, -.7095D-04, -.1078D-03, -.1526D-03, -.1999D-03,
23669      #    -.2426D-03, -.2750D-03, -.2946D-03, -.3020D-03, -.2994D-03,
23670      #    -.2900D-03, -.2767D-03, -.2621D-03, -.2479D-03, -.2351D-03,
23671      #    -.2244D-03, -.2156D-03, -.2087D-03, -.2033D-03, -.1993D-03,
23672      #    -.1963D-03, -.1940D-03, -.1924D-03, -.1912D-03, -.1903D-03,
23673      #    -.1897D-03, -.1893D-03, -.1890D-03, -.1888D-03, -.1886D-03,
23674      #    -.1885D-03, -.1884D-03, -.1884D-03, -.1882D-03, -.1882D-03,
23675      #    -.1882D-03, -.1882D-03, -.1882D-03, -.1882D-03, -.1882D-03,
23676      #    -.1882D-03/
23677
23678       data (calcpts(j,10), j = 1,neta) /-.6440D-12, -.1146D-11,
23679      #    -.2036D-11, -.3621D-11, -.6442D-11, -.1145D-10, -.2037D-10,
23680      #    -.3623D-10, -.6440D-10, -.1145D-09, -.2038D-09, -.3624D-09,
23681      #    -.6446D-09, -.1147D-08, -.2039D-08, -.3629D-08, -.6461D-08,
23682      #    -.1150D-07, -.2049D-07, -.3652D-07, -.6510D-07, -.1162D-06,
23683      #    -.2078D-06, -.3719D-06, -.6666D-06, -.1197D-05, -.2152D-05,
23684      #    -.3872D-05, -.6957D-05, -.1244D-04, -.2200D-04, -.3819D-04,
23685      #    -.6430D-04, -.1036D-03, -.1575D-03, -.2229D-03, -.2921D-03,
23686      #    -.3546D-03, -.4019D-03, -.4306D-03, -.4414D-03, -.4377D-03,
23687      #    -.4239D-03, -.4045D-03, -.3831D-03, -.3622D-03, -.3436D-03,
23688      #    -.3279D-03, -.3150D-03, -.3048D-03, -.2970D-03, -.2910D-03,
23689      #    -.2866D-03, -.2834D-03, -.2810D-03, -.2792D-03, -.2779D-03,
23690      #    -.2770D-03, -.2763D-03, -.2759D-03, -.2755D-03, -.2753D-03,
23691      #    -.2751D-03, -.2750D-03, -.2750D-03, -.2749D-03, -.2749D-03,
23692      #    -.2749D-03, -.2747D-03, -.2747D-03, -.2747D-03, -.2747D-03,
23693      #    -.2747D-03/
23694
23695       data (calcpts(j,11), j = 1,neta) /-.9398D-12, -.1672D-11,
23696      #    -.2971D-11, -.5285D-11, -.9400D-11, -.1671D-10, -.2972D-10,
23697      #    -.5287D-10, -.9397D-10, -.1672D-09, -.2974D-09, -.5288D-09,
23698      #    -.9406D-09, -.1674D-08, -.2976D-08, -.5296D-08, -.9429D-08,
23699      #    -.1678D-07, -.2989D-07, -.5329D-07, -.9499D-07, -.1696D-06,
23700      #    -.3032D-06, -.5425D-06, -.9724D-06, -.1746D-05, -.3138D-05,
23701      #    -.5645D-05, -.1014D-04, -.1812D-04, -.3205D-04, -.5564D-04,
23702      #    -.9365D-04, -.1509D-03, -.2294D-03, -.3249D-03, -.4258D-03,
23703      #    -.5171D-03, -.5863D-03, -.6283D-03, -.6441D-03, -.6386D-03,
23704      #    -.6184D-03, -.5901D-03, -.5586D-03, -.5282D-03, -.5009D-03,
23705      #    -.4779D-03, -.4591D-03, -.4442D-03, -.4328D-03, -.4240D-03,
23706      #    -.4177D-03, -.4128D-03, -.4092D-03, -.4067D-03, -.4049D-03,
23707      #    -.4034D-03, -.4025D-03, -.4019D-03, -.4013D-03, -.4009D-03,
23708      #    -.4008D-03, -.4005D-03, -.4004D-03, -.4004D-03, -.4003D-03,
23709      #    -.4003D-03, -.4003D-03, -.4003D-03, -.4001D-03, -.4001D-03,
23710      #    -.4001D-03/
23711
23712       data (calcpts(j,12), j = 1,neta) /-.1367D-11, -.2432D-11,
23713      #    -.4323D-11, -.7688D-11, -.1368D-10, -.2432D-10, -.4324D-10,
23714      #    -.7692D-10, -.1367D-09, -.2432D-09, -.4326D-09, -.7694D-09,
23715      #    -.1368D-08, -.2435D-08, -.4329D-08, -.7705D-08, -.1372D-07,
23716      #    -.2442D-07, -.4349D-07, -.7752D-07, -.1382D-06, -.2467D-06,
23717      #    -.4409D-06, -.7889D-06, -.1414D-05, -.2539D-05, -.4561D-05,
23718      #    -.8202D-05, -.1473D-04, -.2632D-04, -.4653D-04, -.8076D-04,
23719      #    -.1359D-03, -.2191D-03, -.3331D-03, -.4719D-03, -.6188D-03,
23720      #    -.7518D-03, -.8527D-03, -.9139D-03, -.9369D-03, -.9289D-03,
23721      #    -.8994D-03, -.8579D-03, -.8121D-03, -.7676D-03, -.7278D-03,
23722      #    -.6940D-03, -.6664D-03, -.6447D-03, -.6280D-03, -.6152D-03,
23723      #    -.6057D-03, -.5987D-03, -.5935D-03, -.5898D-03, -.5871D-03,
23724      #    -.5852D-03, -.5837D-03, -.5828D-03, -.5820D-03, -.5815D-03,
23725      #    -.5812D-03, -.5810D-03, -.5807D-03, -.5806D-03, -.5806D-03,
23726      #    -.5804D-03, -.5804D-03, -.5804D-03, -.5803D-03, -.5803D-03,
23727      #    -.5803D-03/
23728
23729       data (calcpts(j,13), j = 1,neta) /-.1981D-11, -.3524D-11,
23730      #    -.6264D-11, -.1114D-10, -.1982D-10, -.3524D-10, -.6266D-10,
23731      #    -.1115D-09, -.1981D-09, -.3524D-09, -.6269D-09, -.1115D-08,
23732      #    -.1983D-08, -.3528D-08, -.6273D-08, -.1116D-07, -.1988D-07,
23733      #    -.3538D-07, -.6301D-07, -.1123D-06, -.2002D-06, -.3573D-06,
23734      #    -.6386D-06, -.1142D-05, -.2047D-05, -.3674D-05, -.6599D-05,
23735      #    -.1186D-04, -.2130D-04, -.3803D-04, -.6722D-04, -.1166D-03,
23736      #    -.1963D-03, -.3164D-03, -.4812D-03, -.6821D-03, -.8951D-03,
23737      #    -.1088D-02, -.1235D-02, -.1324D-02, -.1357D-02, -.1346D-02,
23738      #    -.1303D-02, -.1242D-02, -.1175D-02, -.1110D-02, -.1052D-02,
23739      #    -.1003D-02, -.9628D-03, -.9311D-03, -.9066D-03, -.8881D-03,
23740      #    -.8742D-03, -.8640D-03, -.8564D-03, -.8509D-03, -.8471D-03,
23741      #    -.8442D-03, -.8421D-03, -.8406D-03, -.8396D-03, -.8388D-03,
23742      #    -.8382D-03, -.8378D-03, -.8376D-03, -.8374D-03, -.8373D-03,
23743      #    -.8372D-03, -.8372D-03, -.8372D-03, -.8370D-03, -.8370D-03,
23744      #    -.8370D-03/
23745
23746       data (calcpts(j,14), j = 1,neta) /-.1657D-11, -.2947D-11,
23747      #    -.5239D-11, -.9317D-11, -.1657D-10, -.2947D-10, -.5241D-10,
23748      #    -.9322D-10, -.1657D-09, -.2948D-09, -.5244D-09, -.9328D-09,
23749      #    -.1659D-08, -.2953D-08, -.5253D-08, -.9353D-08, -.1666D-07,
23750      #    -.2969D-07, -.5295D-07, -.9455D-07, -.1689D-06, -.3026D-06,
23751      #    -.5433D-06, -.9779D-06, -.1766D-05, -.3201D-05, -.5821D-05,
23752      #    -.1062D-04, -.1939D-04, -.3528D-04, -.6357D-04, -.1123D-03,
23753      #    -.1920D-03, -.3125D-03, -.4764D-03, -.6703D-03, -.8629D-03,
23754      #    -.1016D-02, -.1102D-02, -.1114D-02, -.1061D-02, -.9629D-03,
23755      #    -.8376D-03, -.7028D-03, -.5715D-03, -.4530D-03, -.3513D-03,
23756      #    -.2678D-03, -.2010D-03, -.1494D-03, -.1096D-03, -.8020D-04,
23757      #    -.5869D-04, -.4239D-04, -.3005D-04, -.2184D-04, -.1487D-04,
23758      #    -.1074D-04, -.7992D-05, -.5163D-05, -.3779D-05, -.2358D-05,
23759      #    -.2412D-05, -.9490D-06, -.9740D-06, -.9911D-06, -.1003D-05,
23760      #    -.1011D-05, -.1016D-05, -.1020D-05, -.1022D-05, -.1024D-05,
23761      #    0.4749D-06/
23762
23763       data (calcpts(j,15), j = 1,neta) /-.2383D-11, -.4239D-11,
23764      #    -.7535D-11, -.1340D-10, -.2384D-10, -.4239D-10, -.7538D-10,
23765      #    -.1341D-09, -.2383D-09, -.4240D-09, -.7543D-09, -.1342D-08,
23766      #    -.2387D-08, -.4247D-08, -.7555D-08, -.1345D-07, -.2396D-07,
23767      #    -.4269D-07, -.7612D-07, -.1359D-06, -.2428D-06, -.4347D-06,
23768      #    -.7800D-06, -.1403D-05, -.2531D-05, -.4584D-05, -.8325D-05,
23769      #    -.1517D-04, -.2765D-04, -.5023D-04, -.9038D-04, -.1595D-03,
23770      #    -.2725D-03, -.4437D-03, -.6773D-03, -.9547D-03, -.1232D-02,
23771      #    -.1454D-02, -.1580D-02, -.1600D-02, -.1527D-02, -.1387D-02,
23772      #    -.1208D-02, -.1014D-02, -.8254D-03, -.6546D-03, -.5069D-03,
23773      #    -.3863D-03, -.2900D-03, -.2157D-03, -.1589D-03, -.1161D-03,
23774      #    -.8367D-04, -.6062D-04, -.4279D-04, -.3042D-04, -.2220D-04,
23775      #    -.1523D-04, -.1109D-04, -.6831D-05, -.5498D-05, -.4112D-05,
23776      #    -.2690D-05, -.1243D-05, -.1279D-05, 0.1969D-06, 0.1801D-06,
23777      #    0.1688D-06, 0.1610D-06, 0.1557D-06, 0.1521D-06, 0.1496D-06,
23778      #    0.1480D-06/
23779
23780       data (calcpts(j,16), j = 1,neta) /-.3399D-11, -.6046D-11,
23781      #    -.1075D-10, -.1911D-10, -.3400D-10, -.6045D-10, -.1075D-09,
23782      #    -.1912D-09, -.3399D-09, -.6046D-09, -.1076D-08, -.1913D-08,
23783      #    -.3403D-08, -.6056D-08, -.1077D-07, -.1918D-07, -.3416D-07,
23784      #    -.6085D-07, -.1085D-06, -.1936D-06, -.3457D-06, -.6187D-06,
23785      #    -.1110D-05, -.1994D-05, -.3594D-05, -.6499D-05, -.1178D-04,
23786      #    -.2142D-04, -.3897D-04, -.7064D-04, -.1268D-03, -.2235D-03,
23787      #    -.3815D-03, -.6215D-03, -.9500D-03, -.1343D-02, -.1738D-02,
23788      #    -.2058D-02, -.2244D-02, -.2278D-02, -.2180D-02, -.1984D-02,
23789      #    -.1730D-02, -.1455D-02, -.1185D-02, -.9400D-03, -.7301D-03,
23790      #    -.5566D-03, -.4177D-03, -.3106D-03, -.2286D-03, -.1670D-03,
23791      #    -.1211D-03, -.8712D-04, -.6249D-04, -.4462D-04, -.3222D-04,
23792      #    -.2247D-04, -.1549D-04, -.1134D-04, -.8576D-05, -.5738D-05,
23793      #    -.4349D-05, -.2924D-05, -.1475D-05, -.1510D-05, -.3433D-07,
23794      #    -.5058D-07, -.6164D-07, -.6919D-07, -.7433D-07, -.7783D-07,
23795      #    -.8021D-07/
23796
23797       data (calcpts(j,17), j = 1,neta) /-.4787D-11, -.8515D-11,
23798      #    -.1513D-10, -.2692D-10, -.4788D-10, -.8514D-10, -.1514D-09,
23799      #    -.2693D-09, -.4787D-09, -.8515D-09, -.1515D-08, -.2694D-08,
23800      #    -.4793D-08, -.8528D-08, -.1517D-07, -.2700D-07, -.4808D-07,
23801      #    -.8564D-07, -.1526D-06, -.2723D-06, -.4860D-06, -.8692D-06,
23802      #    -.1557D-05, -.2796D-05, -.5031D-05, -.9081D-05, -.1642D-04,
23803      #    -.2978D-04, -.5401D-04, -.9761D-04, -.1747D-03, -.3072D-03,
23804      #    -.5238D-03, -.8536D-03, -.1307D-02, -.1854D-02, -.2411D-02,
23805      #    -.2869D-02, -.3142D-02, -.3202D-02, -.3074D-02, -.2805D-02,
23806      #    -.2451D-02, -.2066D-02, -.1687D-02, -.1339D-02, -.1041D-02,
23807      #    -.7941D-03, -.5972D-03, -.4441D-03, -.3274D-03, -.2390D-03,
23808      #    -.1742D-03, -.1251D-03, -.8941D-04, -.6469D-04, -.4675D-04,
23809      #    -.3281D-04, -.2303D-04, -.1752D-04, -.1186D-04, -.9089D-05,
23810      #    -.6244D-05, -.4851D-05, -.3423D-05, -.1972D-05, -.2006D-05,
23811      #    -.2029D-05, -.5445D-06, -.5551D-06, -.5624D-06, -.5673D-06,
23812      #    -.5706D-06/
23813
23814       data (calcpts(j,18), j = 1,neta) /-.6623D-11, -.1178D-10,
23815      #    -.2094D-10, -.3724D-10, -.6624D-10, -.1178D-09, -.2095D-09,
23816      #    -.3726D-09, -.6622D-09, -.1178D-08, -.2096D-08, -.3727D-08,
23817      #    -.6629D-08, -.1180D-07, -.2098D-07, -.3734D-07, -.6648D-07,
23818      #    -.1184D-06, -.2109D-06, -.3761D-06, -.6709D-06, -.1199D-05,
23819      #    -.2146D-05, -.3845D-05, -.6907D-05, -.1244D-04, -.2243D-04,
23820      #    -.4053D-04, -.7321D-04, -.1317D-03, -.2350D-03, -.4118D-03,
23821      #    -.7008D-03, -.1142D-02, -.1754D-02, -.2498D-02, -.3268D-02,
23822      #    -.3914D-02, -.4313D-02, -.4420D-02, -.4261D-02, -.3903D-02,
23823      #    -.3423D-02, -.2891D-02, -.2365D-02, -.1883D-02, -.1466D-02,
23824      #    -.1120D-02, -.8425D-03, -.6260D-03, -.4613D-03, -.3363D-03,
23825      #    -.2443D-03, -.1761D-03, -.1267D-03, -.9088D-04, -.6453D-04,
23826      #    -.4650D-04, -.3250D-04, -.2268D-04, -.1715D-04, -.1147D-04,
23827      #    -.8681D-05, -.5828D-05, -.4428D-05, -.2996D-05, -.1543D-05,
23828      #    -.1574D-05, -.1596D-05, -.1106D-06, -.1206D-06, -.1274D-06,
23829      #    -.1321D-06/
23830
23831       data (calcpts(j,19), j = 1,neta) /-.8945D-11, -.1591D-10,
23832      #    -.2828D-10, -.5030D-10, -.8947D-10, -.1591D-09, -.2829D-09,
23833      #    -.5032D-09, -.8944D-09, -.1591D-08, -.2830D-08, -.5033D-08,
23834      #    -.8952D-08, -.1593D-07, -.2832D-07, -.5040D-07, -.8973D-07,
23835      #    -.1597D-06, -.2845D-06, -.5070D-06, -.9037D-06, -.1613D-05,
23836      #    -.2883D-05, -.5159D-05, -.9244D-05, -.1660D-04, -.2982D-04,
23837      #    -.5365D-04, -.9645D-04, -.1727D-03, -.3063D-03, -.5346D-03,
23838      #    -.9074D-03, -.1478D-02, -.2276D-02, -.3259D-02, -.4296D-02,
23839      #    -.5189D-02, -.5766D-02, -.5952D-02, -.5774D-02, -.5317D-02,
23840      #    -.4683D-02, -.3972D-02, -.3259D-02, -.2601D-02, -.2029D-02,
23841      #    -.1552D-02, -.1170D-02, -.8699D-03, -.6406D-03, -.4682D-03,
23842      #    -.3407D-03, -.2463D-03, -.1761D-03, -.1264D-03, -.9026D-04,
23843      #    -.6374D-04, -.4560D-04, -.3302D-04, -.2314D-04, -.1607D-04,
23844      #    -.1186D-04, -.7561D-05, -.6196D-05, -.3288D-05, -.3351D-05,
23845      #    -.1894D-05, -.1923D-05, -.4426D-06, -.4561D-06, -.4653D-06,
23846      #    -.4716D-06/
23847
23848       data (calcpts(j,20), j = 1,neta) /-.1170D-10, -.2082D-10,
23849      #    -.3700D-10, -.6581D-10, -.1171D-09, -.2082D-09, -.3702D-09,
23850      #    -.6584D-09, -.1170D-08, -.2082D-08, -.3703D-08, -.6585D-08,
23851      #    -.1171D-07, -.2083D-07, -.3704D-07, -.6591D-07, -.1173D-06,
23852      #    -.2088D-06, -.3717D-06, -.6620D-06, -.1179D-05, -.2102D-05,
23853      #    -.3752D-05, -.6700D-05, -.1198D-04, -.2143D-04, -.3835D-04,
23854      #    -.6864D-04, -.1227D-03, -.2182D-03, -.3847D-03, -.6677D-03,
23855      #    -.1129D-02, -.1837D-02, -.2835D-02, -.4084D-02, -.5432D-02,
23856      #    -.6633D-02, -.7450D-02, -.7765D-02, -.7596D-02, -.7044D-02,
23857      #    -.6242D-02, -.5321D-02, -.4385D-02, -.3514D-02, -.2749D-02,
23858      #    -.2108D-02, -.1592D-02, -.1186D-02, -.8758D-03, -.6405D-03,
23859      #    -.4661D-03, -.3371D-03, -.2418D-03, -.1739D-03, -.1252D-03,
23860      #    -.8880D-04, -.6357D-04, -.4528D-04, -.3260D-04, -.2266D-04,
23861      #    -.1704D-04, -.1280D-04, -.8476D-05, -.7097D-05, -.4179D-05,
23862      #    -.4235D-05, -.2773D-05, -.2799D-05, -.1316D-05, -.1328D-05,
23863      #    -.1337D-05/
23864
23865       data (calcpts(j,21), j = 1,neta) /-.1470D-10, -.2615D-10,
23866      #    -.4648D-10, -.8267D-10, -.1470D-09, -.2615D-09, -.4650D-09,
23867      #    -.8270D-09, -.1470D-08, -.2615D-08, -.4651D-08, -.8270D-08,
23868      #    -.1471D-07, -.2616D-07, -.4651D-07, -.8275D-07, -.1472D-06,
23869      #    -.2620D-06, -.4661D-06, -.8298D-06, -.1477D-05, -.2630D-05,
23870      #    -.4687D-05, -.8353D-05, -.1489D-04, -.2656D-04, -.4732D-04,
23871      #    -.8427D-04, -.1497D-03, -.2644D-03, -.4628D-03, -.7976D-03,
23872      #    -.1341D-02, -.2177D-02, -.3364D-02, -.4877D-02, -.6552D-02,
23873      #    -.8101D-02, -.9219D-02, -.9729D-02, -.9619D-02, -.9002D-02,
23874      #    -.8041D-02, -.6903D-02, -.5723D-02, -.4607D-02, -.3618D-02,
23875      #    -.2783D-02, -.2107D-02, -.1572D-02, -.1161D-02, -.8494D-03,
23876      #    -.6165D-03, -.4455D-03, -.3193D-03, -.2288D-03, -.1631D-03,
23877      #    -.1154D-03, -.8159D-04, -.5760D-04, -.4064D-04, -.2784D-04,
23878      #    -.1932D-04, -.1364D-04, -.9365D-05, -.5017D-05, -.3620D-05,
23879      #    -.2190D-05, -.7378D-06, -.7705D-06, 0.7073D-06, 0.6922D-06,
23880      #    0.6819D-06/
23881
23882       data (calcpts(j,22), j = 1,neta) /-.1759D-10, -.3128D-10,
23883      #    -.5560D-10, -.9889D-10, -.1759D-09, -.3128D-09, -.5562D-09,
23884      #    -.9892D-09, -.1758D-08, -.3127D-08, -.5563D-08, -.9892D-08,
23885      #    -.1759D-07, -.3129D-07, -.5562D-07, -.9894D-07, -.1760D-06,
23886      #    -.3130D-06, -.5568D-06, -.9908D-06, -.1762D-05, -.3135D-05,
23887      #    -.5579D-05, -.9925D-05, -.1765D-04, -.3139D-04, -.5570D-04,
23888      #    -.9871D-04, -.1743D-03, -.3058D-03, -.5311D-03, -.9085D-03,
23889      #    -.1518D-02, -.2454D-02, -.3791D-02, -.5520D-02, -.7489D-02,
23890      #    -.9386D-02, -.1085D-01, -.1162D-01, -.1164D-01, -.1102D-01,
23891      #    -.9949D-02, -.8618D-02, -.7203D-02, -.5839D-02, -.4611D-02,
23892      #    -.3563D-02, -.2706D-02, -.2019D-02, -.1505D-02, -.1094D-02,
23893      #    -.8054D-03, -.5835D-03, -.4158D-03, -.3041D-03, -.2199D-03,
23894      #    -.1488D-03, -.1064D-03, -.7823D-04, -.4947D-04, -.3531D-04,
23895      #    -.2088D-04, -.2127D-04, -.6535D-05, -.6716D-05, -.6839D-05,
23896      #    -.6923D-05, -.6980D-05, -.7019D-05, -.7046D-05, -.7064D-05,
23897      #    -.7077D-05/
23898
23899       data (calcpts(j,23), j = 1,neta) /-.1989D-10, -.3537D-10,
23900      #    -.6287D-10, -.1118D-09, -.1989D-09, -.3536D-09, -.6289D-09,
23901      #    -.1119D-08, -.1988D-08, -.3536D-08, -.6290D-08, -.1118D-07,
23902      #    -.1989D-07, -.3537D-07, -.6287D-07, -.1118D-06, -.1989D-06,
23903      #    -.3537D-06, -.6290D-06, -.1119D-05, -.1988D-05, -.3535D-05,
23904      #    -.6285D-05, -.1116D-04, -.1982D-04, -.3515D-04, -.6218D-04,
23905      #    -.1097D-03, -.1928D-03, -.3362D-03, -.5800D-03, -.9849D-03,
23906      #    -.1634D-02, -.2628D-02, -.4050D-02, -.5913D-02, -.8084D-02,
23907      #    -.1026D-01, -.1205D-01, -.1313D-01, -.1336D-01, -.1284D-01,
23908      #    -.1174D-01, -.1028D-01, -.8684D-02, -.7102D-02, -.5651D-02,
23909      #    -.4397D-02, -.3347D-02, -.2525D-02, -.1869D-02, -.1373D-02,
23910      #    -.9974D-03, -.7178D-03, -.5217D-03, -.3812D-03, -.2677D-03,
23911      #    -.1971D-03, -.1401D-03, -.9716D-04, -.6856D-04, -.5451D-04,
23912      #    -.4015D-04, -.2559D-04, -.1090D-04, -.1110D-04, -.1124D-04,
23913      #    -.1133D-04, -.1140D-04, 0.3557D-05, 0.3526D-05, 0.3506D-05,
23914      #    0.3492D-05/
23915
23916       data (calcpts(j,24), j = 1,neta) /-.2117D-10, -.3765D-10,
23917      #    -.6691D-10, -.1190D-09, -.2117D-09, -.3764D-09, -.6693D-09,
23918      #    -.1191D-08, -.2116D-08, -.3763D-08, -.6694D-08, -.1190D-07,
23919      #    -.2117D-07, -.3765D-07, -.6691D-07, -.1190D-06, -.2116D-06,
23920      #    -.3763D-06, -.6690D-06, -.1189D-05, -.2113D-05, -.3755D-05,
23921      #    -.6671D-05, -.1184D-04, -.2099D-04, -.3716D-04, -.6559D-04,
23922      #    -.1154D-03, -.2020D-03, -.3506D-03, -.6016D-03, -.1015D-02,
23923      #    -.1674D-02, -.2677D-02, -.4111D-02, -.6001D-02, -.8245D-02,
23924      #    -.1058D-01, -.1261D-01, -.1398D-01, -.1449D-01, -.1415D-01,
23925      #    -.1313D-01, -.1167D-01, -.9981D-02, -.8257D-02, -.6636D-02,
23926      #    -.5198D-02, -.3993D-02, -.3012D-02, -.2240D-02, -.1656D-02,
23927      #    -.1208D-02, -.8696D-03, -.6294D-03, -.4595D-03, -.3314D-03,
23928      #    -.2311D-03, -.1593D-03, -.1164D-03, -.8792D-04, -.5893D-04,
23929      #    -.4462D-04, -.3009D-04, -.1541D-04, -.1563D-04, -.1578D-04,
23930      #    -.8765D-06, -.9453D-06, -.9923D-06, -.1024D-05, -.1046D-05,
23931      #    -.1061D-05/
23932
23933       data (calcpts(j,25), j = 1,neta) /-.2120D-10, -.3770D-10,
23934      #    -.6701D-10, -.1192D-09, -.2120D-09, -.3770D-09, -.6703D-09,
23935      #    -.1192D-08, -.2119D-08, -.3769D-08, -.6704D-08, -.1192D-07,
23936      #    -.2120D-07, -.3770D-07, -.6700D-07, -.1192D-06, -.2119D-06,
23937      #    -.3767D-06, -.6697D-06, -.1190D-05, -.2114D-05, -.3756D-05,
23938      #    -.6670D-05, -.1183D-04, -.2096D-04, -.3706D-04, -.6531D-04,
23939      #    -.1147D-03, -.2003D-03, -.3466D-03, -.5925D-03, -.9958D-03,
23940      #    -.1634D-02, -.2600D-02, -.3976D-02, -.5792D-02, -.7973D-02,
23941      #    -.1030D-01, -.1244D-01, -.1402D-01, -.1480D-01, -.1472D-01,
23942      #    -.1390D-01, -.1256D-01, -.1091D-01, -.9150D-02, -.7443D-02,
23943      #    -.5897D-02, -.4564D-02, -.3478D-02, -.2601D-02, -.1928D-02,
23944      #    -.1405D-02, -.1021D-02, -.7362D-03, -.5363D-03, -.3782D-03,
23945      #    -.2779D-03, -.1911D-03, -.1333D-03, -.8977D-04, -.7579D-04,
23946      #    -.4648D-04, -.3195D-04, -.1727D-04, -.1749D-04, -.1763D-04,
23947      #    -.2736D-05, -.2805D-05, -.2852D-05, -.2884D-05, -.2906D-05,
23948      #    -.2921D-05/
23949
23950       data (calcpts(j,26), j = 1,neta) /-.2004D-10, -.3564D-10,
23951      #    -.6335D-10, -.1127D-09, -.2004D-09, -.3564D-09, -.6337D-09,
23952      #    -.1127D-08, -.2003D-08, -.3563D-08, -.6337D-08, -.1127D-07,
23953      #    -.2004D-07, -.3564D-07, -.6333D-07, -.1126D-06, -.2003D-06,
23954      #    -.3561D-06, -.6329D-06, -.1125D-05, -.1998D-05, -.3548D-05,
23955      #    -.6299D-05, -.1117D-04, -.1978D-04, -.3495D-04, -.6155D-04,
23956      #    -.1080D-03, -.1883D-03, -.3252D-03, -.5547D-03, -.9297D-03,
23957      #    -.1520D-02, -.2411D-02, -.3674D-02, -.5339D-02, -.7347D-02,
23958      #    -.9529D-02, -.1161D-01, -.1327D-01, -.1426D-01, -.1446D-01,
23959      #    -.1392D-01, -.1280D-01, -.1132D-01, -.9654D-02, -.7973D-02,
23960      #    -.6401D-02, -.5014D-02, -.3846D-02, -.2905D-02, -.2154D-02,
23961      #    -.1584D-02, -.1155D-02, -.8390D-03, -.6086D-03, -.4351D-03,
23962      #    -.3045D-03, -.2176D-03, -.1596D-03, -.1160D-03, -.7199D-04,
23963      #    -.5764D-04, -.4309D-04, -.2839D-04, -.1359D-04, -.1374D-04,
23964      #    -.1383D-04, 0.1103D-05, 0.1059D-05, 0.1029D-05, 0.1008D-05,
23965      #    0.9939D-06/
23966
23967       data (calcpts(j,27), j = 1,neta) /-.1799D-10, -.3199D-10,
23968      #    -.5687D-10, -.1011D-09, -.1799D-09, -.3199D-09, -.5688D-09,
23969      #    -.1012D-08, -.1798D-08, -.3198D-08, -.5689D-08, -.1011D-07,
23970      #    -.1799D-07, -.3199D-07, -.5685D-07, -.1011D-06, -.1798D-06,
23971      #    -.3196D-06, -.5680D-06, -.1010D-05, -.1793D-05, -.3184D-05,
23972      #    -.5652D-05, -.1002D-04, -.1774D-04, -.3134D-04, -.5516D-04,
23973      #    -.9672D-04, -.1685D-03, -.2908D-03, -.4954D-03, -.8290D-03,
23974      #    -.1353D-02, -.2141D-02, -.3255D-02, -.4719D-02, -.6487D-02,
23975      #    -.8424D-02, -.1032D-01, -.1192D-01, -.1301D-01, -.1344D-01,
23976      #    -.1320D-01, -.1239D-01, -.1116D-01, -.9702D-02, -.8158D-02,
23977      #    -.6655D-02, -.5287D-02, -.4105D-02, -.3126D-02, -.2348D-02,
23978      #    -.1730D-02, -.1269D-02, -.9212D-03, -.6598D-03, -.4856D-03,
23979      #    -.3396D-03, -.2373D-03, -.1792D-03, -.1204D-03, -.9128D-04,
23980      #    -.6187D-04, -.4727D-04, -.3254D-04, -.1772D-04, -.1785D-04,
23981      #    -.1794D-04, -.2994D-05, -.3034D-05, -.3061D-05, -.3079D-05,
23982      #    -.3092D-05/
23983
23984       data (calcpts(j,28), j = 1,neta) /-.1544D-10, -.2746D-10,
23985      #    -.4881D-10, -.8681D-10, -.1544D-09, -.2746D-09, -.4882D-09,
23986      #    -.8684D-09, -.1543D-08, -.2745D-08, -.4883D-08, -.8681D-08,
23987      #    -.1544D-07, -.2746D-07, -.4879D-07, -.8677D-07, -.1543D-06,
23988      #    -.2743D-06, -.4875D-06, -.8665D-06, -.1539D-05, -.2733D-05,
23989      #    -.4850D-05, -.8597D-05, -.1522D-04, -.2688D-04, -.4730D-04,
23990      #    -.8292D-04, -.1444D-03, -.2491D-03, -.4241D-03, -.7091D-03,
23991      #    -.1156D-02, -.1827D-02, -.2774D-02, -.4016D-02, -.5514D-02,
23992      #    -.7162D-02, -.8795D-02, -.1023D-01, -.1131D-01, -.1188D-01,
23993      #    -.1190D-01, -.1140D-01, -.1049D-01, -.9302D-02, -.7977D-02,
23994      #    -.6632D-02, -.5359D-02, -.4220D-02, -.3253D-02, -.2462D-02,
23995      #    -.1836D-02, -.1352D-02, -.9877D-03, -.7146D-03, -.5141D-03,
23996      #    -.3720D-03, -.2693D-03, -.1809D-03, -.1370D-03, -.9274D-04,
23997      #    -.6324D-04, -.4859D-04, -.3382D-04, -.1898D-04, -.1909D-04,
23998      #    -.1916D-04, -.4212D-05, -.4247D-05, -.4270D-05, -.4286D-05,
23999      #    -.4297D-05/
24000
24001       data (calcpts(j,29), j = 1,neta) /-.1277D-10, -.2271D-10,
24002      #    -.4036D-10, -.7178D-10, -.1277D-09, -.2270D-09, -.4037D-09,
24003      #    -.7180D-09, -.1276D-08, -.2270D-08, -.4037D-08, -.7178D-08,
24004      #    -.1276D-07, -.2270D-07, -.4034D-07, -.7175D-07, -.1276D-06,
24005      #    -.2268D-06, -.4031D-06, -.7165D-06, -.1272D-05, -.2259D-05,
24006      #    -.4010D-05, -.7107D-05, -.1258D-04, -.2222D-04, -.3910D-04,
24007      #    -.6853D-04, -.1193D-03, -.2058D-03, -.3503D-03, -.5854D-03,
24008      #    -.9541D-03, -.1507D-02, -.2286D-02, -.3306D-02, -.4536D-02,
24009      #    -.5889D-02, -.7241D-02, -.8461D-02, -.9428D-02, -.1004D-01,
24010      #    -.1024D-01, -.1001D-01, -.9412D-02, -.8529D-02, -.7474D-02,
24011      #    -.6343D-02, -.5227D-02, -.4190D-02, -.3279D-02, -.2512D-02,
24012      #    -.1892D-02, -.1404D-02, -.1030D-02, -.7499D-03, -.5410D-03,
24013      #    -.3879D-03, -.2773D-03, -.1976D-03, -.1400D-03, -.9860D-04,
24014      #    -.6902D-04, -.4830D-04, -.3499D-04, -.2462D-04, -.1721D-04,
24015      #    -.1127D-04, -.8316D-05, -.5345D-05, -.3864D-05, -.2377D-05,
24016      #    -.8862D-06/
24017
24018       data (calcpts(j,30), j = 1,neta) /-.1024D-10, -.1821D-10,
24019      #    -.3237D-10, -.5758D-10, -.1024D-09, -.1821D-09, -.3238D-09,
24020      #    -.5760D-09, -.1024D-08, -.1821D-08, -.3239D-08, -.5758D-08,
24021      #    -.1024D-07, -.1821D-07, -.3236D-07, -.5755D-07, -.1023D-06,
24022      #    -.1819D-06, -.3234D-06, -.5747D-06, -.1020D-05, -.1812D-05,
24023      #    -.3216D-05, -.5701D-05, -.1009D-04, -.1782D-04, -.3136D-04,
24024      #    -.5496D-04, -.9570D-04, -.1650D-03, -.2808D-03, -.4693D-03,
24025      #    -.7646D-03, -.1207D-02, -.1830D-02, -.2646D-02, -.3629D-02,
24026      #    -.4710D-02, -.5794D-02, -.6785D-02, -.7601D-02, -.8176D-02,
24027      #    -.8465D-02, -.8438D-02, -.8102D-02, -.7507D-02, -.6725D-02,
24028      #    -.5836D-02, -.4914D-02, -.4020D-02, -.3202D-02, -.2493D-02,
24029      #    -.1900D-02, -.1425D-02, -.1054D-02, -.7710D-03, -.5599D-03,
24030      #    -.4031D-03, -.2892D-03, -.2062D-03, -.1470D-03, -.1040D-03,
24031      #    -.7278D-04, -.5201D-04, -.3717D-04, -.2527D-04, -.1784D-04,
24032      #    -.1189D-04, -.8925D-05, -.5948D-05, -.4463D-05, -.2974D-05,
24033      #    -.1481D-05/
24034
24035       data (calcpts(j,31), j = 1,neta) /-.8016D-11, -.1426D-10,
24036      #    -.2534D-10, -.4507D-10, -.8017D-10, -.1425D-09, -.2535D-09,
24037      #    -.4509D-09, -.8013D-09, -.1425D-08, -.2535D-08, -.4507D-08,
24038      #    -.8015D-08, -.1425D-07, -.2533D-07, -.4505D-07, -.8011D-07,
24039      #    -.1424D-06, -.2531D-06, -.4499D-06, -.7988D-06, -.1419D-05,
24040      #    -.2518D-05, -.4462D-05, -.7897D-05, -.1395D-04, -.2455D-04,
24041      #    -.4302D-04, -.7490D-04, -.1291D-03, -.2198D-03, -.3672D-03,
24042      #    -.5983D-03, -.9443D-03, -.1432D-02, -.2069D-02, -.2837D-02,
24043      #    -.3682D-02, -.4530D-02, -.5310D-02, -.5966D-02, -.6459D-02,
24044      #    -.6762D-02, -.6850D-02, -.6712D-02, -.6358D-02, -.5827D-02,
24045      #    -.5174D-02, -.4456D-02, -.3729D-02, -.3033D-02, -.2404D-02,
24046      #    -.1863D-02, -.1415D-02, -.1057D-02, -.7793D-03, -.5689D-03,
24047      #    -.4116D-03, -.2959D-03, -.2112D-03, -.1502D-03, -.1071D-03,
24048      #    -.7589D-04, -.5357D-04, -.3719D-04, -.2677D-04, -.1933D-04,
24049      #    -.1336D-04, -.8891D-05, -.5909D-05, -.4421D-05, -.2929D-05,
24050      #    -.2935D-05/
24051
24052       data (calcpts(j,32), j = 1,neta) /-.6153D-11, -.1094D-10,
24053      #    -.1945D-10, -.3459D-10, -.6154D-10, -.1094D-09, -.1946D-09,
24054      #    -.3461D-09, -.6151D-09, -.1094D-08, -.1946D-08, -.3460D-08,
24055      #    -.6152D-08, -.1094D-07, -.1944D-07, -.3458D-07, -.6149D-07,
24056      #    -.1093D-06, -.1943D-06, -.3453D-06, -.6131D-06, -.1089D-05,
24057      #    -.1932D-05, -.3425D-05, -.6062D-05, -.1071D-04, -.1884D-04,
24058      #    -.3302D-04, -.5749D-04, -.9912D-04, -.1687D-03, -.2818D-03,
24059      #    -.4591D-03, -.7246D-03, -.1099D-02, -.1588D-02, -.2176D-02,
24060      #    -.2824D-02, -.3475D-02, -.4075D-02, -.4586D-02, -.4984D-02,
24061      #    -.5256D-02, -.5390D-02, -.5373D-02, -.5197D-02, -.4872D-02,
24062      #    -.4428D-02, -.3905D-02, -.3344D-02, -.2783D-02, -.2254D-02,
24063      #    -.1778D-02, -.1372D-02, -.1039D-02, -.7750D-03, -.5700D-03,
24064      #    -.4138D-03, -.2993D-03, -.2144D-03, -.1533D-03, -.1086D-03,
24065      #    -.7733D-04, -.5347D-04, -.3856D-04, -.2663D-04, -.1917D-04,
24066      #    -.1320D-04, -.8719D-05, -.5733D-05, -.4242D-05, -.2749D-05,
24067      #    -.1253D-05/
24068
24069       data (calcpts(j,33), j = 1,neta) /-.4651D-11, -.8273D-11,
24070      #    -.1470D-10, -.2615D-10, -.4652D-10, -.8272D-10, -.1471D-09,
24071      #    -.2616D-09, -.4650D-09, -.8270D-09, -.1471D-08, -.2616D-08,
24072      #    -.4651D-08, -.8272D-08, -.1470D-07, -.2614D-07, -.4649D-07,
24073      #    -.8263D-07, -.1469D-06, -.2611D-06, -.4635D-06, -.8232D-06,
24074      #    -.1461D-05, -.2589D-05, -.4583D-05, -.8095D-05, -.1424D-04,
24075      #    -.2496D-04, -.4346D-04, -.7493D-04, -.1275D-03, -.2130D-03,
24076      #    -.3471D-03, -.5478D-03, -.8304D-03, -.1200D-02, -.1645D-02,
24077      #    -.2134D-02, -.2626D-02, -.3081D-02, -.3469D-02, -.3778D-02,
24078      #    -.4002D-02, -.4138D-02, -.4179D-02, -.4117D-02, -.3944D-02,
24079      #    -.3669D-02, -.3314D-02, -.2906D-02, -.2477D-02, -.2054D-02,
24080      #    -.1656D-02, -.1304D-02, -.1003D-02, -.7573D-03, -.5638D-03,
24081      #    -.4133D-03, -.3015D-03, -.2165D-03, -.1553D-03, -.1105D-03,
24082      #    -.7918D-04, -.5679D-04, -.4036D-04, -.2840D-04, -.1944D-04,
24083      #    -.1496D-04, -.1047D-04, -.7485D-05, -.5992D-05, -.4496D-05,
24084      #    -.3000D-05/
24085
24086       data (calcpts(j,34), j = 1,neta) /-.3472D-11, -.6176D-11,
24087      #    -.1098D-10, -.1952D-10, -.3473D-10, -.6175D-10, -.1098D-09,
24088      #    -.1953D-09, -.3471D-09, -.6173D-09, -.1098D-08, -.1952D-08,
24089      #    -.3472D-08, -.6174D-08, -.1097D-07, -.1951D-07, -.3470D-07,
24090      #    -.6168D-07, -.1096D-06, -.1949D-06, -.3460D-06, -.6145D-06,
24091      #    -.1091D-05, -.1933D-05, -.3421D-05, -.6042D-05, -.1063D-04,
24092      #    -.1863D-04, -.3244D-04, -.5593D-04, -.9517D-04, -.1590D-03,
24093      #    -.2591D-03, -.4089D-03, -.6198D-03, -.8957D-03, -.1228D-02,
24094      #    -.1593D-02, -.1960D-02, -.2299D-02, -.2591D-02, -.2824D-02,
24095      #    -.2999D-02, -.3116D-02, -.3176D-02, -.3172D-02, -.3097D-02,
24096      #    -.2946D-02, -.2724D-02, -.2448D-02, -.2138D-02, -.1816D-02,
24097      #    -.1499D-02, -.1206D-02, -.9455D-03, -.7251D-03, -.5463D-03,
24098      #    -.4060D-03, -.2971D-03, -.2164D-03, -.1552D-03, -.1118D-03,
24099      #    -.7894D-04, -.5651D-04, -.4007D-04, -.2810D-04, -.2063D-04,
24100      #    -.1464D-04, -.1015D-04, -.7162D-05, -.5667D-05, -.4171D-05,
24101      #    -.2673D-05/
24102
24103       data (calcpts(j,35), j = 1,neta) /-.2566D-11, -.4564D-11,
24104      #    -.8112D-11, -.1443D-10, -.2566D-10, -.4563D-10, -.8115D-10,
24105      #    -.1443D-09, -.2565D-09, -.4563D-09, -.8115D-09, -.1443D-08,
24106      #    -.2566D-08, -.4563D-08, -.8110D-08, -.1442D-07, -.2565D-07,
24107      #    -.4559D-07, -.8103D-07, -.1440D-06, -.2557D-06, -.4541D-06,
24108      #    -.8060D-06, -.1428D-05, -.2528D-05, -.4466D-05, -.7857D-05,
24109      #    -.1377D-04, -.2398D-04, -.4134D-04, -.7034D-04, -.1175D-03,
24110      #    -.1915D-03, -.3022D-03, -.4581D-03, -.6620D-03, -.9073D-03,
24111      #    -.1177D-02, -.1448D-02, -.1699D-02, -.1915D-02, -.2088D-02,
24112      #    -.2220D-02, -.2314D-02, -.2371D-02, -.2391D-02, -.2369D-02,
24113      #    -.2298D-02, -.2174D-02, -.2002D-02, -.1791D-02, -.1559D-02,
24114      #    -.1320D-02, -.1086D-02, -.8718D-03, -.6811D-03, -.5214D-03,
24115      #    -.3915D-03, -.2898D-03, -.2121D-03, -.1538D-03, -.1104D-03,
24116      #    -.7900D-04, -.5655D-04, -.4009D-04, -.2812D-04, -.1914D-04,
24117      #    -.1315D-04, -.1016D-04, -.7162D-05, -.4166D-05, -.2669D-05,
24118      #    -.2670D-05/
24119
24120       data (calcpts(j,36), j = 1,neta) /-.1882D-11, -.3347D-11,
24121      #    -.5949D-11, -.1058D-10, -.1882D-10, -.3347D-10, -.5951D-10,
24122      #    -.1058D-09, -.1881D-09, -.3346D-09, -.5951D-09, -.1058D-08,
24123      #    -.1882D-08, -.3346D-08, -.5947D-08, -.1058D-07, -.1881D-07,
24124      #    -.3343D-07, -.5942D-07, -.1056D-06, -.1875D-06, -.3330D-06,
24125      #    -.5911D-06, -.1048D-05, -.1854D-05, -.3275D-05, -.5762D-05,
24126      #    -.1010D-04, -.1758D-04, -.3032D-04, -.5158D-04, -.8619D-04,
24127      #    -.1404D-03, -.2216D-03, -.3359D-03, -.4854D-03, -.6654D-03,
24128      #    -.8633D-03, -.1062D-02, -.1246D-02, -.1404D-02, -.1532D-02,
24129      #    -.1630D-02, -.1701D-02, -.1749D-02, -.1774D-02, -.1776D-02,
24130      #    -.1749D-02, -.1688D-02, -.1590D-02, -.1459D-02, -.1301D-02,
24131      #    -.1129D-02, -.9534D-03, -.7830D-03, -.6264D-03, -.4890D-03,
24132      #    -.3735D-03, -.2808D-03, -.2075D-03, -.1506D-03, -.1102D-03,
24133      #    -.7874D-04, -.5628D-04, -.3981D-04, -.2783D-04, -.2034D-04,
24134      #    -.1435D-04, -.9859D-05, -.6863D-05, -.5366D-05, -.3868D-05,
24135      #    -.2369D-05/
24136
24137       data (calcpts(j,37), j = 1,neta) /-.1371D-11, -.2439D-11,
24138      #    -.4334D-11, -.7709D-11, -.1371D-10, -.2438D-10, -.4336D-10,
24139      #    -.7711D-10, -.1371D-09, -.2438D-09, -.4336D-09, -.7709D-09,
24140      #    -.1371D-08, -.2438D-08, -.4333D-08, -.7705D-08, -.1370D-07,
24141      #    -.2436D-07, -.4329D-07, -.7695D-07, -.1366D-06, -.2426D-06,
24142      #    -.4306D-06, -.7632D-06, -.1351D-05, -.2386D-05, -.4198D-05,
24143      #    -.7357D-05, -.1281D-04, -.2209D-04, -.3758D-04, -.6279D-04,
24144      #    -.1023D-03, -.1614D-03, -.2447D-03, -.3537D-03, -.4847D-03,
24145      #    -.6290D-03, -.7738D-03, -.9079D-03, -.1023D-02, -.1116D-02,
24146      #    -.1188D-02, -.1241D-02, -.1278D-02, -.1300D-02, -.1310D-02,
24147      #    -.1304D-02, -.1279D-02, -.1230D-02, -.1155D-02, -.1056D-02,
24148      #    -.9399D-03, -.8136D-03, -.6854D-03, -.5616D-03, -.4483D-03,
24149      #    -.3493D-03, -.2664D-03, -.1995D-03, -.1473D-03, -.1075D-03,
24150      #    -.7764D-04, -.5563D-04, -.3960D-04, -.2821D-04, -.1997D-04,
24151      #    -.1398D-04, -.9931D-05, -.6934D-05, -.4836D-05, -.3337D-05,
24152      #    -.2438D-05/
24153
24154       data (calcpts(j,38), j = 1,neta) /-.9934D-12, -.1767D-11,
24155      #    -.3141D-11, -.5586D-11, -.9935D-11, -.1767D-10, -.3141D-10,
24156      #    -.5587D-10, -.9931D-10, -.1766D-09, -.3142D-09, -.5586D-09,
24157      #    -.9933D-09, -.1767D-08, -.3140D-08, -.5583D-08, -.9929D-08,
24158      #    -.1765D-07, -.3137D-07, -.5575D-07, -.9899D-07, -.1758D-06,
24159      #    -.3120D-06, -.5530D-06, -.9787D-06, -.1729D-05, -.3042D-05,
24160      #    -.5331D-05, -.9282D-05, -.1600D-04, -.2723D-04, -.4550D-04,
24161      #    -.7412D-04, -.1170D-03, -.1773D-03, -.2563D-03, -.3512D-03,
24162      #    -.4557D-03, -.5607D-03, -.6578D-03, -.7414D-03, -.8089D-03,
24163      #    -.8609D-03, -.8995D-03, -.9269D-03, -.9453D-03, -.9557D-03,
24164      #    -.9577D-03, -.9496D-03, -.9282D-03, -.8901D-03, -.8338D-03,
24165      #    -.7607D-03, -.6755D-03, -.5835D-03, -.4905D-03, -.4011D-03,
24166      #    -.3196D-03, -.2487D-03, -.1892D-03, -.1416D-03, -.1043D-03,
24167      #    -.7596D-04, -.5468D-04, -.3924D-04, -.2785D-04, -.1976D-04,
24168      #    -.1391D-04, -.9717D-05, -.6869D-05, -.4771D-05, -.3272D-05,
24169      #    -.2223D-05/
24170
24171       data (calcpts(j,39), j = 1,neta) /-.7169D-12, -.1275D-11,
24172      #    -.2266D-11, -.4031D-11, -.7170D-11, -.1275D-10, -.2267D-10,
24173      #    -.4032D-10, -.7167D-10, -.1275D-09, -.2267D-09, -.4031D-09,
24174      #    -.7168D-09, -.1275D-08, -.2266D-08, -.4029D-08, -.7165D-08,
24175      #    -.1274D-07, -.2264D-07, -.4023D-07, -.7144D-07, -.1269D-06,
24176      #    -.2252D-06, -.3991D-06, -.7063D-06, -.1248D-05, -.2195D-05,
24177      #    -.3847D-05, -.6698D-05, -.1155D-04, -.1965D-04, -.3283D-04,
24178      #    -.5349D-04, -.8442D-04, -.1280D-03, -.1849D-03, -.2535D-03,
24179      #    -.3289D-03, -.4046D-03, -.4747D-03, -.5350D-03, -.5838D-03,
24180      #    -.6214D-03, -.6493D-03, -.6694D-03, -.6833D-03, -.6921D-03,
24181      #    -.6963D-03, -.6953D-03, -.6874D-03, -.6703D-03, -.6414D-03,
24182      #    -.5995D-03, -.5460D-03, -.4838D-03, -.4172D-03, -.3501D-03,
24183      #    -.2859D-03, -.2275D-03, -.1767D-03, -.1343D-03, -.1003D-03,
24184      #    -.7396D-04, -.5387D-04, -.3888D-04, -.2779D-04, -.1985D-04,
24185      #    -.1415D-04, -.9951D-05, -.7103D-05, -.5004D-05, -.3504D-05,
24186      #    -.2455D-05/
24187
24188       data (calcpts(j,40), j = 1,neta) /-.5152D-12, -.9164D-12,
24189      #    -.1629D-11, -.2897D-11, -.5153D-11, -.9162D-11, -.1629D-10,
24190      #    -.2898D-10, -.5150D-10, -.9160D-10, -.1629D-09, -.2897D-09,
24191      #    -.5151D-09, -.9162D-09, -.1628D-08, -.2896D-08, -.5149D-08,
24192      #    -.9153D-08, -.1627D-07, -.2892D-07, -.5134D-07, -.9118D-07,
24193      #    -.1618D-06, -.2868D-06, -.5076D-06, -.8966D-06, -.1578D-05,
24194      #    -.2765D-05, -.4814D-05, -.8300D-05, -.1412D-04, -.2360D-04,
24195      #    -.3844D-04, -.6067D-04, -.9197D-04, -.1329D-03, -.1822D-03,
24196      #    -.2364D-03, -.2908D-03, -.3412D-03, -.3845D-03, -.4195D-03,
24197      #    -.4466D-03, -.4667D-03, -.4812D-03, -.4914D-03, -.4982D-03,
24198      #    -.5023D-03, -.5036D-03, -.5016D-03, -.4949D-03, -.4816D-03,
24199      #    -.4601D-03, -.4293D-03, -.3903D-03, -.3453D-03, -.2974D-03,
24200      #    -.2490D-03, -.2031D-03, -.1614D-03, -.1251D-03, -.9502D-04,
24201      #    -.7088D-04, -.5215D-04, -.3790D-04, -.2726D-04, -.1946D-04,
24202      #    -.1392D-04, -.9867D-05, -.7018D-05, -.4919D-05, -.3420D-05,
24203      #    -.2520D-05/
24204
24205       data (calcpts(j,41), j = 1,neta) /-.3691D-12, -.6564D-12,
24206      #    -.1167D-11, -.2075D-11, -.3691D-11, -.6563D-11, -.1167D-10,
24207      #    -.2076D-10, -.3689D-10, -.6562D-10, -.1167D-09, -.2075D-09,
24208      #    -.3690D-09, -.6563D-09, -.1166D-08, -.2074D-08, -.3689D-08,
24209      #    -.6557D-08, -.1165D-07, -.2071D-07, -.3678D-07, -.6531D-07,
24210      #    -.1159D-06, -.2054D-06, -.3636D-06, -.6423D-06, -.1130D-05,
24211      #    -.1980D-05, -.3448D-05, -.5945D-05, -.1012D-04, -.1690D-04,
24212      #    -.2754D-04, -.4346D-04, -.6588D-04, -.9520D-04, -.1305D-03,
24213      #    -.1693D-03, -.2083D-03, -.2444D-03, -.2754D-03, -.3005D-03,
24214      #    -.3199D-03, -.3343D-03, -.3447D-03, -.3521D-03, -.3572D-03,
24215      #    -.3605D-03, -.3622D-03, -.3623D-03, -.3602D-03, -.3548D-03,
24216      #    -.3448D-03, -.3289D-03, -.3064D-03, -.2782D-03, -.2458D-03,
24217      #    -.2112D-03, -.1768D-03, -.1440D-03, -.1142D-03, -.8838D-04,
24218      #    -.6709D-04, -.5000D-04, -.3666D-04, -.2661D-04, -.1911D-04,
24219      #    -.1372D-04, -.9668D-05, -.6819D-05, -.4869D-05, -.3370D-05,
24220      #    -.2320D-05/
24221
24222       data (calcpts(j,42), j = 1,neta) /-.2637D-12, -.4690D-12,
24223      #    -.8337D-12, -.1483D-11, -.2637D-11, -.4689D-11, -.8339D-11,
24224      #    -.1483D-10, -.2636D-10, -.4689D-10, -.8340D-10, -.1483D-09,
24225      #    -.2637D-09, -.4689D-09, -.8334D-09, -.1482D-08, -.2636D-08,
24226      #    -.4685D-08, -.8327D-08, -.1480D-07, -.2628D-07, -.4667D-07,
24227      #    -.8282D-07, -.1468D-06, -.2598D-06, -.4589D-06, -.8074D-06,
24228      #    -.1415D-05, -.2464D-05, -.4248D-05, -.7228D-05, -.1208D-04,
24229      #    -.1967D-04, -.3105D-04, -.4707D-04, -.6802D-04, -.9323D-04,
24230      #    -.1210D-03, -.1488D-03, -.1746D-03, -.1968D-03, -.2147D-03,
24231      #    -.2286D-03, -.2389D-03, -.2463D-03, -.2516D-03, -.2553D-03,
24232      #    -.2578D-03, -.2593D-03, -.2600D-03, -.2596D-03, -.2577D-03,
24233      #    -.2536D-03, -.2462D-03, -.2345D-03, -.2182D-03, -.1978D-03,
24234      #    -.1746D-03, -.1499D-03, -.1253D-03, -.1018D-03, -.8068D-04,
24235      #    -.6239D-04, -.4724D-04, -.3525D-04, -.2580D-04, -.1875D-04,
24236      #    -.1350D-04, -.9603D-05, -.6754D-05, -.4804D-05, -.3455D-05,
24237      #    -.2405D-05/
24238
24239       data (calcpts(j,43), j = 1,neta) /-.1880D-12, -.3343D-12,
24240      #    -.5942D-12, -.1057D-11, -.1880D-11, -.3342D-11, -.5944D-11,
24241      #    -.1057D-10, -.1879D-10, -.3342D-10, -.5944D-10, -.1057D-09,
24242      #    -.1879D-09, -.3342D-09, -.5940D-09, -.1056D-08, -.1878D-08,
24243      #    -.3339D-08, -.5935D-08, -.1055D-07, -.1873D-07, -.3326D-07,
24244      #    -.5903D-07, -.1046D-06, -.1852D-06, -.3271D-06, -.5755D-06,
24245      #    -.1009D-05, -.1756D-05, -.3028D-05, -.5152D-05, -.8608D-05,
24246      #    -.1402D-04, -.2213D-04, -.3355D-04, -.4848D-04, -.6645D-04,
24247      #    -.8622D-04, -.1061D-03, -.1245D-03, -.1403D-03, -.1530D-03,
24248      #    -.1629D-03, -.1703D-03, -.1756D-03, -.1794D-03, -.1820D-03,
24249      #    -.1838D-03, -.1850D-03, -.1857D-03, -.1859D-03, -.1854D-03,
24250      #    -.1838D-03, -.1807D-03, -.1753D-03, -.1668D-03, -.1550D-03,
24251      #    -.1404D-03, -.1238D-03, -.1061D-03, -.8858D-04, -.7196D-04,
24252      #    -.5695D-04, -.4401D-04, -.3330D-04, -.2475D-04, -.1815D-04,
24253      #    -.1320D-04, -.9453D-05, -.6753D-05, -.4804D-05, -.3304D-05,
24254      #    -.2404D-05/
24255
24256       data (calcpts(j,44), j = 1,neta) /-.1337D-12, -.2377D-12,
24257      #    -.4225D-12, -.7515D-12, -.1337D-11, -.2377D-11, -.4227D-11,
24258      #    -.7518D-11, -.1336D-10, -.2376D-10, -.4227D-10, -.7516D-10,
24259      #    -.1336D-09, -.2377D-09, -.4224D-09, -.7512D-09, -.1336D-08,
24260      #    -.2374D-08, -.4220D-08, -.7501D-08, -.1332D-07, -.2365D-07,
24261      #    -.4198D-07, -.7440D-07, -.1317D-06, -.2326D-06, -.4092D-06,
24262      #    -.7172D-06, -.1249D-05, -.2153D-05, -.3664D-05, -.6121D-05,
24263      #    -.9972D-05, -.1574D-04, -.2386D-04, -.3448D-04, -.4726D-04,
24264      #    -.6132D-04, -.7544D-04, -.8851D-04, -.9975D-04, -.1088D-03,
24265      #    -.1159D-03, -.1211D-03, -.1249D-03, -.1276D-03, -.1294D-03,
24266      #    -.1307D-03, -.1316D-03, -.1322D-03, -.1325D-03, -.1324D-03,
24267      #    -.1320D-03, -.1308D-03, -.1285D-03, -.1245D-03, -.1184D-03,
24268      #    -.1099D-03, -.9945D-04, -.8755D-04, -.7500D-04, -.6253D-04,
24269      #    -.5075D-04, -.4011D-04, -.3097D-04, -.2341D-04, -.1738D-04,
24270      #    -.1273D-04, -.9203D-05, -.6594D-05, -.4704D-05, -.3324D-05,
24271      #    -.2349D-05/
24272
24273       data (calcpts(j,45), j = 1,neta) /-.9491D-13, -.1688D-12,
24274      #    -.3000D-12, -.5336D-12, -.9492D-12, -.1688D-11, -.3001D-11,
24275      #    -.5338D-11, -.9488D-11, -.1687D-10, -.3001D-10, -.5337D-10,
24276      #    -.9489D-10, -.1688D-09, -.2999D-09, -.5334D-09, -.9485D-09,
24277      #    -.1686D-08, -.2997D-08, -.5326D-08, -.9457D-08, -.1680D-07,
24278      #    -.2981D-07, -.5283D-07, -.9350D-07, -.1652D-06, -.2906D-06,
24279      #    -.5093D-06, -.8867D-06, -.1529D-05, -.2601D-05, -.4347D-05,
24280      #    -.7081D-05, -.1118D-04, -.1694D-04, -.2448D-04, -.3355D-04,
24281      #    -.4354D-04, -.5356D-04, -.6285D-04, -.7083D-04, -.7728D-04,
24282      #    -.8226D-04, -.8597D-04, -.8866D-04, -.9058D-04, -.9192D-04,
24283      #    -.9285D-04, -.9349D-04, -.9391D-04, -.9416D-04, -.9426D-04,
24284      #    -.9416D-04, -.9377D-04, -.9288D-04, -.9118D-04, -.8830D-04,
24285      #    -.8390D-04, -.7785D-04, -.7036D-04, -.6189D-04, -.5297D-04,
24286      #    -.4413D-04, -.3577D-04, -.2826D-04, -.2180D-04, -.1647D-04,
24287      #    -.1223D-04, -.8957D-05, -.6482D-05, -.4652D-05, -.3317D-05,
24288      #    -.2357D-05/
24289
24290       data (calcpts(j,46), j = 1,neta) /-.6725D-13, -.1196D-12,
24291      #    -.2126D-12, -.3781D-12, -.6726D-12, -.1196D-11, -.2127D-11,
24292      #    -.3782D-11, -.6723D-11, -.1196D-10, -.2127D-10, -.3781D-10,
24293      #    -.6724D-10, -.1196D-09, -.2125D-09, -.3779D-09, -.6721D-09,
24294      #    -.1195D-08, -.2123D-08, -.3774D-08, -.6701D-08, -.1190D-07,
24295      #    -.2112D-07, -.3743D-07, -.6625D-07, -.1170D-06, -.2059D-06,
24296      #    -.3609D-06, -.6283D-06, -.1083D-05, -.1843D-05, -.3080D-05,
24297      #    -.5017D-05, -.7918D-05, -.1200D-04, -.1735D-04, -.2378D-04,
24298      #    -.3085D-04, -.3795D-04, -.4453D-04, -.5019D-04, -.5476D-04,
24299      #    -.5829D-04, -.6092D-04, -.6282D-04, -.6418D-04, -.6513D-04,
24300      #    -.6579D-04, -.6625D-04, -.6655D-04, -.6675D-04, -.6686D-04,
24301      #    -.6688D-04, -.6678D-04, -.6647D-04, -.6581D-04, -.6457D-04,
24302      #    -.6250D-04, -.5934D-04, -.5502D-04, -.4969D-04, -.4366D-04,
24303      #    -.3733D-04, -.3106D-04, -.2517D-04, -.1986D-04, -.1530D-04,
24304      #    -.1155D-04, -.8567D-05, -.6258D-05, -.4533D-05, -.3243D-05,
24305      #    -.2313D-05/
24306
24307       data (calcpts(j,47), j = 1,neta) /-.4757D-13, -.8461D-13,
24308      #    -.1504D-12, -.2675D-12, -.4758D-12, -.8460D-12, -.1504D-11,
24309      #    -.2676D-11, -.4756D-11, -.8458D-11, -.1504D-10, -.2675D-10,
24310      #    -.4757D-10, -.8460D-10, -.1503D-09, -.2674D-09, -.4755D-09,
24311      #    -.8451D-09, -.1502D-08, -.2670D-08, -.4740D-08, -.8419D-08,
24312      #    -.1494D-07, -.2648D-07, -.4687D-07, -.8278D-07, -.1457D-06,
24313      #    -.2553D-06, -.4445D-06, -.7663D-06, -.1304D-05, -.2179D-05,
24314      #    -.3549D-05, -.5602D-05, -.8492D-05, -.1227D-04, -.1682D-04,
24315      #    -.2182D-04, -.2685D-04, -.3150D-04, -.3550D-04, -.3874D-04,
24316      #    -.4123D-04, -.4309D-04, -.4444D-04, -.4540D-04, -.4608D-04,
24317      #    -.4654D-04, -.4687D-04, -.4709D-04, -.4723D-04, -.4733D-04,
24318      #    -.4737D-04, -.4736D-04, -.4726D-04, -.4703D-04, -.4654D-04,
24319      #    -.4565D-04, -.4416D-04, -.4190D-04, -.3882D-04, -.3503D-04,
24320      #    -.3075D-04, -.2629D-04, -.2185D-04, -.1768D-04, -.1394D-04,
24321      #    -.1073D-04, -.8092D-05, -.5992D-05, -.4372D-05, -.3157D-05,
24322      #    -.2257D-05/
24323
24324       data (calcpts(j,48), j = 1,neta) /-.3361D-13, -.5979D-13,
24325      #    -.1063D-12, -.1890D-12, -.3362D-12, -.5977D-12, -.1063D-11,
24326      #    -.1891D-11, -.3360D-11, -.5976D-11, -.1063D-10, -.1890D-10,
24327      #    -.3361D-10, -.5977D-10, -.1062D-09, -.1889D-09, -.3359D-09,
24328      #    -.5971D-09, -.1061D-08, -.1886D-08, -.3349D-08, -.5948D-08,
24329      #    -.1056D-07, -.1871D-07, -.3312D-07, -.5849D-07, -.1029D-06,
24330      #    -.1804D-06, -.3141D-06, -.5415D-06, -.9213D-06, -.1539D-05,
24331      #    -.2508D-05, -.3958D-05, -.6000D-05, -.8671D-05, -.1188D-04,
24332      #    -.1542D-04, -.1897D-04, -.2226D-04, -.2509D-04, -.2737D-04,
24333      #    -.2914D-04, -.3045D-04, -.3140D-04, -.3208D-04, -.3256D-04,
24334      #    -.3289D-04, -.3311D-04, -.3327D-04, -.3338D-04, -.3345D-04,
24335      #    -.3349D-04, -.3350D-04, -.3348D-04, -.3341D-04, -.3323D-04,
24336      #    -.3288D-04, -.3224D-04, -.3117D-04, -.2956D-04, -.2737D-04,
24337      #    -.2468D-04, -.2165D-04, -.1849D-04, -.1536D-04, -.1242D-04,
24338      #    -.9778D-05, -.7528D-05, -.5668D-05, -.4198D-05, -.3058D-05,
24339      #    -.2218D-05/
24340
24341       data (calcpts(j,49), j = 1,neta) /-.2372D-13, -.4218D-13,
24342      #    -.7498D-13, -.1334D-12, -.2372D-12, -.4218D-12, -.7500D-12,
24343      #    -.1334D-11, -.2371D-11, -.4217D-11, -.7501D-11, -.1334D-10,
24344      #    -.2371D-10, -.4218D-10, -.7495D-10, -.1333D-09, -.2370D-09,
24345      #    -.4213D-09, -.7489D-09, -.1331D-08, -.2363D-08, -.4197D-08,
24346      #    -.7449D-08, -.1320D-07, -.2337D-07, -.4127D-07, -.7262D-07,
24347      #    -.1273D-06, -.2216D-06, -.3821D-06, -.6501D-06, -.1086D-05,
24348      #    -.1770D-05, -.2793D-05, -.4234D-05, -.6118D-05, -.8385D-05,
24349      #    -.1088D-04, -.1339D-04, -.1571D-04, -.1770D-04, -.1931D-04,
24350      #    -.2056D-04, -.2149D-04, -.2216D-04, -.2264D-04, -.2297D-04,
24351      #    -.2320D-04, -.2337D-04, -.2348D-04, -.2355D-04, -.2360D-04,
24352      #    -.2364D-04, -.2365D-04, -.2366D-04, -.2363D-04, -.2358D-04,
24353      #    -.2345D-04, -.2319D-04, -.2273D-04, -.2197D-04, -.2083D-04,
24354      #    -.1927D-04, -.1737D-04, -.1523D-04, -.1299D-04, -.1078D-04,
24355      #    -.8717D-05, -.6857D-05, -.5267D-05, -.3962D-05, -.2942D-05,
24356      #    -.2147D-05/
24357
24358       data (dlaeta(j), j = 1,neta) /
24359      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
24360      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
24361      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
24362      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
24363      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
24364      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
24365      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
24366      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
24367      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
24368      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
24369      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
24370      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
24371      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
24372      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
24373      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
24374
24375       data (dlaxi(j), j = 1,nxi) /
24376      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
24377      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
24378      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
24379      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
24380      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
24381      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
24382      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
24383      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
24384      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
24385      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
24386
24387       dleta = dlog10(eta)
24388       dlxi = dlog10(xi)
24389       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
24390       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
24391       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
24392       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
24393       call locate(dlaeta,neta, dleta, ieta)
24394       call locate(dlaxi, nxi, dlxi, ixi)
24395 c     interpolating between the appropriate points
24396       delxi = 1d0/6d0
24397       deleta = 1d0/6d0
24398 c  lagrange 3-pt.
24399       if (ixi .le. 2) ixi = 2
24400       if (ixi .ge. 48) ixi = 48
24401       if (ieta .le. 2) ieta = 2
24402       if (ieta .ge. 72) ieta = 72
24403       pxi = (dlxi - dlaxi(ixi))/delxi
24404       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
24405      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
24406      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
24407       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
24408      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
24409      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
24410       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
24411      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
24412      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
24413       peta = (dleta - dlaeta(ieta))/deleta
24414       h1_HLq = peta*(peta-1d0)/2d0*f(-1) +
24415      #     (1d0 - peta**2)*f(0) +
24416 CMB  #     + peta*(peta+1d0)/2d0*f(1)
24417      #     peta*(peta+1d0)/2d0*f(1)
24418       return
24419       end
24420
24421 c     ===========================================
24422       double precision function h1bar_HLq(eta,xi)
24423 c     ===========================================
24424
24425 c     eq (27) in PLB347 (1995) 143 - 151 for the transverse piece
24426 c     MSbar scheme
24427 c     This routine is called subcqhlbar in the original code.
24428 c     Called sqlbar in updated code (03/06/96).
24429
24430       implicit none
24431       integer neta, nxi
24432       parameter (neta = 73, nxi = 49)
24433       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
24434       double precision eta, xi, dleta, dlxi
24435       double precision pxi, peta, f(-1:1), delxi, deleta
24436       integer j, ieta, ixi
24437
24438       data (calcpts(j, 1), j = 1,neta) /0.7071D-14, 0.1258D-13,
24439      #    0.2235D-13, 0.3975D-13, 0.7071D-13, 0.1257D-12, 0.2236D-12,
24440      #    0.3977D-12, 0.7068D-12, 0.1257D-11, 0.2236D-11, 0.3975D-11,
24441      #    0.7068D-11, 0.1257D-10, 0.2234D-10, 0.3972D-10, 0.7062D-10,
24442      #    0.1255D-09, 0.2229D-09, 0.3959D-09, 0.7023D-09, 0.1245D-08,
24443      #    0.2205D-08, 0.3896D-08, 0.6863D-08, 0.1204D-07, 0.2097D-07,
24444      #    0.3623D-07, 0.6178D-07, 0.1034D-06, 0.1688D-06, 0.2662D-06,
24445      #    0.4012D-06, 0.5725D-06, 0.7658D-06, 0.9555D-06, 0.1113D-05,
24446      #    0.1217D-05, 0.1255D-05, 0.1223D-05, 0.1129D-05, 0.9890D-06,
24447      #    0.8246D-06, 0.6585D-06, 0.5077D-06, 0.3804D-06, 0.2780D-06,
24448      #    0.2007D-06, 0.1423D-06, 0.1004D-06, 0.6907D-07, 0.4861D-07,
24449      #    0.3374D-07, 0.2298D-07, 0.1593D-07, 0.1030D-07, 0.8102D-08,
24450      #    0.5170D-08, 0.3239D-08, 0.2466D-08, 0.1462D-08, 0.1800D-08,
24451      #    0.5305D-09, 0.6874D-09, 0.7944D-09, 0.8672D-09, 0.9168D-09,
24452      #    -.5494D-09, -.5264D-09, -.5107D-09, -.5000D-09, -.4927D-09,
24453      #    -.4878D-09/
24454
24455       data (calcpts(j, 2), j = 1,neta) /0.1038D-13, 0.1846D-13,
24456      #    0.3281D-13, 0.5835D-13, 0.1038D-12, 0.1845D-12, 0.3282D-12,
24457      #    0.5837D-12, 0.1037D-11, 0.1845D-11, 0.3282D-11, 0.5835D-11,
24458      #    0.1037D-10, 0.1845D-10, 0.3279D-10, 0.5829D-10, 0.1036D-09,
24459      #    0.1842D-09, 0.3272D-09, 0.5811D-09, 0.1031D-08, 0.1828D-08,
24460      #    0.3237D-08, 0.5718D-08, 0.1007D-07, 0.1767D-07, 0.3078D-07,
24461      #    0.5317D-07, 0.9068D-07, 0.1518D-06, 0.2477D-06, 0.3907D-06,
24462      #    0.5888D-06, 0.8403D-06, 0.1124D-05, 0.1403D-05, 0.1635D-05,
24463      #    0.1788D-05, 0.1841D-05, 0.1796D-05, 0.1658D-05, 0.1451D-05,
24464      #    0.1210D-05, 0.9677D-06, 0.7471D-06, 0.5589D-06, 0.4104D-06,
24465      #    0.2951D-06, 0.2097D-06, 0.1473D-06, 0.1041D-06, 0.7141D-07,
24466      #    0.4950D-07, 0.3464D-07, 0.2390D-07, 0.1685D-07, 0.1272D-07,
24467      #    0.9026D-08, 0.6095D-08, 0.5663D-08, 0.3391D-08, 0.3887D-08,
24468      #    0.2724D-08, 0.2955D-08, 0.1612D-08, 0.1719D-08, 0.1791D-08,
24469      #    0.1841D-08, 0.1875D-08, 0.1898D-08, 0.1913D-08, 0.1924D-08,
24470      #    0.1931D-08/
24471
24472       data (calcpts(j, 3), j = 1,neta) /0.1522D-13, 0.2708D-13,
24473      #    0.4812D-13, 0.8559D-13, 0.1522D-12, 0.2707D-12, 0.4814D-12,
24474      #    0.8562D-12, 0.1522D-11, 0.2706D-11, 0.4814D-11, 0.8559D-11,
24475      #    0.1522D-10, 0.2706D-10, 0.4809D-10, 0.8551D-10, 0.1520D-09,
24476      #    0.2701D-09, 0.4799D-09, 0.8524D-09, 0.1512D-08, 0.2681D-08,
24477      #    0.4748D-08, 0.8388D-08, 0.1478D-07, 0.2592D-07, 0.4515D-07,
24478      #    0.7800D-07, 0.1330D-06, 0.2226D-06, 0.3633D-06, 0.5731D-06,
24479      #    0.8638D-06, 0.1233D-05, 0.1649D-05, 0.2058D-05, 0.2397D-05,
24480      #    0.2621D-05, 0.2701D-05, 0.2633D-05, 0.2429D-05, 0.2126D-05,
24481      #    0.1772D-05, 0.1416D-05, 0.1091D-05, 0.8163D-06, 0.5969D-06,
24482      #    0.4288D-06, 0.3029D-06, 0.2122D-06, 0.1470D-06, 0.1055D-06,
24483      #    0.6832D-07, 0.3893D-07, 0.3458D-07, 0.2684D-07, 0.1679D-07,
24484      #    0.5163D-08, 0.7463D-08, 0.9030D-08, -.4902D-08, -.4174D-08,
24485      #    -.3679D-08, -.3341D-08, -.3111D-08, -.2954D-08, -.2847D-08,
24486      #    -.2774D-08, -.2725D-08, -.2691D-08, -.2668D-08, -.2652D-08,
24487      #    -.2642D-08/
24488
24489       data (calcpts(j, 4), j = 1,neta) /0.2234D-13, 0.3973D-13,
24490      #    0.7061D-13, 0.1256D-12, 0.2234D-12, 0.3972D-12, 0.7063D-12,
24491      #    0.1256D-11, 0.2233D-11, 0.3971D-11, 0.7063D-11, 0.1256D-10,
24492      #    0.2233D-10, 0.3971D-10, 0.7057D-10, 0.1255D-09, 0.2231D-09,
24493      #    0.3964D-09, 0.7042D-09, 0.1251D-08, 0.2219D-08, 0.3934D-08,
24494      #    0.6967D-08, 0.1231D-07, 0.2168D-07, 0.3803D-07, 0.6626D-07,
24495      #    0.1145D-06, 0.1952D-06, 0.3267D-06, 0.5332D-06, 0.8410D-06,
24496      #    0.1268D-05, 0.1809D-05, 0.2420D-05, 0.3020D-05, 0.3519D-05,
24497      #    0.3848D-05, 0.3965D-05, 0.3865D-05, 0.3568D-05, 0.3128D-05,
24498      #    0.2606D-05, 0.2084D-05, 0.1606D-05, 0.1202D-05, 0.8735D-06,
24499      #    0.6284D-06, 0.4504D-06, 0.3150D-06, 0.2217D-06, 0.1508D-06,
24500      #    0.1093D-06, 0.7222D-07, 0.4284D-07, 0.3850D-07, 0.1576D-07,
24501      #    0.2071D-07, 0.9091D-08, 0.1139D-07, -.2043D-08, -.9755D-09,
24502      #    -.2487D-09, 0.2471D-09, 0.5849D-09, 0.8149D-09, 0.9716D-09,
24503      #    0.1078D-08, 0.1151D-08, 0.1201D-08, 0.1234D-08, 0.1257D-08,
24504      #    0.1273D-08/
24505
24506       data (calcpts(j, 5), j = 1,neta) /0.3277D-13, 0.5829D-13,
24507      #    0.1036D-12, 0.1843D-12, 0.3277D-12, 0.5827D-12, 0.1036D-11,
24508      #    0.1843D-11, 0.3276D-11, 0.5826D-11, 0.1036D-10, 0.1842D-10,
24509      #    0.3276D-10, 0.5826D-10, 0.1035D-09, 0.1841D-09, 0.3273D-09,
24510      #    0.5816D-09, 0.1033D-08, 0.1835D-08, 0.3255D-08, 0.5772D-08,
24511      #    0.1022D-07, 0.1806D-07, 0.3181D-07, 0.5580D-07, 0.9721D-07,
24512      #    0.1679D-06, 0.2864D-06, 0.4793D-06, 0.7823D-06, 0.1234D-05,
24513      #    0.1860D-05, 0.2655D-05, 0.3553D-05, 0.4433D-05, 0.5166D-05,
24514      #    0.5649D-05, 0.5822D-05, 0.5680D-05, 0.5241D-05, 0.4590D-05,
24515      #    0.3820D-05, 0.3061D-05, 0.2354D-05, 0.1770D-05, 0.1289D-05,
24516      #    0.9368D-06, 0.6648D-06, 0.4732D-06, 0.3234D-06, 0.2304D-06,
24517      #    0.1596D-06, 0.1032D-06, 0.8115D-07, 0.5179D-07, 0.3243D-07,
24518      #    0.2470D-07, 0.1466D-07, 0.1803D-07, 0.5327D-08, 0.6894D-08,
24519      #    0.7960D-08, 0.8687D-08, 0.9183D-08, 0.9520D-08, 0.9750D-08,
24520      #    0.9907D-08, 0.1001D-07, 0.1009D-07, 0.1014D-07, 0.1017D-07,
24521      #    0.1019D-07/
24522
24523       data (calcpts(j, 6), j = 1,neta) /0.4805D-13, 0.8547D-13,
24524      #    0.1519D-12, 0.2702D-12, 0.4806D-12, 0.8545D-12, 0.1519D-11,
24525      #    0.2703D-11, 0.4803D-11, 0.8543D-11, 0.1520D-10, 0.2702D-10,
24526      #    0.4804D-10, 0.8543D-10, 0.1518D-09, 0.2699D-09, 0.4799D-09,
24527      #    0.8528D-09, 0.1515D-08, 0.2691D-08, 0.4773D-08, 0.8463D-08,
24528      #    0.1499D-07, 0.2648D-07, 0.4664D-07, 0.8183D-07, 0.1425D-06,
24529      #    0.2462D-06, 0.4200D-06, 0.7029D-06, 0.1147D-05, 0.1810D-05,
24530      #    0.2729D-05, 0.3894D-05, 0.5212D-05, 0.6505D-05, 0.7579D-05,
24531      #    0.8289D-05, 0.8535D-05, 0.8330D-05, 0.7691D-05, 0.6728D-05,
24532      #    0.5606D-05, 0.4484D-05, 0.3460D-05, 0.2584D-05, 0.1900D-05,
24533      #    0.1368D-05, 0.9749D-06, 0.6750D-06, 0.4691D-06, 0.3348D-06,
24534      #    0.2270D-06, 0.1562D-06, 0.9983D-07, 0.7776D-07, 0.4838D-07,
24535      #    0.2904D-07, 0.2130D-07, 0.1124D-07, 0.1461D-07, 0.1912D-08,
24536      #    0.3475D-08, 0.4542D-08, 0.5269D-08, 0.5763D-08, 0.6101D-08,
24537      #    0.6330D-08, 0.6487D-08, 0.6593D-08, 0.6666D-08, 0.6716D-08,
24538      #    0.6749D-08/
24539
24540       data (calcpts(j, 7), j = 1,neta) /0.7043D-13, 0.1253D-12,
24541      #    0.2227D-12, 0.3960D-12, 0.7044D-12, 0.1253D-11, 0.2227D-11,
24542      #    0.3961D-11, 0.7041D-11, 0.1252D-10, 0.2227D-10, 0.3960D-10,
24543      #    0.7041D-10, 0.1252D-09, 0.2225D-09, 0.3957D-09, 0.7035D-09,
24544      #    0.1250D-08, 0.2221D-08, 0.3944D-08, 0.6996D-08, 0.1241D-07,
24545      #    0.2197D-07, 0.3881D-07, 0.6837D-07, 0.1199D-06, 0.2090D-06,
24546      #    0.3610D-06, 0.6156D-06, 0.1031D-05, 0.1682D-05, 0.2654D-05,
24547      #    0.4001D-05, 0.5712D-05, 0.7645D-05, 0.9542D-05, 0.1112D-04,
24548      #    0.1217D-04, 0.1253D-04, 0.1222D-04, 0.1128D-04, 0.9879D-05,
24549      #    0.8236D-05, 0.6579D-05, 0.5079D-05, 0.3800D-05, 0.2788D-05,
24550      #    0.1996D-05, 0.1425D-05, 0.1005D-05, 0.6910D-06, 0.4859D-06,
24551      #    0.3367D-06, 0.2289D-06, 0.1582D-06, 0.1018D-06, 0.7968D-07,
24552      #    0.5030D-07, 0.3095D-07, 0.2320D-07, 0.1314D-07, 0.1650D-07,
24553      #    0.3796D-08, 0.5360D-08, 0.6425D-08, 0.7150D-08, 0.7644D-08,
24554      #    0.7981D-08, 0.8210D-08, 0.8367D-08, -.6527D-08, -.6454D-08,
24555      #    -.6405D-08/
24556
24557       data (calcpts(j, 8), j = 1,neta) /0.1032D-12, 0.1835D-12,
24558      #    0.3262D-12, 0.5802D-12, 0.1032D-11, 0.1835D-11, 0.3263D-11,
24559      #    0.5804D-11, 0.1032D-10, 0.1835D-10, 0.3263D-10, 0.5802D-10,
24560      #    0.1032D-09, 0.1835D-09, 0.3260D-09, 0.5797D-09, 0.1031D-08,
24561      #    0.1831D-08, 0.3253D-08, 0.5779D-08, 0.1025D-07, 0.1818D-07,
24562      #    0.3219D-07, 0.5687D-07, 0.1002D-06, 0.1757D-06, 0.3062D-06,
24563      #    0.5289D-06, 0.9021D-06, 0.1510D-05, 0.2465D-05, 0.3890D-05,
24564      #    0.5866D-05, 0.8377D-05, 0.1121D-04, 0.1400D-04, 0.1632D-04,
24565      #    0.1785D-04, 0.1840D-04, 0.1795D-04, 0.1656D-04, 0.1450D-04,
24566      #    0.1209D-04, 0.9673D-05, 0.7465D-05, 0.5587D-05, 0.4094D-05,
24567      #    0.2950D-05, 0.2092D-05, 0.1480D-05, 0.1031D-05, 0.7180D-06,
24568      #    0.4981D-06, 0.3489D-06, 0.2410D-06, 0.1703D-06, 0.1288D-06,
24569      #    0.9171D-07, 0.6230D-07, 0.4292D-07, 0.3516D-07, 0.2510D-07,
24570      #    0.2845D-07, 0.1574D-07, 0.1730D-07, 0.1837D-07, 0.1909D-07,
24571      #    0.1958D-07, 0.1992D-07, 0.2015D-07, 0.2031D-07, 0.2041D-07,
24572      #    0.2048D-07/
24573
24574       data (calcpts(j, 9), j = 1,neta) /0.1510D-12, 0.2685D-12,
24575      #    0.4773D-12, 0.8489D-12, 0.1510D-11, 0.2685D-11, 0.4774D-11,
24576      #    0.8491D-11, 0.1509D-10, 0.2684D-10, 0.4774D-10, 0.8488D-10,
24577      #    0.1509D-09, 0.2684D-09, 0.4770D-09, 0.8481D-09, 0.1508D-08,
24578      #    0.2679D-08, 0.4760D-08, 0.8454D-08, 0.1500D-07, 0.2659D-07,
24579      #    0.4709D-07, 0.8320D-07, 0.1466D-06, 0.2571D-06, 0.4480D-06,
24580      #    0.7740D-06, 0.1320D-05, 0.2210D-05, 0.3608D-05, 0.5695D-05,
24581      #    0.8591D-05, 0.1227D-04, 0.1643D-04, 0.2051D-04, 0.2392D-04,
24582      #    0.2616D-04, 0.2696D-04, 0.2628D-04, 0.2426D-04, 0.2123D-04,
24583      #    0.1770D-04, 0.1414D-04, 0.1090D-04, 0.8152D-05, 0.5971D-05,
24584      #    0.4277D-05, 0.3024D-05, 0.2126D-05, 0.1471D-05, 0.1008D-05,
24585      #    0.6944D-06, 0.4892D-06, 0.2948D-06, 0.2168D-06, 0.1159D-06,
24586      #    0.1494D-06, 0.2220D-07, 0.3774D-07, 0.4833D-07, 0.5555D-07,
24587      #    0.6046D-07, -.8619D-07, -.8390D-07, -.8235D-07, -.8129D-07,
24588      #    -.8057D-07, -.8008D-07, -.7974D-07, -.7951D-07, -.7936D-07,
24589      #    -.7925D-07/
24590
24591       data (calcpts(j,10), j = 1,neta) /0.2207D-12, 0.3925D-12,
24592      #    0.6976D-12, 0.1241D-11, 0.2207D-11, 0.3924D-11, 0.6978D-11,
24593      #    0.1241D-10, 0.2206D-10, 0.3923D-10, 0.6978D-10, 0.1241D-09,
24594      #    0.2206D-09, 0.3923D-09, 0.6972D-09, 0.1240D-08, 0.2204D-08,
24595      #    0.3916D-08, 0.6958D-08, 0.1236D-07, 0.2192D-07, 0.3887D-07,
24596      #    0.6884D-07, 0.1216D-06, 0.2143D-06, 0.3759D-06, 0.6549D-06,
24597      #    0.1132D-05, 0.1930D-05, 0.3232D-05, 0.5279D-05, 0.8334D-05,
24598      #    0.1257D-04, 0.1797D-04, 0.2406D-04, 0.3007D-04, 0.3508D-04,
24599      #    0.3837D-04, 0.3956D-04, 0.3857D-04, 0.3560D-04, 0.3117D-04,
24600      #    0.2598D-04, 0.2081D-04, 0.1595D-04, 0.1201D-04, 0.8833D-05,
24601      #    0.6355D-05, 0.4407D-05, 0.3191D-05, 0.2248D-05, 0.1534D-05,
24602      #    0.9652D-06, 0.7414D-06, 0.4458D-06, 0.4011D-06, 0.1728D-06,
24603      #    0.2217D-06, 0.1051D-06, 0.1278D-06, -.6740D-08, 0.3811D-08,
24604      #    0.1099D-07, 0.1589D-07, 0.1923D-07, 0.2150D-07, 0.2305D-07,
24605      #    0.2410D-07, 0.2482D-07, 0.2531D-07, 0.2564D-07, 0.2587D-07,
24606      #    0.2603D-07/
24607
24608       data (calcpts(j,11), j = 1,neta) /0.3220D-12, 0.5726D-12,
24609      #    0.1018D-11, 0.1810D-11, 0.3220D-11, 0.5725D-11, 0.1018D-10,
24610      #    0.1811D-10, 0.3218D-10, 0.5724D-10, 0.1018D-09, 0.1810D-09,
24611      #    0.3219D-09, 0.5724D-09, 0.1017D-08, 0.1809D-08, 0.3216D-08,
24612      #    0.5714D-08, 0.1015D-07, 0.1803D-07, 0.3198D-07, 0.5671D-07,
24613      #    0.1004D-06, 0.1775D-06, 0.3126D-06, 0.5485D-06, 0.9557D-06,
24614      #    0.1652D-05, 0.2818D-05, 0.4720D-05, 0.7710D-05, 0.1218D-04,
24615      #    0.1838D-04, 0.2628D-04, 0.3524D-04, 0.4405D-04, 0.5141D-04,
24616      #    0.5627D-04, 0.5802D-04, 0.5660D-04, 0.5232D-04, 0.4571D-04,
24617      #    0.3816D-04, 0.3050D-04, 0.2357D-04, 0.1761D-04, 0.1302D-04,
24618      #    0.9293D-05, 0.6683D-05, 0.4741D-05, 0.3224D-05, 0.2282D-05,
24619      #    0.1566D-05, 0.1146D-05, 0.7708D-06, 0.6244D-06, 0.4290D-06,
24620      #    0.3504D-06, 0.2491D-06, 0.1322D-06, 0.1548D-06, 0.1702D-06,
24621      #    0.3068D-07, 0.3783D-07, 0.4270D-07, 0.4601D-07, 0.4827D-07,
24622      #    0.4981D-07, 0.5086D-07, 0.5157D-07, 0.5206D-07, 0.5239D-07,
24623      #    0.5262D-07/
24624
24625       data (calcpts(j,12), j = 1,neta) /0.4683D-12, 0.8329D-12,
24626      #    0.1480D-11, 0.2633D-11, 0.4683D-11, 0.8327D-11, 0.1481D-10,
24627      #    0.2634D-10, 0.4681D-10, 0.8325D-10, 0.1481D-09, 0.2633D-09,
24628      #    0.4681D-09, 0.8325D-09, 0.1479D-08, 0.2630D-08, 0.4677D-08,
24629      #    0.8310D-08, 0.1476D-07, 0.2622D-07, 0.4652D-07, 0.8249D-07,
24630      #    0.1461D-06, 0.2581D-06, 0.4548D-06, 0.7980D-06, 0.1391D-05,
24631      #    0.2403D-05, 0.4102D-05, 0.6872D-05, 0.1123D-04, 0.1775D-04,
24632      #    0.2682D-04, 0.3838D-04, 0.5150D-04, 0.6445D-04, 0.7526D-04,
24633      #    0.8242D-04, 0.8503D-04, 0.8298D-04, 0.7661D-04, 0.6705D-04,
24634      #    0.5593D-04, 0.4469D-04, 0.3455D-04, 0.2585D-04, 0.1898D-04,
24635      #    0.1369D-04, 0.9675D-05, 0.6918D-05, 0.4820D-05, 0.3300D-05,
24636      #    0.2353D-05, 0.1633D-05, 0.1211D-05, 0.8341D-06, 0.5363D-06,
24637      #    0.4901D-06, 0.4109D-06, 0.3091D-06, 0.1919D-06, 0.2143D-06,
24638      #    0.2296D-06, 0.8995D-07, 0.9703D-07, 0.1018D-06, 0.1051D-06,
24639      #    0.1074D-06, 0.1089D-06, 0.1099D-06, 0.1106D-06, 0.1111D-06,
24640      #    0.1115D-06/
24641
24642       data (calcpts(j,13), j = 1,neta) /0.6783D-12, 0.1207D-11,
24643      #    0.2144D-11, 0.3814D-11, 0.6784D-11, 0.1206D-10, 0.2145D-10,
24644      #    0.3815D-10, 0.6781D-10, 0.1206D-09, 0.2145D-09, 0.3814D-09,
24645      #    0.6781D-09, 0.1206D-08, 0.2143D-08, 0.3811D-08, 0.6775D-08,
24646      #    0.1204D-07, 0.2139D-07, 0.3799D-07, 0.6739D-07, 0.1195D-06,
24647      #    0.2117D-06, 0.3740D-06, 0.6590D-06, 0.1156D-05, 0.2016D-05,
24648      #    0.3484D-05, 0.5948D-05, 0.9971D-05, 0.1631D-04, 0.2579D-04,
24649      #    0.3901D-04, 0.5590D-04, 0.7514D-04, 0.9416D-04, 0.1101D-03,
24650      #    0.1207D-03, 0.1245D-03, 0.1214D-03, 0.1122D-03, 0.9831D-04,
24651      #    0.8202D-04, 0.6564D-04, 0.5065D-04, 0.3808D-04, 0.2804D-04,
24652      #    0.2017D-04, 0.1443D-04, 0.1026D-04, 0.7188D-05, 0.5079D-05,
24653      #    0.3548D-05, 0.2593D-05, 0.1868D-05, 0.1441D-05, 0.1062D-05,
24654      #    0.7624D-06, 0.7149D-06, 0.4847D-06, 0.5323D-06, 0.4147D-06,
24655      #    0.4368D-06, 0.3018D-06, 0.3121D-06, 0.3191D-06, 0.3238D-06,
24656      #    0.3271D-06, 0.3293D-06, 0.3308D-06, 0.3318D-06, 0.3325D-06,
24657      #    0.3330D-06/
24658
24659       data (calcpts(j,14), j = 1,neta) /0.9761D-12, 0.1736D-11,
24660      #    0.3086D-11, 0.5488D-11, 0.9762D-11, 0.1736D-10, 0.3087D-10,
24661      #    0.5490D-10, 0.9758D-10, 0.1735D-09, 0.3087D-09, 0.5488D-09,
24662      #    0.9758D-09, 0.1735D-08, 0.3084D-08, 0.5483D-08, 0.9750D-08,
24663      #    0.1732D-07, 0.3078D-07, 0.5467D-07, 0.9698D-07, 0.1720D-06,
24664      #    0.3046D-06, 0.5383D-06, 0.9486D-06, 0.1665D-05, 0.2903D-05,
24665      #    0.5020D-05, 0.8573D-05, 0.1438D-04, 0.2354D-04, 0.3728D-04,
24666      #    0.5648D-04, 0.8107D-04, 0.1092D-03, 0.1371D-03, 0.1605D-03,
24667      #    0.1760D-03, 0.1816D-03, 0.1773D-03, 0.1637D-03, 0.1434D-03,
24668      #    0.1196D-03, 0.9570D-04, 0.7384D-04, 0.5544D-04, 0.4061D-04,
24669      #    0.2922D-04, 0.2087D-04, 0.1464D-04, 0.1027D-04, 0.7166D-05,
24670      #    0.5032D-05, 0.3483D-05, 0.2366D-05, 0.1631D-05, 0.1199D-05,
24671      #    0.8151D-06, 0.6626D-06, 0.4631D-06, 0.3815D-06, 0.2782D-06,
24672      #    0.1600D-06, 0.1816D-06, 0.1964D-06, 0.2064D-06, 0.2133D-06,
24673      #    0.6796D-07, 0.7114D-07, 0.7330D-07, 0.7478D-07, 0.7578D-07,
24674      #    0.7647D-07/
24675
24676       data (calcpts(j,15), j = 1,neta) /0.1392D-11, 0.2477D-11,
24677      #    0.4402D-11, 0.7829D-11, 0.1393D-10, 0.2476D-10, 0.4403D-10,
24678      #    0.7832D-10, 0.1392D-09, 0.2476D-09, 0.4403D-09, 0.7829D-09,
24679      #    0.1392D-08, 0.2476D-08, 0.4399D-08, 0.7822D-08, 0.1391D-07,
24680      #    0.2471D-07, 0.4391D-07, 0.7800D-07, 0.1384D-06, 0.2454D-06,
24681      #    0.4347D-06, 0.7682D-06, 0.1354D-05, 0.2377D-05, 0.4145D-05,
24682      #    0.7171D-05, 0.1226D-04, 0.2058D-04, 0.3373D-04, 0.5351D-04,
24683      #    0.8124D-04, 0.1169D-03, 0.1579D-03, 0.1988D-03, 0.2333D-03,
24684      #    0.2561D-03, 0.2645D-03, 0.2582D-03, 0.2385D-03, 0.2088D-03,
24685      #    0.1742D-03, 0.1394D-03, 0.1074D-03, 0.8048D-04, 0.5895D-04,
24686      #    0.4236D-04, 0.2994D-04, 0.2101D-04, 0.1453D-04, 0.9938D-05,
24687      #    0.6780D-05, 0.4608D-05, 0.3032D-05, 0.2046D-05, 0.1299D-05,
24688      #    0.8574D-06, 0.4678D-06, 0.3112D-06, 0.1088D-06, 0.2541D-07,
24689      #    -.7929D-07, -.1984D-06, -.1773D-06, -.1630D-06, -.1532D-06,
24690      #    -.2966D-06, -.2920D-06, -.2889D-06, -.2868D-06, -.2854D-06,
24691      #    -.2844D-06/
24692
24693       data (calcpts(j,16), j = 1,neta) /0.1963D-11, 0.3491D-11,
24694      #    0.6205D-11, 0.1104D-10, 0.1963D-10, 0.3490D-10, 0.6206D-10,
24695      #    0.1104D-09, 0.1962D-09, 0.3489D-09, 0.6207D-09, 0.1104D-08,
24696      #    0.1962D-08, 0.3490D-08, 0.6201D-08, 0.1103D-07, 0.1960D-07,
24697      #    0.3484D-07, 0.6190D-07, 0.1099D-06, 0.1950D-06, 0.3459D-06,
24698      #    0.6129D-06, 0.1083D-05, 0.1910D-05, 0.3353D-05, 0.5851D-05,
24699      #    0.1013D-04, 0.1733D-04, 0.2913D-04, 0.4784D-04, 0.7607D-04,
24700      #    0.1158D-03, 0.1673D-03, 0.2269D-03, 0.2867D-03, 0.3375D-03,
24701      #    0.3716D-03, 0.3841D-03, 0.3753D-03, 0.3466D-03, 0.3039D-03,
24702      #    0.2537D-03, 0.2030D-03, 0.1565D-03, 0.1181D-03, 0.8594D-04,
24703      #    0.6177D-04, 0.4362D-04, 0.3032D-04, 0.2161D-04, 0.1543D-04,
24704      #    0.1088D-04, 0.6887D-05, 0.5260D-05, 0.3197D-05, 0.2334D-05,
24705      #    0.1270D-05, 0.1566D-05, 0.2684D-06, 0.4061D-06, 0.4999D-06,
24706      #    0.5638D-06, 0.6074D-06, 0.6370D-06, 0.6572D-06, -.8290D-06,
24707      #    -.8196D-06, -.8132D-06, -.8089D-06, -.8059D-06, -.8039D-06,
24708      #    -.8025D-06/
24709
24710       data (calcpts(j,17), j = 1,neta) /0.2719D-11, 0.4836D-11,
24711      #    0.8595D-11, 0.1529D-10, 0.2719D-10, 0.4835D-10, 0.8598D-10,
24712      #    0.1529D-09, 0.2718D-09, 0.4834D-09, 0.8598D-09, 0.1529D-08,
24713      #    0.2718D-08, 0.4834D-08, 0.8590D-08, 0.1527D-07, 0.2716D-07,
24714      #    0.4826D-07, 0.8575D-07, 0.1523D-06, 0.2702D-06, 0.4794D-06,
24715      #    0.8493D-06, 0.1502D-05, 0.2648D-05, 0.4652D-05, 0.8121D-05,
24716      #    0.1407D-04, 0.2410D-04, 0.4059D-04, 0.6682D-04, 0.1066D-03,
24717      #    0.1630D-03, 0.2366D-03, 0.3226D-03, 0.4099D-03, 0.4847D-03,
24718      #    0.5352D-03, 0.5545D-03, 0.5421D-03, 0.5006D-03, 0.4394D-03,
24719      #    0.3677D-03, 0.2939D-03, 0.2269D-03, 0.1708D-03, 0.1253D-03,
24720      #    0.9057D-04, 0.6407D-04, 0.4530D-04, 0.3153D-04, 0.2250D-04,
24721      #    0.1459D-04, 0.9875D-05, 0.7276D-05, 0.5574D-05, 0.3457D-05,
24722      #    0.2560D-05, 0.1471D-05, 0.1751D-05, 0.4418D-06, 0.5718D-06,
24723      #    0.6603D-06, 0.7206D-06, 0.7618D-06, 0.7898D-06, 0.8088D-06,
24724      #    0.8218D-06, 0.8307D-06, 0.8367D-06, 0.8408D-06, 0.8436D-06,
24725      #    0.8455D-06/
24726
24727       data (calcpts(j,18), j = 1,neta) /0.3677D-11, 0.6539D-11,
24728      #    0.1162D-10, 0.2067D-10, 0.3677D-10, 0.6538D-10, 0.1163D-09,
24729      #    0.2068D-09, 0.3675D-09, 0.6537D-09, 0.1163D-08, 0.2067D-08,
24730      #    0.3676D-08, 0.6537D-08, 0.1162D-07, 0.2066D-07, 0.3673D-07,
24731      #    0.6527D-07, 0.1160D-06, 0.2060D-06, 0.3655D-06, 0.6485D-06,
24732      #    0.1149D-05, 0.2032D-05, 0.3585D-05, 0.6301D-05, 0.1101D-04,
24733      #    0.1910D-04, 0.3277D-04, 0.5531D-04, 0.9132D-04, 0.1463D-03,
24734      #    0.2249D-03, 0.3286D-03, 0.4512D-03, 0.5776D-03, 0.6873D-03,
24735      #    0.7621D-03, 0.7917D-03, 0.7756D-03, 0.7173D-03, 0.6298D-03,
24736      #    0.5273D-03, 0.4235D-03, 0.3281D-03, 0.2463D-03, 0.1814D-03,
24737      #    0.1306D-03, 0.9257D-04, 0.6479D-04, 0.4509D-04, 0.3217D-04,
24738      #    0.2119D-04, 0.1446D-04, 0.9533D-05, 0.6787D-05, 0.4982D-05,
24739      #    0.2797D-05, 0.1853D-05, 0.2231D-05, 0.9891D-06, 0.1165D-05,
24740      #    -.2155D-06, -.1339D-06, -.7834D-07, -.4048D-07, -.1468D-07,
24741      #    0.2897D-08, 0.1486D-07, 0.2302D-07, 0.2858D-07, 0.3237D-07,
24742      #    0.3495D-07/
24743
24744       data (calcpts(j,19), j = 1,neta) /0.4815D-11, 0.8565D-11,
24745      #    0.1522D-10, 0.2707D-10, 0.4816D-10, 0.8563D-10, 0.1523D-09,
24746      #    0.2708D-09, 0.4814D-09, 0.8561D-09, 0.1523D-08, 0.2707D-08,
24747      #    0.4814D-08, 0.8562D-08, 0.1521D-07, 0.2705D-07, 0.4811D-07,
24748      #    0.8549D-07, 0.1519D-06, 0.2699D-06, 0.4789D-06, 0.8497D-06,
24749      #    0.1506D-05, 0.2664D-05, 0.4702D-05, 0.8270D-05, 0.1446D-04,
24750      #    0.2512D-04, 0.4319D-04, 0.7311D-04, 0.1212D-03, 0.1951D-03,
24751      #    0.3020D-03, 0.4449D-03, 0.6166D-03, 0.7966D-03, 0.9558D-03,
24752      #    0.1067D-02, 0.1113D-02, 0.1092D-02, 0.1014D-02, 0.8925D-03,
24753      #    0.7478D-03, 0.6015D-03, 0.4664D-03, 0.3505D-03, 0.2583D-03,
24754      #    0.1857D-03, 0.1329D-03, 0.9248D-04, 0.6442D-04, 0.4501D-04,
24755      #    0.3124D-04, 0.2118D-04, 0.1405D-04, 0.1035D-04, 0.7411D-05,
24756      #    0.3979D-05, 0.3207D-05, 0.2202D-05, 0.1040D-05, 0.1270D-05,
24757      #    0.1427D-05, 0.3386D-07, 0.1067D-06, 0.1563D-06, 0.1901D-06,
24758      #    0.2131D-06, 0.2287D-06, 0.2394D-06, 0.2467D-06, 0.2517D-06,
24759      #    0.2551D-06/
24760
24761       data (calcpts(j,20), j = 1,neta) /0.6052D-11, 0.1076D-10,
24762      #    0.1913D-10, 0.3403D-10, 0.6052D-10, 0.1076D-09, 0.1914D-09,
24763      #    0.3404D-09, 0.6050D-09, 0.1076D-08, 0.1914D-08, 0.3403D-08,
24764      #    0.6050D-08, 0.1076D-07, 0.1912D-07, 0.3400D-07, 0.6046D-07,
24765      #    0.1075D-06, 0.1909D-06, 0.3393D-06, 0.6021D-06, 0.1068D-05,
24766      #    0.1894D-05, 0.3352D-05, 0.5918D-05, 0.1042D-04, 0.1824D-04,
24767      #    0.3174D-04, 0.5468D-04, 0.9285D-04, 0.1546D-03, 0.2504D-03,
24768      #    0.3906D-03, 0.5811D-03, 0.8145D-03, 0.1065D-02, 0.1291D-02,
24769      #    0.1454D-02, 0.1525D-02, 0.1504D-02, 0.1401D-02, 0.1236D-02,
24770      #    0.1041D-02, 0.8396D-03, 0.6525D-03, 0.4925D-03, 0.3638D-03,
24771      #    0.2628D-03, 0.1870D-03, 0.1314D-03, 0.9228D-04, 0.6359D-04,
24772      #    0.4418D-04, 0.3088D-04, 0.2162D-04, 0.1401D-04, 0.9972D-05,
24773      #    0.6814D-05, 0.4728D-05, 0.3851D-05, 0.2776D-05, 0.1565D-05,
24774      #    0.1762D-05, 0.3964D-06, 0.4879D-06, 0.5502D-06, 0.5927D-06,
24775      #    0.6216D-06, 0.6413D-06, 0.6548D-06, 0.6639D-06, 0.6702D-06,
24776      #    0.6744D-06/
24777
24778       data (calcpts(j,21), j = 1,neta) /0.7225D-11, 0.1285D-10,
24779      #    0.2284D-10, 0.4062D-10, 0.7226D-10, 0.1285D-09, 0.2285D-09,
24780      #    0.4064D-09, 0.7222D-09, 0.1285D-08, 0.2285D-08, 0.4062D-08,
24781      #    0.7223D-08, 0.1285D-07, 0.2283D-07, 0.4060D-07, 0.7219D-07,
24782      #    0.1283D-06, 0.2280D-06, 0.4051D-06, 0.7191D-06, 0.1276D-05,
24783      #    0.2263D-05, 0.4006D-05, 0.7078D-05, 0.1247D-04, 0.2186D-04,
24784      #    0.3809D-04, 0.6578D-04, 0.1121D-03, 0.1875D-03, 0.3057D-03,
24785      #    0.4809D-03, 0.7232D-03, 0.1027D-02, 0.1361D-02, 0.1674D-02,
24786      #    0.1907D-02, 0.2020D-02, 0.2003D-02, 0.1874D-02, 0.1664D-02,
24787      #    0.1407D-02, 0.1140D-02, 0.8905D-03, 0.6748D-03, 0.4981D-03,
24788      #    0.3607D-03, 0.2569D-03, 0.1812D-03, 0.1264D-03, 0.8829D-04,
24789      #    0.6015D-04, 0.4206D-04, 0.2761D-04, 0.1906D-04, 0.1240D-04,
24790      #    0.8007D-05, 0.6099D-05, 0.3843D-05, 0.2850D-05, 0.1695D-05,
24791      #    0.4300D-06, 0.5904D-06, 0.6997D-06, -.7260D-06, -.6753D-06,
24792      #    -.6407D-06, -.6172D-06, -.6012D-06, -.5902D-06, -.5828D-06,
24793      #    -.5777D-06/
24794
24795       data (calcpts(j,22), j = 1,neta) /0.8126D-11, 0.1445D-10,
24796      #    0.2569D-10, 0.4569D-10, 0.8127D-10, 0.1445D-09, 0.2570D-09,
24797      #    0.4570D-09, 0.8123D-09, 0.1445D-08, 0.2570D-08, 0.4569D-08,
24798      #    0.8124D-08, 0.1445D-07, 0.2568D-07, 0.4566D-07, 0.8120D-07,
24799      #    0.1443D-06, 0.2565D-06, 0.4558D-06, 0.8090D-06, 0.1436D-05,
24800      #    0.2547D-05, 0.4511D-05, 0.7973D-05, 0.1406D-04, 0.2467D-04,
24801      #    0.4306D-04, 0.7453D-04, 0.1274D-03, 0.2141D-03, 0.3512D-03,
24802      #    0.5574D-03, 0.8476D-03, 0.1220D-02, 0.1643D-02, 0.2054D-02,
24803      #    0.2375D-02, 0.2546D-02, 0.2550D-02, 0.2406D-02, 0.2151D-02,
24804      #    0.1834D-02, 0.1496D-02, 0.1177D-02, 0.8971D-03, 0.6657D-03,
24805      #    0.4847D-03, 0.3465D-03, 0.2451D-03, 0.1721D-03, 0.1195D-03,
24806      #    0.8221D-04, 0.5604D-04, 0.3922D-04, 0.2660D-04, 0.1874D-04,
24807      #    0.1304D-04, 0.8271D-05, 0.6108D-05, 0.3678D-05, 0.2566D-05,
24808      #    0.1330D-05, 0.1511D-05, 0.1337D-06, 0.2174D-06, 0.2744D-06,
24809      #    0.3133D-06, 0.3397D-06, 0.3577D-06, 0.3700D-06, 0.3784D-06,
24810      #    0.3841D-06/
24811
24812       data (calcpts(j,23), j = 1,neta) /0.8555D-11, 0.1522D-10,
24813      #    0.2705D-10, 0.4810D-10, 0.8556D-10, 0.1521D-09, 0.2705D-09,
24814      #    0.4812D-09, 0.8552D-09, 0.1521D-08, 0.2706D-08, 0.4810D-08,
24815      #    0.8554D-08, 0.1521D-07, 0.2704D-07, 0.4808D-07, 0.8549D-07,
24816      #    0.1520D-06, 0.2701D-06, 0.4799D-06, 0.8520D-06, 0.1513D-05,
24817      #    0.2684D-05, 0.4754D-05, 0.8406D-05, 0.1483D-04, 0.2605D-04,
24818      #    0.4552D-04, 0.7895D-04, 0.1353D-03, 0.2283D-03, 0.3768D-03,
24819      #    0.6026D-03, 0.9260D-03, 0.1351D-02, 0.1849D-02, 0.2353D-02,
24820      #    0.2770D-02, 0.3018D-02, 0.3064D-02, 0.2924D-02, 0.2640D-02,
24821      #    0.2273D-02, 0.1874D-02, 0.1488D-02, 0.1143D-02, 0.8549D-03,
24822      #    0.6257D-03, 0.4499D-03, 0.3189D-03, 0.2234D-03, 0.1552D-03,
24823      #    0.1080D-03, 0.7481D-04, 0.5080D-04, 0.3538D-04, 0.2466D-04,
24824      #    0.1606D-04, 0.1135D-04, 0.7732D-05, 0.5332D-05, 0.4241D-05,
24825      #    0.3019D-05, 0.1709D-05, 0.1838D-05, 0.4264D-06, 0.4864D-06,
24826      #    0.5273D-06, 0.5552D-06, 0.5742D-06, 0.5871D-06, 0.5959D-06,
24827      #    0.6019D-06/
24828
24829       data (calcpts(j,24), j = 1,neta) /0.8413D-11, 0.1496D-10,
24830      #    0.2660D-10, 0.4731D-10, 0.8414D-10, 0.1496D-09, 0.2660D-09,
24831      #    0.4732D-09, 0.8410D-09, 0.1496D-08, 0.2661D-08, 0.4731D-08,
24832      #    0.8412D-08, 0.1496D-07, 0.2659D-07, 0.4728D-07, 0.8408D-07,
24833      #    0.1494D-06, 0.2656D-06, 0.4721D-06, 0.8381D-06, 0.1488D-05,
24834      #    0.2640D-05, 0.4678D-05, 0.8275D-05, 0.1461D-04, 0.2567D-04,
24835      #    0.4492D-04, 0.7802D-04, 0.1340D-03, 0.2268D-03, 0.3760D-03,
24836      #    0.6052D-03, 0.9383D-03, 0.1385D-02, 0.1925D-02, 0.2495D-02,
24837      #    0.2996D-02, 0.3329D-02, 0.3440D-02, 0.3331D-02, 0.3050D-02,
24838      #    0.2661D-02, 0.2221D-02, 0.1785D-02, 0.1387D-02, 0.1048D-02,
24839      #    0.7719D-03, 0.5577D-03, 0.3976D-03, 0.2806D-03, 0.1956D-03,
24840      #    0.1362D-03, 0.9383D-04, 0.6522D-04, 0.4373D-04, 0.2997D-04,
24841      #    0.2133D-04, 0.1360D-04, 0.9969D-05, 0.6059D-05, 0.4962D-05,
24842      #    0.3735D-05, 0.2422D-05, 0.1049D-05, 0.1136D-05, 0.1195D-05,
24843      #    -.2647D-06, -.2374D-06, -.2187D-06, -.2060D-06, -.1973D-06,
24844      #    -.1914D-06/
24845
24846       data (calcpts(j,25), j = 1,neta) /0.7746D-11, 0.1378D-10,
24847      #    0.2449D-10, 0.4355D-10, 0.7747D-10, 0.1377D-09, 0.2449D-09,
24848      #    0.4357D-09, 0.7743D-09, 0.1377D-08, 0.2450D-08, 0.4355D-08,
24849      #    0.7745D-08, 0.1377D-07, 0.2448D-07, 0.4353D-07, 0.7741D-07,
24850      #    0.1376D-06, 0.2446D-06, 0.4347D-06, 0.7717D-06, 0.1370D-05,
24851      #    0.2432D-05, 0.4309D-05, 0.7624D-05, 0.1346D-04, 0.2367D-04,
24852      #    0.4144D-04, 0.7206D-04, 0.1240D-03, 0.2103D-03, 0.3497D-03,
24853      #    0.5656D-03, 0.8828D-03, 0.1316D-02, 0.1852D-02, 0.2441D-02,
24854      #    0.2990D-02, 0.3395D-02, 0.3583D-02, 0.3537D-02, 0.3295D-02,
24855      #    0.2920D-02, 0.2479D-02, 0.2022D-02, 0.1593D-02, 0.1219D-02,
24856      #    0.9078D-03, 0.6620D-03, 0.4748D-03, 0.3362D-03, 0.2362D-03,
24857      #    0.1638D-03, 0.1133D-03, 0.7819D-04, 0.5339D-04, 0.3641D-04,
24858      #    0.2462D-04, 0.1679D-04, 0.1159D-04, 0.7636D-05, 0.5006D-05,
24859      #    0.3758D-05, 0.2430D-05, 0.1047D-05, 0.1127D-05, 0.1181D-05,
24860      #    0.1218D-05, -.2567D-06, -.2395D-06, -.2278D-06, -.2198D-06,
24861      #    -.2144D-06/
24862
24863       data (calcpts(j,26), j = 1,neta) /0.6715D-11, 0.1194D-10,
24864      #    0.2123D-10, 0.3775D-10, 0.6716D-10, 0.1194D-09, 0.2123D-09,
24865      #    0.3777D-09, 0.6712D-09, 0.1194D-08, 0.2124D-08, 0.3776D-08,
24866      #    0.6714D-08, 0.1194D-07, 0.2122D-07, 0.3774D-07, 0.6711D-07,
24867      #    0.1193D-06, 0.2120D-06, 0.3768D-06, 0.6690D-06, 0.1188D-05,
24868      #    0.2108D-05, 0.3737D-05, 0.6612D-05, 0.1168D-04, 0.2054D-04,
24869      #    0.3598D-04, 0.6259D-04, 0.1078D-03, 0.1831D-03, 0.3051D-03,
24870      #    0.4950D-03, 0.7763D-03, 0.1165D-02, 0.1656D-02, 0.2213D-02,
24871      #    0.2759D-02, 0.3201D-02, 0.3456D-02, 0.3490D-02, 0.3320D-02,
24872      #    0.3002D-02, 0.2595D-02, 0.2157D-02, 0.1730D-02, 0.1343D-02,
24873      #    0.1015D-02, 0.7487D-03, 0.5417D-03, 0.3862D-03, 0.2735D-03,
24874      #    0.1906D-03, 0.1314D-03, 0.9113D-04, 0.6284D-04, 0.4252D-04,
24875      #    0.2901D-04, 0.1952D-04, 0.1272D-04, 0.8687D-05, 0.6008D-05,
24876      #    0.4726D-05, 0.1876D-05, 0.1977D-05, 0.5462D-06, 0.5933D-06,
24877      #    0.6254D-06, 0.6473D-06, -.8378D-06, -.8277D-06, -.8207D-06,
24878      #    -.8160D-06/
24879
24880       data (calcpts(j,27), j = 1,neta) /0.5527D-11, 0.9830D-11,
24881      #    0.1747D-10, 0.3108D-10, 0.5528D-10, 0.9829D-10, 0.1748D-09,
24882      #    0.3109D-09, 0.5525D-09, 0.9827D-09, 0.1748D-08, 0.3108D-08,
24883      #    0.5526D-08, 0.9828D-08, 0.1747D-07, 0.3106D-07, 0.5524D-07,
24884      #    0.9818D-07, 0.1745D-06, 0.3102D-06, 0.5507D-06, 0.9780D-06,
24885      #    0.1736D-05, 0.3076D-05, 0.5444D-05, 0.9614D-05, 0.1691D-04,
24886      #    0.2963D-04, 0.5158D-04, 0.8887D-04, 0.1511D-03, 0.2521D-03,
24887      #    0.4098D-03, 0.6445D-03, 0.9714D-03, 0.1391D-02, 0.1877D-02,
24888      #    0.2374D-02, 0.2806D-02, 0.3100D-02, 0.3208D-02, 0.3127D-02,
24889      #    0.2890D-02, 0.2554D-02, 0.2168D-02, 0.1775D-02, 0.1405D-02,
24890      #    0.1080D-02, 0.8101D-03, 0.5929D-03, 0.4277D-03, 0.3048D-03,
24891      #    0.2141D-03, 0.1493D-03, 0.1037D-03, 0.7180D-04, 0.4960D-04,
24892      #    0.3432D-04, 0.2316D-04, 0.1623D-04, 0.1211D-04, 0.7877D-05,
24893      #    0.5057D-05, 0.3680D-05, 0.2263D-05, 0.2320D-05, 0.2359D-05,
24894      #    0.8854D-06, 0.9034D-06, 0.9157D-06, 0.9240D-06, 0.9297D-06,
24895      #    0.9336D-06/
24896
24897       data (calcpts(j,28), j = 1,neta) /0.4356D-11, 0.7748D-11,
24898      #    0.1377D-10, 0.2449D-10, 0.4356D-10, 0.7746D-10, 0.1377D-09,
24899      #    0.2450D-09, 0.4354D-09, 0.7745D-09, 0.1378D-08, 0.2449D-08,
24900      #    0.4355D-08, 0.7746D-08, 0.1377D-07, 0.2448D-07, 0.4353D-07,
24901      #    0.7738D-07, 0.1375D-06, 0.2445D-06, 0.4340D-06, 0.7708D-06,
24902      #    0.1368D-05, 0.2425D-05, 0.4291D-05, 0.7579D-05, 0.1333D-04,
24903      #    0.2337D-04, 0.4067D-04, 0.7011D-04, 0.1192D-03, 0.1991D-03,
24904      #    0.3240D-03, 0.5104D-03, 0.7713D-03, 0.1109D-02, 0.1507D-02,
24905      #    0.1926D-02, 0.2310D-02, 0.2603D-02, 0.2758D-02, 0.2758D-02,
24906      #    0.2615D-02, 0.2366D-02, 0.2056D-02, 0.1721D-02, 0.1394D-02,
24907      #    0.1094D-02, 0.8339D-03, 0.6218D-03, 0.4527D-03, 0.3258D-03,
24908      #    0.2304D-03, 0.1613D-03, 0.1134D-03, 0.7795D-04, 0.5386D-04,
24909      #    0.3683D-04, 0.2549D-04, 0.1693D-04, 0.1274D-04, 0.8447D-05,
24910      #    0.5589D-05, 0.4186D-05, 0.2751D-05, 0.1296D-05, 0.1327D-05,
24911      #    0.1348D-05, 0.1362D-05, 0.1372D-05, -.1219D-06, -.1174D-06,
24912      #    -.1143D-06/
24913
24914       data (calcpts(j,29), j = 1,neta) /0.3316D-11, 0.5897D-11,
24915      #    0.1048D-10, 0.1864D-10, 0.3316D-10, 0.5896D-10, 0.1048D-09,
24916      #    0.1865D-09, 0.3314D-09, 0.5895D-09, 0.1049D-08, 0.1864D-08,
24917      #    0.3315D-08, 0.5896D-08, 0.1048D-07, 0.1863D-07, 0.3314D-07,
24918      #    0.5890D-07, 0.1047D-06, 0.1861D-06, 0.3304D-06, 0.5867D-06,
24919      #    0.1041D-05, 0.1846D-05, 0.3266D-05, 0.5769D-05, 0.1015D-04,
24920      #    0.1779D-04, 0.3097D-04, 0.5339D-04, 0.9082D-04, 0.1517D-03,
24921      #    0.2470D-03, 0.3894D-03, 0.5895D-03, 0.8495D-03, 0.1159D-02,
24922      #    0.1491D-02, 0.1808D-02, 0.2068D-02, 0.2237D-02, 0.2292D-02,
24923      #    0.2232D-02, 0.2073D-02, 0.1847D-02, 0.1585D-02, 0.1314D-02,
24924      #    0.1055D-02, 0.8229D-03, 0.6239D-03, 0.4621D-03, 0.3359D-03,
24925      #    0.2403D-03, 0.1702D-03, 0.1186D-03, 0.8264D-04, 0.5672D-04,
24926      #    0.3945D-04, 0.2646D-04, 0.1780D-04, 0.1203D-04, 0.9188D-05,
24927      #    0.6296D-05, 0.3370D-05, 0.1920D-05, 0.1954D-05, 0.4774D-06,
24928      #    0.4932D-06, 0.5040D-06, 0.5114D-06, 0.5164D-06, 0.5198D-06,
24929      #    0.5221D-06/
24930
24931       data (calcpts(j,30), j = 1,neta) /0.2456D-11, 0.4369D-11,
24932      #    0.7765D-11, 0.1381D-10, 0.2457D-10, 0.4368D-10, 0.7767D-10,
24933      #    0.1381D-09, 0.2455D-09, 0.4367D-09, 0.7768D-09, 0.1381D-08,
24934      #    0.2456D-08, 0.4368D-08, 0.7762D-08, 0.1380D-07, 0.2455D-07,
24935      #    0.4363D-07, 0.7756D-07, 0.1378D-06, 0.2448D-06, 0.4347D-06,
24936      #    0.7714D-06, 0.1367D-05, 0.2420D-05, 0.4274D-05, 0.7520D-05,
24937      #    0.1318D-04, 0.2295D-04, 0.3956D-04, 0.6730D-04, 0.1124D-03,
24938      #    0.1831D-03, 0.2889D-03, 0.4376D-03, 0.6315D-03, 0.8634D-03,
24939      #    0.1115D-02, 0.1361D-02, 0.1574D-02, 0.1729D-02, 0.1809D-02,
24940      #    0.1807D-02, 0.1725D-02, 0.1579D-02, 0.1391D-02, 0.1183D-02,
24941      #    0.9743D-03, 0.7788D-03, 0.6043D-03, 0.4562D-03, 0.3371D-03,
24942      #    0.2448D-03, 0.1753D-03, 0.1230D-03, 0.8669D-04, 0.6049D-04,
24943      #    0.4154D-04, 0.2841D-04, 0.1966D-04, 0.1383D-04, 0.9450D-05,
24944      #    0.6530D-05, 0.3585D-05, 0.3622D-05, 0.2147D-05, 0.6646D-06,
24945      #    0.6763D-06, 0.6843D-06, 0.6898D-06, 0.6935D-06, 0.6960D-06,
24946      #    0.6977D-06/
24947
24948       data (calcpts(j,31), j = 1,neta) /0.1782D-11, 0.3169D-11,
24949      #    0.5632D-11, 0.1002D-10, 0.1782D-10, 0.3168D-10, 0.5634D-10,
24950      #    0.1002D-09, 0.1781D-09, 0.3168D-09, 0.5634D-09, 0.1002D-08,
24951      #    0.1781D-08, 0.3168D-08, 0.5630D-08, 0.1001D-07, 0.1781D-07,
24952      #    0.3165D-07, 0.5626D-07, 0.9999D-07, 0.1775D-06, 0.3153D-06,
24953      #    0.5596D-06, 0.9917D-06, 0.1755D-05, 0.3100D-05, 0.5455D-05,
24954      #    0.9560D-05, 0.1665D-04, 0.2870D-04, 0.4883D-04, 0.8158D-04,
24955      #    0.1329D-03, 0.2097D-03, 0.3177D-03, 0.4588D-03, 0.6281D-03,
24956      #    0.8132D-03, 0.9961D-03, 0.1159D-02, 0.1288D-02, 0.1369D-02,
24957      #    0.1397D-02, 0.1369D-02, 0.1288D-02, 0.1166D-02, 0.1019D-02,
24958      #    0.8616D-03, 0.7061D-03, 0.5616D-03, 0.4343D-03, 0.3274D-03,
24959      #    0.2414D-03, 0.1742D-03, 0.1245D-03, 0.8781D-04, 0.6139D-04,
24960      #    0.4228D-04, 0.2905D-04, 0.2024D-04, 0.1436D-04, 0.9946D-05,
24961      #    0.7004D-05, 0.4044D-05, 0.2570D-05, 0.2589D-05, 0.1101D-05,
24962      #    0.1110D-05, 0.1116D-05, 0.1120D-05, -.3777D-06, -.3759D-06,
24963      #    -.3746D-06/
24964
24965       data (calcpts(j,32), j = 1,neta) /0.1272D-11, 0.2262D-11,
24966      #    0.4020D-11, 0.7150D-11, 0.1272D-10, 0.2261D-10, 0.4021D-10,
24967      #    0.7152D-10, 0.1271D-09, 0.2261D-09, 0.4021D-09, 0.7150D-09,
24968      #    0.1271D-08, 0.2261D-08, 0.4019D-08, 0.7146D-08, 0.1271D-07,
24969      #    0.2259D-07, 0.4015D-07, 0.7136D-07, 0.1267D-06, 0.2250D-06,
24970      #    0.3994D-06, 0.7078D-06, 0.1253D-05, 0.2213D-05, 0.3893D-05,
24971      #    0.6823D-05, 0.1188D-04, 0.2048D-04, 0.3485D-04, 0.5823D-04,
24972      #    0.9486D-04, 0.1497D-03, 0.2269D-03, 0.3278D-03, 0.4490D-03,
24973      #    0.5819D-03, 0.7143D-03, 0.8346D-03, 0.9331D-03, 0.1003D-02,
24974      #    0.1040D-02, 0.1042D-02, 0.1006D-02, 0.9370D-03, 0.8420D-03,
24975      #    0.7316D-03, 0.6159D-03, 0.5030D-03, 0.3989D-03, 0.3078D-03,
24976      #    0.2315D-03, 0.1704D-03, 0.1231D-03, 0.8770D-04, 0.6186D-04,
24977      #    0.4310D-04, 0.2994D-04, 0.2062D-04, 0.1411D-04, 0.9669D-05,
24978      #    0.6560D-05, 0.4488D-05, 0.3008D-05, 0.1971D-05, 0.1230D-05,
24979      #    0.7857D-06, 0.4899D-06, 0.3427D-06, 0.1946D-06, 0.4594D-07,
24980      #    0.4683D-07/
24981
24982       data (calcpts(j,33), j = 1,neta) /0.8970D-12, 0.1596D-11,
24983      #    0.2836D-11, 0.5044D-11, 0.8972D-11, 0.1595D-10, 0.2837D-10,
24984      #    0.5045D-10, 0.8967D-10, 0.1595D-09, 0.2837D-09, 0.5044D-09,
24985      #    0.8969D-09, 0.1595D-08, 0.2835D-08, 0.5041D-08, 0.8965D-08,
24986      #    0.1594D-07, 0.2832D-07, 0.5034D-07, 0.8939D-07, 0.1587D-06,
24987      #    0.2817D-06, 0.4993D-06, 0.8838D-06, 0.1561D-05, 0.2747D-05,
24988      #    0.4814D-05, 0.8381D-05, 0.1445D-04, 0.2459D-04, 0.4108D-04,
24989      #    0.6692D-04, 0.1056D-03, 0.1601D-03, 0.2313D-03, 0.3170D-03,
24990      #    0.4110D-03, 0.5051D-03, 0.5914D-03, 0.6637D-03, 0.7184D-03,
24991      #    0.7533D-03, 0.7669D-03, 0.7573D-03, 0.7242D-03, 0.6695D-03,
24992      #    0.5985D-03, 0.5181D-03, 0.4348D-03, 0.3544D-03, 0.2805D-03,
24993      #    0.2162D-03, 0.1625D-03, 0.1195D-03, 0.8643D-04, 0.6152D-04,
24994      #    0.4342D-04, 0.3035D-04, 0.2115D-04, 0.1461D-04, 0.1015D-04,
24995      #    0.7032D-05, 0.4801D-05, 0.3315D-05, 0.2424D-05, 0.1681D-05,
24996      #    0.1235D-05, 0.7878D-06, 0.6398D-06, 0.4911D-06, 0.3421D-06,
24997      #    0.3427D-06/
24998
24999       data (calcpts(j,34), j = 1,neta) /0.6268D-12, 0.1115D-11,
25000      #    0.1982D-11, 0.3525D-11, 0.6269D-11, 0.1115D-10, 0.1982D-10,
25001      #    0.3526D-10, 0.6266D-10, 0.1114D-09, 0.1982D-09, 0.3525D-09,
25002      #    0.6267D-09, 0.1115D-08, 0.1981D-08, 0.3523D-08, 0.6265D-08,
25003      #    0.1114D-07, 0.1979D-07, 0.3518D-07, 0.6246D-07, 0.1109D-06,
25004      #    0.1969D-06, 0.3489D-06, 0.6176D-06, 0.1091D-05, 0.1919D-05,
25005      #    0.3364D-05, 0.5857D-05, 0.1010D-04, 0.1718D-04, 0.2871D-04,
25006      #    0.4677D-04, 0.7381D-04, 0.1119D-03, 0.1617D-03, 0.2216D-03,
25007      #    0.2874D-03, 0.3534D-03, 0.4142D-03, 0.4658D-03, 0.5061D-03,
25008      #    0.5344D-03, 0.5501D-03, 0.5524D-03, 0.5402D-03, 0.5129D-03,
25009      #    0.4718D-03, 0.4202D-03, 0.3626D-03, 0.3038D-03, 0.2471D-03,
25010      #    0.1954D-03, 0.1503D-03, 0.1129D-03, 0.8290D-04, 0.5986D-04,
25011      #    0.4259D-04, 0.3009D-04, 0.2100D-04, 0.1460D-04, 0.1013D-04,
25012      #    0.6998D-05, 0.4762D-05, 0.3271D-05, 0.2228D-05, 0.1632D-05,
25013      #    0.1035D-05, 0.7373D-06, 0.5887D-06, 0.4396D-06, 0.2903D-06,
25014      #    0.1407D-06/
25015
25016       data (calcpts(j,35), j = 1,neta) /0.4350D-12, 0.7738D-12,
25017      #    0.1375D-11, 0.2446D-11, 0.4351D-11, 0.7736D-11, 0.1376D-10,
25018      #    0.2447D-10, 0.4349D-10, 0.7735D-10, 0.1376D-09, 0.2446D-09,
25019      #    0.4350D-09, 0.7736D-09, 0.1375D-08, 0.2445D-08, 0.4348D-08,
25020      #    0.7729D-08, 0.1374D-07, 0.2442D-07, 0.4335D-07, 0.7699D-07,
25021      #    0.1366D-06, 0.2422D-06, 0.4286D-06, 0.7571D-06, 0.1332D-05,
25022      #    0.2335D-05, 0.4065D-05, 0.7008D-05, 0.1192D-04, 0.1992D-04,
25023      #    0.3246D-04, 0.5123D-04, 0.7766D-04, 0.1122D-03, 0.1538D-03,
25024      #    0.1995D-03, 0.2454D-03, 0.2878D-03, 0.3240D-03, 0.3528D-03,
25025      #    0.3739D-03, 0.3876D-03, 0.3936D-03, 0.3915D-03, 0.3802D-03,
25026      #    0.3592D-03, 0.3292D-03, 0.2924D-03, 0.2519D-03, 0.2107D-03,
25027      #    0.1711D-03, 0.1351D-03, 0.1039D-03, 0.7790D-04, 0.5719D-04,
25028      #    0.4124D-04, 0.2931D-04, 0.2065D-04, 0.1438D-04, 0.1005D-04,
25029      #    0.6917D-05, 0.4677D-05, 0.3184D-05, 0.2138D-05, 0.1541D-05,
25030      #    0.9433D-06, 0.6447D-06, 0.4957D-06, 0.3463D-06, 0.1968D-06,
25031      #    0.4708D-07/
25032
25033       data (calcpts(j,36), j = 1,neta) /0.3005D-12, 0.5345D-12,
25034      #    0.9500D-12, 0.1690D-11, 0.3005D-11, 0.5344D-11, 0.9502D-11,
25035      #    0.1690D-10, 0.3004D-10, 0.5343D-10, 0.9503D-10, 0.1690D-09,
25036      #    0.3005D-09, 0.5344D-09, 0.9497D-09, 0.1689D-08, 0.3003D-08,
25037      #    0.5338D-08, 0.9488D-08, 0.1686D-07, 0.2994D-07, 0.5318D-07,
25038      #    0.9438D-07, 0.1673D-06, 0.2960D-06, 0.5229D-06, 0.9201D-06,
25039      #    0.1613D-05, 0.2808D-05, 0.4841D-05, 0.8237D-05, 0.1376D-04,
25040      #    0.2242D-04, 0.3538D-04, 0.5364D-04, 0.7751D-04, 0.1062D-03,
25041      #    0.1378D-03, 0.1696D-03, 0.1989D-03, 0.2240D-03, 0.2442D-03,
25042      #    0.2594D-03, 0.2699D-03, 0.2761D-03, 0.2777D-03, 0.2743D-03,
25043      #    0.2651D-03, 0.2496D-03, 0.2282D-03, 0.2023D-03, 0.1741D-03,
25044      #    0.1455D-03, 0.1180D-03, 0.9320D-04, 0.7159D-04, 0.5369D-04,
25045      #    0.3936D-04, 0.2845D-04, 0.2023D-04, 0.1425D-04, 0.9918D-05,
25046      #    0.6928D-05, 0.4684D-05, 0.3339D-05, 0.2292D-05, 0.1544D-05,
25047      #    0.1095D-05, 0.6464D-06, 0.4971D-06, 0.3476D-06, 0.1979D-06,
25048      #    0.1981D-06/
25049
25050       data (calcpts(j,37), j = 1,neta) /0.2068D-12, 0.3678D-12,
25051      #    0.6537D-12, 0.1163D-11, 0.2068D-11, 0.3677D-11, 0.6539D-11,
25052      #    0.1163D-10, 0.2067D-10, 0.3676D-10, 0.6539D-10, 0.1163D-09,
25053      #    0.2068D-09, 0.3677D-09, 0.6535D-09, 0.1162D-08, 0.2067D-08,
25054      #    0.3673D-08, 0.6529D-08, 0.1161D-07, 0.2061D-07, 0.3659D-07,
25055      #    0.6495D-07, 0.1151D-06, 0.2037D-06, 0.3598D-06, 0.6331D-06,
25056      #    0.1110D-05, 0.1932D-05, 0.3331D-05, 0.5668D-05, 0.9470D-05,
25057      #    0.1543D-04, 0.2435D-04, 0.3691D-04, 0.5334D-04, 0.7311D-04,
25058      #    0.9485D-04, 0.1167D-03, 0.1369D-03, 0.1542D-03, 0.1682D-03,
25059      #    0.1789D-03, 0.1865D-03, 0.1915D-03, 0.1940D-03, 0.1939D-03,
25060      #    0.1906D-03, 0.1836D-03, 0.1724D-03, 0.1573D-03, 0.1393D-03,
25061      #    0.1198D-03, 0.1000D-03, 0.8116D-04, 0.6403D-04, 0.4914D-04,
25062      #    0.3688D-04, 0.2701D-04, 0.1954D-04, 0.1385D-04, 0.9811D-05,
25063      #    0.6817D-05, 0.4722D-05, 0.3225D-05, 0.2177D-05, 0.1579D-05,
25064      #    0.9795D-06, 0.6802D-06, 0.5307D-06, 0.3810D-06, 0.2312D-06,
25065      #    0.8135D-07/
25066
25067       data (calcpts(j,38), j = 1,neta) /0.1419D-12, 0.2524D-12,
25068      #    0.4485D-12, 0.7978D-12, 0.1419D-11, 0.2523D-11, 0.4487D-11,
25069      #    0.7980D-11, 0.1418D-10, 0.2523D-10, 0.4487D-10, 0.7978D-10,
25070      #    0.1419D-09, 0.2523D-09, 0.4484D-09, 0.7974D-09, 0.1418D-08,
25071      #    0.2521D-08, 0.4480D-08, 0.7963D-08, 0.1414D-07, 0.2511D-07,
25072      #    0.4456D-07, 0.7898D-07, 0.1398D-06, 0.2469D-06, 0.4344D-06,
25073      #    0.7614D-06, 0.1326D-05, 0.2286D-05, 0.3889D-05, 0.6498D-05,
25074      #    0.1059D-04, 0.1671D-04, 0.2533D-04, 0.3660D-04, 0.5016D-04,
25075      #    0.6509D-04, 0.8007D-04, 0.9395D-04, 0.1059D-03, 0.1155D-03,
25076      #    0.1229D-03, 0.1283D-03, 0.1320D-03, 0.1343D-03, 0.1351D-03,
25077      #    0.1344D-03, 0.1316D-03, 0.1265D-03, 0.1186D-03, 0.1081D-03,
25078      #    0.9565D-04, 0.8217D-04, 0.6858D-04, 0.5562D-04, 0.4385D-04,
25079      #    0.3367D-04, 0.2521D-04, 0.1849D-04, 0.1333D-04, 0.9480D-05,
25080      #    0.6665D-05, 0.4643D-05, 0.3220D-05, 0.2216D-05, 0.1512D-05,
25081      #    0.1033D-05, 0.7036D-06, 0.2689D-06, 0.3141D-06, 0.2093D-06,
25082      #    0.1344D-06/
25083
25084       data (calcpts(j,39), j = 1,neta) /0.9721D-13, 0.1729D-12,
25085      #    0.3073D-12, 0.5466D-12, 0.9722D-12, 0.1729D-11, 0.3074D-11,
25086      #    0.5467D-11, 0.9717D-11, 0.1728D-10, 0.3074D-10, 0.5466D-10,
25087      #    0.9719D-10, 0.1729D-09, 0.3072D-09, 0.5463D-09, 0.9715D-09,
25088      #    0.1727D-08, 0.3069D-08, 0.5455D-08, 0.9686D-08, 0.1720D-07,
25089      #    0.3053D-07, 0.5411D-07, 0.9577D-07, 0.1692D-06, 0.2976D-06,
25090      #    0.5216D-06, 0.9082D-06, 0.1566D-05, 0.2664D-05, 0.4452D-05,
25091      #    0.7252D-05, 0.1145D-04, 0.1735D-04, 0.2507D-04, 0.3437D-04,
25092      #    0.4459D-04, 0.5486D-04, 0.6437D-04, 0.7254D-04, 0.7914D-04,
25093      #    0.8422D-04, 0.8797D-04, 0.9062D-04, 0.9238D-04, 0.9334D-04,
25094      #    0.9349D-04, 0.9267D-04, 0.9059D-04, 0.8691D-04, 0.8140D-04,
25095      #    0.7414D-04, 0.6557D-04, 0.5631D-04, 0.4698D-04, 0.3810D-04,
25096      #    0.3004D-04, 0.2306D-04, 0.1728D-04, 0.1268D-04, 0.9146D-05,
25097      #    0.6510D-05, 0.4592D-05, 0.3213D-05, 0.2224D-05, 0.1550D-05,
25098      #    0.1070D-05, 0.7407D-06, 0.5159D-06, 0.3511D-06, 0.2462D-06,
25099      #    0.1713D-06/
25100
25101       data (calcpts(j,40), j = 1,neta) /0.6647D-13, 0.1182D-12,
25102      #    0.2101D-12, 0.3737D-12, 0.6648D-12, 0.1182D-11, 0.2102D-11,
25103      #    0.3739D-11, 0.6645D-11, 0.1182D-10, 0.2102D-10, 0.3738D-10,
25104      #    0.6646D-10, 0.1182D-09, 0.2101D-09, 0.3736D-09, 0.6643D-09,
25105      #    0.1181D-08, 0.2099D-08, 0.3730D-08, 0.6624D-08, 0.1176D-07,
25106      #    0.2088D-07, 0.3700D-07, 0.6549D-07, 0.1157D-06, 0.2035D-06,
25107      #    0.3567D-06, 0.6210D-06, 0.1071D-05, 0.1822D-05, 0.3044D-05,
25108      #    0.4959D-05, 0.7827D-05, 0.1187D-04, 0.1715D-04, 0.2350D-04,
25109      #    0.3049D-04, 0.3751D-04, 0.4402D-04, 0.4960D-04, 0.5412D-04,
25110      #    0.5760D-04, 0.6019D-04, 0.6204D-04, 0.6331D-04, 0.6410D-04,
25111      #    0.6447D-04, 0.6436D-04, 0.6366D-04, 0.6213D-04, 0.5954D-04,
25112      #    0.5572D-04, 0.5072D-04, 0.4483D-04, 0.3849D-04, 0.3210D-04,
25113      #    0.2603D-04, 0.2052D-04, 0.1576D-04, 0.1180D-04, 0.8654D-05,
25114      #    0.6241D-05, 0.4442D-05, 0.3123D-05, 0.2179D-05, 0.1519D-05,
25115      #    0.1055D-05, 0.7248D-06, 0.5000D-06, 0.3351D-06, 0.2302D-06,
25116      #    0.1702D-06/
25117
25118       data (calcpts(j,41), j = 1,neta) /0.4540D-13, 0.8075D-13,
25119      #    0.1435D-12, 0.2553D-12, 0.4541D-12, 0.8074D-12, 0.1436D-11,
25120      #    0.2554D-11, 0.4539D-11, 0.8072D-11, 0.1436D-10, 0.2553D-10,
25121      #    0.4539D-10, 0.8074D-10, 0.1435D-09, 0.2552D-09, 0.4538D-09,
25122      #    0.8066D-09, 0.1434D-08, 0.2548D-08, 0.4524D-08, 0.8035D-08,
25123      #    0.1426D-07, 0.2527D-07, 0.4473D-07, 0.7901D-07, 0.1390D-06,
25124      #    0.2436D-06, 0.4242D-06, 0.7314D-06, 0.1244D-05, 0.2079D-05,
25125      #    0.3387D-05, 0.5346D-05, 0.8105D-05, 0.1171D-04, 0.1605D-04,
25126      #    0.2083D-04, 0.2562D-04, 0.3006D-04, 0.3388D-04, 0.3697D-04,
25127      #    0.3935D-04, 0.4112D-04, 0.4239D-04, 0.4329D-04, 0.4388D-04,
25128      #    0.4423D-04, 0.4434D-04, 0.4417D-04, 0.4362D-04, 0.4252D-04,
25129      #    0.4072D-04, 0.3808D-04, 0.3465D-04, 0.3062D-04, 0.2628D-04,
25130      #    0.2192D-04, 0.1777D-04, 0.1400D-04, 0.1074D-04, 0.8047D-05,
25131      #    0.5904D-05, 0.4255D-05, 0.3025D-05, 0.2126D-05, 0.1481D-05,
25132      #    0.1031D-05, 0.7015D-06, 0.4916D-06, 0.3266D-06, 0.2217D-06,
25133      #    0.1467D-06/
25134
25135       data (calcpts(j,42), j = 1,neta) /0.3100D-13, 0.5513D-13,
25136      #    0.9799D-13, 0.1743D-12, 0.3100D-12, 0.5512D-12, 0.9801D-12,
25137      #    0.1743D-11, 0.3098D-11, 0.5511D-11, 0.9802D-11, 0.1743D-10,
25138      #    0.3099D-10, 0.5512D-10, 0.9795D-10, 0.1742D-09, 0.3098D-09,
25139      #    0.5506D-09, 0.9787D-09, 0.1740D-08, 0.3089D-08, 0.5485D-08,
25140      #    0.9735D-08, 0.1725D-07, 0.3054D-07, 0.5394D-07, 0.9490D-07,
25141      #    0.1663D-06, 0.2896D-06, 0.4993D-06, 0.8496D-06, 0.1420D-05,
25142      #    0.2313D-05, 0.3650D-05, 0.5533D-05, 0.7995D-05, 0.1096D-04,
25143      #    0.1422D-04, 0.1749D-04, 0.2052D-04, 0.2313D-04, 0.2524D-04,
25144      #    0.2686D-04, 0.2807D-04, 0.2895D-04, 0.2957D-04, 0.2999D-04,
25145      #    0.3026D-04, 0.3040D-04, 0.3041D-04, 0.3025D-04, 0.2984D-04,
25146      #    0.2907D-04, 0.2782D-04, 0.2601D-04, 0.2366D-04, 0.2091D-04,
25147      #    0.1794D-04, 0.1497D-04, 0.1213D-04, 0.9555D-05, 0.7337D-05,
25148      #    0.5493D-05, 0.4024D-05, 0.2899D-05, 0.2059D-05, 0.1460D-05,
25149      #    0.1010D-05, 0.7099D-06, 0.4850D-06, 0.3350D-06, 0.2300D-06,
25150      #    0.1551D-06/
25151
25152       data (calcpts(j,43), j = 1,neta) /0.2115D-13, 0.3761D-13,
25153      #    0.6685D-13, 0.1189D-12, 0.2115D-12, 0.3761D-12, 0.6687D-12,
25154      #    0.1189D-11, 0.2114D-11, 0.3760D-11, 0.6688D-11, 0.1189D-10,
25155      #    0.2114D-10, 0.3760D-10, 0.6683D-10, 0.1188D-09, 0.2113D-09,
25156      #    0.3757D-09, 0.6677D-09, 0.1187D-08, 0.2107D-08, 0.3742D-08,
25157      #    0.6642D-08, 0.1177D-07, 0.2083D-07, 0.3680D-07, 0.6475D-07,
25158      #    0.1135D-06, 0.1976D-06, 0.3407D-06, 0.5796D-06, 0.9685D-06,
25159      #    0.1578D-05, 0.2490D-05, 0.3775D-05, 0.5455D-05, 0.7477D-05,
25160      #    0.9701D-05, 0.1193D-04, 0.1400D-04, 0.1578D-04, 0.1722D-04,
25161      #    0.1833D-04, 0.1916D-04, 0.1975D-04, 0.2018D-04, 0.2047D-04,
25162      #    0.2067D-04, 0.2079D-04, 0.2084D-04, 0.2082D-04, 0.2068D-04,
25163      #    0.2039D-04, 0.1985D-04, 0.1899D-04, 0.1775D-04, 0.1614D-04,
25164      #    0.1426D-04, 0.1224D-04, 0.1021D-04, 0.8272D-05, 0.6518D-05,
25165      #    0.5005D-05, 0.3746D-05, 0.2741D-05, 0.1976D-05, 0.1406D-05,
25166      #    0.9865D-06, 0.6866D-06, 0.4766D-06, 0.3267D-06, 0.2217D-06,
25167      #    0.1617D-06/
25168
25169       data (calcpts(j,44), j = 1,neta) /0.1442D-13, 0.2565D-13,
25170      #    0.4559D-13, 0.8108D-13, 0.1442D-12, 0.2564D-12, 0.4560D-12,
25171      #    0.8110D-12, 0.1441D-11, 0.2564D-11, 0.4560D-11, 0.8108D-11,
25172      #    0.1442D-10, 0.2564D-10, 0.4557D-10, 0.8104D-10, 0.1441D-09,
25173      #    0.2562D-09, 0.4553D-09, 0.8093D-09, 0.1437D-08, 0.2552D-08,
25174      #    0.4529D-08, 0.8027D-08, 0.1421D-07, 0.2509D-07, 0.4415D-07,
25175      #    0.7738D-07, 0.1347D-06, 0.2323D-06, 0.3952D-06, 0.6604D-06,
25176      #    0.1076D-05, 0.1698D-05, 0.2574D-05, 0.3720D-05, 0.5098D-05,
25177      #    0.6615D-05, 0.8138D-05, 0.9549D-05, 0.1076D-04, 0.1174D-04,
25178      #    0.1250D-04, 0.1306D-04, 0.1347D-04, 0.1376D-04, 0.1396D-04,
25179      #    0.1410D-04, 0.1419D-04, 0.1424D-04, 0.1426D-04, 0.1422D-04,
25180      #    0.1412D-04, 0.1391D-04, 0.1354D-04, 0.1295D-04, 0.1211D-04,
25181      #    0.1101D-04, 0.9725D-05, 0.8345D-05, 0.6957D-05, 0.5636D-05,
25182      #    0.4442D-05, 0.3407D-05, 0.2551D-05, 0.1870D-05, 0.1348D-05,
25183      #    0.9585D-06, 0.6736D-06, 0.4696D-06, 0.3241D-06, 0.2236D-06,
25184      #    0.1532D-06/
25185
25186       data (calcpts(j,45), j = 1,neta) /0.9834D-14, 0.1749D-13,
25187      #    0.3109D-13, 0.5530D-13, 0.9836D-13, 0.1749D-12, 0.3110D-12,
25188      #    0.5531D-12, 0.9831D-12, 0.1749D-11, 0.3110D-11, 0.5530D-11,
25189      #    0.9833D-11, 0.1749D-10, 0.3108D-10, 0.5527D-10, 0.9829D-10,
25190      #    0.1747D-09, 0.3105D-09, 0.5519D-09, 0.9800D-09, 0.1740D-08,
25191      #    0.3089D-08, 0.5474D-08, 0.9689D-08, 0.1711D-07, 0.3011D-07,
25192      #    0.5277D-07, 0.9189D-07, 0.1584D-06, 0.2696D-06, 0.4504D-06,
25193      #    0.7337D-06, 0.1158D-05, 0.1756D-05, 0.2537D-05, 0.3477D-05,
25194      #    0.4511D-05, 0.5550D-05, 0.6512D-05, 0.7339D-05, 0.8008D-05,
25195      #    0.8524D-05, 0.8909D-05, 0.9187D-05, 0.9385D-05, 0.9524D-05,
25196      #    0.9620D-05, 0.9684D-05, 0.9725D-05, 0.9746D-05, 0.9745D-05,
25197      #    0.9716D-05, 0.9642D-05, 0.9496D-05, 0.9241D-05, 0.8837D-05,
25198      #    0.8258D-05, 0.7509D-05, 0.6633D-05, 0.5691D-05, 0.4745D-05,
25199      #    0.3847D-05, 0.3031D-05, 0.2327D-05, 0.1743D-05, 0.1278D-05,
25200      #    0.9198D-06, 0.6558D-06, 0.4624D-06, 0.3229D-06, 0.2254D-06,
25201      #    0.1564D-06/
25202
25203       data (calcpts(j,46), j = 1,neta) /0.6703D-14, 0.1192D-13,
25204      #    0.2119D-13, 0.3769D-13, 0.6704D-13, 0.1192D-12, 0.2120D-12,
25205      #    0.3770D-12, 0.6701D-12, 0.1192D-11, 0.2120D-11, 0.3769D-11,
25206      #    0.6702D-11, 0.1192D-10, 0.2118D-10, 0.3767D-10, 0.6699D-10,
25207      #    0.1191D-09, 0.2116D-09, 0.3762D-09, 0.6679D-09, 0.1186D-08,
25208      #    0.2105D-08, 0.3731D-08, 0.6603D-08, 0.1166D-07, 0.2052D-07,
25209      #    0.3597D-07, 0.6263D-07, 0.1080D-06, 0.1837D-06, 0.3070D-06,
25210      #    0.5001D-06, 0.7893D-06, 0.1196D-05, 0.1729D-05, 0.2370D-05,
25211      #    0.3075D-05, 0.3783D-05, 0.4439D-05, 0.5002D-05, 0.5458D-05,
25212      #    0.5810D-05, 0.6072D-05, 0.6262D-05, 0.6397D-05, 0.6492D-05,
25213      #    0.6557D-05, 0.6602D-05, 0.6632D-05, 0.6650D-05, 0.6657D-05,
25214      #    0.6652D-05, 0.6629D-05, 0.6576D-05, 0.6475D-05, 0.6300D-05,
25215      #    0.6024D-05, 0.5629D-05, 0.5117D-05, 0.4519D-05, 0.3879D-05,
25216      #    0.3234D-05, 0.2621D-05, 0.2066D-05, 0.1585D-05, 0.1187D-05,
25217      #    0.8707D-06, 0.6277D-06, 0.4462D-06, 0.3143D-06, 0.2198D-06,
25218      #    0.1523D-06/
25219
25220       data (calcpts(j,47), j = 1,neta) /0.4567D-14, 0.8124D-14,
25221      #    0.1444D-13, 0.2568D-13, 0.4568D-13, 0.8122D-13, 0.1444D-12,
25222      #    0.2569D-12, 0.4566D-12, 0.8121D-12, 0.1444D-11, 0.2568D-11,
25223      #    0.4567D-11, 0.8122D-11, 0.1443D-10, 0.2567D-10, 0.4565D-10,
25224      #    0.8114D-10, 0.1442D-09, 0.2563D-09, 0.4551D-09, 0.8083D-09,
25225      #    0.1435D-08, 0.2542D-08, 0.4500D-08, 0.7948D-08, 0.1398D-07,
25226      #    0.2451D-07, 0.4267D-07, 0.7358D-07, 0.1252D-06, 0.2092D-06,
25227      #    0.3408D-06, 0.5378D-06, 0.8153D-06, 0.1178D-05, 0.1615D-05,
25228      #    0.2095D-05, 0.2578D-05, 0.3025D-05, 0.3409D-05, 0.3719D-05,
25229      #    0.3959D-05, 0.4138D-05, 0.4267D-05, 0.4359D-05, 0.4424D-05,
25230      #    0.4468D-05, 0.4499D-05, 0.4520D-05, 0.4534D-05, 0.4541D-05,
25231      #    0.4543D-05, 0.4537D-05, 0.4520D-05, 0.4483D-05, 0.4413D-05,
25232      #    0.4294D-05, 0.4105D-05, 0.3835D-05, 0.3487D-05, 0.3080D-05,
25233      #    0.2643D-05, 0.2203D-05, 0.1785D-05, 0.1407D-05, 0.1078D-05,
25234      #    0.8084D-06, 0.5924D-06, 0.4274D-06, 0.3029D-06, 0.2129D-06,
25235      #    0.1484D-06/
25236
25237       data (calcpts(j,48), j = 1,neta) /0.3113D-14, 0.5537D-14,
25238      #    0.9840D-14, 0.1750D-13, 0.3113D-13, 0.5535D-13, 0.9843D-13,
25239      #    0.1751D-12, 0.3112D-12, 0.5534D-12, 0.9844D-12, 0.1750D-11,
25240      #    0.3112D-11, 0.5535D-11, 0.9837D-11, 0.1749D-10, 0.3111D-10,
25241      #    0.5530D-10, 0.9829D-10, 0.1747D-09, 0.3102D-09, 0.5509D-09,
25242      #    0.9777D-09, 0.1733D-08, 0.3067D-08, 0.5417D-08, 0.9531D-08,
25243      #    0.1670D-07, 0.2908D-07, 0.5014D-07, 0.8532D-07, 0.1426D-06,
25244      #    0.2322D-06, 0.3665D-06, 0.5557D-06, 0.8030D-06, 0.1101D-05,
25245      #    0.1428D-05, 0.1757D-05, 0.2061D-05, 0.2323D-05, 0.2535D-05,
25246      #    0.2698D-05, 0.2820D-05, 0.2908D-05, 0.2971D-05, 0.3015D-05,
25247      #    0.3045D-05, 0.3067D-05, 0.3081D-05, 0.3091D-05, 0.3097D-05,
25248      #    0.3100D-05, 0.3099D-05, 0.3094D-05, 0.3082D-05, 0.3056D-05,
25249      #    0.3009D-05, 0.2927D-05, 0.2798D-05, 0.2614D-05, 0.2377D-05,
25250      #    0.2099D-05, 0.1801D-05, 0.1502D-05, 0.1217D-05, 0.9587D-06,
25251      #    0.7353D-06, 0.5508D-06, 0.4038D-06, 0.2913D-06, 0.2073D-06,
25252      #    0.1458D-06/
25253
25254       data (calcpts(j,49), j = 1,neta) /0.2121D-14, 0.3773D-14,
25255      #    0.6706D-14, 0.1193D-13, 0.2121D-13, 0.3772D-13, 0.6708D-13,
25256      #    0.1193D-12, 0.2120D-12, 0.3771D-12, 0.6708D-12, 0.1193D-11,
25257      #    0.2121D-11, 0.3772D-11, 0.6703D-11, 0.1192D-10, 0.2120D-10,
25258      #    0.3768D-10, 0.6698D-10, 0.1190D-09, 0.2114D-09, 0.3754D-09,
25259      #    0.6662D-09, 0.1181D-08, 0.2090D-08, 0.3691D-08, 0.6495D-08,
25260      #    0.1138D-07, 0.1982D-07, 0.3417D-07, 0.5814D-07, 0.9715D-07,
25261      #    0.1583D-06, 0.2498D-06, 0.3786D-06, 0.5472D-06, 0.7499D-06,
25262      #    0.9731D-06, 0.1197D-05, 0.1405D-05, 0.1583D-05, 0.1727D-05,
25263      #    0.1839D-05, 0.1921D-05, 0.1982D-05, 0.2024D-05, 0.2054D-05,
25264      #    0.2075D-05, 0.2090D-05, 0.2100D-05, 0.2106D-05, 0.2111D-05,
25265      #    0.2113D-05, 0.2114D-05, 0.2113D-05, 0.2110D-05, 0.2101D-05,
25266      #    0.2083D-05, 0.2050D-05, 0.1994D-05, 0.1907D-05, 0.1781D-05,
25267      #    0.1620D-05, 0.1430D-05, 0.1227D-05, 0.1023D-05, 0.8291D-06,
25268      #    0.6532D-06, 0.5011D-06, 0.3751D-06, 0.2746D-06, 0.1981D-06,
25269      #    0.1411D-06/
25270
25271       data (dlaeta(j), j = 1,neta) /
25272      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
25273      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
25274      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
25275      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
25276      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
25277      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
25278      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
25279      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
25280      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
25281      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
25282      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
25283      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
25284      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
25285      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
25286      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
25287
25288       data (dlaxi(j), j = 1,nxi) /
25289      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
25290      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
25291      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
25292      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
25293      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
25294      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
25295      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
25296      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
25297      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
25298      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
25299
25300       dleta = dlog10(eta)
25301       dlxi = dlog10(xi)
25302       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
25303       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
25304       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
25305       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
25306       call locate(dlaeta,neta, dleta, ieta)
25307       call locate(dlaxi, nxi, dlxi, ixi)
25308 c     interpolating between the appropriate points
25309       delxi = 1d0/6d0
25310       deleta = 1d0/6d0
25311 c  lagrange 3-pt.
25312       if (ixi .le. 2) ixi = 2
25313       if (ixi .ge. 48) ixi = 48
25314       if (ieta .le. 2) ieta = 2
25315       if (ieta .ge. 72) ieta = 72
25316       pxi = (dlxi - dlaxi(ixi))/delxi
25317       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
25318      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
25319      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
25320       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
25321      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
25322      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
25323       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
25324      #        (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
25325      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
25326       peta = (dleta - dlaeta(ieta))/deleta
25327       h1bar_HLq = peta*(peta-1d0)/2d0*f(-1) +
25328      #     (1d0 - peta**2)*f(0) +
25329 CMB  #     + peta*(peta+1d0)/2d0*f(1)
25330      #     peta*(peta+1d0)/2d0*f(1)
25331       return
25332       end
25333
25334 c     =========================================
25335       double precision function h1f_LLq(eta,xi)
25336 c     =========================================
25337
25338 c     eq (28) in PLB347 (1995) 143 - 151 for the longitudinal piece
25339 c     This also takes into account the additional mass factorizations
25340 c     necessary from a low Q^2 photon coupling to the light quark.
25341 c     MSbar scheme
25342 c     This routine is called subd1lqf in the original code.
25343 c     Gives h1_LLq for Q2 < 1.5 GeV2 (use h1_LLq for Q2 > 1.5 GeV2).
25344
25345       implicit none
25346       integer neta, nxi
25347       parameter (neta = 45, nxi = 15)
25348       double precision calcpts(neta,nxi), aeta(neta), axi(nxi)
25349       double precision eta, xi, huge, small
25350       double precision t, u, y1, y2, y3, y4
25351       parameter (small = 1.d-8, huge = 1.d10)
25352       integer j, ieta, ixi
25353
25354       data (calcpts(j, 1), j=1,neta) /0.d0, -.4776D-09, -.6020D-08,
25355      #  -.1815D-07, -.3618D-07, -.5922D-07, -.7236D-07, -.4052D-06,
25356      #  -.5175D-06, -.9498D-07, 0.1024D-05, 0.1868D-05, 0.2083D-04,
25357      #  0.5522D-04, 0.9831D-04, 0.1448D-03, 0.1913D-03, 0.2357D-03,
25358      #  0.2769D-03, 0.3144D-03, 0.3480D-03, 0.5190D-03, 0.5396D-03,
25359      #  0.5166D-03, 0.4819D-03, 0.4467D-03, 0.4138D-03, 0.3843D-03,
25360      #  0.3581D-03, 0.3348D-03, 0.1415D-03, 0.8921D-04, 0.6507D-04,
25361      #  0.5126D-04, 0.4629D-04, 0.2359D-04, 0.1582D-04, 0.9541D-05,
25362      #  0.6834D-05, 0.5321D-05, 0.4785D-05, 0.9609D-06, 0.4809D-06,
25363      #  0.4800D-07, 0.d0/
25364 c
25365       data (calcpts(j, 2), j=1,neta) /0.d0, -.3228D-09, -.4385D-08,
25366      #  -.1380D-07, -.2816D-07, -.4656D-07, -.5691D-07, -.1957D-06,
25367      #  0.4271D-06, 0.2429D-05, 0.6145D-05, 0.8706D-05, 0.5987D-04,
25368      #  0.1485D-03, 0.2585D-03, 0.3771D-03, 0.4953D-03, 0.6087D-03,
25369      #  0.7136D-03, 0.8094D-03, 0.8954D-03, 0.1336D-02, 0.1391D-02,
25370      #  0.1332D-02, 0.1244D-02, 0.1153D-02, 0.1069D-02, 0.9933D-03,
25371      #  0.9254D-03, 0.8649D-03, 0.3657D-03, 0.2305D-03, 0.1682D-03,
25372      #  0.1325D-03, 0.1197D-03, 0.6099D-04, 0.4089D-04, 0.2469D-04,
25373      #  0.1765D-04, 0.1375D-04, 0.1239D-04, 0.2480D-05, 0.1242D-05,
25374      #  0.1244D-06, 0.d0/
25375 c
25376       data (calcpts(j, 3), j=1,neta) /0.d0, -.7553D-10, -.9480D-09,
25377      #  -.2635D-08, -.4464D-08, -.5487D-08, -.5352D-08, 0.3277D-06,
25378      #  0.2037D-05, 0.5960D-05, 0.1261D-04, 0.1707D-04, 0.1039D-03,
25379      #  0.2553D-03, 0.4464D-03, 0.6548D-03, 0.8652D-03, 0.1068D-02,
25380      #  0.1259D-02, 0.1434D-02, 0.1592D-02, 0.2423D-02, 0.2543D-02,
25381      #  0.2445D-02, 0.2289D-02, 0.2125D-02, 0.1971D-02, 0.1832D-02,
25382      #  0.1707D-02, 0.1598D-02, 0.6758D-03, 0.4258D-03, 0.3108D-03,
25383      #  0.2446D-03, 0.2209D-03, 0.1126D-03, 0.7551D-04, 0.4554D-04,
25384      #  0.3260D-04, 0.2538D-04, 0.2284D-04, 0.4588D-05, 0.2292D-05,
25385      #  0.2292D-06, 0.d0/
25386 c
25387       data (calcpts(j, 4), j=1,neta) /0.d0, 0.1486D-11, 0.9642D-10,
25388      #  0.6003D-09, 0.1963D-08, 0.4715D-08, 0.6797D-08, 0.2807D-06,
25389      #  0.1468D-05, 0.4193D-05, 0.8945D-05, 0.1219D-04, 0.8137D-04,
25390      #  0.2145D-03, 0.3941D-03, 0.6006D-03, 0.8178D-03, 0.1034D-02,
25391      #  0.1243D-02, 0.1439D-02, 0.1620D-02, 0.2652D-02, 0.2861D-02,
25392      #  0.2787D-02, 0.2627D-02, 0.2448D-02, 0.2279D-02, 0.2121D-02,
25393      #  0.1980D-02, 0.1854D-02, 0.7854D-03, 0.4940D-03, 0.3602D-03,
25394      #  0.2834D-03, 0.2559D-03, 0.1302D-03, 0.8738D-04, 0.5263D-04,
25395      #  0.3765D-04, 0.2933D-04, 0.2638D-04, 0.5286D-05, 0.2649D-05,
25396      #  0.2645D-06, 0.d0/
25397 c
25398       data (calcpts(j, 5), j=1,neta) /0.d0, 0.7637D-12, 0.3540D-10,
25399      #  0.2097D-09, 0.6749D-09, 0.1613D-08, 0.2322D-08, 0.9969D-07,
25400      #  0.5478D-06, 0.1638D-05, 0.3644D-05, 0.5064D-05, 0.3938D-04,
25401      #  0.1154D-03, 0.2295D-03, 0.3726D-03, 0.5337D-03, 0.7044D-03,
25402      #  0.8778D-03, 0.1048D-02, 0.1212D-02, 0.2309D-02, 0.2654D-02,
25403      #  0.2671D-02, 0.2570D-02, 0.2426D-02, 0.2276D-02, 0.2130D-02,
25404      #  0.1998D-02, 0.1876D-02, 0.8007D-03, 0.5025D-03, 0.3653D-03,
25405      #  0.2870D-03, 0.2591D-03, 0.1314D-03, 0.8796D-04, 0.5287D-04,
25406      #  0.3783D-04, 0.2940D-04, 0.2647D-04, 0.5306D-05, 0.2651D-05,
25407      #  0.2651D-06, 0.d0/
25408 c
25409       data (calcpts(j, 6), j=1,neta) /0.d0, 0.3057D-12, 0.1420D-10,
25410      #  0.8435D-10, 0.2719D-09, 0.6511D-09, 0.9384D-09, 0.4110D-07,
25411      #  0.2302D-06, 0.7017D-06, 0.1588D-05, 0.2228D-05, 0.1869D-04,
25412      #  0.5837D-04, 0.1227D-03, 0.2088D-03, 0.3120D-03, 0.4274D-03,
25413      #  0.5504D-03, 0.6773D-03, 0.8046D-03, 0.1824D-02, 0.2286D-02,
25414      #  0.2424D-02, 0.2408D-02, 0.2325D-02, 0.2216D-02, 0.2100D-02,
25415      #  0.1985D-02, 0.1876D-02, 0.8223D-03, 0.5151D-03, 0.3734D-03,
25416      #  0.2925D-03, 0.2639D-03, 0.1329D-03, 0.8870D-04, 0.5322D-04,
25417      #  0.3800D-04, 0.2958D-04, 0.2661D-04, 0.5309D-05, 0.2655D-05,
25418      #  0.2652D-06, 0.d0/
25419 c
25420       data (calcpts(j, 7), j=1,neta) /0.d0, 0.2418D-12, 0.1123D-10,
25421      #  0.6674D-10, 0.2154D-09, 0.5155D-09, 0.7433D-09, 0.3266D-07,
25422      #  0.1835D-06, 0.5605D-06, 0.1272D-05, 0.1787D-05, 0.1518D-04,
25423      #  0.4799D-04, 0.1020D-03, 0.1754D-03, 0.2644D-03, 0.3654D-03,
25424      #  0.4742D-03, 0.5879D-03, 0.7031D-03, 0.1673D-02, 0.2155D-02,
25425      #  0.2326D-02, 0.2337D-02, 0.2276D-02, 0.2183D-02, 0.2078D-02,
25426      #  0.1971D-02, 0.1869D-02, 0.8293D-03, 0.5196D-03, 0.3765D-03,
25427      #  0.2948D-03, 0.2657D-03, 0.1336D-03, 0.8898D-04, 0.5337D-04,
25428      #  0.3807D-04, 0.2961D-04, 0.2664D-04, 0.5312D-05, 0.2655D-05,
25429      #  0.2654D-06, 0.d0/
25430 c
25431       data (calcpts(j, 8), j=1,neta) /0.d0, 0.1019D-12, 0.4742D-11,
25432      #  0.2817D-10, 0.9098D-10, 0.2179D-09, 0.3144D-09, 0.1390D-07,
25433      #  0.7859D-07, 0.2416D-06, 0.5520D-06, 0.7771D-06, 0.6819D-05,
25434      #  0.2222D-04, 0.4859D-04, 0.8589D-04, 0.1330D-03, 0.1882D-03,
25435      #  0.2503D-03, 0.3175D-03, 0.3882D-03, 0.1095D-02, 0.1577D-02,
25436      #  0.1835D-02, 0.1947D-02, 0.1976D-02, 0.1955D-02, 0.1908D-02,
25437      #  0.1847D-02, 0.1779D-02, 0.8622D-03, 0.5429D-03, 0.3925D-03,
25438      #  0.3067D-03, 0.2760D-03, 0.1374D-03, 0.9090D-04, 0.5416D-04,
25439      #  0.3855D-04, 0.2988D-04, 0.2687D-04, 0.5327D-05, 0.2658D-05,
25440      #  0.2655D-06, 0.d0/
25441 c
25442       data (calcpts(j, 9), j=1,neta) /0.d0, 0.7647D-13, 0.3556D-11,
25443      #  0.2113D-10, 0.6827D-10, 0.1635D-09, 0.2358D-09, 0.1045D-07,
25444      #  0.5912D-07, 0.1821D-06, 0.4163D-06, 0.5868D-06, 0.5177D-05,
25445      #  0.1697D-04, 0.3735D-04, 0.6637D-04, 0.1034D-03, 0.1474D-03,
25446      #  0.1971D-03, 0.2514D-03, 0.3091D-03, 0.9150D-03, 0.1365D-02,
25447      #  0.1635D-02, 0.1773D-02, 0.1829D-02, 0.1836D-02, 0.1811D-02,
25448      #  0.1769D-02, 0.1716D-02, 0.8732D-03, 0.5532D-03, 0.4004D-03,
25449      #  0.3122D-03, 0.2813D-03, 0.1392D-03, 0.9206D-04, 0.5460D-04,
25450      #  0.3876D-04, 0.3009D-04, 0.2702D-04, 0.5337D-05, 0.2666D-05,
25451      #  0.2654D-06, 0.d0/
25452 c
25453       data (calcpts(j,10), j=1,neta) /0.d0, 0.2420D-13, 0.1125D-11,
25454      #  0.6694D-11, 0.2160D-10, 0.5178D-10, 0.7469D-10, 0.3315D-08,
25455      #  0.1881D-07, 0.5808D-07, 0.1332D-06, 0.1879D-06, 0.1680D-05,
25456      #  0.5582D-05, 0.1245D-04, 0.2245D-04, 0.3549D-04, 0.5128D-04,
25457      #  0.6956D-04, 0.8996D-04, 0.1122D-03, 0.3801D-03, 0.6375D-03,
25458      #  0.8418D-03, 0.9927D-03, 0.1100D-02, 0.1172D-02, 0.1219D-02,
25459      #  0.1246D-02, 0.1259D-02, 0.8760D-03, 0.5937D-03, 0.4388D-03,
25460      #  0.3447D-03, 0.3107D-03, 0.1521D-03, 0.9921D-04, 0.5789D-04,
25461      #  0.4068D-04, 0.3131D-04, 0.2807D-04, 0.5393D-05, 0.2676D-05,
25462      #  0.2657D-06, 0.d0/
25463 c
25464       data (calcpts(j,11), j=1,neta) /0.d0, 0.7649D-14, 0.3559D-12,
25465      #  0.2115D-11, 0.6834D-11, 0.1638D-10, 0.2363D-10, 0.1050D-08,
25466      #  0.5961D-08, 0.1842D-07, 0.4226D-07, 0.5963D-07, 0.5356D-06,
25467      #  0.1787D-05, 0.4008D-05, 0.7258D-05, 0.1153D-04, 0.1675D-04,
25468      #  0.2284D-04, 0.2971D-04, 0.3726D-04, 0.1337D-03, 0.2379D-03,
25469      #  0.3324D-03, 0.4140D-03, 0.4825D-03, 0.5399D-03, 0.5868D-03,
25470      #  0.6257D-03, 0.6576D-03, 0.7086D-03, 0.5671D-03, 0.4546D-03,
25471      #  0.3732D-03, 0.3411D-03, 0.1752D-03, 0.1142D-03, 0.6549D-04,
25472      #  0.4530D-04, 0.3443D-04, 0.3069D-04, 0.5568D-05, 0.2727D-05,
25473      #  0.2662D-06, 0.d0/
25474 c
25475       data (calcpts(j,12), j=1,neta) /0.d0, 0.2418D-14, 0.1125D-12,
25476      #  0.6692D-12, 0.2161D-11, 0.5181D-11, 0.7473D-11, 0.3320D-09,
25477      #  0.1887D-08, 0.5829D-08, 0.1338D-07, 0.1889D-07, 0.1698D-06,
25478      #  0.5675D-06, 0.1274D-05, 0.2312D-05, 0.3679D-05, 0.5354D-05,
25479      #  0.7313D-05, 0.9531D-05, 0.1198D-04, 0.4386D-04, 0.7982D-04,
25480      #  0.1143D-03, 0.1456D-03, 0.1738D-03, 0.1991D-03, 0.2216D-03,
25481      #  0.2415D-03, 0.2595D-03, 0.3963D-03, 0.3921D-03, 0.3609D-03,
25482      #  0.3261D-03, 0.3095D-03, 0.1923D-03, 0.1333D-03, 0.7890D-04,
25483      #  0.5455D-04, 0.4114D-04, 0.3653D-04, 0.6024D-05, 0.2865D-05,
25484      #  0.2682D-06, 0.d0/
25485 c
25486       data (calcpts(j,13), j=1,neta) /0.d0, 0.7684D-15, 0.3558D-13,
25487      #  0.2117D-12, 0.6833D-12, 0.1638D-11, 0.2362D-11, 0.1050D-09,
25488      #  0.5965D-09, 0.1844D-08, 0.4233D-08, 0.5975D-08, 0.5375D-07,
25489      #  0.1797D-06, 0.4038D-06, 0.7329D-06, 0.1166D-05, 0.1700D-05,
25490      #  0.2322D-05, 0.3029D-05, 0.3806D-05, 0.1403D-04, 0.2573D-04,
25491      #  0.3713D-04, 0.4772D-04, 0.5745D-04, 0.6639D-04, 0.7458D-04,
25492      #  0.8210D-04, 0.8896D-04, 0.1616D-03, 0.1850D-03, 0.1919D-03,
25493      #  0.1917D-03, 0.1901D-03, 0.1583D-03, 0.1280D-03, 0.8802D-04,
25494      #  0.6498D-04, 0.5058D-04, 0.4533D-04, 0.7158D-05, 0.3225D-05,
25495      #  0.2742D-06, 0.d0/
25496 c
25497       data (calcpts(j,14), j=1,neta) /0.d0, 0.1468D-15, 0.7101D-14,
25498      #  0.4230D-13, 0.1367D-12, 0.3276D-12, 0.4727D-12, 0.2100D-10,
25499      #  0.1194D-09, 0.3687D-09, 0.8462D-09, 0.1195D-08, 0.1075D-07,
25500      #  0.3596D-07, 0.8079D-07, 0.1467D-06, 0.2335D-06, 0.3402D-06,
25501      #  0.4652D-06, 0.6066D-06, 0.7628D-06, 0.2819D-05, 0.5184D-05,
25502      #  0.7505D-05, 0.9676D-05, 0.1169D-04, 0.1356D-04, 0.1527D-04,
25503      #  0.1688D-04, 0.1836D-04, 0.3604D-04, 0.4455D-04, 0.4976D-04,
25504      #  0.5326D-04, 0.5457D-04, 0.6029D-04, 0.6027D-04, 0.5579D-04,
25505      #  0.5019D-04, 0.4495D-04, 0.4254D-04, 0.1047D-04, 0.4619D-05,
25506      #  0.3043D-06, 0.d0/
25507 c
25508       data (calcpts(j,15), j=1,neta) /0.d0, 0.8083D-16, 0.3549D-14,
25509      #  0.2130D-13, 0.6840D-13, 0.1637D-12, 0.2361D-12, 0.1050D-10,
25510      #  0.5967D-10, 0.1844D-09, 0.4233D-09, 0.5976D-09, 0.5376D-08,
25511      #  0.1799D-07, 0.4040D-07, 0.7337D-07, 0.1168D-06, 0.1701D-06,
25512      #  0.2325D-06, 0.3033D-06, 0.3815D-06, 0.1410D-05, 0.2595D-05,
25513      #  0.3756D-05, 0.4847D-05, 0.5861D-05, 0.6792D-05, 0.7664D-05,
25514      #  0.8469D-05, 0.9219D-05, 0.1827D-04, 0.2285D-04, 0.2580D-04,
25515      #  0.2793D-04, 0.2877D-04, 0.3348D-04, 0.3515D-04, 0.3546D-04,
25516      #  0.3425D-04, 0.3258D-04, 0.3168D-04, 0.1158D-04, 0.5529D-05,
25517      #  0.3374D-06, 0.d0/
25518 c
25519       data (aeta(j), j = 1,neta) /small, 0.1000d-02, 0.3000d-02,
25520      #  0.5000d-02, 0.7000d-02, 0.9000d-02, 0.1000d-01, 0.3000d-01, 
25521      #  0.5000d-01, 0.7000d-01, 0.9000d-01, 0.1000d+00, 0.2000d+00, 
25522      #  0.3000d+00, 0.4000d+00, 0.5000d+00, 0.6000d+00, 0.7000d+00, 
25523      #  0.8000d+00, 0.9000d+00, 0.1000d+01, 0.2000d+01, 0.3000d+01,
25524      #  0.4000d+01, 0.5000d+01, 0.6000d+01, 0.7000d+01, 0.8000d+01, 
25525      #  0.9000d+01, 0.1000d+02, 0.3000d+02, 0.5000d+02, 0.7000d+02,
25526      #  0.9000d+02, 0.1000d+03, 0.2000d+03, 0.3000d+03, 0.5000d+03,
25527      #  0.7000d+03, 0.9000d+03, 0.1000d+04, 0.5000d+04, 0.1000d+05,
25528      #  0.1000d+06, huge/
25529 c
25530       data (axi(j), j = 1,nxi) /0.1000d-01, 0.3162d-01, 0.1000d+00,
25531      #  0.3162d+00, 0.1000d+01, 0.2500d+01, 0.3162d+01, 0.7500d+01, 
25532      #  0.1000d+02, 0.3162d+02, 0.1000d+03, 0.3162d+03, 0.1000d+04,
25533      #  0.5000d+04, 0.1000d+05/
25534 c
25535 c  here we have to choose the array elements that will go into the 
25536 c  interpolation.
25537       call locate(aeta, neta, eta, ieta)
25538       call locate(axi, nxi, xi, ixi)
25539       if (ieta .le. 1) ieta = 1
25540       if (ieta .gt. (neta - 1)) ieta = neta - 1
25541       if (ixi .le. 1) ixi = 1
25542       if (ixi .gt. (nxi - 1)) ixi = nxi - 1
25543       y1 = calcpts(ieta,ixi)
25544       y2 = calcpts(ieta+1,ixi)
25545       y3 = calcpts(ieta+1,ixi+1)
25546       y4 = calcpts(ieta,ixi+1)
25547 c interpolating between the points
25548       t = (eta - aeta(ieta))/(aeta(ieta + 1) - aeta(ieta))
25549       u = (xi - axi(ixi))/(axi(ixi + 1) - axi(ixi))
25550       h1f_LLq = (1.d0 - t)*(1.d0 - u)*y1 + t*(1.d0 - u)*y2 +
25551      #           t*u*y3 + (1.d0 - t)*u*y4
25552
25553       return
25554       end
25555
25556 c     ========================================
25557       double precision function h1_LLq(eta,xi)
25558 c     ========================================
25559
25560 c     eq (28) in PLB347 (1995) 143 - 151 for the longitudinal piece
25561 c     MSbar scheme
25562 c     This routine is called subd1lq in the original code.
25563 c     Gives h1_LLq for Q2 > 1.5 GeV2 (use h1f_LLq for Q2 < 1.5 GeV2).
25564 c     Called sclql in updated code (03/06/96).
25565
25566       implicit none
25567       integer neta, nxi
25568       parameter (neta = 73, nxi = 49)
25569       double precision calcpts(neta, nxi), dlaeta(neta), dlaxi(nxi)
25570       double precision eta, xi, dleta, dlxi
25571       double precision pxi, peta, f(-1:1), delxi, deleta
25572       integer j, ieta, ixi
25573
25574       data (calcpts(j, 1), j = 1,neta) /0.2423D-19, 0.9273D-19,
25575      #    0.3548D-18, 0.1357D-17, 0.5186D-17, 0.1980D-16, 0.7542D-16,
25576      #    0.2866D-15, 0.1085D-14, 0.4089D-14, 0.1530D-13, 0.5665D-13,
25577      #    0.2072D-12, 0.7446D-12, 0.2620D-11, 0.8998D-11, 0.3005D-10,
25578      #    0.9740D-10, 0.3063D-09, 0.9353D-09, 0.2775D-08, 0.8042D-08,
25579      #    0.2279D-07, 0.6327D-07, 0.1727D-06, 0.4629D-06, 0.1221D-05,
25580      #    0.3162D-05, 0.8022D-05, 0.1983D-04, 0.4740D-04, 0.1084D-03,
25581      #    0.2341D-03, 0.4692D-03, 0.8571D-03, 0.1404D-02, 0.2035D-02,
25582      #    0.2598D-02, 0.2933D-02, 0.2958D-02, 0.2711D-02, 0.2297D-02,
25583      #    0.1833D-02, 0.1397D-02, 0.1031D-02, 0.7420D-03, 0.5253D-03,
25584      #    0.3675D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8283D-04,
25585      #    0.5665D-04, 0.3870D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25586      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25587      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25588      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25589      #    0.2652D-07/
25590
25591       data (calcpts(j, 2), j = 1,neta) /0.1652D-19, 0.6323D-19,
25592      #    0.2421D-18, 0.9263D-18, 0.3541D-17, 0.1354D-16, 0.5166D-16,
25593      #    0.1968D-15, 0.7482D-15, 0.2834D-14, 0.1067D-13, 0.3993D-13,
25594      #    0.1479D-12, 0.5406D-12, 0.1944D-11, 0.6840D-11, 0.2347D-10,
25595      #    0.7839D-10, 0.2540D-09, 0.7985D-09, 0.2433D-08, 0.7222D-08,
25596      #    0.2090D-07, 0.5907D-07, 0.1635D-06, 0.4438D-06, 0.1182D-05,
25597      #    0.3085D-05, 0.7875D-05, 0.1956D-04, 0.4694D-04, 0.1077D-03,
25598      #    0.2329D-03, 0.4676D-03, 0.8553D-03, 0.1402D-02, 0.2034D-02,
25599      #    0.2598D-02, 0.2933D-02, 0.2958D-02, 0.2711D-02, 0.2297D-02,
25600      #    0.1833D-02, 0.1397D-02, 0.1031D-02, 0.7420D-03, 0.5253D-03,
25601      #    0.3675D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8283D-04,
25602      #    0.5665D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25603      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25604      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25605      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25606      #    0.2652D-07/
25607
25608       data (calcpts(j, 3), j = 1,neta) /0.1125D-19, 0.4310D-19,
25609      #    0.1650D-18, 0.6318D-18, 0.2418D-17, 0.9246D-17, 0.3534D-16,
25610      #    0.1349D-15, 0.5139D-15, 0.1953D-14, 0.7395D-14, 0.2786D-13,
25611      #    0.1042D-12, 0.3859D-12, 0.1411D-11, 0.5072D-11, 0.1785D-10,
25612      #    0.6126D-10, 0.2045D-09, 0.6621D-09, 0.2081D-08, 0.6333D-08,
25613      #    0.1876D-07, 0.5418D-07, 0.1527D-06, 0.4206D-06, 0.1134D-05,
25614      #    0.2988D-05, 0.7687D-05, 0.1922D-04, 0.4632D-04, 0.1066D-03,
25615      #    0.2314D-03, 0.4655D-03, 0.8527D-03, 0.1399D-02, 0.2031D-02,
25616      #    0.2597D-02, 0.2931D-02, 0.2958D-02, 0.2711D-02, 0.2298D-02,
25617      #    0.1833D-02, 0.1398D-02, 0.1031D-02, 0.7420D-03, 0.5253D-03,
25618      #    0.3675D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8283D-04,
25619      #    0.5665D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25620      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25621      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25622      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25623      #    0.2652D-07/
25624
25625       data (calcpts(j, 4), j = 1,neta) /0.7668D-20, 0.2937D-19,
25626      #    0.1125D-18, 0.4308D-18, 0.1648D-17, 0.6311D-17, 0.2413D-16,
25627      #    0.9224D-16, 0.3521D-15, 0.1341D-14, 0.5097D-14, 0.1931D-13,
25628      #    0.7272D-13, 0.2720D-12, 0.1007D-11, 0.3683D-11, 0.1323D-10,
25629      #    0.4656D-10, 0.1597D-09, 0.5330D-09, 0.1725D-08, 0.5406D-08,
25630      #    0.1646D-07, 0.4866D-07, 0.1400D-06, 0.3927D-06, 0.1074D-05,
25631      #    0.2866D-05, 0.7448D-05, 0.1877D-04, 0.4551D-04, 0.1053D-03,
25632      #    0.2294D-03, 0.4626D-03, 0.8493D-03, 0.1396D-02, 0.2028D-02,
25633      #    0.2595D-02, 0.2931D-02, 0.2957D-02, 0.2711D-02, 0.2298D-02,
25634      #    0.1833D-02, 0.1398D-02, 0.1031D-02, 0.7422D-03, 0.5255D-03,
25635      #    0.3675D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8283D-04,
25636      #    0.5665D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25637      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25638      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25639      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25640      #    0.2652D-07/
25641
25642       data (calcpts(j, 5), j = 1,neta) /0.5226D-20, 0.2001D-19,
25643      #    0.7668D-19, 0.2937D-18, 0.1124D-17, 0.4305D-17, 0.1647D-16,
25644      #    0.6300D-16, 0.2408D-15, 0.9189D-15, 0.3501D-14, 0.1330D-13,
25645      #    0.5038D-13, 0.1897D-12, 0.7098D-12, 0.2630D-11, 0.9607D-11,
25646      #    0.3452D-10, 0.1214D-09, 0.4164D-09, 0.1388D-08, 0.4484D-08,
25647      #    0.1405D-07, 0.4267D-07, 0.1258D-06, 0.3603D-06, 0.1004D-05,
25648      #    0.2718D-05, 0.7148D-05, 0.1818D-04, 0.4446D-04, 0.1035D-03,
25649      #    0.2265D-03, 0.4587D-03, 0.8447D-03, 0.1391D-02, 0.2025D-02,
25650      #    0.2592D-02, 0.2930D-02, 0.2957D-02, 0.2711D-02, 0.2298D-02,
25651      #    0.1833D-02, 0.1398D-02, 0.1031D-02, 0.7422D-03, 0.5255D-03,
25652      #    0.3675D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8283D-04,
25653      #    0.5665D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25654      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25655      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25656      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25657      #    0.2652D-07/
25658
25659       data (calcpts(j, 6), j = 1,neta) /0.3561D-20, 0.1364D-19,
25660      #    0.5224D-19, 0.2001D-18, 0.7665D-18, 0.2936D-17, 0.1124D-16,
25661      #    0.4299D-16, 0.1644D-15, 0.6284D-15, 0.2399D-14, 0.9138D-14,
25662      #    0.3473D-13, 0.1315D-12, 0.4953D-12, 0.1853D-11, 0.6860D-11,
25663      #    0.2506D-10, 0.9003D-10, 0.3165D-09, 0.1085D-08, 0.3609D-08,
25664      #    0.1165D-07, 0.3644D-07, 0.1103D-06, 0.3237D-06, 0.9210D-06,
25665      #    0.2540D-05, 0.6779D-05, 0.1746D-04, 0.4312D-04, 0.1012D-03,
25666      #    0.2229D-03, 0.4536D-03, 0.8383D-03, 0.1385D-02, 0.2019D-02,
25667      #    0.2587D-02, 0.2927D-02, 0.2957D-02, 0.2711D-02, 0.2298D-02,
25668      #    0.1835D-02, 0.1398D-02, 0.1031D-02, 0.7424D-03, 0.5255D-03,
25669      #    0.3677D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8284D-04,
25670      #    0.5665D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25671      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25672      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25673      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25674      #    0.2652D-07/
25675
25676       data (calcpts(j, 7), j = 1,neta) /0.2426D-20, 0.9294D-20,
25677      #    0.3561D-19, 0.1364D-18, 0.5224D-18, 0.2001D-17, 0.7662D-17,
25678      #    0.2933D-16, 0.1122D-15, 0.4293D-15, 0.1640D-14, 0.6260D-14,
25679      #    0.2385D-13, 0.9065D-13, 0.3432D-12, 0.1293D-11, 0.4833D-11,
25680      #    0.1790D-10, 0.6537D-10, 0.2348D-09, 0.8247D-09, 0.2820D-08,
25681      #    0.9381D-08, 0.3023D-07, 0.9423D-07, 0.2841D-06, 0.8278D-06,
25682      #    0.2331D-05, 0.6338D-05, 0.1658D-04, 0.4145D-04, 0.9827D-04,
25683      #    0.2182D-03, 0.4468D-03, 0.8298D-03, 0.1376D-02, 0.2012D-02,
25684      #    0.2583D-02, 0.2925D-02, 0.2955D-02, 0.2711D-02, 0.2298D-02,
25685      #    0.1835D-02, 0.1398D-02, 0.1031D-02, 0.7425D-03, 0.5256D-03,
25686      #    0.3677D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8284D-04,
25687      #    0.5667D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25688      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25689      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25690      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25691      #    0.2652D-07/
25692
25693       data (calcpts(j, 8), j = 1,neta) /0.1653D-20, 0.6333D-20,
25694      #    0.2425D-19, 0.9294D-19, 0.3559D-18, 0.1364D-17, 0.5223D-17,
25695      #    0.2000D-16, 0.7656D-16, 0.2930D-15, 0.1120D-14, 0.4281D-14,
25696      #    0.1634D-13, 0.6225D-13, 0.2366D-12, 0.8955D-12, 0.3373D-11,
25697      #    0.1261D-10, 0.4666D-10, 0.1704D-09, 0.6116D-09, 0.2147D-08,
25698      #    0.7331D-08, 0.2433D-07, 0.7818D-07, 0.2427D-06, 0.7266D-06,
25699      #    0.2097D-05, 0.5823D-05, 0.1551D-04, 0.3938D-04, 0.9454D-04,
25700      #    0.2121D-03, 0.4378D-03, 0.8186D-03, 0.1363D-02, 0.2001D-02,
25701      #    0.2576D-02, 0.2921D-02, 0.2953D-02, 0.2711D-02, 0.2299D-02,
25702      #    0.1835D-02, 0.1399D-02, 0.1032D-02, 0.7426D-03, 0.5256D-03,
25703      #    0.3677D-03, 0.2550D-03, 0.1760D-03, 0.1209D-03, 0.8284D-04,
25704      #    0.5667D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25705      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25706      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25707      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25708      #    0.2652D-07/
25709
25710       data (calcpts(j, 9), j = 1,neta) /0.1126D-20, 0.4314D-20,
25711      #    0.1653D-19, 0.6333D-19, 0.2426D-18, 0.9293D-18, 0.3560D-17,
25712      #    0.1363D-16, 0.5220D-16, 0.1998D-15, 0.7647D-15, 0.2925D-14,
25713      #    0.1117D-13, 0.4264D-13, 0.1625D-12, 0.6173D-12, 0.2337D-11,
25714      #    0.8799D-11, 0.3289D-10, 0.1217D-09, 0.4440D-09, 0.1591D-08,
25715      #    0.5573D-08, 0.1902D-07, 0.6296D-07, 0.2013D-06, 0.6208D-06,
25716      #    0.1842D-05, 0.5241D-05, 0.1426D-04, 0.3689D-04, 0.8996D-04,
25717      #    0.2045D-03, 0.4264D-03, 0.8037D-03, 0.1347D-02, 0.1986D-02,
25718      #    0.2565D-02, 0.2915D-02, 0.2952D-02, 0.2711D-02, 0.2301D-02,
25719      #    0.1836D-02, 0.1400D-02, 0.1032D-02, 0.7430D-03, 0.5257D-03,
25720      #    0.3678D-03, 0.2552D-03, 0.1760D-03, 0.1209D-03, 0.8284D-04,
25721      #    0.5667D-04, 0.3871D-04, 0.2642D-04, 0.1803D-04, 0.1229D-04,
25722      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25723      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25724      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25725      #    0.2652D-07/
25726
25727       data (calcpts(j,10), j = 1,neta) /0.7672D-21, 0.2940D-20,
25728      #    0.1126D-19, 0.4314D-19, 0.1653D-18, 0.6333D-18, 0.2425D-17,
25729      #    0.9291D-17, 0.3558D-16, 0.1363D-15, 0.5216D-15, 0.1996D-14,
25730      #    0.7634D-14, 0.2916D-13, 0.1113D-12, 0.4239D-12, 0.1611D-11,
25731      #    0.6096D-11, 0.2295D-10, 0.8574D-10, 0.3171D-09, 0.1156D-08,
25732      #    0.4133D-08, 0.1446D-07, 0.4922D-07, 0.1622D-06, 0.5154D-06,
25733      #    0.1575D-05, 0.4605D-05, 0.1285D-04, 0.3396D-04, 0.8439D-04,
25734      #    0.1948D-03, 0.4119D-03, 0.7844D-03, 0.1326D-02, 0.1966D-02,
25735      #    0.2550D-02, 0.2907D-02, 0.2949D-02, 0.2712D-02, 0.2301D-02,
25736      #    0.1837D-02, 0.1401D-02, 0.1033D-02, 0.7432D-03, 0.5261D-03,
25737      #    0.3678D-03, 0.2552D-03, 0.1760D-03, 0.1209D-03, 0.8286D-04,
25738      #    0.5667D-04, 0.3871D-04, 0.2643D-04, 0.1803D-04, 0.1229D-04,
25739      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25740      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25741      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25742      #    0.2652D-07/
25743
25744       data (calcpts(j,11), j = 1,neta) /0.5227D-21, 0.2003D-20,
25745      #    0.7672D-20, 0.2940D-19, 0.1126D-18, 0.4314D-18, 0.1653D-17,
25746      #    0.6332D-17, 0.2426D-16, 0.9288D-16, 0.3557D-15, 0.1362D-14,
25747      #    0.5209D-14, 0.1992D-13, 0.7612D-13, 0.2904D-12, 0.1106D-11,
25748      #    0.4202D-11, 0.1590D-10, 0.5984D-10, 0.2234D-09, 0.8253D-09,
25749      #    0.3000D-08, 0.1072D-07, 0.3741D-07, 0.1268D-06, 0.4154D-06,
25750      #    0.1308D-05, 0.3941D-05, 0.1130D-04, 0.3065D-04, 0.7785D-04,
25751      #    0.1832D-03, 0.3936D-03, 0.7596D-03, 0.1297D-02, 0.1939D-02,
25752      #    0.2531D-02, 0.2897D-02, 0.2946D-02, 0.2711D-02, 0.2302D-02,
25753      #    0.1839D-02, 0.1402D-02, 0.1033D-02, 0.7437D-03, 0.5263D-03,
25754      #    0.3680D-03, 0.2553D-03, 0.1761D-03, 0.1209D-03, 0.8288D-04,
25755      #    0.5669D-04, 0.3871D-04, 0.2643D-04, 0.1803D-04, 0.1229D-04,
25756      #    0.8378D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25757      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3893D-06, 0.2652D-06,
25758      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25759      #    0.2652D-07/
25760
25761       data (calcpts(j,12), j = 1,neta) /0.3561D-21, 0.1365D-20,
25762      #    0.5227D-20, 0.2003D-19, 0.7674D-19, 0.2940D-18, 0.1126D-17,
25763      #    0.4314D-17, 0.1653D-16, 0.6330D-16, 0.2424D-15, 0.9283D-15,
25764      #    0.3554D-14, 0.1360D-13, 0.5199D-13, 0.1986D-12, 0.7580D-12,
25765      #    0.2886D-11, 0.1096D-10, 0.4146D-10, 0.1559D-09, 0.5817D-09,
25766      #    0.2145D-08, 0.7786D-08, 0.2775D-07, 0.9642D-07, 0.3247D-06,
25767      #    0.1054D-05, 0.3276D-05, 0.9683D-05, 0.2700D-04, 0.7040D-04,
25768      #    0.1695D-03, 0.3712D-03, 0.7283D-03, 0.1260D-02, 0.1905D-02,
25769      #    0.2504D-02, 0.2880D-02, 0.2938D-02, 0.2711D-02, 0.2306D-02,
25770      #    0.1841D-02, 0.1404D-02, 0.1035D-02, 0.7445D-03, 0.5267D-03,
25771      #    0.3683D-03, 0.2553D-03, 0.1761D-03, 0.1210D-03, 0.8289D-04,
25772      #    0.5669D-04, 0.3871D-04, 0.2643D-04, 0.1803D-04, 0.1229D-04,
25773      #    0.8379D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1806D-05,
25774      #    0.1231D-05, 0.8387D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25775      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25776      #    0.2652D-07/
25777
25778       data (calcpts(j,13), j = 1,neta) /0.2427D-21, 0.9296D-21,
25779      #    0.3561D-20, 0.1365D-19, 0.5227D-19, 0.2003D-18, 0.7674D-18,
25780      #    0.2940D-17, 0.1126D-16, 0.4314D-16, 0.1653D-15, 0.6329D-15,
25781      #    0.2423D-14, 0.9275D-14, 0.3549D-13, 0.1357D-12, 0.5183D-12,
25782      #    0.1977D-11, 0.7527D-11, 0.2858D-10, 0.1080D-09, 0.4059D-09,
25783      #    0.1512D-08, 0.5560D-08, 0.2016D-07, 0.7152D-07, 0.2471D-06,
25784      #    0.8250D-06, 0.2643D-05, 0.8058D-05, 0.2318D-04, 0.6216D-04,
25785      #    0.1536D-03, 0.3445D-03, 0.6896D-03, 0.1214D-02, 0.1858D-02,
25786      #    0.2466D-02, 0.2858D-02, 0.2930D-02, 0.2709D-02, 0.2307D-02,
25787      #    0.1844D-02, 0.1406D-02, 0.1036D-02, 0.7453D-03, 0.5273D-03,
25788      #    0.3686D-03, 0.2556D-03, 0.1763D-03, 0.1210D-03, 0.8291D-04,
25789      #    0.5670D-04, 0.3873D-04, 0.2643D-04, 0.1803D-04, 0.1229D-04,
25790      #    0.8379D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1807D-05,
25791      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25792      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25793      #    0.2652D-07/
25794
25795       data (calcpts(j,14), j = 1,neta) /0.1653D-21, 0.6333D-21,
25796      #    0.2427D-20, 0.9297D-20, 0.3562D-19, 0.1365D-18, 0.5229D-18,
25797      #    0.2003D-17, 0.7674D-17, 0.2940D-16, 0.1126D-15, 0.4313D-15,
25798      #    0.1651D-14, 0.6324D-14, 0.2421D-13, 0.9261D-13, 0.3540D-12,
25799      #    0.1352D-11, 0.5157D-11, 0.1962D-10, 0.7446D-10, 0.2813D-09,
25800      #    0.1055D-08, 0.3918D-08, 0.1439D-07, 0.5196D-07, 0.1833D-06,
25801      #    0.6278D-06, 0.2070D-05, 0.6507D-05, 0.1932D-04, 0.5346D-04,
25802      #    0.1361D-03, 0.3135D-03, 0.6428D-03, 0.1155D-02, 0.1797D-02,
25803      #    0.2417D-02, 0.2826D-02, 0.2916D-02, 0.2706D-02, 0.2309D-02,
25804      #    0.1847D-02, 0.1409D-02, 0.1038D-02, 0.7467D-03, 0.5280D-03,
25805      #    0.3690D-03, 0.2558D-03, 0.1763D-03, 0.1211D-03, 0.8293D-04,
25806      #    0.5672D-04, 0.3873D-04, 0.2643D-04, 0.1803D-04, 0.1229D-04,
25807      #    0.8379D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1807D-05,
25808      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25809      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25810      #    0.2652D-07/
25811
25812       data (calcpts(j,15), j = 1,neta) /0.1127D-21, 0.4316D-21,
25813      #    0.1653D-20, 0.6334D-20, 0.2427D-19, 0.9297D-19, 0.3562D-18,
25814      #    0.1365D-17, 0.5229D-17, 0.2003D-16, 0.7673D-16, 0.2938D-15,
25815      #    0.1126D-14, 0.4311D-14, 0.1650D-13, 0.6317D-13, 0.2416D-12,
25816      #    0.9237D-12, 0.3526D-11, 0.1344D-10, 0.5113D-10, 0.1938D-09,
25817      #    0.7313D-09, 0.2735D-08, 0.1014D-07, 0.3710D-07, 0.1332D-06,
25818      #    0.4659D-06, 0.1575D-05, 0.5100D-05, 0.1562D-04, 0.4467D-04,
25819      #    0.1174D-03, 0.2789D-03, 0.5880D-03, 0.1083D-02, 0.1721D-02,
25820      #    0.2352D-02, 0.2782D-02, 0.2895D-02, 0.2702D-02, 0.2311D-02,
25821      #    0.1851D-02, 0.1413D-02, 0.1041D-02, 0.7485D-03, 0.5291D-03,
25822      #    0.3696D-03, 0.2561D-03, 0.1764D-03, 0.1212D-03, 0.8298D-04,
25823      #    0.5673D-04, 0.3875D-04, 0.2645D-04, 0.1803D-04, 0.1229D-04,
25824      #    0.8381D-05, 0.5710D-05, 0.3891D-05, 0.2652D-05, 0.1807D-05,
25825      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25826      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25827      #    0.2652D-07/
25828
25829       data (calcpts(j,16), j = 1,neta) /0.7679D-22, 0.2940D-21,
25830      #    0.1126D-20, 0.4316D-20, 0.1653D-19, 0.6334D-19, 0.2427D-18,
25831      #    0.9299D-18, 0.3563D-17, 0.1365D-16, 0.5229D-16, 0.2002D-15,
25832      #    0.7671D-15, 0.2939D-14, 0.1125D-13, 0.4307D-13, 0.1649D-12,
25833      #    0.6305D-12, 0.2409D-11, 0.9195D-11, 0.3504D-10, 0.1331D-09,
25834      #    0.5040D-09, 0.1898D-08, 0.7077D-08, 0.2615D-07, 0.9512D-07,
25835      #    0.3386D-06, 0.1170D-05, 0.3886D-05, 0.1226D-04, 0.3621D-04,
25836      #    0.9842D-04, 0.2416D-03, 0.5259D-03, 0.9966D-03, 0.1623D-02,
25837      #    0.2265D-02, 0.2724D-02, 0.2865D-02, 0.2693D-02, 0.2313D-02,
25838      #    0.1857D-02, 0.1418D-02, 0.1045D-02, 0.7509D-03, 0.5304D-03,
25839      #    0.3703D-03, 0.2565D-03, 0.1767D-03, 0.1213D-03, 0.8304D-04,
25840      #    0.5676D-04, 0.3876D-04, 0.2645D-04, 0.1803D-04, 0.1230D-04,
25841      #    0.8381D-05, 0.5712D-05, 0.3893D-05, 0.2652D-05, 0.1807D-05,
25842      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25843      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25844      #    0.2652D-07/
25845
25846       data (calcpts(j,17), j = 1,neta) /0.5235D-22, 0.2003D-21,
25847      #    0.7672D-21, 0.2940D-20, 0.1127D-19, 0.4316D-19, 0.1653D-18,
25848      #    0.6334D-18, 0.2427D-17, 0.9299D-17, 0.3562D-16, 0.1365D-15,
25849      #    0.5228D-15, 0.2003D-14, 0.7668D-14, 0.2936D-13, 0.1124D-12,
25850      #    0.4301D-12, 0.1644D-11, 0.6281D-11, 0.2396D-10, 0.9120D-10,
25851      #    0.3462D-09, 0.1308D-08, 0.4904D-08, 0.1826D-07, 0.6705D-07,
25852      #    0.2418D-06, 0.8505D-06, 0.2888D-05, 0.9354D-05, 0.2847D-04,
25853      #    0.8001D-04, 0.2034D-03, 0.4584D-03, 0.8976D-03, 0.1506D-02,
25854      #    0.2155D-02, 0.2643D-02, 0.2820D-02, 0.2678D-02, 0.2315D-02,
25855      #    0.1863D-02, 0.1424D-02, 0.1050D-02, 0.7542D-03, 0.5324D-03,
25856      #    0.3714D-03, 0.2571D-03, 0.1770D-03, 0.1215D-03, 0.8313D-04,
25857      #    0.5680D-04, 0.3878D-04, 0.2646D-04, 0.1805D-04, 0.1230D-04,
25858      #    0.8382D-05, 0.5712D-05, 0.3893D-05, 0.2652D-05, 0.1807D-05,
25859      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25860      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25861      #    0.2652D-07/
25862
25863       data (calcpts(j,18), j = 1,neta) /0.3573D-22, 0.1365D-21,
25864      #    0.5227D-21, 0.2003D-20, 0.7674D-20, 0.2940D-19, 0.1127D-18,
25865      #    0.4316D-18, 0.1653D-17, 0.6334D-17, 0.2427D-16, 0.9298D-16,
25866      #    0.3563D-15, 0.1364D-14, 0.5226D-14, 0.2001D-13, 0.7662D-13,
25867      #    0.2933D-12, 0.1122D-11, 0.4287D-11, 0.1637D-10, 0.6237D-10,
25868      #    0.2372D-09, 0.8985D-09, 0.3381D-08, 0.1265D-07, 0.4680D-07,
25869      #    0.1706D-06, 0.6078D-06, 0.2100D-05, 0.6957D-05, 0.2177D-04,
25870      #    0.6311D-04, 0.1661D-03, 0.3881D-03, 0.7881D-03, 0.1368D-02,
25871      #    0.2018D-02, 0.2537D-02, 0.2759D-02, 0.2652D-02, 0.2311D-02,
25872      #    0.1869D-02, 0.1432D-02, 0.1056D-02, 0.7584D-03, 0.5351D-03,
25873      #    0.3729D-03, 0.2580D-03, 0.1775D-03, 0.1217D-03, 0.8325D-04,
25874      #    0.5687D-04, 0.3882D-04, 0.2647D-04, 0.1805D-04, 0.1230D-04,
25875      #    0.8384D-05, 0.5714D-05, 0.3893D-05, 0.2652D-05, 0.1807D-05,
25876      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25877      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25878      #    0.2652D-07/
25879
25880       data (calcpts(j,19), j = 1,neta) /0.2443D-22, 0.9299D-22,
25881      #    0.3561D-21, 0.1365D-20, 0.5229D-20, 0.2003D-19, 0.7675D-19,
25882      #    0.2940D-18, 0.1127D-17, 0.4317D-17, 0.1653D-16, 0.6334D-16,
25883      #    0.2427D-15, 0.9297D-15, 0.3561D-14, 0.1364D-13, 0.5222D-13,
25884      #    0.1998D-12, 0.7647D-12, 0.2923D-11, 0.1117D-10, 0.4260D-10,
25885      #    0.1622D-09, 0.6156D-09, 0.2322D-08, 0.8717D-08, 0.3243D-07,
25886      #    0.1190D-06, 0.4286D-06, 0.1502D-05, 0.5064D-05, 0.1621D-04,
25887      #    0.4834D-04, 0.1315D-03, 0.3186D-03, 0.6722D-03, 0.1212D-02,
25888      #    0.1851D-02, 0.2399D-02, 0.2670D-02, 0.2613D-02, 0.2304D-02,
25889      #    0.1875D-02, 0.1442D-02, 0.1064D-02, 0.7641D-03, 0.5385D-03,
25890      #    0.3750D-03, 0.2591D-03, 0.1781D-03, 0.1220D-03, 0.8342D-04,
25891      #    0.5695D-04, 0.3885D-04, 0.2649D-04, 0.1806D-04, 0.1231D-04,
25892      #    0.8387D-05, 0.5715D-05, 0.3894D-05, 0.2652D-05, 0.1807D-05,
25893      #    0.1231D-05, 0.8388D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25894      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25895      #    0.2652D-07/
25896
25897       data (calcpts(j,20), j = 1,neta) /0.1677D-22, 0.6337D-22,
25898      #    0.2424D-21, 0.9296D-21, 0.3563D-20, 0.1365D-19, 0.5229D-19,
25899      #    0.2004D-18, 0.7676D-18, 0.2940D-17, 0.1127D-16, 0.4316D-16,
25900      #    0.1653D-15, 0.6335D-15, 0.2427D-14, 0.9293D-14, 0.3558D-13,
25901      #    0.1362D-12, 0.5213D-12, 0.1993D-11, 0.7619D-11, 0.2909D-10,
25902      #    0.1108D-09, 0.4211D-09, 0.1593D-08, 0.5987D-08, 0.2235D-07,
25903      #    0.8247D-07, 0.2991D-06, 0.1059D-05, 0.3622D-05, 0.1181D-04,
25904      #    0.3608D-04, 0.1011D-03, 0.2535D-03, 0.5559D-03, 0.1044D-02,
25905      #    0.1658D-02, 0.2224D-02, 0.2552D-02, 0.2553D-02, 0.2286D-02,
25906      #    0.1880D-02, 0.1452D-02, 0.1074D-02, 0.7713D-03, 0.5433D-03,
25907      #    0.3778D-03, 0.2607D-03, 0.1790D-03, 0.1225D-03, 0.8365D-04,
25908      #    0.5708D-04, 0.3893D-04, 0.2652D-04, 0.1808D-04, 0.1231D-04,
25909      #    0.8391D-05, 0.5717D-05, 0.3894D-05, 0.2654D-05, 0.1807D-05,
25910      #    0.1231D-05, 0.8390D-06, 0.5715D-06, 0.3894D-06, 0.2652D-06,
25911      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25912      #    0.2652D-07/
25913
25914       data (calcpts(j,21), j = 1,neta) /0.1158D-22, 0.4320D-22,
25915      #    0.1650D-21, 0.6332D-21, 0.2427D-20, 0.9297D-20, 0.3562D-19,
25916      #    0.1365D-18, 0.5229D-18, 0.2004D-17, 0.7676D-17, 0.2940D-16,
25917      #    0.1127D-15, 0.4316D-15, 0.1653D-14, 0.6331D-14, 0.2424D-13,
25918      #    0.9284D-13, 0.3553D-12, 0.1359D-11, 0.5195D-11, 0.1983D-10,
25919      #    0.7562D-10, 0.2876D-09, 0.1090D-08, 0.4103D-08, 0.1536D-07,
25920      #    0.5686D-07, 0.2073D-06, 0.7396D-06, 0.2556D-05, 0.8457D-05,
25921      #    0.2634D-04, 0.7564D-04, 0.1958D-03, 0.4452D-03, 0.8708D-03,
25922      #    0.1443D-02, 0.2016D-02, 0.2396D-02, 0.2466D-02, 0.2254D-02,
25923      #    0.1880D-02, 0.1463D-02, 0.1086D-02, 0.7806D-03, 0.5493D-03,
25924      #    0.3816D-03, 0.2628D-03, 0.1801D-03, 0.1231D-03, 0.8399D-04,
25925      #    0.5725D-04, 0.3900D-04, 0.2657D-04, 0.1811D-04, 0.1233D-04,
25926      #    0.8396D-05, 0.5720D-05, 0.3896D-05, 0.2654D-05, 0.1807D-05,
25927      #    0.1231D-05, 0.8390D-06, 0.5715D-06, 0.3894D-06, 0.2654D-06,
25928      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25929      #    0.2652D-07/
25930
25931       data (calcpts(j,22), j = 1,neta) /0.8067D-23, 0.2946D-22,
25932      #    0.1123D-21, 0.4311D-21, 0.1654D-20, 0.6333D-20, 0.2427D-19,
25933      #    0.9298D-19, 0.3562D-18, 0.1365D-17, 0.5229D-17, 0.2004D-16,
25934      #    0.7676D-16, 0.2940D-15, 0.1126D-14, 0.4314D-14, 0.1652D-13,
25935      #    0.6326D-13, 0.2421D-12, 0.9263D-12, 0.3542D-11, 0.1353D-10,
25936      #    0.5158D-10, 0.1962D-09, 0.7445D-09, 0.2805D-08, 0.1052D-07,
25937      #    0.3906D-07, 0.1430D-06, 0.5127D-06, 0.1785D-05, 0.5972D-05,
25938      #    0.1887D-04, 0.5534D-04, 0.1470D-03, 0.3458D-03, 0.7032D-03,
25939      #    0.1217D-02, 0.1777D-02, 0.2201D-02, 0.2345D-02, 0.2201D-02,
25940      #    0.1869D-02, 0.1472D-02, 0.1099D-02, 0.7918D-03, 0.5573D-03,
25941      #    0.3864D-03, 0.2657D-03, 0.1818D-03, 0.1240D-03, 0.8445D-04,
25942      #    0.5750D-04, 0.3914D-04, 0.2664D-04, 0.1814D-04, 0.1234D-04,
25943      #    0.8405D-05, 0.5722D-05, 0.3897D-05, 0.2655D-05, 0.1807D-05,
25944      #    0.1232D-05, 0.8391D-06, 0.5717D-06, 0.3894D-06, 0.2654D-06,
25945      #    0.1808D-06, 0.1231D-06, 0.8388D-07, 0.5715D-07, 0.3894D-07,
25946      #    0.2652D-07/
25947
25948       data (calcpts(j,23), j = 1,neta) /0.5685D-23, 0.2010D-22,
25949      #    0.7636D-22, 0.2936D-21, 0.1128D-20, 0.4314D-20, 0.1654D-19,
25950      #    0.6336D-19, 0.2427D-18, 0.9300D-18, 0.3563D-17, 0.1365D-16,
25951      #    0.5229D-16, 0.2004D-15, 0.7674D-15, 0.2940D-14, 0.1126D-13,
25952      #    0.4310D-13, 0.1650D-12, 0.6312D-12, 0.2414D-11, 0.9221D-11,
25953      #    0.3517D-10, 0.1339D-09, 0.5081D-09, 0.1920D-08, 0.7194D-08,
25954      #    0.2676D-07, 0.9820D-07, 0.3536D-06, 0.1238D-05, 0.4173D-05,
25955      #    0.1334D-04, 0.3972D-04, 0.1079D-03, 0.2610D-03, 0.5501D-03,
25956      #    0.9924D-03, 0.1517D-02, 0.1965D-02, 0.2182D-02, 0.2118D-02,
25957      #    0.1844D-02, 0.1476D-02, 0.1113D-02, 0.8052D-03, 0.5671D-03,
25958      #    0.3929D-03, 0.2696D-03, 0.1839D-03, 0.1252D-03, 0.8508D-04,
25959      #    0.5783D-04, 0.3930D-04, 0.2672D-04, 0.1818D-04, 0.1236D-04,
25960      #    0.8415D-05, 0.5729D-05, 0.3900D-05, 0.2657D-05, 0.1809D-05,
25961      #    0.1232D-05, 0.8393D-06, 0.5717D-06, 0.3894D-06, 0.2654D-06,
25962      #    0.1808D-06, 0.1231D-06, 0.8390D-07, 0.5715D-07, 0.3894D-07,
25963      #    0.2652D-07/
25964
25965       data (calcpts(j,24), j = 1,neta) /0.4040D-23, 0.1371D-22,
25966      #    0.5190D-22, 0.1998D-21, 0.7686D-21, 0.2938D-20, 0.1127D-19,
25967      #    0.4317D-19, 0.1655D-18, 0.6336D-18, 0.2427D-17, 0.9300D-17,
25968      #    0.3562D-16, 0.1365D-15, 0.5229D-15, 0.2003D-14, 0.7670D-14,
25969      #    0.2937D-13, 0.1124D-12, 0.4302D-12, 0.1646D-11, 0.6284D-11,
25970      #    0.2397D-10, 0.9129D-10, 0.3467D-09, 0.1310D-08, 0.4914D-08,
25971      #    0.1830D-07, 0.6728D-07, 0.2428D-06, 0.8538D-06, 0.2894D-05,
25972      #    0.9329D-05, 0.2811D-04, 0.7761D-04, 0.1922D-03, 0.4178D-03,
25973      #    0.7832D-03, 0.1251D-02, 0.1699D-02, 0.1977D-02, 0.1998D-02,
25974      #    0.1796D-02, 0.1471D-02, 0.1125D-02, 0.8201D-03, 0.5792D-03,
25975      #    0.4010D-03, 0.2745D-03, 0.1869D-03, 0.1268D-03, 0.8597D-04,
25976      #    0.5829D-04, 0.3954D-04, 0.2685D-04, 0.1824D-04, 0.1240D-04,
25977      #    0.8430D-05, 0.5736D-05, 0.3905D-05, 0.2658D-05, 0.1811D-05,
25978      #    0.1233D-05, 0.8394D-06, 0.5718D-06, 0.3895D-06, 0.2654D-06,
25979      #    0.1808D-06, 0.1231D-06, 0.8390D-07, 0.5715D-07, 0.3894D-07,
25980      #    0.2652D-07/
25981
25982       data (calcpts(j,25), j = 1,neta) /0.2879D-23, 0.9354D-23,
25983      #    0.3524D-22, 0.1360D-21, 0.5241D-21, 0.2003D-20, 0.7677D-20,
25984      #    0.2942D-19, 0.1127D-18, 0.4317D-18, 0.1653D-17, 0.6336D-17,
25985      #    0.2427D-16, 0.9298D-16, 0.3563D-15, 0.1364D-14, 0.5226D-14,
25986      #    0.2001D-13, 0.7659D-13, 0.2931D-12, 0.1121D-11, 0.4282D-11,
25987      #    0.1634D-10, 0.6224D-10, 0.2364D-09, 0.8938D-09, 0.3354D-08,
25988      #    0.1250D-07, 0.4602D-07, 0.1664D-06, 0.5867D-06, 0.1997D-05,
25989      #    0.6473D-05, 0.1968D-04, 0.5502D-04, 0.1387D-03, 0.3092D-03,
25990      #    0.5991D-03, 0.9977D-03, 0.1421D-02, 0.1734D-02, 0.1836D-02,
25991      #    0.1718D-02, 0.1449D-02, 0.1132D-02, 0.8349D-03, 0.5929D-03,
25992      #    0.4111D-03, 0.2811D-03, 0.1906D-03, 0.1290D-03, 0.8716D-04,
25993      #    0.5892D-04, 0.3987D-04, 0.2702D-04, 0.1833D-04, 0.1244D-04,
25994      #    0.8453D-05, 0.5748D-05, 0.3909D-05, 0.2661D-05, 0.1811D-05,
25995      #    0.1233D-05, 0.8398D-06, 0.5719D-06, 0.3895D-06, 0.2654D-06,
25996      #    0.1808D-06, 0.1232D-06, 0.8390D-07, 0.5715D-07, 0.3894D-07,
25997      #    0.2652D-07/
25998
25999       data (calcpts(j,26), j = 1,neta) /0.2059D-23, 0.6393D-23,
26000      #    0.2394D-22, 0.9253D-22, 0.3573D-21, 0.1364D-20, 0.5231D-20,
26001      #    0.2004D-19, 0.7677D-19, 0.2940D-18, 0.1127D-17, 0.4317D-17,
26002      #    0.1653D-16, 0.6336D-16, 0.2427D-15, 0.9296D-15, 0.3560D-14,
26003      #    0.1363D-13, 0.5218D-13, 0.1997D-12, 0.7637D-12, 0.2918D-11,
26004      #    0.1114D-10, 0.4242D-10, 0.1611D-09, 0.6094D-09, 0.2289D-08,
26005      #    0.8532D-08, 0.3144D-07, 0.1138D-06, 0.4020D-06, 0.1372D-05,
26006      #    0.4467D-05, 0.1366D-04, 0.3855D-04, 0.9854D-04, 0.2239D-03,
26007      #    0.4461D-03, 0.7699D-03, 0.1146D-02, 0.1469D-02, 0.1635D-02,
26008      #    0.1601D-02, 0.1404D-02, 0.1127D-02, 0.8472D-03, 0.6080D-03,
26009      #    0.4232D-03, 0.2892D-03, 0.1958D-03, 0.1319D-03, 0.8879D-04,
26010      #    0.5981D-04, 0.4033D-04, 0.2726D-04, 0.1845D-04, 0.1250D-04,
26011      #    0.8484D-05, 0.5763D-05, 0.3918D-05, 0.2664D-05, 0.1814D-05,
26012      #    0.1234D-05, 0.8403D-06, 0.5721D-06, 0.3897D-06, 0.2654D-06,
26013      #    0.1808D-06, 0.1232D-06, 0.8390D-07, 0.5715D-07, 0.3894D-07,
26014      #    0.2654D-07/
26015
26016       data (calcpts(j,27), j = 1,neta) /0.1454D-23, 0.4358D-23,
26017      #    0.1624D-22, 0.6296D-22, 0.2436D-21, 0.9289D-21, 0.3564D-20,
26018      #    0.1365D-19, 0.5230D-19, 0.2004D-18, 0.7676D-18, 0.2941D-17,
26019      #    0.1127D-16, 0.4316D-16, 0.1653D-15, 0.6333D-15, 0.2426D-14,
26020      #    0.9288D-14, 0.3555D-13, 0.1361D-12, 0.5203D-12, 0.1989D-11,
26021      #    0.7587D-11, 0.2891D-10, 0.1098D-09, 0.4155D-09, 0.1563D-08,
26022      #    0.5820D-08, 0.2145D-07, 0.7775D-07, 0.2750D-06, 0.9402D-06,
26023      #    0.3071D-05, 0.9431D-05, 0.2679D-04, 0.6917D-04, 0.1596D-03,
26024      #    0.3246D-03, 0.5772D-03, 0.8927D-03, 0.1199D-02, 0.1404D-02,
26025      #    0.1446D-02, 0.1327D-02, 0.1105D-02, 0.8527D-03, 0.6221D-03,
26026      #    0.4365D-03, 0.2991D-03, 0.2022D-03, 0.1357D-03, 0.9096D-04,
26027      #    0.6099D-04, 0.4098D-04, 0.2759D-04, 0.1862D-04, 0.1259D-04,
26028      #    0.8529D-05, 0.5785D-05, 0.3929D-05, 0.2670D-05, 0.1816D-05,
26029      #    0.1235D-05, 0.8409D-06, 0.5726D-06, 0.3899D-06, 0.2655D-06,
26030      #    0.1809D-06, 0.1232D-06, 0.8391D-07, 0.5717D-07, 0.3894D-07,
26031      #    0.2654D-07/
26032
26033       data (calcpts(j,28), j = 1,neta) /0.1025D-23, 0.2973D-23,
26034      #    0.1104D-22, 0.4286D-22, 0.1661D-21, 0.6328D-21, 0.2428D-20,
26035      #    0.9300D-20, 0.3564D-19, 0.1365D-18, 0.5229D-18, 0.2004D-17,
26036      #    0.7676D-17, 0.2940D-16, 0.1127D-15, 0.4316D-15, 0.1653D-14,
26037      #    0.6329D-14, 0.2422D-13, 0.9270D-13, 0.3545D-12, 0.1355D-11,
26038      #    0.5171D-11, 0.1970D-10, 0.7482D-10, 0.2832D-09, 0.1066D-08,
26039      #    0.3969D-08, 0.1464D-07, 0.5307D-07, 0.1878D-06, 0.6432D-06,
26040      #    0.2105D-05, 0.6485D-05, 0.1851D-04, 0.4812D-04, 0.1122D-03,
26041      #    0.2321D-03, 0.4224D-03, 0.6744D-03, 0.9441D-03, 0.1161D-02,
26042      #    0.1259D-02, 0.1215D-02, 0.1058D-02, 0.8457D-03, 0.6321D-03,
26043      #    0.4501D-03, 0.3105D-03, 0.2100D-03, 0.1406D-03, 0.9384D-04,
26044      #    0.6260D-04, 0.4185D-04, 0.2805D-04, 0.1886D-04, 0.1271D-04,
26045      #    0.8592D-05, 0.5817D-05, 0.3945D-05, 0.2677D-05, 0.1820D-05,
26046      #    0.1237D-05, 0.8418D-06, 0.5730D-06, 0.3900D-06, 0.2657D-06,
26047      #    0.1809D-06, 0.1232D-06, 0.8393D-07, 0.5717D-07, 0.3894D-07,
26048      #    0.2654D-07/
26049
26050       data (calcpts(j,29), j = 1,neta) /0.7223D-24, 0.2028D-23,
26051      #    0.7517D-23, 0.2915D-22, 0.1131D-21, 0.4311D-21, 0.1654D-20,
26052      #    0.6336D-20, 0.2427D-19, 0.9300D-19, 0.3562D-18, 0.1365D-17,
26053      #    0.5229D-17, 0.2004D-16, 0.7674D-16, 0.2940D-15, 0.1126D-14,
26054      #    0.4311D-14, 0.1650D-13, 0.6315D-13, 0.2415D-12, 0.9230D-12,
26055      #    0.3522D-11, 0.1342D-10, 0.5098D-10, 0.1931D-09, 0.7263D-09,
26056      #    0.2706D-08, 0.9980D-08, 0.3620D-07, 0.1282D-06, 0.4393D-06,
26057      #    0.1440D-05, 0.4445D-05, 0.1273D-04, 0.3327D-04, 0.7820D-04,
26058      #    0.1637D-03, 0.3032D-03, 0.4965D-03, 0.7194D-03, 0.9237D-03,
26059      #    0.1054D-02, 0.1073D-02, 0.9827D-03, 0.8201D-03, 0.6337D-03,
26060      #    0.4617D-03, 0.3225D-03, 0.2193D-03, 0.1468D-03, 0.9754D-04,
26061      #    0.6474D-04, 0.4302D-04, 0.2868D-04, 0.1919D-04, 0.1288D-04,
26062      #    0.8679D-05, 0.5861D-05, 0.3966D-05, 0.2689D-05, 0.1825D-05,
26063      #    0.1240D-05, 0.8432D-06, 0.5736D-06, 0.3904D-06, 0.2658D-06,
26064      #    0.1809D-06, 0.1232D-06, 0.8394D-07, 0.5718D-07, 0.3896D-07,
26065      #    0.2654D-07/
26066
26067       data (calcpts(j,30), j = 1,neta) /0.4949D-24, 0.1383D-23,
26068      #    0.5113D-23, 0.1989D-22, 0.7709D-22, 0.2936D-21, 0.1127D-20,
26069      #    0.4317D-20, 0.1654D-19, 0.6336D-19, 0.2427D-18, 0.9300D-18,
26070      #    0.3563D-17, 0.1365D-16, 0.5229D-16, 0.2002D-15, 0.7671D-15,
26071      #    0.2937D-14, 0.1124D-13, 0.4304D-13, 0.1646D-12, 0.6288D-12,
26072      #    0.2400D-11, 0.9144D-11, 0.3474D-10, 0.1315D-09, 0.4950D-09,
26073      #    0.1848D-08, 0.6803D-08, 0.2469D-07, 0.8746D-07, 0.2998D-06,
26074      #    0.9835D-06, 0.3042D-05, 0.8730D-05, 0.2289D-04, 0.5411D-04,
26075      #    0.1142D-03, 0.2144D-03, 0.3581D-03, 0.5332D-03, 0.7101D-03,
26076      #    0.8477D-03, 0.9087D-03, 0.8783D-03, 0.7709D-03, 0.6216D-03,
26077      #    0.4676D-03, 0.3336D-03, 0.2294D-03, 0.1541D-03, 0.1022D-03,
26078      #    0.6752D-04, 0.4460D-04, 0.2954D-04, 0.1965D-04, 0.1312D-04,
26079      #    0.8800D-05, 0.5924D-05, 0.3998D-05, 0.2705D-05, 0.1833D-05,
26080      #    0.1244D-05, 0.8451D-06, 0.5745D-06, 0.3909D-06, 0.2660D-06,
26081      #    0.1810D-06, 0.1233D-06, 0.8397D-07, 0.5719D-07, 0.3896D-07,
26082      #    0.2654D-07/
26083
26084       data (calcpts(j,31), j = 1,neta) /0.3417D-24, 0.9340D-24,
26085      #    0.3495D-23, 0.1351D-22, 0.5253D-22, 0.2000D-21, 0.7671D-21,
26086      #    0.2941D-20, 0.1127D-19, 0.4317D-19, 0.1653D-18, 0.6336D-18,
26087      #    0.2427D-17, 0.9299D-17, 0.3562D-16, 0.1365D-15, 0.5226D-15,
26088      #    0.2001D-14, 0.7661D-14, 0.2931D-13, 0.1121D-12, 0.4284D-12,
26089      #    0.1635D-11, 0.6229D-11, 0.2367D-10, 0.8960D-10, 0.3372D-09,
26090      #    0.1259D-08, 0.4636D-08, 0.1683D-07, 0.5964D-07, 0.2046D-06,
26091      #    0.6714D-06, 0.2079D-05, 0.5975D-05, 0.1570D-04, 0.3726D-04,
26092      #    0.7914D-04, 0.1500D-03, 0.2541D-03, 0.3864D-03, 0.5300D-03,
26093      #    0.6575D-03, 0.7388D-03, 0.7529D-03, 0.6975D-03, 0.5913D-03,
26094      #    0.4636D-03, 0.3410D-03, 0.2391D-03, 0.1622D-03, 0.1079D-03,
26095      #    0.7103D-04, 0.4665D-04, 0.3069D-04, 0.2026D-04, 0.1345D-04,
26096      #    0.8972D-05, 0.6011D-05, 0.4043D-05, 0.2727D-05, 0.1844D-05,
26097      #    0.1250D-05, 0.8478D-06, 0.5759D-06, 0.3915D-06, 0.2662D-06,
26098      #    0.1812D-06, 0.1234D-06, 0.8400D-07, 0.5721D-07, 0.3897D-07,
26099      #    0.2654D-07/
26100
26101       data (calcpts(j,32), j = 1,neta) /0.2423D-24, 0.6489D-24,
26102      #    0.2356D-23, 0.9243D-23, 0.3575D-22, 0.1364D-21, 0.5237D-21,
26103      #    0.2004D-20, 0.7677D-20, 0.2942D-19, 0.1127D-18, 0.4317D-18,
26104      #    0.1653D-17, 0.6336D-17, 0.2427D-16, 0.9295D-16, 0.3561D-15,
26105      #    0.1363D-14, 0.5218D-14, 0.1998D-13, 0.7638D-13, 0.2919D-12,
26106      #    0.1114D-11, 0.4245D-11, 0.1613D-10, 0.6105D-10, 0.2298D-09,
26107      #    0.8580D-09, 0.3159D-08, 0.1147D-07, 0.4065D-07, 0.1395D-06,
26108      #    0.4581D-06, 0.1419D-05, 0.4083D-05, 0.1075D-04, 0.2558D-04,
26109      #    0.5456D-04, 0.1041D-03, 0.1782D-03, 0.2751D-03, 0.3859D-03,
26110      #    0.4940D-03, 0.5780D-03, 0.6183D-03, 0.6045D-03, 0.5411D-03,
26111      #    0.4456D-03, 0.3414D-03, 0.2466D-03, 0.1704D-03, 0.1143D-03,
26112      #    0.7532D-04, 0.4927D-04, 0.3219D-04, 0.2110D-04, 0.1390D-04,
26113      #    0.9206D-05, 0.6132D-05, 0.4104D-05, 0.2759D-05, 0.1860D-05,
26114      #    0.1257D-05, 0.8517D-06, 0.5778D-06, 0.3924D-06, 0.2667D-06,
26115      #    0.1815D-06, 0.1235D-06, 0.8406D-07, 0.5723D-07, 0.3897D-07,
26116      #    0.2655D-07/
26117
26118       data (calcpts(j,33), j = 1,neta) /0.1613D-24, 0.4423D-24,
26119      #    0.1620D-23, 0.6268D-23, 0.2436D-22, 0.9282D-22, 0.3569D-21,
26120      #    0.1365D-20, 0.5231D-20, 0.2004D-19, 0.7675D-19, 0.2941D-18,
26121      #    0.1127D-17, 0.4316D-17, 0.1653D-16, 0.6333D-16, 0.2426D-15,
26122      #    0.9288D-15, 0.3557D-14, 0.1361D-13, 0.5204D-13, 0.1989D-12,
26123      #    0.7590D-12, 0.2892D-11, 0.1099D-10, 0.4159D-10, 0.1566D-09,
26124      #    0.5847D-09, 0.2155D-08, 0.7815D-08, 0.2770D-07, 0.9510D-07,
26125      #    0.3123D-06, 0.9679D-06, 0.2787D-05, 0.7349D-05, 0.1752D-04,
26126      #    0.3747D-04, 0.7182D-04, 0.1238D-03, 0.1935D-03, 0.2760D-03,
26127      #    0.3617D-03, 0.4372D-03, 0.4877D-03, 0.5012D-03, 0.4735D-03,
26128      #    0.4121D-03, 0.3317D-03, 0.2492D-03, 0.1771D-03, 0.1208D-03,
26129      #    0.8025D-04, 0.5250D-04, 0.3414D-04, 0.2220D-04, 0.1450D-04,
26130      #    0.9528D-05, 0.6300D-05, 0.4191D-05, 0.2802D-05, 0.1883D-05,
26131      #    0.1268D-05, 0.8571D-06, 0.5805D-06, 0.3938D-06, 0.2674D-06,
26132      #    0.1818D-06, 0.1236D-06, 0.8413D-07, 0.5727D-07, 0.3900D-07,
26133      #    0.2655D-07/
26134
26135       data (calcpts(j,34), j = 1,neta) /0.1105D-24, 0.3016D-24,
26136      #    0.1082D-23, 0.4271D-23, 0.1659D-22, 0.6324D-22, 0.2432D-21,
26137      #    0.9297D-21, 0.3563D-20, 0.1365D-19, 0.5229D-19, 0.2004D-18,
26138      #    0.7676D-18, 0.2940D-17, 0.1127D-16, 0.4316D-16, 0.1653D-15,
26139      #    0.6329D-15, 0.2423D-14, 0.9270D-14, 0.3546D-13, 0.1355D-12,
26140      #    0.5172D-12, 0.1970D-11, 0.7487D-11, 0.2834D-10, 0.1067D-09,
26141      #    0.3984D-09, 0.1470D-08, 0.5325D-08, 0.1889D-07, 0.6482D-07,
26142      #    0.2130D-06, 0.6602D-06, 0.1902D-05, 0.5018D-05, 0.1198D-04,
26143      #    0.2567D-04, 0.4937D-04, 0.8555D-04, 0.1347D-03, 0.1946D-03,
26144      #    0.2595D-03, 0.3218D-03, 0.3714D-03, 0.3984D-03, 0.3962D-03,
26145      #    0.3642D-03, 0.3095D-03, 0.2442D-03, 0.1805D-03, 0.1266D-03,
26146      #    0.8544D-04, 0.5625D-04, 0.3654D-04, 0.2363D-04, 0.1530D-04,
26147      #    0.9963D-05, 0.6531D-05, 0.4309D-05, 0.2863D-05, 0.1913D-05,
26148      #    0.1284D-05, 0.8649D-06, 0.5844D-06, 0.3957D-06, 0.2683D-06,
26149      #    0.1823D-06, 0.1239D-06, 0.8424D-07, 0.5732D-07, 0.3902D-07,
26150      #    0.2657D-07/
26151
26152       data (calcpts(j,35), j = 1,neta) /0.8031D-25, 0.2055D-24,
26153      #    0.7368D-24, 0.2908D-23, 0.1125D-22, 0.4308D-22, 0.1656D-21,
26154      #    0.6338D-21, 0.2427D-20, 0.9300D-20, 0.3562D-19, 0.1365D-18,
26155      #    0.5229D-18, 0.2004D-17, 0.7674D-17, 0.2940D-16, 0.1126D-15,
26156      #    0.4311D-15, 0.1650D-14, 0.6316D-14, 0.2415D-13, 0.9231D-13,
26157      #    0.3524D-12, 0.1342D-11, 0.5100D-11, 0.1931D-10, 0.7267D-10,
26158      #    0.2714D-09, 0.1002D-08, 0.3629D-08, 0.1287D-07, 0.4418D-07,
26159      #    0.1451D-06, 0.4500D-06, 0.1297D-05, 0.3424D-05, 0.8178D-05,
26160      #    0.1755D-04, 0.3384D-04, 0.5884D-04, 0.9319D-04, 0.1357D-03,
26161      #    0.1835D-03, 0.2317D-03, 0.2747D-03, 0.3053D-03, 0.3172D-03,
26162      #    0.3071D-03, 0.2759D-03, 0.2299D-03, 0.1784D-03, 0.1301D-03,
26163      #    0.9017D-04, 0.6026D-04, 0.3936D-04, 0.2540D-04, 0.1635D-04,
26164      #    0.1054D-04, 0.6843D-05, 0.4475D-05, 0.2949D-05, 0.1956D-05,
26165      #    0.1306D-05, 0.8760D-06, 0.5898D-06, 0.3984D-06, 0.2697D-06,
26166      #    0.1828D-06, 0.1242D-06, 0.8441D-07, 0.5740D-07, 0.3906D-07,
26167      #    0.2658D-07/
26168
26169       data (calcpts(j,36), j = 1,neta) /0.5171D-25, 0.1239D-24,
26170      #    0.5018D-24, 0.1958D-23, 0.7728D-23, 0.2945D-22, 0.1128D-21,
26171      #    0.4314D-21, 0.1654D-20, 0.6336D-20, 0.2427D-19, 0.9300D-19,
26172      #    0.3562D-18, 0.1365D-17, 0.5229D-17, 0.2003D-16, 0.7671D-16,
26173      #    0.2937D-15, 0.1124D-14, 0.4303D-14, 0.1646D-13, 0.6290D-13,
26174      #    0.2400D-12, 0.9146D-12, 0.3475D-11, 0.1316D-10, 0.4951D-10,
26175      #    0.1850D-09, 0.6825D-09, 0.2474D-08, 0.8768D-08, 0.3011D-07,
26176      #    0.9891D-07, 0.3068D-06, 0.8843D-06, 0.2336D-05, 0.5582D-05,
26177      #    0.1199D-04, 0.2314D-04, 0.4037D-04, 0.6416D-04, 0.9402D-04,
26178      #    0.1283D-03, 0.1643D-03, 0.1986D-03, 0.2268D-03, 0.2444D-03,
26179      #    0.2475D-03, 0.2343D-03, 0.2065D-03, 0.1694D-03, 0.1295D-03,
26180      #    0.9328D-04, 0.6401D-04, 0.4241D-04, 0.2750D-04, 0.1764D-04,
26181      #    0.1130D-04, 0.7261D-05, 0.4700D-05, 0.3066D-05, 0.2018D-05,
26182      #    0.1337D-05, 0.8915D-06, 0.5976D-06, 0.4023D-06, 0.2717D-06,
26183      #    0.1839D-06, 0.1246D-06, 0.8462D-07, 0.5751D-07, 0.3910D-07,
26184      #    0.2661D-07/
26185
26186       data (calcpts(j,37), j = 1,neta) /0.3531D-25, 0.9543D-25,
26187      #    0.3418D-24, 0.1334D-23, 0.5265D-23, 0.1999D-22, 0.7687D-22,
26188      #    0.2940D-21, 0.1127D-20, 0.4317D-20, 0.1654D-19, 0.6336D-19,
26189      #    0.2427D-18, 0.9299D-18, 0.3563D-17, 0.1365D-16, 0.5226D-16,
26190      #    0.2001D-15, 0.7660D-15, 0.2931D-14, 0.1121D-13, 0.4284D-13,
26191      #    0.1635D-12, 0.6231D-12, 0.2367D-11, 0.8963D-11, 0.3374D-10,
26192      #    0.1260D-09, 0.4650D-09, 0.1688D-08, 0.5974D-08, 0.2051D-07,
26193      #    0.6740D-07, 0.2090D-06, 0.6027D-06, 0.1592D-05, 0.3807D-05,
26194      #    0.8184D-05, 0.1581D-04, 0.2762D-04, 0.4402D-04, 0.6478D-04,
26195      #    0.8898D-04, 0.1151D-03, 0.1411D-03, 0.1646D-03, 0.1824D-03,
26196      #    0.1917D-03, 0.1901D-03, 0.1766D-03, 0.1532D-03, 0.1238D-03,
26197      #    0.9359D-04, 0.6668D-04, 0.4533D-04, 0.2980D-04, 0.1920D-04,
26198      #    0.1225D-04, 0.7807D-05, 0.5000D-05, 0.3227D-05, 0.2100D-05,
26199      #    0.1380D-05, 0.9132D-06, 0.6085D-06, 0.4077D-06, 0.2744D-06,
26200      #    0.1851D-06, 0.1253D-06, 0.8495D-07, 0.5766D-07, 0.3918D-07,
26201      #    0.2664D-07/
26202
26203       data (calcpts(j,38), j = 1,neta) /0.2861D-25, 0.5749D-25,
26204      #    0.2328D-24, 0.9369D-24, 0.3558D-23, 0.1362D-22, 0.5230D-22,
26205      #    0.2003D-21, 0.7674D-21, 0.2940D-20, 0.1127D-19, 0.4317D-19,
26206      #    0.1653D-18, 0.6336D-18, 0.2427D-17, 0.9296D-17, 0.3561D-16,
26207      #    0.1363D-15, 0.5220D-15, 0.1998D-14, 0.7639D-14, 0.2919D-13,
26208      #    0.1114D-12, 0.4245D-12, 0.1613D-11, 0.6107D-11, 0.2298D-10,
26209      #    0.8583D-10, 0.3168D-09, 0.1150D-08, 0.4071D-08, 0.1398D-07,
26210      #    0.4592D-07, 0.1424D-06, 0.4107D-06, 0.1085D-05, 0.2595D-05,
26211      #    0.5583D-05, 0.1080D-04, 0.1887D-04, 0.3015D-04, 0.4449D-04,
26212      #    0.6138D-04, 0.7995D-04, 0.9905D-04, 0.1172D-03, 0.1327D-03,
26213      #    0.1436D-03, 0.1479D-03, 0.1440D-03, 0.1318D-03, 0.1127D-03,
26214      #    0.9003D-04, 0.6732D-04, 0.4752D-04, 0.3204D-04, 0.2091D-04,
26215      #    0.1339D-04, 0.8498D-05, 0.5394D-05, 0.3443D-05, 0.2216D-05,
26216      #    0.1439D-05, 0.9437D-06, 0.6239D-06, 0.4154D-06, 0.2781D-06,
26217      #    0.1870D-06, 0.1262D-06, 0.8540D-07, 0.5789D-07, 0.3930D-07,
26218      #    0.2670D-07/
26219
26220       data (calcpts(j,39), j = 1,neta) /0.1952D-25, 0.4561D-25,
26221      #    0.1587D-24, 0.6522D-24, 0.2424D-23, 0.9308D-23, 0.3564D-22,
26222      #    0.1364D-21, 0.5231D-21, 0.2004D-20, 0.7676D-20, 0.2942D-19,
26223      #    0.1127D-18, 0.4316D-18, 0.1653D-17, 0.6333D-17, 0.2426D-16,
26224      #    0.9288D-16, 0.3557D-15, 0.1361D-14, 0.5205D-14, 0.1989D-13,
26225      #    0.7590D-13, 0.2892D-12, 0.1099D-11, 0.4160D-11, 0.1566D-10,
26226      #    0.5849D-10, 0.2158D-09, 0.7836D-09, 0.2774D-08, 0.9522D-08,
26227      #    0.3129D-07, 0.9705D-07, 0.2799D-06, 0.7395D-06, 0.1769D-05,
26228      #    0.3807D-05, 0.7365D-05, 0.1289D-04, 0.2061D-04, 0.3048D-04,
26229      #    0.4218D-04, 0.5520D-04, 0.6888D-04, 0.8240D-04, 0.9478D-04,
26230      #    0.1048D-03, 0.1112D-03, 0.1125D-03, 0.1080D-03, 0.9752D-04,
26231      #    0.8245D-04, 0.6516D-04, 0.4827D-04, 0.3378D-04, 0.2261D-04,
26232      #    0.1466D-04, 0.9330D-05, 0.5894D-05, 0.3724D-05, 0.2369D-05,
26233      #    0.1521D-05, 0.9858D-06, 0.6455D-06, 0.4263D-06, 0.2835D-06,
26234      #    0.1898D-06, 0.1276D-06, 0.8605D-07, 0.5822D-07, 0.3945D-07,
26235      #    0.2677D-07/
26236
26237       data (calcpts(j,40), j = 1,neta) /0.7491D-26, 0.2667D-25,
26238      #    0.1178D-24, 0.4443D-24, 0.1649D-23, 0.6341D-23, 0.2426D-22,
26239      #    0.9296D-22, 0.3564D-21, 0.1365D-20, 0.5229D-20, 0.2004D-19,
26240      #    0.7675D-19, 0.2940D-18, 0.1127D-17, 0.4316D-17, 0.1653D-16,
26241      #    0.6329D-16, 0.2423D-15, 0.9270D-15, 0.3546D-14, 0.1355D-13,
26242      #    0.5172D-13, 0.1971D-12, 0.7486D-12, 0.2834D-11, 0.1067D-10,
26243      #    0.3984D-10, 0.1471D-09, 0.5338D-09, 0.1893D-08, 0.6488D-08,
26244      #    0.2132D-07, 0.6614D-07, 0.1907D-06, 0.5040D-06, 0.1206D-05,
26245      #    0.2595D-05, 0.5022D-05, 0.8793D-05, 0.1407D-04, 0.2083D-04,
26246      #    0.2891D-04, 0.3795D-04, 0.4760D-04, 0.5738D-04, 0.6674D-04,
26247      #    0.7500D-04, 0.8136D-04, 0.8488D-04, 0.8471D-04, 0.8025D-04,
26248      #    0.7167D-04, 0.6000D-04, 0.4698D-04, 0.3450D-04, 0.2397D-04,
26249      #    0.1593D-04, 0.1026D-04, 0.6498D-05, 0.4085D-05, 0.2571D-05,
26250      #    0.1631D-05, 0.1044D-05, 0.6753D-06, 0.4414D-06, 0.2912D-06,
26251      #    0.1935D-06, 0.1295D-06, 0.8699D-07, 0.5866D-07, 0.3968D-07,
26252      #    0.2688D-07/
26253
26254       data (calcpts(j,41), j = 1,neta) /0.5321D-26, 0.2247D-25,
26255      #    0.7351D-25, 0.2945D-24, 0.1133D-23, 0.4324D-23, 0.1653D-22,
26256      #    0.6333D-22, 0.2427D-21, 0.9299D-21, 0.3563D-20, 0.1365D-19,
26257      #    0.5229D-19, 0.2004D-18, 0.7674D-18, 0.2940D-17, 0.1126D-16,
26258      #    0.4311D-16, 0.1650D-15, 0.6317D-15, 0.2415D-14, 0.9231D-14,
26259      #    0.3524D-13, 0.1342D-12, 0.5102D-12, 0.1931D-11, 0.7269D-11,
26260      #    0.2715D-10, 0.1002D-09, 0.3638D-09, 0.1290D-08, 0.4421D-08,
26261      #    0.1452D-07, 0.4506D-07, 0.1299D-06, 0.3434D-06, 0.8217D-06,
26262      #    0.1769D-05, 0.3423D-05, 0.5997D-05, 0.9603D-05, 0.1423D-04,
26263      #    0.1977D-04, 0.2602D-04, 0.3274D-04, 0.3969D-04, 0.4653D-04,
26264      #    0.5289D-04, 0.5832D-04, 0.6227D-04, 0.6408D-04, 0.6318D-04,
26265      #    0.5922D-04, 0.5238D-04, 0.4346D-04, 0.3375D-04, 0.2460D-04,
26266      #    0.1697D-04, 0.1121D-04, 0.7182D-05, 0.4523D-05, 0.2831D-05,
26267      #    0.1774D-05, 0.1122D-05, 0.7163D-06, 0.4626D-06, 0.3020D-06,
26268      #    0.1989D-06, 0.1321D-06, 0.8830D-07, 0.5931D-07, 0.3999D-07,
26269      #    0.2705D-07/
26270
26271       data (calcpts(j,42), j = 1,neta) /0.1749D-26, 0.1238D-25,
26272      #    0.4942D-25, 0.1999D-24, 0.7656D-24, 0.2949D-23, 0.1128D-22,
26273      #    0.4317D-22, 0.1655D-21, 0.6336D-21, 0.2427D-20, 0.9300D-20,
26274      #    0.3562D-19, 0.1365D-18, 0.5229D-18, 0.2003D-17, 0.7671D-17,
26275      #    0.2937D-16, 0.1124D-15, 0.4303D-15, 0.1646D-14, 0.6290D-14,
26276      #    0.2400D-13, 0.9146D-13, 0.3476D-12, 0.1315D-11, 0.4952D-11,
26277      #    0.1850D-10, 0.6827D-10, 0.2478D-09, 0.8790D-09, 0.3012D-08,
26278      #    0.9895D-08, 0.3069D-07, 0.8855D-07, 0.2340D-06, 0.5598D-06,
26279      #    0.1205D-05, 0.2334D-05, 0.4088D-05, 0.6549D-05, 0.9714D-05,
26280      #    0.1351D-04, 0.1780D-04, 0.2246D-04, 0.2732D-04, 0.3221D-04,
26281      #    0.3692D-04, 0.4119D-04, 0.4472D-04, 0.4710D-04, 0.4792D-04,
26282      #    0.4677D-04, 0.4344D-04, 0.3810D-04, 0.3135D-04, 0.2418D-04,
26283      #    0.1751D-04, 0.1200D-04, 0.7878D-05, 0.5021D-05, 0.3147D-05,
26284      #    0.1961D-05, 0.1225D-05, 0.7718D-06, 0.4916D-06, 0.3168D-06,
26285      #    0.2066D-06, 0.1359D-06, 0.9018D-07, 0.6024D-07, 0.4046D-07,
26286      #    0.2727D-07/
26287
26288       data (calcpts(j,43), j = 1,neta) /0.2703D-26, 0.8444D-26,
26289      #    0.3725D-25, 0.1405D-24, 0.5220D-24, 0.2006D-23, 0.7684D-23,
26290      #    0.2938D-22, 0.1127D-21, 0.4316D-21, 0.1654D-20, 0.6336D-20,
26291      #    0.2427D-19, 0.9298D-19, 0.3562D-18, 0.1365D-17, 0.5226D-17,
26292      #    0.2001D-16, 0.7661D-16, 0.2931D-15, 0.1121D-14, 0.4284D-14,
26293      #    0.1635D-13, 0.6231D-13, 0.2367D-12, 0.8963D-12, 0.3373D-11,
26294      #    0.1260D-10, 0.4650D-10, 0.1689D-09, 0.5988D-09, 0.2055D-08,
26295      #    0.6742D-08, 0.2091D-07, 0.6033D-07, 0.1595D-06, 0.3815D-06,
26296      #    0.8212D-06, 0.1590D-05, 0.2787D-05, 0.4466D-05, 0.6626D-05,
26297      #    0.9219D-05, 0.1217D-04, 0.1538D-04, 0.1875D-04, 0.2219D-04,
26298      #    0.2556D-04, 0.2877D-04, 0.3160D-04, 0.3387D-04, 0.3530D-04,
26299      #    0.3555D-04, 0.3439D-04, 0.3168D-04, 0.2759D-04, 0.2254D-04,
26300      #    0.1727D-04, 0.1243D-04, 0.8470D-05, 0.5531D-05, 0.3507D-05,
26301      #    0.2188D-05, 0.1358D-05, 0.8454D-06, 0.5310D-06, 0.3373D-06,
26302      #    0.2171D-06, 0.1412D-06, 0.9284D-07, 0.6156D-07, 0.4110D-07,
26303      #    0.2759D-07/
26304
26305       data (calcpts(j,44), j = 1,neta) /0.1634D-26, 0.5751D-26,
26306      #    0.2562D-25, 0.9281D-25, 0.3562D-24, 0.1366D-23, 0.5227D-23,
26307      #    0.2003D-22, 0.7679D-22, 0.2940D-21, 0.1127D-20, 0.4317D-20,
26308      #    0.1654D-19, 0.6336D-19, 0.2427D-18, 0.9295D-18, 0.3561D-17,
26309      #    0.1363D-16, 0.5220D-16, 0.1998D-15, 0.7640D-15, 0.2919D-14,
26310      #    0.1114D-13, 0.4245D-13, 0.1612D-12, 0.6107D-12, 0.2298D-11,
26311      #    0.8583D-11, 0.3168D-10, 0.1150D-09, 0.4080D-09, 0.1401D-08,
26312      #    0.4593D-08, 0.1425D-07, 0.4110D-07, 0.1086D-06, 0.2599D-06,
26313      #    0.5595D-06, 0.1084D-05, 0.1899D-05, 0.3044D-05, 0.4518D-05,
26314      #    0.6290D-05, 0.8306D-05, 0.1051D-04, 0.1283D-04, 0.1523D-04,
26315      #    0.1763D-04, 0.1994D-04, 0.2209D-04, 0.2397D-04, 0.2541D-04,
26316      #    0.2622D-04, 0.2621D-04, 0.2516D-04, 0.2301D-04, 0.1991D-04,
26317      #    0.1617D-04, 0.1231D-04, 0.8811D-05, 0.5972D-05, 0.3881D-05,
26318      #    0.2448D-05, 0.1521D-05, 0.9401D-06, 0.5832D-06, 0.3652D-06,
26319      #    0.2314D-06, 0.1486D-06, 0.9657D-07, 0.6342D-07, 0.4202D-07,
26320      #    0.2804D-07/
26321
26322       data (calcpts(j,45), j = 1,neta) /0.1110D-26, 0.4410D-26,
26323      #    0.1734D-25, 0.6595D-25, 0.2443D-24, 0.9300D-24, 0.3569D-23,
26324      #    0.1366D-22, 0.5229D-22, 0.2005D-21, 0.7677D-21, 0.2941D-20,
26325      #    0.1127D-19, 0.4317D-19, 0.1653D-18, 0.6333D-18, 0.2425D-17,
26326      #    0.9288D-17, 0.3557D-16, 0.1361D-15, 0.5205D-15, 0.1989D-14,
26327      #    0.7590D-14, 0.2892D-13, 0.1099D-12, 0.4160D-12, 0.1566D-11,
26328      #    0.5849D-11, 0.2159D-10, 0.7838D-10, 0.2780D-09, 0.9544D-09,
26329      #    0.3129D-08, 0.9708D-08, 0.2801D-07, 0.7400D-07, 0.1771D-06,
26330      #    0.3813D-06, 0.7383D-06, 0.1294D-05, 0.2075D-05, 0.3080D-05,
26331      #    0.4289D-05, 0.5666D-05, 0.7174D-05, 0.8773D-05, 0.1043D-04,
26332      #    0.1210D-04, 0.1375D-04, 0.1533D-04, 0.1677D-04, 0.1800D-04,
26333      #    0.1892D-04, 0.1935D-04, 0.1920D-04, 0.1831D-04, 0.1665D-04,
26334      #    0.1431D-04, 0.1157D-04, 0.8758D-05, 0.6236D-05, 0.4206D-05,
26335      #    0.2719D-05, 0.1709D-05, 0.1056D-05, 0.6505D-06, 0.4023D-06,
26336      #    0.2513D-06, 0.1588D-06, 0.1018D-06, 0.6605D-07, 0.4332D-07,
26337      #    0.2868D-07/
26338
26339       data (calcpts(j,46), j = 1,neta) /0.9015D-27, 0.2622D-26,
26340      #    0.1135D-25, 0.4299D-25, 0.1673D-24, 0.6300D-24, 0.2432D-23,
26341      #    0.9301D-23, 0.3562D-22, 0.1364D-21, 0.5229D-21, 0.2004D-20,
26342      #    0.7676D-20, 0.2940D-19, 0.1127D-18, 0.4316D-18, 0.1653D-17,
26343      #    0.6329D-17, 0.2423D-16, 0.9270D-16, 0.3546D-15, 0.1355D-14,
26344      #    0.5172D-14, 0.1971D-13, 0.7487D-13, 0.2834D-12, 0.1067D-11,
26345      #    0.3984D-11, 0.1471D-10, 0.5340D-10, 0.1893D-09, 0.6503D-09,
26346      #    0.2135D-08, 0.6613D-08, 0.1908D-07, 0.5042D-07, 0.1207D-06,
26347      #    0.2598D-06, 0.5031D-06, 0.8817D-06, 0.1414D-05, 0.2098D-05,
26348      #    0.2924D-05, 0.3864D-05, 0.4895D-05, 0.5991D-05, 0.7128D-05,
26349      #    0.8286D-05, 0.9442D-05, 0.1057D-04, 0.1164D-04, 0.1260D-04,
26350      #    0.1341D-04, 0.1397D-04, 0.1420D-04, 0.1400D-04, 0.1327D-04,
26351      #    0.1200D-04, 0.1027D-04, 0.8253D-05, 0.6219D-05, 0.4407D-05,
26352      #    0.2958D-05, 0.1904D-05, 0.1191D-05, 0.7338D-06, 0.4501D-06,
26353      #    0.2775D-06, 0.1728D-06, 0.1090D-06, 0.6971D-07, 0.4516D-07,
26354      #    0.2959D-07/
26355
26356       data (calcpts(j,47), j = 1,neta) /0.6257D-27, 0.1967D-26,
26357      #    0.7812D-26, 0.2892D-25, 0.1132D-24, 0.4352D-24, 0.1650D-23,
26358      #    0.6303D-23, 0.2431D-22, 0.9296D-22, 0.3559D-21, 0.1364D-20,
26359      #    0.5231D-20, 0.2004D-19, 0.7675D-19, 0.2940D-18, 0.1126D-17,
26360      #    0.4311D-17, 0.1650D-16, 0.6316D-16, 0.2415D-15, 0.9231D-15,
26361      #    0.3524D-14, 0.1342D-13, 0.5101D-13, 0.1930D-12, 0.7269D-12,
26362      #    0.2715D-11, 0.1002D-10, 0.3638D-10, 0.1290D-09, 0.4430D-09,
26363      #    0.1456D-08, 0.4506D-08, 0.1300D-07, 0.3435D-07, 0.8220D-07,
26364      #    0.1770D-06, 0.3428D-06, 0.6008D-06, 0.9632D-06, 0.1430D-05,
26365      #    0.1992D-05, 0.2634D-05, 0.3337D-05, 0.4088D-05, 0.4869D-05,
26366      #    0.5667D-05, 0.6470D-05, 0.7263D-05, 0.8031D-05, 0.8751D-05,
26367      #    0.9393D-05, 0.9915D-05, 0.1026D-04, 0.1037D-04, 0.1016D-04,
26368      #    0.9585D-05, 0.8626D-05, 0.7344D-05, 0.5877D-05, 0.4409D-05,
26369      #    0.3110D-05, 0.2079D-05, 0.1332D-05, 0.8301D-06, 0.5094D-06,
26370      #    0.3114D-06, 0.1912D-06, 0.1188D-06, 0.7476D-07, 0.4773D-07,
26371      #    0.3089D-07/
26372
26373       data (calcpts(j,48), j = 1,neta) /0.1929D-27, 0.1065D-26,
26374      #    0.5550D-26, 0.2037D-25, 0.7890D-25, 0.2965D-24, 0.1121D-23,
26375      #    0.4320D-23, 0.1657D-22, 0.6348D-22, 0.2428D-21, 0.9311D-21,
26376      #    0.3563D-20, 0.1364D-19, 0.5229D-19, 0.2003D-18, 0.7671D-18,
26377      #    0.2937D-17, 0.1124D-16, 0.4303D-16, 0.1646D-15, 0.6290D-15,
26378      #    0.2400D-14, 0.9146D-14, 0.3475D-13, 0.1316D-12, 0.4952D-12,
26379      #    0.1850D-11, 0.6827D-11, 0.2478D-10, 0.8790D-10, 0.3018D-09,
26380      #    0.9918D-09, 0.3071D-08, 0.8855D-08, 0.2340D-07, 0.5601D-07,
26381      #    0.1206D-06, 0.2335D-06, 0.4093D-06, 0.6563D-06, 0.9747D-06,
26382      #    0.1358D-05, 0.1796D-05, 0.2276D-05, 0.2789D-05, 0.3322D-05,
26383      #    0.3870D-05, 0.4424D-05, 0.4977D-05, 0.5518D-05, 0.6041D-05,
26384      #    0.6524D-05, 0.6949D-05, 0.7287D-05, 0.7499D-05, 0.7535D-05,
26385      #    0.7349D-05, 0.6900D-05, 0.6183D-05, 0.5241D-05, 0.4176D-05,
26386      #    0.3120D-05, 0.2192D-05, 0.1459D-05, 0.9318D-06, 0.5783D-06,
26387      #    0.3536D-06, 0.2154D-06, 0.1319D-06, 0.8168D-07, 0.5130D-07,
26388      #    0.3269D-07/
26389
26390       data (calcpts(j,49), j = 1,neta) /0.1342D-27, 0.7954D-27,
26391      #    0.3825D-26, 0.1374D-25, 0.5324D-25, 0.2004D-24, 0.7458D-24,
26392      #    0.2908D-23, 0.1111D-22, 0.4303D-22, 0.1656D-21, 0.6326D-21,
26393      #    0.2435D-20, 0.9320D-20, 0.3557D-19, 0.1364D-18, 0.5224D-18,
26394      #    0.2001D-17, 0.7657D-17, 0.2933D-16, 0.1121D-15, 0.4284D-15,
26395      #    0.1635D-14, 0.6231D-14, 0.2367D-13, 0.8962D-13, 0.3373D-12,
26396      #    0.1260D-11, 0.4650D-11, 0.1689D-10, 0.5988D-10, 0.2057D-09,
26397      #    0.6758D-09, 0.2094D-08, 0.6033D-08, 0.1595D-07, 0.3816D-07,
26398      #    0.8215D-07, 0.1592D-06, 0.2789D-06, 0.4472D-06, 0.6641D-06,
26399      #    0.9252D-06, 0.1224D-05, 0.1551D-05, 0.1901D-05, 0.2267D-05,
26400      #    0.2642D-05, 0.3023D-05, 0.3403D-05, 0.3783D-05, 0.4152D-05,
26401      #    0.4505D-05, 0.4829D-05, 0.5111D-05, 0.5328D-05, 0.5454D-05,
26402      #    0.5454D-05, 0.5297D-05, 0.4953D-05, 0.4421D-05, 0.3732D-05,
26403      #    0.2963D-05, 0.2205D-05, 0.1544D-05, 0.1024D-05, 0.6512D-06,
26404      #    0.4026D-06, 0.2453D-06, 0.1489D-06, 0.9093D-07, 0.5616D-07,
26405      #    0.3519D-07/
26406
26407       data (dlaeta(j), j = 1,neta) /
26408      # -6d0, -5.83333333d0, -5.66666667d0, -5.5d0, -5.33333333d0,
26409      # -5.16666667d0, -5d0, -4.83333333d0, -4.66666667d0, -4.5d0, 
26410      # -4.33333333d0, -4.16666667d0, -4d0, -3.83333333d0, 
26411      # -3.66666667d0, -3.5d0, -3.33333333d0, -3.16666667d0, -3d0, 
26412      # -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
26413      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
26414      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0,
26415      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
26416      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
26417      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
26418      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
26419      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
26420      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
26421      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0, 5.16666667d0, 
26422      #  5.33333333d0, 5.5d0, 5.66666667d0, 5.83333333d0, 6d0/
26423
26424       data (dlaxi(j), j = 1,nxi) /
26425      # -3d0, -2.83333333d0, -2.66666667d0, -2.5d0, -2.33333333d0,
26426      # -2.16666667d0, -2d0, -1.83333333d0, -1.66666667d0, -1.5d0, 
26427      # -1.33333333d0, -1.16666667d0, -1d0, -0.83333333d0, -0.66666667d0, 
26428      # -0.5d0, -0.33333333d0, -0.16666667d0, 0d0, 0.16666667d0, 
26429      #  0.33333333d0, 0.5d0, 0.66666667d0, 0.83333333d0, 1d0, 
26430      #  1.16666667d0, 1.33333333d0, 1.5d0, 1.66666667d0, 1.83333333d0,
26431      #  2d0, 2.16666667d0, 2.33333333d0, 2.5d0, 2.66666667d0,
26432      #  2.83333333d0, 3d0, 3.16666667d0, 3.33333333d0, 3.5d0, 
26433      #  3.66666667d0, 3.83333333d0, 4d0, 4.16666667d0, 4.33333333d0, 
26434      #  4.5d0, 4.66666667d0, 4.83333333d0, 5d0/
26435
26436       dleta = dlog10(eta)
26437       dlxi = dlog10(xi)
26438       if (dlxi .le. dlaxi(1)) dlxi = dlaxi(1)
26439       if (dlxi .ge. dlaxi(nxi)) dlxi = dlaxi(nxi)
26440       if (dleta .ge. dlaeta(neta)) dleta = dlaeta(neta)
26441       if (dleta .le. dlaeta(1)) dleta = dlaeta(1)
26442       call locate(dlaeta,neta, dleta, ieta)
26443       call locate(dlaxi, nxi, dlxi, ixi)
26444 c     interpolating between the appropriate points
26445       delxi = 1d0/6d0
26446       deleta = 1d0/6d0
26447 c  lagrange 3-pt.
26448       if (ixi .le. 2) ixi = 2
26449       if (ixi .ge. 48) ixi = 48
26450       if (ieta .le. 2) ieta = 2
26451       if (ieta .ge. 72) ieta = 72
26452       pxi = (dlxi - dlaxi(ixi))/delxi
26453       f(-1) = pxi*(pxi-1d0)/2d0*calcpts(ieta-1,ixi-1) +
26454      #     (1d0 - pxi**2)*calcpts(ieta-1,ixi) +
26455      #     pxi*(pxi+1d0)/2d0*calcpts(ieta-1,ixi+1)
26456       f(0) = pxi*(pxi-1d0)/2d0*calcpts(ieta,ixi-1) +
26457      #     (1d0 - pxi**2)*calcpts(ieta,ixi) +
26458      #     pxi*(pxi+1d0)/2d0*calcpts(ieta,ixi+1)
26459       f(1) = pxi*(pxi-1d0)/2d0*calcpts(ieta+1,ixi-1) +
26460      #     (1d0 - pxi**2)*calcpts(ieta+1,ixi) +
26461      #     pxi*(pxi+1d0)/2d0*calcpts(ieta+1,ixi+1)
26462       peta = (dleta - dlaeta(ieta))/deleta
26463       h1_LLq = peta*(peta-1d0)/2d0*f(-1) +
26464      #     (1d0 - peta**2)*f(0) +
26465 CMB  #     + peta*(peta+1d0)/2d0*f(1)
26466      #     peta*(peta+1d0)/2d0*f(1)
26467       return
26468       end
26469
26470
26471 CDECK  ID>, QCUTIL.
26472
26473 CDECK  ID>, QNMACRO.
26474
26475 C     ==================================================
26476       SUBROUTINE QNMACRO(lun,name,isym,xx,yy,ee,np,text)
26477 C     ==================================================
26478  
26479       implicit double precision (A-H,O-Z)
26480
26481       character*(*) name
26482       character*(*) text
26483       dimension     xx(*), yy(*), ee(*)
26484       dimension     luns(50)
26485
26486       data nluns,luns /0,50*0/
26487
26488       nn    = max(np,0)
26489       lseen = 0
26490       do i = 1,nluns
26491         if(luns(i).eq.lun) lseen = 1
26492       enddo
26493
26494       if(lseen.eq.0) then
26495
26496         nluns = min(nluns+1,50)
26497         luns(nluns) = lun
26498
26499         write(lun,*) ' '
26500         write(lun,'(''*'',60(''-''))')
26501         write(lun,*) ' macro qnplot'
26502         write(lun,'(''*'',60(''-''))')
26503         write(lun,'(''* 1=opt  2=sym  3=xmin  4=xmax'',
26504      +              ''  5=ymin  6=ymax  7=size  8=npt'')')
26505         write(lun,'(''*'',60(''-''))')
26506         write(lun,*) ' '
26507         write(lun,*) ' if [1].eq.h then'
26508         write(lun,'('' mess 1=opt 2=sym 3=xmin 4=xmax'',
26509      +              '' 5=ymin 6=ymax 7=size 8=npt'')')
26510         write(lun,*) '   goto klaar'
26511         write(lun,*) ' elseif [1].eq.s  then'
26512         write(lun,*) '   if [8].le.0 goto klaar'
26513         write(lun,*) ' elseif [8].eq.0 then'
26514         write(lun,*) '   goto klaar'
26515         write(lun,*) ' else'
26516         write(lun,*) '   null [3] [4] [5] [6]'
26517         write(lun,*) '   if [8].lt.0 goto klaar'
26518         write(lun,*) ' endif'
26519         write(lun,*) ' if [2].lt.20  then'
26520         write(lun,*) '   set dmod abs([2])'
26521         write(lun,*) '   if [2].gt.0 then'
26522         write(lun,*) '     graph   [8] xx yy C'
26523         write(lun,*) '   endif'
26524         write(lun,*) '   if [2].lt.0 then'
26525         write(lun,*) '     sigma up=yy+ey'
26526         write(lun,*) '     sigma dn=yy-ey'
26527         write(lun,*) '     graph   [8] xx up C'
26528         write(lun,*) '     graph   [8] xx dn C'
26529         write(lun,*) '   endif'
26530         write(lun,*) ' else'
26531         write(lun,*) '   set dmod 1'
26532         write(lun,*) '   hplot/errors xx yy ex ey    [8] [2] [7]'
26533         write(lun,*) ' endif'
26534         write(lun,*) ' '
26535         write(lun,*) ' klaar:'
26536         write(lun,*) ' '
26537         write(lun,*) ' return'
26538
26539       endif
26540
26541       if(nn.le.0) then
26542
26543         xmin = 0.
26544         xmax = 0.
26545         ymin = 0.
26546         ymax = 0.
26547
26548       else
26549
26550         xmin = xx(1)
26551         xmax = xx(1)
26552         ymin = yy(1)
26553         ymax = yy(1)
26554         do i = 2,nn
26555           xmin = min(xmin,xx(i))
26556           xmax = max(xmax,xx(i))
26557           ymin = min(ymin,yy(i))
26558           ymax = max(ymax,yy(i))
26559         enddo
26560
26561         dx   = xmax-xmin
26562         xmin = xmin-0.1*dx
26563         xmax = xmax+0.1*dx
26564
26565         dy   = ymax-ymin
26566         ymin = ymin-0.1*dy
26567         ymax = ymax+0.1*dy
26568
26569       endif
26570
26571       write(lun,*) ' '
26572       write(lun,'(''*'',60(''-''))')
26573       if(isym.lt.10) then
26574         write(lun,'('' macro '',A,'' 1=n 2='',I1,'' _'')') name,isym
26575       elseif(isym.lt.100) then
26576         write(lun,'('' macro '',A,'' 1=n 2='',I2,'' _'')') name,isym
26577       else
26578         write(lun,'('' macro '',A,'' 1=n 2='',I3,'' _'')') name,isym
26579       endif
26580       if(nn.lt.10) then
26581         write(lun,'('' 3='',E9.3,'' 4='',E9.3,
26582      +              '' 5='',E9.3,'' 6='',E9.3,'' 7=0.28 8='',I1)')
26583      +              xmin,xmax,ymin,ymax,nn
26584       elseif(nn.lt.100) then
26585         write(lun,'('' 3='',E9.3,'' 4='',E9.3,
26586      +              '' 5='',E9.3,'' 6='',E9.3,'' 7=0.28 8='',I2)')
26587      +              xmin,xmax,ymin,ymax,nn
26588       elseif(nn.lt.1000) then
26589         write(lun,'('' 3='',E9.3,'' 4='',E9.3,
26590      +              '' 5='',E9.3,'' 6='',E9.3,'' 7=0.28 8='',I3)')
26591      +              xmin,xmax,ymin,ymax,nn
26592       else
26593         write(lun,'('' 3='',E9.3,'' 4='',E9.3,
26594      +              '' 5='',E9.3,'' 6='',E9.3,'' 7=0.28 8='',I4)')
26595      +              xmin,xmax,ymin,ymax,nn
26596       endif
26597       write(lun,'(''*'',60(''-''))')
26598 *     write(lun,*) ' '
26599       write(lun,'(''*  '',A)') text
26600   
26601       if(nn.le.0) goto 500
26602
26603       write(lun,*) ' '
26604       if(nn.le.9) then
26605         write(lun,'('' ve/cr xx('',I1,'') r _'')') nn
26606       elseif(nn.le.99) then
26607         write(lun,'('' ve/cr xx('',I2,'') r _'')') nn
26608       elseif(nn.le.999) then
26609         write(lun,'('' ve/cr xx('',I3,'') r _'')') nn
26610       elseif(nn.le.9999) then
26611         write(lun,'('' ve/cr xx('',I4,'') r _'')') nn
26612       endif
26613       do i1 = 1,nn,6
26614         i2 = i1+5
26615         if(i2.lt.nn) then
26616           write(lun,'(6E12.4,'' _'')') (xx(i),i=i1,i2)
26617         else
26618           write(lun,'(6E12.4       )') (xx(i),i=i1,nn)
26619         endif
26620       enddo
26621
26622 *     write(lun,*) ' '
26623       if(nn.le.9) then
26624         write(lun,'('' ve/cr ex('',I1,'') r '',I1,
26625      +              ''*0'')') nn,nn
26626       elseif(nn.le.99) then
26627         write(lun,'('' ve/cr ex('',I2,'') r '',I2,
26628      +              ''*0'')') nn,nn
26629       elseif(nn.le.999) then
26630         write(lun,'('' ve/cr ex('',I3,'') r '',I3,
26631      +              ''*0'')') nn,nn
26632       elseif(nn.le.9999) then
26633         write(lun,'('' ve/cr ex('',I4,'') r '',I4,
26634      +              ''*0'')') nn,nn
26635       endif
26636
26637 *     write(lun,*) ' '
26638       if(nn.le.9) then
26639         write(lun,'('' ve/cr yy('',I1,'') r _'')') nn
26640       elseif(nn.le.99) then
26641         write(lun,'('' ve/cr yy('',I2,'') r _'')') nn
26642       elseif(nn.le.999) then
26643         write(lun,'('' ve/cr yy('',I3,'') r _'')') nn
26644       elseif(nn.le.9999) then
26645         write(lun,'('' ve/cr yy('',I4,'') r _'')') nn
26646       endif
26647       do i1 = 1,nn,6
26648         i2 = i1+5
26649         if(i2.lt.nn) then
26650           write(lun,'(6E12.4,'' _'')') (yy(i),i=i1,i2)
26651         else
26652           write(lun,'(6E12.4       )') (yy(i),i=i1,nn)
26653         endif
26654       enddo
26655
26656 *     write(lun,*) ' '
26657       if(nn.le.9) then
26658         write(lun,'('' ve/cr ey('',I1,'') r _'')') nn
26659       elseif(nn.le.99) then
26660         write(lun,'('' ve/cr ey('',I2,'') r _'')') nn
26661       elseif(nn.le.999) then
26662         write(lun,'('' ve/cr ey('',I3,'') r _'')') nn
26663       elseif(nn.le.9999) then
26664         write(lun,'('' ve/cr ey('',I4,'') r _'')') nn
26665       endif
26666       do i1 = 1,nn,6
26667         i2 = i1+5
26668         if(i2.lt.nn) then
26669           write(lun,'(6E12.4,'' _'')') (ee(i),i=i1,i2)
26670         else
26671           write(lun,'(6E12.4       )') (ee(i),i=i1,nn)
26672         endif
26673       enddo
26674
26675  500  continue
26676      
26677       write(lun,*) ' '
26678       write(lun,*) ' exec qnplot [1] [2] [3] [4] [5] [6] [7] [8]' 
26679       write(lun,*) ' '
26680       write(lun,*) 'return'
26681
26682
26683       return
26684       end
26685
26686 CDECK  ID>, QNSORT.
26687
26688 C     =================================
26689       SUBROUTINE QNSORT(ARRAY,NIN,NOUT)
26690 C     =================================
26691
26692 C--   Interface routine to CERN library FLPSOR.
26693 C--   Sorts NIN (< 5000) elements of ARRAY in ascending
26694 C--   order into itself. Identical elements are removed
26695 C--   so that NOUT might be < NIN. In this case the elements
26696 C--   NOUT+1, ..., NIN are set to zero on output. 
26697 C--   Note: ARRAY is internally copied to the single precision
26698 C--   array XXX which is copied back again to ARRAY on output.
26699 C--   The double precision thus gets lost.
26700
26701       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
26702
26703       REAL XXX
26704
26705       DIMENSION ARRAY(*)
26706       DIMENSION XXX(5000)
26707
26708       IF(NIN.LE.1) THEN
26709         NOUT = MAX(NIN,0)
26710         RETURN
26711       ENDIF
26712       IF(NIN.GT.5000) THEN
26713         IERR = 1
26714         GOTO 500
26715       ENDIF
26716
26717       DO I = 1,NIN
26718         XXX(I) = ARRAY(I)
26719       ENDDO
26720
26721       CALL FLPSOR_LHA(XXX,NIN)
26722
26723       NOUT = 1
26724       DO I = 2,NIN
26725         IF(XXX(I).GT.XXX(I-1)) THEN
26726           NOUT = NOUT + 1
26727           XXX(NOUT) = XXX(I)
26728         ENDIF
26729       ENDDO
26730
26731       DO I = 1,NOUT
26732         ARRAY(I) = XXX(I)
26733       ENDDO
26734
26735       DO I = NOUT+1,NIN
26736         ARRAY(I) = 0.
26737       ENDDO
26738
26739       RETURN
26740
26741  500  CONTINUE
26742
26743       WRITE(6,'(/'' ------------------------------------'')')
26744       WRITE(6,'( '' QCDNUM error in s/r QNSORT ---> STOP'')')
26745       WRITE(6,'( '' ------------------------------------'')')
26746       WRITE(6,'( '' Input ARRAY(1) :'',E12.5)') ARRAY(1)
26747       WRITE(6,'( ''       NN       :'',I12  )') NIN
26748       WRITE(6,'(/'' NN should be .le. 5000'')')
26749       STOP
26750
26751       END
26752  
26753 CDECK  ID>, QNUCPY.
26754  
26755 C     ========================
26756       SUBROUTINE QNUCPY(A,B,N)
26757 C     ========================
26758  
26759       DOUBLE PRECISION A,B
26760       DIMENSION  A(*),B(*)
26761  
26762       DO 10 I=1,N
26763         B(I) = A(I)
26764   10  CONTINUE
26765  
26766       RETURN
26767       END
26768  
26769 CDECK  ID>, QNVFIL.
26770  
26771 C     ========================
26772       SUBROUTINE QNVFIL(A,N,V)
26773 C     ========================
26774  
26775       DOUBLE PRECISION A,V
26776       DIMENSION  A(*)
26777  
26778       DO 10 I=1,N
26779         A(I) = V
26780   10  CONTINUE
26781  
26782       RETURN
26783       END
26784 C
26785 CDECK  ID>, QNVNUL.
26786  
26787 C     ======================
26788       SUBROUTINE QNVNUL(A,N)
26789 C     ======================
26790  
26791       DOUBLE PRECISION A
26792       DIMENSION  A(*)
26793  
26794       DO 10 I=1,N
26795         A(I) = 0.
26796   10  CONTINUE
26797  
26798       RETURN
26799       END
26800  
26801 CDECK  ID>, QNINUL.
26802  
26803 C     =======================
26804       SUBROUTINE QNINUL(IA,N)
26805 C     =======================
26806  
26807       DIMENSION  IA(*)
26808  
26809       DO 10 I=1,N
26810         IA(I) = 0
26811   10  CONTINUE
26812  
26813       RETURN
26814       END
26815  
26816 CDECK  ID>, QNTRUE.
26817  
26818 C     =======================
26819       SUBROUTINE QNTRUE(LA,N)
26820 C     =======================
26821  
26822       LOGICAL LA
26823       DIMENSION  LA(*)
26824  
26825       DO 10 I=1,N
26826         LA(I) = .TRUE.
26827   10  CONTINUE
26828  
26829       RETURN
26830       END
26831  
26832 CDECK  ID>, QNFALS.
26833  
26834 C     =======================
26835       SUBROUTINE QNFALS(LA,N)
26836 C     =======================
26837  
26838       LOGICAL LA
26839       DIMENSION  LA(*)
26840  
26841       DO 10 I=1,N
26842         LA(I) = .FALSE.
26843   10  CONTINUE
26844  
26845       RETURN
26846       END
26847  
26848 CDECK  ID>, QNVMAX.
26849  
26850 C     ====================================
26851       DOUBLE PRECISION FUNCTION QNVMAX(A,N)
26852 C     ====================================
26853       DOUBLE PRECISION A
26854       DIMENSION  A(*)
26855  
26856       QNVMAX = A(1)
26857       IF(N.LE.1)  RETURN
26858       DO 10 I=2,N
26859         QNVMAX = MAX(A(I),QNVMAX)
26860   10  CONTINUE
26861  
26862       RETURN
26863       END
26864  
26865 CDECK  ID>, MXDFZE.
26866  
26867 C     ====================
26868       FUNCTION MXDFZE(A,N)
26869 C     ====================
26870  
26871       DOUBLE PRECISION A,V
26872       DIMENSION  A(*)
26873  
26874       IF(N.LE.1) THEN
26875         MXDFZE = 1
26876       ELSE
26877         V = A(1)
26878         DO 10 I=2,N
26879           V = MAX(A(I),V)
26880   10    CONTINUE
26881         DO 20 I=1,N
26882           IF(A(I).EQ.V) MXDFZE = I
26883   20    CONTINUE
26884       ENDIF
26885  
26886       RETURN
26887       END
26888  
26889 CDECK  ID>, CURRENT_TIME.
26890
26891 C     ===============================
26892       INTEGER FUNCTION CURRENT_TIME()
26893 C     ===============================
26894  
26895       COMMON/QCSHIT/T1,T2
26896       CHARACTER*8   T1,T2
26897       INTEGER   ITIME,D(2),T(2)
26898       
26899       EQUIVALENCE (T1,D)
26900       EQUIVALENCE (T2,T)
26901  
26902       CALL DATIMH_LHA(D,T)
26903       CALL CONV_TIME(T2,ITIME)
26904  
26905       CURRENT_TIME = ITIME
26906       RETURN
26907       END
26908  
26909 CDECK  ID>, ELAPSED_TIME.
26910
26911 C     =================================
26912       INTEGER FUNCTION ELAPSED_TIME(OT)
26913 C     =================================
26914  
26915       EXTERNAL CURRENT_TIME
26916       INTEGER OT,CT,CURRENT_TIME,IHRO,IMINO,ISECO
26917       INTEGER IHRP,IMINP,ISECP,EHR,EMI,ESE
26918  
26919       CT    = CURRENT_TIME()
26920  
26921       IHRO  = OT/10000
26922       IMINO = (OT-(IHRO*10000))/100
26923       ISECO = (OT-(IHRO*10000)-(IMINO*100))
26924  
26925       IHRP  = CT/10000
26926       IMINP = (CT-(IHRP*10000))/100
26927       ISECP = (CT-(IHRP*10000)-(IMINP*100))
26928  
26929       EHR = IHRP-IHRO
26930       IF (EHR.LT.0) EHR = EHR + 24
26931       EMI = IMINP - IMINO
26932       ESE = ISECP - ISECO
26933  
26934       ELAPSED_TIME = 60*60*EHR + 60*EMI + ESE
26935       RETURN
26936       END
26937  
26938 CDECK  ID>, CONV_TIME.
26939  
26940 C     ================================
26941       SUBROUTINE CONV_TIME(TIME,ITIME)
26942 C     ================================
26943  
26944       CHARACTER*8 TIME
26945       INTEGER     ITIME,IHRS,IMINS,ISECS
26946  
26947       CALL CONV_LHA(TIME(1:2),IHRS)
26948       CALL CONV_LHA(TIME(4:5),IMINS)
26949       CALL CONV_LHA(TIME(7:8),ISECS)
26950  
26951       ITIME = 10000*IHRS+100*IMINS+ISECS
26952       RETURN
26953       END
26954
26955 CDECK  ID>, CONV.
26956  
26957 C     ============================
26958       SUBROUTINE CONV_LHA(ICHAR,ITIME)
26959 C     ============================
26960 C
26961       CHARACTER*2 ICHAR
26962       CHARACTER*1 IT(0:9)
26963       INTEGER     ITIME,I,ITEN,IUNI
26964 C
26965       DATA IT /'0','1','2','3','4','5','6','7','8','9' /
26966       ITEN = 0
26967       IUNI = 0
26968       DO I = 0,9
26969          IF (ICHAR(1:1).EQ.IT(I)) ITEN = I
26970          IF (ICHAR(2:2).EQ.IT(I)) IUNI = I
26971       ENDDO
26972       ITIME = 10*ITEN + IUNI
26973       RETURN
26974       END
26975 C
26976