ComputerPhysics Communications ELSEVIER
Computer Physics Communications 109 (1998) 193-206
ZPC 1.0.1: a parton cascade for ultrarelativistic heavy ion collisions * Bin Zhang Physics Department. Columbia University, New York. iVY 1002Z USA
Received 28 September 1997
Abstract A Monte Carlo program solving the Boltzmann equation for patrons via the cascade method is presented. At lnesented. only gluon-gluon elastic scattering is included. The scattering cross section is regulated by a med/um generated screening mass. Three different geometric modes (3-dimensional expansion, l-d expansion, and scattering inside a box) are provided for both the theoretical study of parton transport and the application of the cascade method. Space cell division is available to save the number of computer operations. This improves the speed of the calculation by a large factor and makes the code best optimized for simulation of parton cascade in ultrarelativistic heavy ion collisions. (g) 1998 Elsevier Science B.V.
Keywords: Ulwarelativistic heavy ion collisions; Patrons; BoRzmann equation; Screening mass; Patton e..~.=ade;Cascade schemes; Collision frame; Ordering frame; Ordering time
PROGRAM SUMMARY l~tle of program: ZPC 1.0.1 Catalogue identifier: ADHS Program obtainable from: CPC Program Library, Queen's University of Belfast, N. Ireland, and from: the author at b z h a n g ~ t 1. phys. columbia, edu. Licensing provisions: none
Computers on which it has been tested: Computers: (1) IBM RS/6000; (2) DEC Personal Workstation 600AU; Installations: (I) RHIC Computing Facifity, Bmcklmvon National ~ o r y , USA; (2) Theo~ Program, Nuckar Science Division, Lawrence Berkeley Laboeatory, USA Operating systems under which the program has been tested:
StmOS 4.1.3, AIX !, OSFI V4.0 Programming language used: FORTRAN 77 Memory required to execute with typical data: 1450 words
Computer for which the progrmn is designed and others on which it is operable: Computers: SPARC stations; Insmllatio;,s: Physics Department,
No. of bits in a word: 32
Columbia University, USA
No. of bytes in distributed program, including test data. etc.:
254388 * This work was supported by the Director, Office of Energy Research, Division of Nuclear Physics of the Office of High Energy Nuclear Physics of the U.S. Department of Energy under contract No. DE-FG02-93ER40764.
0010.4655198/$19.00 (~ 1998 Elsevier Science B.V. All rightsreserved. PII S0010-4655 (98) 00010- I
194
B. Zbung/ComputerPhysics Communications109 (1998) 193-2t.%
Distributionformat: uuencoded compressed tar file Keywords: ultrarelativistic heavy ion
collisions, partons, Boltzmann equation, screening mass, patton cascade, cascade schemes, collision frame, ordering frame, ordering time
Natureof physicalproblem in uitrarelativistic heavy ion collisions, perturbative QCD predicts the production of a large number of minijet gluons. The gluon system produced near central rapidity can be considered as an almost longitudinal boost invariant and baryon free system. Ginons inside this hot matter will interact among themselves before hadronization. The effect of the final patton interaction on the global variables should be studied to match the experimental observables to the pQCD predictions.
Methodof solution The space-time evolution of final state partons can he approximated by a Boltzmann equation. To solve the Boltzmann equation,
we employ the cascademethod in which two patrons scatter when their closest distance in a specified frame is less than the interacti3n length. The gluon scattering cross section is regulated by a medium generated screening mass. Space cell division is made to speed up the calculation. Options to do the cascade with and without space cell division are provided to check the applicability of the optimization.
Typicalrunningtime The running time depends on the density of partons and the scattering cross section. For 3-dimensional expansion, when the initial density in the local rest frame is ~ 50/fro 3 (at proper time 0.1 fro/c, with transverse radius 5 fro), and the palton-parton scattering cross section is 3.5 mb, with space cell division, it takes around 6 minutes to finish i event (m 7000 binary collisions) on SPARC20, and 30 seconds on an alpha Personal Workstation.
Unusualfeatures of the program None.
LONG WRITE-UP
1. I n t r o d u c t i o n In ultrarelativistic heavy ion collisions at collider energies, hard and semihard processes dominate. The high energy density produced in these collisions opens the possibility of studying many interesting phenomena of strong interactions, e.g., deconfinement phase transition and chiral symmetry restoration. The space-time evolution o f the hot matter produced in the collisions may make the final observables drastically [ 1 ] different from those directly predicted from pQCD and Glauber geometry. So it is very important to study the final state interactions in order to link the experimental observables and the pQCD predictions. The final state patton interactions can be described by the equations of motion for the quark and gluon Wigner operators. Under semiclassical approximation and the Abelian dominance approximation, in the weak field limit, the equations of motion become a set of equations resembling the classical transport equations [2]. This motivates the study o f final state interaction by solving the Boltzmann equation for quarks and gluons,
P~c~fa(x'p't)=~ m
E
bt./~.....b,
x (27r)4o°4
/fl
i=l
d3pb' E E /fl (2¢r)32El'+fb'(x'Pb"t) . . . . c, ....... j=l
Pb,--EPc, /=1
In the above equation, amplitude defined by
(cl,c2 .....
c.lSlbl,
fa(x, p, t)
d3pcj ]Mm-'n'2
(27r)32Eci
+ESao83(p-Pc,) ]
q=l
is the phase space distribution of parton type a, and
b2 . . . . . bin) = Mm-..*n(2"rl') 40°4
•
(1)
r=-I
Pbk --
Pc,
Mm-.n
is the scattering
•
l=l To study the final state parton interactions, we have developed ZPC, which solves the Boltzmann equations for partons by the cascade method. In the cascade model [ 3 ] , two patrons scatter when their closest distance
B. Zhang/ Computer Physics Communications 109 (1998) 193-206
195
is less than ~ (~r is the parton-parton scattering cross section). The scattering angle is determined by the differential parton-parton scattering cross section [4]. Because cascade prescription of solving the semiclassieal transport equation does not assume any particular form of the phase space distribution, it can be used to study systems far from local thermal equilibrium and it takes into account of the finite mean free path effect automatically. In the inside outside cascade picture, the partons come out as independent pattens after the nucleus-nucleus collision. These partons are taken as the initial condition for the patton cascade. The patton formation proper time usually depends on the transverse momentum of the parton [ 5 ]. In the simplest picture, the pattens are formed on a hyperbola of constant proper time [6] determined by the average transverse momentum. The space-time evolution afterwards depends also on the scattering cross section. Currently, a rough Yukawa type of screening is used to regulate the parton scattering cross section. Lattice gauge theory [7] and semiclassical transport theory [8] can give us screening mass(es) for patton interactions for equilibrium system or system close to local thermal equilibrium. Assuming that the formula can be used for the far from equilibrium case as in the ultrt, ~ativistie heavy ion collisions, we can get an estimate for the medium generated screen mass. On other hand, this provide~ one possible way of measuring the effective screening in the medium from the experiment. In ultrarelativistic heavy ion co'Hsions, there are indications that multiparton processes other than elastic scattering may dominate [9]. Also h,'cause inelastic collisions are important for the chemical equilibrium, it is important to look at parton production and annihilation processes. Besides inelastic collisions, patton statistics and hadronization may all affect the prediction in a nonnegligible way. These elements will be incorporated in ZPC in the future. ZPC is developed in parallel with GCP by Yang Pang [3]. The major difference is that ZPC 1.0.1 foeuses on gluon elastic scatterings, while GCP is being designed to be a more general, user-friendly package. ZPC 1.0.1 has the local interaction list optimization. ZPC 1.0.1 is written in FORTRAN, while GCP is written in C. In this raper, we will discuss the physics background for the parton cascade simulations, some ZIN2 technica'points, then a detailed description of the program followed by the instructions for users.
2. Cascade simulations of URHICs For Ultrarelativistic Heavy Ion Collisions (URHICs) at RHIC energies and beyond, the gluon number is much larger than the sea quark and antiquark number, and the gluon-gluon elastic cross section is much larger than the gluon-quark transition cross section [9]. To first approximation, we consider only gluon-gluon elastic scatterings. The initial conditions can be read from an external file or some ideal inifal conditions can be generated within the code. 2,1. Formation time
The formation time of partons gives the time beyond which the radiated partons can be considered as independent pattens. There are different models for the formation time. A simple model motivated by the Uncertainty Principle and used very often for ideal theoretical calculations is proposed by Bjorken [6]. In this model, partons are formed on a hyperbola of constant proper time. The integrated formation probability can be written as PO') = 0(~" - ~'o)¢o is inversely proportional to (mr), or can be simply taken as l/(mr). Another more realistic model proposed by Gyulassy, Wang, and Pliimer [5] has an integrated probability,
196
B. Zhang/Computer Physics Communications 109 (1998) 193-206
1 P(~') = 1 + (~.f/~-)2 ' where ~-f = cosh(y)/mT. The above formula is interpolated between the perturbative result P c x ~ for small times and the asymptotic result which is characterized by a formation time cosh(y)/mT. In ZPC 1.0.1, the ideal initial conditions are generated with a fixed formation proper time. Options are available to generate formation time for patton configurations generated at t = 0 and propagate the partons to their formation time.
2.2. Scattering cross section The gluon-gluon elastic scattering differential cross section is
do"
7ra~ 9 (3
d--~-- " 7
2 ~,
ut
us
st)
S2
t2
U'2
"
At fixed s, the leadir~gdivergent term is
9+o+(, ,)
d-5----TT2
~+~
•
Since two outgoing particles are identical particles, the scattering angle goes from 0 to ~'/2. If we let the scattering angle go from 0 to ~', then the t, u singular terms are redundant. Hence,
do" = 9~ra~ I dt
2s 2 t 2 "
The singularity is regularized by a medium generated screening mass. We end up with a scattering differential cross section of the form do" dt
91ra2s 1 2s 2 ( t - / z ) e "
This is just the Yukawa type of scattering cross section. Currently, we set the total cross section to be s independent, o" = 91ra2s 2~2 ' and the differential cross section changes correspondingly to
do" _ 9"tro~ (_~) d-7 - ~ 1+
1
(t - / ~ ) 2 "
This is only a simplified model for the gluon-gluon scatterings. Following the instructions for users, it is easy to make the cross section more realistic.
2.3. Screening mass When the gluon system is not far from equilibrium, perturbative calculation relates the electric screening mass/~ with the phase space density f ( k ) through
Ikl
/z2 = - - 3Ors - ~ lim : d3k q. V k f ( k ) . Iql~;a q- k
B. Z_hang/ComputerPhysicsCommunications 109 (1998) 193-206
197
Assuming th~ formula can he used for nonequilibrium as wed, the phase space density f ( k ) is related to the gluon inva~iant momentum distribution g(y, k-r) = d2N~/dy dk~ through
f(k)
2(2~r) 2 I goV Ikl g(y,k+).
At collider energies, the transverse screening mass is almost the same as the longitudinal screening mass. In the ideal case that the rapidity distribution is an inverted squa, e well and the transverse momentum distrilmtk~ is an exponential, the screening mass can he estimated through / ~ ~ 37ras Nc
R~
2Y"
With as "~ 0.4, No/2Y "~ 300, which is typical for the minijet gluon system produced at RHIC, we get the screen mass/z ,~ 4.5 f m - ' . So in the cascade calculation, the screen mass is taken as several inverse ferrnis. 3. General features of ZPC 1.0.1 ZPC 1.0.1 provides the user with a choice of several sca!!ering prescriptions, the option to read in initial conditions or to generate some ideal initial conditions, and the space cell division optimization.
3. I. Scattering prescription Because of the geometric interpretation of the scattering cross section, information travels across the distance of closest approach when a scattering happens in a time period of the fixed time step or the mean free time. This may lead to causality violation. Different prescriptions may give different results [ 10]. To specify the scattering scheme, we need to specify the collision frame, the collision space-time point, the ordering frame, and the ordering time. The collision frame is the frame in which the collision happens. The ordering frame is the frame in which the collisions are ordered in time. It is the global frame where the observer is in. The ordering time is the time of a collision that we use for ordering the collisions. In ZPC 1.0.1, the collision frame and space-time point choice is set through the first digit of the variable iord_sch which can be specified in input file zpe.ini. The second digit of iord_sch gives the ordering time. The ordering frame can be chosen by setting the variable ibst_flag.
3.2. Geometric configurations and built-in initial conditions ZPC 1.0.1 provides 3 different geometric configurations to do cascade. We can study 3-dimensional expansion, l-dimensional expansion and particles in a box by setting the variable i_config. Setting igen_flag gives some built-in initial conditions. For the 3-d expansion, the built-in initial condition is like the minijet gluon system generated in RHIC Au on Au central collisions. 4000 particles are uniformly distributed in the pseudo-rapidity range - 5 to +5. They are generated in local thermal equilibrium with a temperature 500 MeV (h = c = 1). At t = 0 they are within a transverse disk of radius 5 fm. The particles are formed with a longitudinal formation time ro = 0.1 fro. The l-dimensional expansion built-in initial condition is different from the 3-d one in that the transverse positions of particles at their formation times are within a square where x (y) goes from - 5 x sizel (2) to +5 x sizel (2). The particles in a box with built-in initial conditions give particles in thermal equilibrium with temperature 500 MeV. The particles are confined within a box where x ( y , z ) goes from - 5 x sizel (2,3) to +5 x sizel (2, 3).
198
B. Zhang/Computer Physics Communications 109 (1998) 193-206
3.3. O?timization f o r fast cascade code The parton cascade is different from the hadronic cascade for relatively low energy nuclear physics in that there are much more particles to start with in one event. For example, at RHIC energies, each central Au on Au event has around 4000 minijet gluons. To get the next collision partner for a particle after the collision, a number of N ( N is the total number of p~aticles) operations have to be performed. The total number of operations for one event is proportional to N 2. For N ~ 4000, it is difficult to get enough statistics for detailed study of events, e.g., correlations [-11]. To improve the speed of the patton cascade, we chose to divide the space into cells. In this manner, to update a particle's collision partner, only the particles in the same and neighboring cells need to be checked. This makes the total number of operations go down to C x N x n (n is the average number of particles in one cell). Cells expand with time after time size (which is the minimum of the cell dimensions sizel, size2, and size3). But to ensure the results are exactly the same as the results without cell division, the size should be larger than the interaction length. For reference, the user may want to produce the results without cell division for reference and cross check. For the 3-d expansion case, set vl = v2 = v3 = sizel = size2 = size3 = 0; for l-d expansion, set i_config = 3; for particles in a box, set i_config = 5. 3.4. Optional OSCAR standard output The OSCAR (Open Standard Codes and Subroutines) [ 12] standard has been proposed by Yang pang and passed by a group of physicists (Open Standard working Group) in the field of cascade simulation of high energy nucleus-nucleus collisioas to provide objective scientific criteria for cascade simulations. Currently, the standard output (OSCAR1997A) has a file-header and an event-header. The file-header contains general code and simulation information and the event header stores particle number, particle ID, 4 momentum, mass, position and time. We can set i_oscar = 1 from file zpc.ini to write out the standard output into the file zpe.oscar. This provides a way of reconstructing event history.
4. P r o g r a m description 4.1. Mair~ subroutines To clearly analyse the program structure, several technical words must be defined in the ZPC context. An EVENT means the time evolution of a particular initial phase space distribution of particles. For one particular event, the user can test the effect of different random number sequences by running the same initial conditions with different random number sequences. The different space-time evolutions with one same initial phase space distribution, but different random number sequences are called different RUNs. An O~'ERATION is one of the following: the formation of a particle, the collision of a particle with cell boundary, the collision of two particles or a combination of these simple operations. PARTICLE INDEX is the label of particle in the common block /prec2/ and PARTICLE NUMBER is the particle label in the common block / p r e c l / . The following main subroutines are all in the main program zpc and control the flow of the program. SUBROUTINE INI_ZPC Purpose: to initialize the program. It reads in the parameters from the initialization file zpc.ini and initializes the main common blocks. SUBROUTINE INI_EVT Purpose: to initialize one particular event. It reads in the initial conditions for an event and/or generates initioi conditions depending on the user's requirement. Then it boosts the initial conditions if the user requires this.
B. Zhang/Computer Physics Communications 109 (1998) 193-206
199
SUBROUTINE INI-RUN Purpose: to reset the initial conditions to the same as for the last run. SUBROUTINE ZPC_RUN Purpose: to select the next operation according to ordering time, perform the operation ap..d update the interaction list. SUBROUTINE ZPC_ANA I Purpose: to do analysis after each operation. This enables us to look at the time development of physical observables. SUBROUTINE ZPC_ANA2 Purpose: to analyze event final states. SUBROUTINE ZPC_OUT Purpose: to average results over events and write the results into output files.
4.2. Random number generator(s)
The default random number generator in ZPC- 1.0.1 is the linear congruential method random number generator ranl [ 13]. Another random number generator ran3 based on the subtractive method is also included. 4.3. Main common blocks
There are seven common blocks in ZPC-0.2.1 that contain parameters for the cascade simulation. They are named para*, where * is a number going from I to 7. COMMON / P A R A I / MUL MUL: the multiplicity of one particular event. COMMON /PARA2/ XMP, XMU, ALPHA, RTS_CUT2, CUTOFF2 XMP: the mass of the particles. In ZPC 1.0.1, there is only one type of particle, the gluon. XMU: the screening mass. ALPHA: the strong interaction coupling constant. RTS_CUT2: lower square root of s cut for parton collisions. CUTOFF2: the total parton scattering cross section divided by or. COMMON /PARA3/N_STA_EVT, N_EVENT, N_RUN, I_EVENT, I_RUN N_STA_EVT: the starting event number in the input file. N_EVENT: the total number of events. N_RUN: the total number of runs per event. I_EVENT: the current event number that goes from 1 to N_EVENT. I_RUN: the current run number. C O M M O N / P A R A 4 / IFT_FLAG, IRE_FLAG, IGEN_FLAG, IBST_FLAG IFT_FLAG: switch for the generation of particle formation time. = 0: generate formation time. = 1: read in formation time from zpe.inp. IRE_FLAG: switch to read initial conditions from zpe.inp. = 0: read the initial conditions. = 1: do not read the initial conditions. IGEN_b-'LAG: switch to generate initial conditions.
200
B. Zhang/Computer Physics Communications 109 (1998) 193-206
= 0: do not generate initial conditions. = 1: generate initial conditions. IBST..FLAG: choice of global frame. = 0: the global frame (the ordering frame) is the coilider center of mass frame for Au on Au collisions. = !: means the global frame is taken to be the target frame. C O M M O N / P A R A S / I _ C O N F I G , IORD_SCH I_CONFIG: choice of geometric configuration and space cell division optimization. = 1: the system is undergoing 3-d expansion. = 2: the system is undergoing l-d expansion with space cell division. = 3: the system is undergoing l-d expansion without space cell division. = 4: the system is confined in a box with space cell division. = 5: the system is confined in a box without space cell division. IORD_SCH: choice of collision scheme; IORD_SCH = 10 * II + I2 II: choice of collision prescription. = 0: the collision frmi,e is the two patton center of mass frame. The scattering space point is the center point of the 2 parton posi:ic:ls at closest approach in the collision frame. = l.qhe collision frame is the two patton center of mass frame. The scattering point is the position of the parton at the clc,sest approach in the collision frame. This gives two generally different collision times for the two colliding partons. = 2: the collision frame is the same as the ordering global frame. I2: choice of ordering time. = 0: the earlier of the two collision times in the global frame is the ordering time for parton collisions. = I: the average of the two collision times is taken as the ordering time. = 2: the later collision time is the ordering time. COMMON/PARA6/CENT_RAP CENT_RAP: the central rapidity of the rapidity plateau. C O M M O N / P A R A 7 / I_OSCAR I_OSCAR: option to write OSCAR standard output. = 0: write OSCAR standard output. = l: do not write OSCAR standard output. Six particle record common blocks are labeled prec*, in which * goes from ! to 6. COMMON/PRECI / Purpose: stores the initial conditions for one event. COMMON /PREC2/ Purpose: main particle record that has particle types, the oositions at formation times, the corresponding formation times and the four momenta of the particles, plus the masses of the particles. COMMON /PREC3/ Purpose: the same as /PREC2/ except the two colliding particles do not update their records until the next collision. COMMON /PREC4/ Purpose: stores velocities of particles. COMMON /PREC5 / Purpose: stores formation time pseudo-rapidities, rapidities and proper times of particles. COMMON/PREC6/ Purpose: the same as /PREC5/ except the two colliding particles do not update their records until the next
B. Zhang/Computer Physics Communications 109 (1998) 193-206
201
collision. Six interaction list common blocks i_list* give us particle run time information and cell infocnation. C O M M O N / I L I S T ! / I S C A T , JSCAT, NEXT(NMAXGL), LAST(NMAXGL), ICTYPE, ICSTA(NMAXGL), NIC(NMAXGL), ICELSTA(NMAXGL) ISCAT: particle index. If the operation involves only one particle, then iscat is the particle index; if it involves 2 particles, iscat is the larger particle index. JSCAT: particle index. If the operation involves only one particle, then j s c a t is 0; if it involves 2 particles, j s c a t is the smaller particle index. NEXT(I): the next operation partner of particle I. L A S T ( I ) : the last operation partner of particle I. ICTYPE: the operation type. = 0: a collision between particles. = I: the formation of a particle. = 2: both a collision between particles and the formation of a particle. = 3: a collision with wall. = 4: both a collision between particles and a wall collision. = 5: both a wall collision and a formation. = 6: a formation, collision between particles and a wall collision at the same time. ICSTA(I): the operation type for particle I. = 0: an ordinary collision. = 101: a collision with the wall with larger x. = 102: a collision with the wall with smaller x. = 103: a collision with the wall with larger y. = 104: a collision with the wall with smaller y. = 105: a collision with the wall with larger z. = 106: a collision with the wall with smaller z. = I 11: a collision with another particle and the wall with larger x. = 112: a collision with another particle and the wall with smaller x. = 113: a collision with another particle and the wall with larger y. = 1 1 4 : a collision with another particle and the wall with smaller y. = 115: a collision with another particle and the wall with larger z. = 1 1 6 : a collision with another particle and the wall with smaller z. NIC(I): the next particle index in the same cell as I. ICELSTA(I): the encoded information of the cell number particle I is in. If particle is in cell ( i l , i2, i3), then it equals il x 10000 + i2 x 1 0 0 ÷ i3 for particles inside the cube. When a particle is outside ',he 10 by 10 by 10 box, its value is 1 i i I 1 i. COMMON / I_LIST2 / ICELL, ICEL ( i 0,10,10) ICELL: pointer to one particle outside the 10 by 10 by 10 cell volume. ICEL(I, J, K): one particle in the cell (I, J, K). COMMON / I _ L I S T 3 / S I Z E I , SIZE2, SIZE3, VI, V2, V3, SIZE SIZEI: cell size in the .t direction. It must be larger than the inverse square root of cutoff2. SIZE2: cell size in the y direction. SIZE3: cell size in the z direction. V l: cell expanding velocity in x direction. V2: cell expanding velocity in y direction. V3: cell expanding velocity in z direction.
202
B. Zhang/ComputerPhysicsCmnmunications109 (1998) 193-206
SIZE: the time that cells begin to expand. COMMON/I_LIST4/IFMPT, ICHKPT, INDX(NMAXGL) IFMPT: the particle index of the parton that is to be formed next. ICHKPT: the last formed particle index. INDX(I): the index of particle I of/INI_REC/ in an increasing formation time order. C O M M O N / I _ L I S T 5 / C T ( N M A X G L ) , OT(NMAXGL), TLARGE CT(I): the collision time for particle I. OT(I): the ordering time for particle I. TLARGE: a large number for time cutoff. COMMON /I..LIST6/I_OPERATION, I_COLLISION, T N_OPERATION: the current number of operations. I_COLLISION: the current number of collision between particles that have been performed. T: the current operation time.
4.4. Other common blocks Two common blocks /AUX_RECI/ and /AUX_REC2/ contain auxiliary variables for I-d expansion and particles in a box without space cell division. Two common blocks contain information about the random numbers. COMMON /RANDOMI / NUMBER NUMBER: the number of random numbers that have been used. COMMON / R A N D O M 2 / I F F IFF: choice of attractive or repulsive force. It alternates between 1 and - !. Currently, there are four common blocks ana* for analysis. COMMON / A N A l / T S ( 1 2 ) TS: stores the time points that we want to sample data for analysis. COMMON /ANA2/ Purpose: to record the dEx/dy, dET/dN, and dN/dy time evolution. COMMON / A N A 3 / E M ( 4 , 4, 12) EM: energy momentum tensor for 12 different time points. COMMON /ANA4/FDETDY(24), FDNDY(24), FDNDPT(12) FDETDY: final dET/dy distribution. FDNDY: final d N / d y distribution. FDNDPT: final dN/dpT distribution.
4.5. Input files zpe.ini Purpose: provides the following parameters for ZPC: 'mass of particles (GeV)'; 'screening mass ( f m ( - I ) ) ' ; 'alpha': strong interaction coupling constant; "rts_cut2 (GeV2)': square root s-cutoff below which no collision will by taken into account; 'n_sta_evt': starting event nt~:nber;
8. Zhangl Computer Physics Communications 109 (1998) 193-206
203
'n_event': number of events; 'n_run': number of runs; 'gene ft flag (0,yes;other, no)'; 'read ini flag (0,read;other, no)'; 'gene ini flag (0,no;other, yes)'; 'boost ini condition (0,no)'; 'i_config ( 1,3-d exp;2,3 I-d exp;4,5 box)'; 'collision ordering scheme': gives the parameter IORD_SCH; 'optional OSCAR output: (0,no;l,yes)'; 'vl, v2, v3': vl, v2, v3 are the cell expanding velocities; 'sizel, size2, size3 (fm)': sizei, size2, and size3 give the cell sizes in the x, y, z directions; 'beginning iff': beginning iff gives the beginning random choice of attractive or repulsive collision; 'iseed': iseed is the random number seed; 'i_ran_used': number of random numbers used. This makes it possible to continue a series of events.
zpc.inp Purpose: provides initial conditions for ZPC. Each particle has one record in zpe.inp. Each record has I ! entries: the event number, the particle type (integer), the x, y, and z positions of the particle at the time specified, the specified time, and the four momentum of the particle, the mass of particle (double precision). The specified time can be one time the same for all the particles, in this case, the ift_flag in the zpe.ini file should be set to 0. The specified time can also be the given formation time of the particle. In this case, the ift_flag should be set to I.
4.6. Output files zpe.res zpc.res is the major output file. It has the event number, run number, number of operations, number of collisions between particles, freezeout time, ending random num~r, and ending randomizer i f f . The user can dump other analysis information into zpc.res.
zpc.jun zpe.jun saves execution time and error messages.
zpc.oscar ZPC 1.0.1 writes OSCAR standard output [12] into zpc.oscar.
anal directory Currently files in anal are for the Lorentz invariance analysis, fdetdy.dat is the final detdy distribution; fdndy.dat is the final dndy distribution; fdndpt.dat is the final dndpt distribution.
ana2 directory Currently files in ana2 are for the time evolution of detdy, dndy and detdydn analysis, detdy*.dat, dndy*.dat, and detdydn*.dat are for the time evolution of detdy, dndy, detdydn, correspondingly. * is a number that specifies the rapidity range of the central slice that the program takes data from.
ana3 directory ana3 has information for l-d expansion semi-analytic tests, coll.res has the collision proper time and Mandelstam s for central collisions, et*.res files give lab time development of dET/dy at fixed proper times. ~.t*.res files are useful in choosing a final freezeout time for l-d expansion such that the dET/dyly_--o(r) reaches an asymptotic value.
ana4 directory ana4 contains the energy-momentum tensor at different times for particles in a box case.
204
B.
Zhang/Computer Physics Communications 109 (1998) 193-206
4.7. Other files README
README gives a brief description of the files of ZPC. COPYING COPYING contains GNU General Public License. zpc.doc zpc.doc has a detailed discussion of the program and instructions on running the program. zpc.f zpc.f is the main source file. zpc.go zpc.go is the script file that controls the running of the program. On some machines, there are special rules for batch jobs, zpc.go must be modified accordingly. zpc.mk zpc.mk is the makefile that generates the executable file.
5. Instructions for users -
Set parameters in zpc.ini.
- Make zpc.inp if the initial conditions are to be read in from it.
- Run the program by running zpc.go. It will use zpc.mk to make the executable file, run and time the executable file. H e ~ is an example input file and corresponding results. Input file zpc.ini:
'mass of particles (GeV) 'screening mass (fm'(-1)) ' alpha ;rts_cut2 (GeV'2) 'n_sta_evt 'n_event 'n_run 'gene £t flag (O,yes;other,no) 'read ini flag (O,read;other,no) 'gene ini flag (O,no;other,yes) 'boost ini flag (O,no;other,yes) 'i_config (1,3-d exp;2,3 1-d exp;4,5 box) 'collision ordering scheme 'optional OSCAR output: (O,no;1,yes) 'vl, v2, v3 'size1, size2,
'beginning iff 'iseed 'i_ran_used
size3
(fm)
OdO 3dO O. 47140452 O. OldO I 10 l l 1 1 0 I II 0 O. 2dO 0.2dO O. 2dO 1.5 1.5 0.7 -1 7 1
B. ZhanglComputer Physics Co,nmunications 109 (1998) 193-206
205
soo.o
>.
40O.O
4000
3oo0
3oo0
2oo.o
.x~.o
iooo
o.o
-12.0
-a.o
-4.0
o.o v
4.0
,
a.o
o
°1.2.o
Fig. I,
-a.o
-4o
o.o y
4,o
el.o
Fig. 2.
Fig. I. 10 events, p, = 3 fm-t. Fig. 2. I0 events, ~ = 3 fm-I. Output file zpc.ms: Event
Event
Event
1, run i, number of operations = 36224, number of collision between particles = freezeout time= 70119.524722901, ending at the 45159th random number, ending collision iff = -1 2, run 1, number of operations = 35886, number of collision between particles = freezeout time= 447736.85516922, ending at the 90145th random number, ending collision iff = -1 3, run 1,
number of number of freezeout ending at
operations = 36118, collision between particles = time= 99267.891489987, the 1 3 5 3 4 3 t h random n u m b e r ,
ending collision iff=
6914,
6856,
6954,
-i
...
The data files in directory anal give the final dET/dy, d N / d y and d N / d p r . They are shown in Figs. I-3.
6. Modification and further development The current version 1.0.1 has only elastic collisions. It can be easily modified to study more complicated physical processes, for example, to study effects of elastic collisions on chemical equilibrium. To put in more particle species: - Add in new parameters in zpc.ini and change subroutine ini_zpc correspondingly. - Add in zpc.inp more entries corresponding to new degrees of freedom for particles and change read_ini correspondingly.
206
B. Zhang/Computer Physics Communications 109 (1998) 193-206
lOOOO
c~
I°1~ r
10.0
2.o
4.0
6.0
p, (Gev/c)
Fig. 3. 10 events./z=3 fm -I. - In subroutine scat, a new subroutine is necessary to update the new degrees of freedom for the colliding particles. Subroutine get_that needs to be changed correspondingly t( get the scattering angle through the new scattering differential cross section. - In subroutine iscoll*, a new subroutine get_cutoff2 is necessary to get ~r/Tr for different processes. - Further analysis can be done by putting the analysis in the subroutine zpc_anal and zpc_ana2, and adding corresponding output in zpc_out. Acknowledgements I am very grateful to M. Asakawa, S. Bass, P. Danielewicz, S. Gavin, K. Geiger, D. Kahana, S. Kahana, B. Li, Z. Lin, R. Mattiello, C. Noack, D. Rischke. S. Pratt, J. Randrup, A. Tai, and K. Werner for useful discussions. Special thanks go to X. N. Wang, Y. Pang and M. Gyulassy for continuing encouragement, discussions, and careful readings of the manuscript. I would also like to thank Brookhaven National Laboratory and Lawrence Berkeley Laboratory for providing computing facilities.
References [ I ] P.V. Ruuskanen, Phys. Lett. B 147 (1984) 465. 12J H.-T. Elze, U. Heinz, Advanced Series on Directions in High Energy Physics 6 (1990) 117. 13] For example, Y. Pang, GCP, htep://rhic.phys, columbia, edu/rhic/gcp. ; Klaus Werner, VENUS, htep://trw~-subatech, in2p3, fr/Sciences/Theorie/venus/venus.html, Klaus Kinder Geiger. ht1:p://rhic, phys. columbia, edu/rhic/Irai; Bin Zhang, ZPC, htgp://n¢I, phys. columbia, edu/people/bzhang/ZPC/zpc, him1. [4l L. Combridge, J. Kripfganz, J. Ranfi, Phys. Lett. B 70 (1977) 234; B.L. Combridge, Nuel. Phys. B 151 (1979) 429; E. Eichten, I. Hinchliffe, K. Lane, C. Quigg, Rev. Mod. Phys. 56 (1984) 579. 151 M. Gyulassy, X.-N. Wang, Nucl. Phys. B 420 (1994) 583; X.-N. Wang, M. Gyulassy, M. Pliimer, Phys. Rev. D 51 (1995) 3436. 161 J.D. Bjorken, Phys. Rev. D 27 (1983) 140. [71 M. Gao, Phys. Rev. D41 (1990) 626. [8] T. Biro, B. MiiUer,X.-N. Wang, Phys. Lea. B 283 (1992) 171. [91 L. Xiong. E. Shuryak, Proceedings of the Workshop on Pre-Equilibrium Patton Dynamics (1993) 73. [lOI G. Kortmeyer, W. Bauer, K. Haglin, J. Murray, S. Pratt, Phys. Rev. C 52 (1995) 2714; B. Zhang, Y. Pang, nucl-th/9611012, Phys. Rev. C, in press. I ! I l M. Gyulassy. D.H. Rischke, B. Zhang, Nucl. Phys. A 613 (1997) 397. [ 121 ht1:p://rhic.phys.columbia.edu/osca.r/. [ 13l W.H. Press, B.P. Flannery, S.A. Teuholsky, W.T. Vetterling, Numerical Recipes.