This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / PDF / tpdf / testpdg.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.2 1996/10/30 08:32:54 cernlib
6* Version 7.04
7*
8* Revision 1.1.1.1 1996/04/12 15:30:17 plothow
9* Version 7.01
10*
11*
12#include "pdf/pilot.h"
13 PROGRAM TESTPDG
14C
15 PARAMETER (LFLPRT = 2)
16#include "pdf/w5051p2.inc"
17#include "pdf/w5051p7.inc"
18#include "pdf/w50510.inc"
19#include "pdf/w50511.inc"
20#include "pdf/w50512.inc"
21#include "pdf/w50515.inc"
22#include "pdf/w50516.inc"
23#include "pdf/w50517.inc"
24#include "pdf/w505110.inc"
25#include "pdf/w505120.inc"
26#include "pdf/w505122.inc"
27C
28#include "pdf/expdp.inc"
29 + DX,DQ,DXPDF(-6:6),
30 + ALF,ALPHAS2
31 REAL X, Q, UPV, DNV, USEA, DSEA, SSEA, CSEA, BOT, TOP, GLUE
32 DIMENSION XX(3),Q2(3)
33 CHARACTER*20 PARM(NCHDIM)
34#include "pdf/expdp.inc"
35 + VAL(NCHDIM)
36C
37 DATA NXX,XX/3, .002,.140,.700/
38 DATA NQ2,Q2/3, 1.30,24.0,33.5/
39C
40 N6 = L6
41 IFLPRT = LFLPRT
42C
43 CH1=4./9.
44 CH2=1./9.
45C
46 SCAL=SQRT(Q2(2))
47C
48C First call to PDFSET to initialize COMMON/W505120/
49 PARM(1) = 'Init0'
50 VAL(1) = 0.D0
51 CALL PDFSET(PARM,VAL)
52C.
53C Test new PDFLIB versions (4.0 or bigger)
54 DO KPTY = 1,NPTYMX
55 DO KGRO = 1,NGRMAX
56 IF(NPGSMX(KPTY,KGRO) .EQ. 0) GOTO 400
57 DO ISET=-9,NPGSMX(KPTY,KGRO)
58 IF((KPTY*KGRO).NE.1 .AND. ISET.LE.0) GOTO 300
59 WRITE (N6,*) ' ==========================================
60 +================================================================='
61 FIRST=.TRUE.
62 IF(ISET.LE.-8) IFLSET = 0
63 IF(ISET.LT.0) GOTO 50
64 PARM(1) = 'Nptype'
65 VAL(1) = KPTY
66 PARM(2) = 'Ngroup'
67 VAL(2) = KGRO
68 PARM(3) = 'Nset'
69 VAL(3) = ISET
70C... test different NSET writings
71 IF(ISET.GT. 5) PARM(3) = 'NSET'
72 IF(ISET.GT.10) PARM(3) = 'nset'
73 IF(ISET.GT.15) PARM(3) = 'NSet'
74 IF(ISET.GT.20) PARM(3) = 'nsET'
75C
76C... test different NSET writings and INVALID parameter settings
77 50 CONTINUE
78 IF(ISET.GE.0) THEN
79 CALL PDFSET(PARM,VAL)
80 ELSEIF (ISET.EQ.-9) THEN
81 GOTO 100
82 ELSEIF (ISET.EQ.-8) THEN
83 PARM(1) = 'dflm'
84 VAL(1) = 8.D0
85 CALL PDFSET(PARM,VAL)
86 ELSEIF (ISET.EQ.-7) THEN
87 PARM(1) = 'GRV'
88 VAL(1) = 3.D0
89 CALL PDFSET(PARM,VAL)
90 ELSEIF (ISET.EQ.-6) THEN
91 PARM(1) = 'abfkw'
92 VAL(1) = 1.D0
93 CALL PDFSET(PARM,VAL)
94 ELSEIF (ISET.EQ.-5) THEN
95 PARM(1) = 'GRVph'
96 VAL(1) = 2.D0
97 CALL PDFSET(PARM,VAL)
98 ELSEIF (ISET.EQ.-4) THEN
99 PARM(1) = 'Nptype'
100 VAL(1) = -1
101 PARM(2) = 'Ngroup'
102 VAL(2) = KGRO
103 PARM(3) = 'Nset'
104 VAL(3) = ISET
105 CALL PDFSET(PARM,VAL)
106 ELSEIF (ISET.EQ.-3) THEN
107 PARM(1) = 'Nptype'
108 VAL(1) = -1
109 PARM(2) = 'Ngroup'
110 VAL(2) = KGRO
111 PARM(3) = 'Nset'
112 VAL(3) = 0
113 CALL PDFSET(PARM,VAL)
114 ELSEIF (ISET.EQ.-2) THEN
115 PARM(1) = 'Nptype'
116 VAL(1) = KPTY
117 PARM(2) = 'Ngroup'
118 VAL(2) = -1
119 PARM(3) = 'Nset'
120 VAL(3) = ISET
121 CALL PDFSET(PARM,VAL)
122 ELSEIF (ISET.EQ.-1) THEN
123 PARM(1) = 'Nptype'
124 VAL(1) = KPTY
125 PARM(2) = 'Ngroup'
126 VAL(2) = KGRO
127 PARM(3) = 'Nset'
128 VAL(3) = 80
129 CALL PDFSET(PARM,VAL)
130 ENDIF
131C
132 DQ = SCAL
133 ALF = ALPHAS2(DQ)
134 WRITE(N6,4000) NPTYPE,NGROUP,NSET,
135 + SFNAME(NPTYPE,NGROUP,NSET),MODECR(NPTYPE,NGROUP,NSET)
136 WRITE(N6,4001) QCDL4,QCDL5,DQ,ALF
137 4000 FORMAT(/,' Nptype = ',I1,' Ngroup = ',I1,
138 + ' Nset = ',I2,' Name = "',A8,
139 + '" CrMode = ',I3)
140 4001 FORMAT(1H ,' QCDL4, QCDL5 = ',2F7.4,
141 + ' Scale = ',F8.4,' alpha(s) = ',F7.5)
142C
143 100 CONTINUE
144 DO 200 IX=1,NXX
145 X=XX(IX)
146 Q=SQRT(Q2(IX))
147 DX=X
148 DQ=Q
149 CALL PFTOPDG(DX,DQ,DXPDF)
150 DNV=DXPDF(1)
151 UPV=DXPDF(2)
152 DSEA=DXPDF(-1)
153 USEA=DXPDF(-2)
154 SSEA=DXPDF(3)
155 CSEA=DXPDF(4)
156 GLUE=DXPDF(0)
157C
158 FFPU = UPV
159 FFPUB = USEA
160 FFPD = DNV
161 FFPDB = DSEA
162 FFPS = SSEA
163 FFPSB = SSEA
164 FFPC = CSEA
165 FFPCB = CSEA
166 FFNU = FFPD
167 FFNUB = FFPDB
168 FFND = FFPU
169 FFNDB = FFPUB
170 FFNS = FFPS
171 FFNSB = FFPSB
172 FFNC = FFPC
173 FFNCB = FFPCB
174 FFPGL = GLUE
175 SFFP=CH1*(FFPU+FFPUB+FFPC+FFPCB)+CH2*(FFPD+FFPDB+FFPS+FFPSB)
176 SFFN=CH1*(FFNU+FFNUB+FFNC+FFNCB)+CH2*(FFND+FFNDB+FFNS+FFNSB)
177 FACNP = 0.
178 IF (SFFP .NE. 0.) FACNP=SFFN/SFFP
179 UP = FFPU
180 UV = FFPU - FFPUB
181 US = FFPUB
182 DP = FFPD
183 DV = FFPD - FFPDB
184 DS = FFPDB
185 GL = FFPGL
186 F2P = SFFP
187C
188 WRITE(N6,3000)X,Q2(IX),FACNP,UP,UV,US,DP,DV,GL,F2P
189 3000 FORMAT(1X,' X:',F6.3,2X,'Q2:',F5.1,
190 1 3X,'N/P:',F7.4,2X,'UP:',F6.3,
191 1 1X,'UV:',F6.3,1X,'US:',F6.3,1X,'DP:',F6.3,1X,'DV:',F6.3,
192 2 1X,'GL:',F6.3,2X,'F2P:',F7.4)
193C
194 200 CONTINUE
195C
196 IF(ISET.EQ.-9) THEN
197 DQ = SCAL
198 ALF = ALPHAS2(DQ)
199 WRITE(N6,4000) NPTYPE,NGROUP,NSET,
200 + SFNAME(NPTYPE,NGROUP,NSET),MODECR(NPTYPE,NGROUP,NSET)
201 WRITE(N6,4001) QCDL4,QCDL5,DQ,ALF
202 ENDIF
203 CALL PDFSTA
204C
205 300 CONTINUE
206 ENDDO
207 400 CONTINUE
208 ENDDO
209 ENDDO
210C
211 STOP
212 END