Introduce and adapt parameters ala arXiv:1101.2231v1
[u/mrichter/AliRoot.git] / TAmpt / AMPT / amptsetdef.f
1       SUBROUTINE AMPTSETDEF
2 c
3 cgsfs added following line to match C++ call
4       double precision xmp, xmu, alpha, rscut2, cutof2
5       double precision smearp,smearh,dpcoal,drcoal,ecritl
6       character*25 amptvn
7       COMMON/HMAIN1/EATT,JATT,NATT,NT,NP,N0,N01,N10,N11
8       COMMON /HPARNT/HIPR1(100), IHPR2(50), HINT1(100), IHNT2(50)
9       COMMON/LUDAT1A/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
10       COMMON /ARPRNT/ ARPAR1(100), IAPAR2(50), ARINT1(100), IAINT2(50)
11       COMMON /AROUT/ IOUT
12       COMMON /AREVT/ IAEVT, IARUN, MISS
13       COMMON /smearz/smearp,smearh
14       COMMON/RNDF77/NSEED
15       common/anim/nevent,isoft,isflag,izpc
16 c     parton coalescence radii in case of string melting:
17       common /coal/dpcoal,drcoal,ecritl
18       common/snn/efrm,npart1,npart2
19 c     initialization value for parton cascade:
20       common /para2/ xmp, xmu, alpha, rscut2, cutof2
21       common /para7/ ioscar,nsmbbbar,nsmmeson
22       common /para8/ idpert,npertd,idxsec
23       common /rndm3/ iseedp
24 c     initialization value for hadron cascade:
25       COMMON /RUN/ NUM
26       common/input1/ MASSPR,MASSTA,ISEED,IAVOID,DT
27       COMMON /INPUT2/ ILAB, MANYB, NTMAX, ICOLL, INSYS, IPOT, MODE, 
28      &   IMOMEN, NFREQ, ICFLOW, ICRHO, ICOU, KPOTEN, KMUL
29       common/oscar1/iap,izp,iat,izt
30       common/oscar2/FRAME,amptvn
31       common/resdcy/NSAV,iksdcy
32 clin-6/2009:
33 c      common/phidcy/iphidcy
34       common/phidcy/iphidcy,pttrig,ntrig,maxmiss
35       common/embed/iembed,pxqembd,pyqembd,xembd,yembd
36       common/popcorn/ipop
37
38       EXTERNAL HIDATA, PYDATA, LUDATA, ARDATA, PPBDAT, zpcbdt
39       SAVE   
40 c****************
41
42 c     flag to select default AMPT or string melting:
43       isoft    = 1              ! ISOFT (D=1): select Default AMPT or String Melting(see below)
44 c     read initialization value for hadron cascade:
45       NTMAX    = 150            ! NTMAX: number of timesteps (D=150), see below
46       DT       = 0.2            ! DT: timestep in fm (hadron cascade time= DT*NTMAX) (D=0.2)
47 c     parj(41) and (42) are a and b parameters in Lund string fragmentation:
48       PARJ(41) = 0.5            ! PARJ(41): parameter a in Lund symmetric splitting function
49       PARJ(42) = 0.9            ! PARJ(42): parameter b in Lund symmetric splitting function
50 c     IHPR2(11)=3 (or 2) allows the popcorn mechanism in PYTHIA and 
51 c     increase the net-baryon stopping in rapidity (value HIJING is 1):
52       ipop      = 1             ! (D=1,yes;0,no) flag for popcorn mechanism(netbaryon stopping)
53 c     PARJ(5) controls the fraction of BMBbar vs BBbar in popcorn:
54       PARJ(5)   = 1.0           ! PARJ(5) to control BMBbar vs BBbar in popcorn (D=1.0)
55 c     shadowing flag in HIJING:
56       IHPR2(6)  = 1             ! shadowing flag (Default=1,yes; 0,no)
57 c     quenching flag in HIJING:
58       IHPR2(4)  = 0             ! quenching flag (D=0,no; 1,yes)
59 c     quenching rate when quenching flag is on (=1.0 GeV/fm):
60       HIPR1(14) = 2.0           ! quenching parameter -dE/dx (GeV/fm) in case quenching flag=1
61 c     Minimum pt of hard or semihard scatterings in HIJING: D=2.0 GeV. 
62       HIPR1(8) = 2.0            ! p0 cutoff in HIJING for minijet productions (D=2.0)
63 c     read initialization value for parton cascade:
64       xmu      = 3.2264d0       ! parton screening mass in fm^(-1) (D=3.2264d0), see below
65       izpc     = 0              ! IZPC: (D=0 forward-angle parton scatterings; 100,isotropic)
66       alpha    = 0.3333d0       ! alpha in parton cascade
67 c     quark coalescence radii in momentum and space for string melting:
68       dpcoal   = 1d6            ! dpcoal in GeV
69       drcoal   = 1d6            ! drcoal in fm
70 c     flag: read in HIJING random # seed at runtime(1) or from input.ampt(D=0):
71       ihjsed   = 0              ! ihjsed: take HIJING seed from below (D=0)or at runtime(11)
72 c     2 seeds for random number generators in HIJING/hadron cascade and ZPC:
73       nseed    = 53153511       ! random seed for HIJING
74       iseedp   = 8              ! random seed for parton cascade
75       iksdcy   = 0              ! flag for Ks0 weak decays (D=0,no; 1,yes)
76       iphidcy  = 1              ! flag for phi decays at end of hadron cascade (D=1,yes; 0,no)
77 c     flag for OSCAR output for final partons and hadrons:
78       ioscar   = 0              ! optional OSCAR output (D=0,no; 1,yes; 2&3,more parton info)
79 clin-5/2008     flag for perturbative treatment of deuterons:
80       idpert   = 0              ! flag for perturbative deuteron calculation (D=0,no; 1or2,yes)
81       npertd   = 1              ! integer factor for perturbative deuterons(>=1 & <=10000)
82       idxsec   = 1              ! choice of cross section assumptions for deuteron reactions
83 clin-6/2009 To select events that have at least 1 high-Pt minijet parton:
84       pttrig   = -7.            ! Pt in GeV: generate events with >=1 minijet above this value
85       maxmiss  = 1000           ! maxmiss (D=1000): maximum # of tries to repeat a HIJING event
86       IHPR2(2) = 3              ! flag to turn off initial and final state radiation (D=3)
87       IHPR2(5) = 1              ! flag to turn off Kt kick (D=1)
88 clin-6/2009 To embed a back-to-back q/qbar pair into each event:
89       iembed   = 0              ! flag to turn on quark pair embedding (D=0,no; 1to4:yes)
90       pxqembd  = 7.             ! Initial Px and Py values (GeV) of the embedded quark (u or d)
91       pyqembd  = 0.
92       xembd    = 0.             ! Initial x & y values (fm) of the embedded back-to-back q/qbar
93       yembd    = 0.
94       nsembd   = 1              ! nsembd(D=0), psembd (in GeV),tmaxembd (in radian).
95       psembd   = 5.
96       tmaxembd = 0.
97 clin-7/2009 Allow modification of nuclear shadowing:
98       ishadow  = 0              ! Flag to enable users to modify shadowing (D=0,no; 1,yes)
99       dshadow  = 1.d0           ! Factor used to modify nuclear shadowing
100 c
101       RETURN
102       END
103
104 c$$$%%%%%%%%%% Further explanations:
105 c$$$ISOFT:  1 Default, 
106 c$$$        4 String Melting.
107 c$$$PARJ(41) & (42): 2.2 & 0.5/GeV^2 used for heavy ion (Au+Au, Pb+Pb) collisions,
108 c$$$        while the HIJING values (0.5 & 0.9/GeV^2) describe well 
109 c$$$        Nch in pp collisions and are used for d-Au collisions.
110 c$$$NTMAX:      number of time-steps for hadron cascade. 
111 c$$$    Use a large value (e.g. 1000) for HBT studies in heavy ion collisions.
112 c$$$    Using NTMAX=3 effectively turns off hadronic cascade.
113 c$$$parton screening mass (in 1/fm): its square is inversely proportional to 
114 c$$$    the parton cross section. Use D=3.2264d0 for 3mb cross section, 
115 c$$$    and 2.2814d0 for 6mb. Using 1d4 effectively turns off parton cascade.
116 c$$$ihjsed: if =11, take HIJING random seed at runtime so that 
117 c$$$    every run may be automatically different (see file 'exec').
118 c$$$iksdcy: flag for Ks0 weak decays for comparison with data.
119 c$$$iphidcy: flag for phi meson decays at the end of hadron cascade for comparison 
120 c$$$    with data; default is yes; use 0 to turn off these decays. 
121 c$$$    Note: phi meson decay during hadron cascade is always enabled.
122 c$$$ioscar:     0 Dafault,
123 c$$$    1 Write output in the OSCAR format,
124 c$$$    2 Write out the complete parton information 
125 c$$$            (ana/parton-initial-afterPropagation.dat)
126 c$$$            right after string melting (before parton cascade),
127 c$$$    3 Write out several more files on parton information (see readme).
128 c$$$idpert:     flag for perturbative deuteron and antideuteron calculations 
129 c$$$    with results in ana/ampt_pert.dat:
130 c$$$    0 No perturbative calculations,
131 c$$$    1 Trigger a production of NPERTD perturbative deuterons 
132 c$$$            in each NN collision,   
133 c$$$    2 Trigger a production of NPERTD perturbative deuterons only in 
134 c$$$            an NN collision where a conventional deuteron is produced.
135 c$$$    Note: conventional deuteron calculations are always performed
136 c$$$            with results in ana/ampt.dat.
137 c$$$NPERTD:     number of perturbative deuterons produced in each triggered collision;
138 c$$$    setting it to 0 turns off perturbative deuteron productions.
139 c$$$idxsec: choose a cross section model for deuteron inelastic/elastic collisions:
140 c$$$    1: same |matrix element|**2/s (after averaging over initial spins 
141 c$$$            and isospins) for B+B -> deuteron+meson at the same sqrt(s);
142 c$$$    2: same |matrix element|**2/s for B+B -> deuteron+meson 
143 c$$$            at the same sqrt(s)-threshold;
144 c$$$    3: same |matrix element|**2/s for deuteron+meson -> B+B 
145 c$$$            at the same sqrt(s);
146 c$$$    4: same |matrix element|**2/s for deuteron+meson -> B+B 
147 c$$$            at the same sqrt(s)-threshold;
148 c$$$    1 or 3 also chooses the same cross section for deuteron+meson or baryon
149 c$$$            elastic collision at the same sqrt(s);
150 c$$$    2 or 4 also chooses the same cross section for deuteron+meson or baryon
151 c$$$            elastic collision at the same sqrt(s)-threshold.
152 c$$$%%%%%%%%%% For jet studies:
153 c$$$pttrig:     generate events with at least 1 initial minijet parton above this Pt 
154 c$$$    value, otherwise repeat HIJING event until reaching maxmiss tries;
155 c$$$    use a negative value to disable this requirement and get normal events.
156 c$$$maxmiss: maximum number of tries for the repetition of a HIJING event to obtain
157 c$$$    a minijet above the Pt value of pttrig; increase maxmiss if some events
158 c$$$    fail to generate at least 1 initial minijet parton above pttrig. 
159 c$$$    it is safer to set a large value for high pttrig and/or large b value
160 c$$$    and/or smaller colliding nuclei.
161 c$$$IHPR2(2): flag to turn off initial and final state radiation: 
162 c$$$    0 both radiation off, 1 only final off, 2 only initial off, 3 both on.
163 c$$$IHPR2(5): flag to turn off Pt kick due to soft interactions: 0 off, 1 on.
164 c$$$    Setting both IHPR2(2) and IHPR2(5) to zero makes it more likely to 
165 c$$$    have two high-Pt minijet partons that are close to back-to-back.
166 c$$$%%%%%%%%%% To embed a back-to-back light q/qbar jet pair 
167 c$$$%%%%%%%%%%  and a given number of soft pions along each jet into each event:
168 c$$$iembed: flag to turn on quark pair embedding: 
169 c$$$        1: on with fixed position(xembd,pembd) and Pt(pxqembd,pyqembd);
170 c$$$        2: on with fixed position(xembd,pembd) and random azimuthal angle
171 c$$$         with Pt-magnitude given by sqrt(pxqembd^2+pyqembd^2); 
172 c$$$        3: on with random position and fixed Pt(pxqembd,pyqembd);
173 c$$$        4: on with random position and random random azimuthal angle
174 c$$$         with Pt-magnitude given by sqrt(pxqembd^2+pyqembd^2); 
175 c$$$     for iembed=3 or 4: need a position file "embed-jet-xy.txt";
176 c$$$    Other integers: off.
177 c$$$pxqembd, pyqembd: sqrt(pxqembd^2+pyqembd^2) > 70MeV/c is required;
178 c$$$    the embedded quark and antiquark have pz=0.
179 c$$$xembd, yembd: the embedded quark and antiquark jets have z=0 initially. Note: 
180 c$$$    the x-axis is defined as the direction along the impact parameter.
181 c$$$nsembd:     number of soft pions to be embedded with each high-Pt parton
182 c$$$    in the embedded jet pair.
183 c$$$psembd: Momentum of each embedded soft pion in GeV.
184 c$$$tmaxembd: maximum angle(rad) of embedded soft pions relative to high-Pt parton.
185 c$$$%%%%%%%%%% User modification of nuclear shadowing:
186 c$$$ishadow: set to 1 to enable users to adjust nuclear shadowing
187 c$$$    provided the shadowing flag IHPR2(6) is turned on; default value is 0. 
188 c$$$dshadow: valid when ishadow=1; this parameter modifies the HIJING shadowing
189 c$$$    parameterization Ra(x,r)==1+fa(x,r) via Ra(x,r)==1+fa(x,r)*dshadow,  
190 c$$$    so the value of 0.d0 turns off shadowing 
191 c$$$    and the value of 1.d0 uses the default HIJING shadowing;  
192 c$$$    currently limited to 0.d0<=dshadow<=1.d0 to make sure Ra(x,r)>0.