]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PYTHIA6/pdf_alice.F
STRUCTM corrections for pA
[u/mrichter/AliRoot.git] / PYTHIA6 / pdf_alice.F
CommitLineData
2eef49c0 1C... ALICE interface to PDFLIB with possibility to select nuclear structure
2C... functions.
3C...
4C... The MSTP array in the PYPARS common block is used to enable and
5C... select the nuclear structure functions.
6C... MSTP(52) : (D=1) choice of proton and nuclear structure-function library
7C... =1: internal PYTHIA acording to MSTP(51)
8C... =2: PDFLIB proton s.f., with MSTP(51) = 1000xNGROUP+NSET
9C... MSTP( 51) = 1000xNPGROUP+NPSET
10C... MSTP(151) = 1000xNAGROUP+NASET
11C... MSTP(192) : Mass number of nucleus side 1
12C... MSTP(193) : Mass number of nucleus side 2
13C...
14C...
15C... MINT(124) : side (1 or 2)
16
17
18 SUBROUTINE PDFSET_ALICE(PARM, VALUE)
19C...
20 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
21 IMPLICIT INTEGER(I-N)
81935ff8 22C...Interface to PDFLIB.
23 COMMON/LW50512/QCDL4,QCDL5
24 SAVE /LW50512/
25 DOUBLE PRECISION QCDL4,QCDL5
26 COMMON/LW50513/XMIN,XMAX,Q2MIN,Q2MAX
27 SAVE /LW50513/
28 DOUBLE PRECISION XMIN,XMAX,Q2MIN,Q2MAX
29C...
30 COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
2eef49c0 31 COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
32 DOUBLE PRECISION VALUE(20)
33 CHARACTER*20 PARM(20)
34 write(6,*) MSTP(52)
35 write(6,*) PARM
36 write(6,*) VALUE
37
38 IF (MSTP(192) .GT. 0 .AND. MSTP(193) .GT. 0) THEN
39 PARM(5)='NATYPE'
40 VALUE(5)=4
41 PARM(6)='NAGROUP'
42 VALUE(6)=MSTP(191)/1000
43 PARM(7)='NASET'
44 VALUE(7)=MOD(MSTP(191),1000)
81935ff8 45 CALL PDFSET(PARM,VALUE,
46 > MSTU(11),MSTP(51),MSTP(53),MSTP(55),
47 > QCDL4,QCDL5,
48 > XMIN,XMAX,Q2MIN,Q2MAX)
66f02a7f 49
20e47f08 50 IF (MSTP(194) .EQ. 0) THEN
51 CALL SETLHAPARM("EKS98")
66f02a7f 52 ELSE IF (MSTP(194) .EQ. 9) THEN
53 CALL SETLHAPARM("EPS09LO")
54 ELSE IF (MSTP(194) .EQ. 19) THEN
55 CALL SETLHAPARM("EPS09NLO")
56 ELSE IF (MSTP(194) .EQ. 8) THEN
20e47f08 57 CALL SETLHAPARM("EPS08")
66f02a7f 58 ELSE
59 CALL SETLHAPARM("EPS09LO")
20e47f08 60 ENDIF
66f02a7f 61 ELSE
2eef49c0 62 write(6,*) "-> pdfset"
81935ff8 63 CALL PDFSET(PARM,VALUE,
64 > MSTU(11),MSTP(51),MSTP(53),MSTP(55),
65 > QCDL4,QCDL5,
66 > XMIN,XMAX,Q2MIN,Q2MAX)
2eef49c0 67 ENDIF
68 write(6,*) "done"
69 END
70
71
72
73 SUBROUTINE STRUCTM_ALICE
74 + (XX,QQ,UPV,DNV,USEA,DSEA,STR,CHM,BOT,TOP,GL)
75C...
76 IMPLICIT DOUBLE PRECISION(A-H, O-Z)
77 IMPLICIT INTEGER(I-N)
78 COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
79 COMMON/PYINT1/MINT(400),VINT(400)
80C write(6,*) "structm_alice->"
81 IF (MSTP(192) .GT. 0 .AND. MSTP(193) .GT. 0) THEN
82 A=MSTP(191+MINT(124))
83C write(6,*) mint(124), "-> structa ", A
84 CALL STRUCTA(XX,QQ,A,UPV,DNV,USEA,DSEA,STR,CHM,BOT,TOP,GL)
85 ELSE
86C write(6,*) mint(124), "-> structm "
87 CALL STRUCTM(XX,QQ,UPV,DNV,USEA,DSEA,STR,CHM,BOT,TOP,GL)
88 ENDIF
89 END
90
91