]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PDF/tpdf/testpdfo.F
Make-depend automatically generated if not there.
[u/mrichter/AliRoot.git] / PDF / tpdf / testpdfo.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.2  1996/10/30 08:32:53  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 TESTPDFO
14 C
15       PARAMETER (LFLPRT = 2)
16 C+SEQ, W5051P2.
17       PARAMETER (MODEMX = 281)
18 #include "pdf/w5051p7.inc"
19 #include "pdf/w50510.inc"
20 #include "pdf/w50511.inc"
21 #include "pdf/w50512.inc"
22 #include "pdf/w50515.inc"
23 #include "pdf/w50516.inc"
24 #include "pdf/w50517.inc"
25 C
26 #include "pdf/expdp.inc"
27      +       DX,DQ,DUPV,DDNV,DUSEA,DDSEA,DSTR,DCHM,DBOT,DTOP,DGL,
28      +       ALF,ALPHAS2
29       REAL    X, Q, UPV, DNV, USEA, DSEA, SSEA, CSEA, BOT, TOP, GLUE
30       DIMENSION XX(3),Q2(3)
31       CHARACTER*20 PARM(20)
32 #include "pdf/expdp.inc"
33      +       VAL(20)
34 C
35       DATA NXX,XX/3, .002,.140,.700/
36       DATA NQ2,Q2/3, 1.30,24.0,33.5/
37 C
38       N6 = L6
39       IFLPRT = LFLPRT
40 C
41       CH1=4./9.
42       CH2=1./9.
43 C
44       SCAL=SQRT(Q2(2))
45 C
46       DO 300 ISTRUC=-3,MODEMX
47       FIRST=.TRUE.
48       IF(ISTRUC.LE.-2) IFLSET = 0
49 C... test different MODE writings
50       IF(ISTRUC .LT. 0) GOTO 310
51       PARM(1) = 'MODE'
52       IF(ISTRUC.GT.20) PARM(1) = 'Mode'
53       IF(ISTRUC.GT.30) PARM(1) = 'mode'
54       IF(ISTRUC.GT.40) PARM(1) = 'MOde'
55       IF(ISTRUC.GT.50) PARM(1) = 'moDE'
56       VAL(1)  = ISTRUC
57       IF(ISTRUC.EQ. 19                    ) GOTO 300
58       IF(ISTRUC.GE. 48 .AND. ISTRUC.LE. 49) GOTO 300
59       IF(ISTRUC.GE. 61 .AND. ISTRUC.LE. 69) GOTO 300
60       IF(ISTRUC.EQ. 74                    ) GOTO 300
61       IF(ISTRUC.GE. 76 .AND. ISTRUC.LE. 79) GOTO 300
62       IF(ISTRUC.GE. 81 .AND. ISTRUC.LE.105) GOTO 300
63       IF(ISTRUC.GE.108 .AND. ISTRUC.LE.129) GOTO 300
64       IF(ISTRUC.GE.133 .AND. ISTRUC.LE.171) GOTO 300
65       IF(ISTRUC.GE.174 .AND. ISTRUC.LE.179) GOTO 300
66       IF(ISTRUC.GE.183 .AND. ISTRUC.LE.205) GOTO 300
67       IF(ISTRUC.GE.208 .AND. ISTRUC.LE.209) GOTO 300
68       IF(ISTRUC.GE.214 .AND. ISTRUC.LE.219) GOTO 300
69       IF(ISTRUC.GE.223 .AND. ISTRUC.LE.229) GOTO 300
70       IF(ISTRUC.GE.233 .AND. ISTRUC.LE.270) GOTO 300
71       IF(ISTRUC.GE.274 .AND. ISTRUC.LE.279) GOTO 300
72       IF(ISTRUC.GE.282                    ) GOTO 300
73 C
74 C... test different MODE writings and INTEGER settings
75   310 CONTINUE
76                WRITE (N6,*) ' ==========================================
77      +================================================================='
78       IF(ISTRUC.GE.0 .AND. ISTRUC.LE.MODEMX) THEN
79          CALL PDFSET(PARM,VAL)
80       ELSEIF (ISTRUC.EQ.-3) THEN
81          GOTO 5
82       ELSEIF (ISTRUC.EQ.-2) THEN
83          PARM(1) = 'MODE'
84          VAL(1)  = 45.D0
85          CALL PDFSET(PARM,VAL)
86       ELSEIF (ISTRUC.EQ.-1) THEN
87          PARM(1) = 'mode'
88          VAL(1)  = 45.D0
89          CALL PDFSET(PARM,VAL)
90       ENDIF
91 C
92       DQ = SCAL
93       ALF = ALPHAS2(DQ)
94       WRITE (N6,2000) MODE,QCDL4,QCDL5,DQ,ALF
95  2000 FORMAT(/,'  Mode = ',I3,'  QCDL4, QCDL5 = ',2F7.4,
96      +         '  SCALE = ',F7.4,'  alpha(s) = ',F8.5)
97 C
98    5  CONTINUE
99       DO 200 IX=1,NXX
100       X=XX(IX)
101       Q=SQRT(Q2(IX))
102         DX=X
103         DQ=Q
104        CALL STRUCTM(DX,DQ,DUPV,DDNV,DUSEA,DDSEA,DSTR,DCHM,DBOT,DTOP,DGL)
105         UPV=DUPV
106         DNV=DDNV
107         USEA=DUSEA
108         DSEA=DDSEA
109         SSEA=DSTR
110         CSEA=DCHM
111         GLUE=DGL
112 C
113       FFPU = UPV + USEA
114       FFPUB = USEA
115       FFPD = DNV + DSEA
116       FFPDB = DSEA
117       FFPS = SSEA
118       FFPSB = SSEA
119       FFPC = CSEA
120       FFPCB = CSEA
121       FFNU = FFPD
122       FFNUB = FFPDB
123       FFND = FFPU
124       FFNDB = FFPUB
125       FFNS = FFPS
126       FFNSB = FFPSB
127       FFNC = FFPC
128       FFNCB = FFPCB
129       FFPGL = GLUE
130       SFFP=CH1*(FFPU+FFPUB+FFPC+FFPCB)+CH2*(FFPD+FFPDB+FFPS+FFPSB)
131       SFFN=CH1*(FFNU+FFNUB+FFNC+FFNCB)+CH2*(FFND+FFNDB+FFNS+FFNSB)
132       FACNP = 0.
133       IF (SFFP .NE. 0.) FACNP=SFFN/SFFP
134       UP = FFPU
135       UV = FFPU - FFPUB
136       US = FFPUB
137       DP = FFPD
138       DV = FFPD - FFPDB
139       DS = FFPDB
140       GL = FFPGL
141       F2P = SFFP
142 C
143       WRITE(N6,1000)X,Q2(IX),FACNP,UP,UV,US,DP,DV,GL,F2P
144  1000 FORMAT(1X,' X:',F6.3,2X,'Q2:',F5.1,
145      1    3X,'N/P:',F7.4,2X,'UP:',F6.3,
146      1    1X,'UV:',F6.3,1X,'US:',F6.3,1X,'DP:',F6.3,1X,'DV:',F6.3,
147      2    1X,'GL:',F6.3,2X,'F2P:',F7.4)
148 C
149  200  CONTINUE
150 C
151       IF(ISTRUC.EQ.-3) THEN
152         DQ = SCAL
153         ALF = ALPHAS2(DQ)
154         WRITE (N6,2000) MODE,QCDL4,QCDL5,DQ,ALF
155       ENDIF
156       CALL PDFSTA
157 C
158  300  CONTINUE
159 C
160       STOP
161       END