a077a6caec94ef9d647604a9ffb9f0e5480bc4fb
[u/mrichter/AliRoot.git] / THijing / Hcommon.h
1
2 #ifndef ROOT_HCommon
3 #define ROOT_HCommon
4
5 #ifndef __CFORTRAN_LOADED
6 //*KEEP,cfortran.
7 #include "cfortran.h"
8 //*KEND.
9 #endif
10
11 extern "C" {
12
13 /*=========================================================*/
14 /* COMMON/HIPARNT/HIPR1(100),IHPR2(50),HINT1(100),IHNT2(50)*/
15 /*---------------------------------------------------------*/
16 typedef struct {
17    Float_t    hipr1[100];
18    Int_t      ihpr2[50];
19    Float_t    hint1[100];
20    Int_t      ihnt2[50];
21 } HiparntCommon;
22
23 #define HIPARNT COMMON_BLOCK(HIPARNT,hiparnt)
24 COMMON_BLOCK_DEF(HiparntCommon,HIPARNT);
25
26 /**************************************************************************/
27 /*           D E S C R I P T I O N :                                      */
28 /*------------------------------------------------------------------------*/
29 /*COMMON/HIPARNT/HIPR1(100), IHPR2(50), HINT1(100), IHNT2(50)             */
30 /*Purpose: contains input parameters (HIPR1, IHPR2) for event options     */
31 /*         and some extra information (HINT1, IHNT2) of current event.    */
32 /*HIPR1(1): (D=1.5 GeV/$c^2$) minimum value for the invariant mass of     */
33 /*         the excited string system in a hadron-hadron interaction.      */
34 /*HIPR1(2): (D=0.35 GeV) width of the Gaussian $P_T$ distribution of      */
35 /*         produced hadron in Lund string fragmentation                   */
36 /*         (PARJ(21) in JETSET 7.2).                                      */
37 /*HIPR1(3), HIPR1(4): (D=0.5, 0.9 GeV$^{-2}$) give the $a$ and $b$        */
38 /*         parameters of the symmetric Lund fragmentation function        */
39 /*         (PARJ(41), PARJ(42) in JETSET 7.2).                            */
40 /*HIPR1(5): (D=2.0 GeV/$c^2$) invariant mass cut-off for the dipole       */
41 /*         radiation of a string system below which soft gluon            */
42 /*         radiations are terminated.                                     */
43 /*HIPR1(6): (D=0.1) the depth of shadowing of structure functions         */
44 /*         at $x=0$:$\alpha_A=\mbox{HIPR1(6)}\times(A^{1/3}-1)$.          */
45 /*HIPR1(7): not used                                                      */
46 /*HIPR1(8): (D=2.0 GeV/$c$) minimum $P_T$ transfer in hard or             */
47 /*         semihard scatterings.                                          */
48 /*HIPR1(9): (D=$-1.0$ GeV/$c$) maximum $P_T$ transfer in hard or          */
49 /*         semihard scatterings. If negative, the limit is set            */
50 /*         by the colliding energy.                                       */
51 /*HIPR1(10): (D=$-2.25$ GeV/$c$) specifies the value of $P_T$ for         */
52 /*         each triggered hard scattering generated per event             */
53 /*         (see Section \ref{sec:jet2}). If HIPR1(10) is negative,        */
54 /*         its absolute value gives the low limit of the                  */
55 /*         $P_T$ of the triggered jets.                                   */
56 /*HIPR1(11): (D=2.0 GeV/$c$) minimum $P_T$ of a jet which will interact   */
57 /*         with excited nuclear matter. When the $P_T$ of a jet           */
58 /*         is smaller than HIPR1(11) it will stop interacting further.    */
59 /*HIPR1(12): (D=1.0 fm) transverse distance between a traversing jet      */
60 /*         and an excited nucleon (string system) below which they        */
61 /*         will interact and the jet will lose energy and momentum        */
62 /*         to that string system.                                         */
63 /*HIPR1(13): (D=1.0 fm) the mean free path of a jet when it goes          */
64 /*         through the excited nuclear matter.                            */
65 /*HIPR1(14): (D=2.0 GeV/fm) the energy loss $dE/dz$ of a gluon            */
66 /*         jet inside the excited nuclear matter. The energy loss         */
67 /*         for a quark jet is half of the energy loss of a gluon.         */
68 /*HIPR1(15): (D=0.2 GeV/$c$) the scale $\Lambda$ in the                   */
69 /*         calculation of $\alpha_s$.                                     */
70 /*HIPR1(16): (D=2.0 GeV/$c$) the initial scale $Q_0$ for the              */
71 /*         evolution of the structure functions.                          */
72 /*HIPR1(17): (D=2.0) $K$ factor for the differential jet cross            */
73 /*         sections in the lowest order pQCD calculation.                 */
74 /*HIPR1(18): not used                                                     */
75 /*HIPR1(19), HIPR1(20): (D=0.1, 1.4 GeV/$c$) parameters in the            */
76 /*         distribution for the $P_T$ kick from soft interactions ,       */
77 /*         $1/[(\mbox{HIPR1(19)}^2+P_T^2)(\mbox{HIPR1(20)}^2+P_T^2)]$.    */
78 /*HIPR1(21): (D=1.6 GeV/$c$) the maximum $P_T$ for soft interactions,     */
79 /*         beyond which a Gaussian distribution as specified by           */
80 /*         HIPR1(2) will be used.                                         */
81 /*HIPR1(22): (D=2.0 GeV/$c$) the scale in the form factor to suppress     */
82 /*         the $P_T$ transfer to diquarks in hard scatterings,            */
83 /*HIPR1(23)--HIPR1(28): not used.                                         */
84 /*HIPR1(29): (D=0.4 fm) the minimum distance between two nucleons         */
85 /*         inside a nucleus when the coordinates of the nucleons          */
86 /*         inside a nucleus are initialized.                              */
87 /*HIPR1(30): (D=2$\times$HIPR1(31)=57.0 mb) the inclusive cross           */
88 /*         section $\sigma_{soft}$ for soft interactions. The default     */
89 /*         value $\sigma_{soft}=2\sigma_0$ is used to ensure the          */
90 /*         geometrical scaling of $pp$ interaction cross sections         */
91 /*         at low energies.                                               */
92 /*HIPR1(31): (D=28.5 mb) the cross section $\sigma_0$ which               */
93 /*         characterizes the geometrical size of a nucleon                */
94 /*         ($\pi b_0^2=\sigma_0$, see Eq.~\ref{eq:over2}).                */
95 /*         The default value is only for high-energy                      */
96 /*         limit ($\sqrt{s}>200$ GeV). At lower energies, a slight        */
97 /*         decrease which depends on energy is parametrized in the        */
98 /*         program. The default values of the two parameters              */
99 /*         HIPR1(30), HIPR1(31) are only for $NN$ type interactions.      */
100 /*         For other kinds of projectile or target hadrons, users         */
101 /*         should change these values so that correct inelastic           */
102 /*         and total cross sections (HINT1(12), HINT1(13)) are            */
103 /*         obtained by the program.                                       */
104 /*HIPR1(32): (D=3.90) parameter $\mu_0$ in Eq.~\ref{eq:over2} for         */
105 /*         the scaled eikonal function.                                   */
106 /*HIPR1(33): fractional cross section of single-diffractive               */
107 /*         interaction as parametrized in Ref.~\cite{goulianos}.          */
108 /*HIPR1(34): maximum radial coordinate for projectile nucleons            */
109 /*         to be given by the initialization program HIJSET.              */
110 /*HIPR1(35): maximum radial coordinate for target nucleons                */
111 /*         to be given by the initialization program HIJSET.              */
112 /*HIPR1(36)-HIPR1(39): not used.                                          */
113 /*HIPR1(40): (D=3.141592654) value of $\pi$.                              */
114 /*HIPR1(41)--HIPR1(42): not used.                                         */
115 /*HIPR1(43): (D=0.01) fractional energy error relative to the             */
116 /*         colliding energy permitted per nucleon-nucleon collision.      */
117 /*HIPR1(44), HIPR1(45), HIPR1(46): (D=1.5, 0.1 GeV, 0.25) parameters      */
118 /*         $\alpha$, $c$ and $\beta$ in the valence quark                 */
119 /*         distributions for soft string excitation,                      */
120 /*         $(1-x)^{\alpha}/(x^2+c^2/s)^{\beta}$ for baryons,              */
121 /*         $1/{(x^2+c^2/s)[(1-x)^2+c^2/s)]}^{\beta}$ for mesons.          */
122 /*HIPR1(47), HIPR1(48): (D=0.0, 0.5) parameters $\alpha$ and $\beta$      */
123 /*         in valence quark distribution,                                 */
124 /*         $(1-x)^{\alpha}/(x^2+c^2/s)^{\beta}$, for the                  */
125 /*         disassociated excitation in a single diffractive collision.    */
126 /*HIPR1(49)--HIPR1(100): not used.                                        */
127 /*IHPR2(1): (D=1) switch for dipole-approximated QCD radiation            */
128 /*         of the string system in soft interactions.                     */
129 /*IHPR2(2): (D=3) option for initial and final state radiation in         */
130 /*         the hard scattering.                                           */
131 /*         =0: both initial and final radiation are off.                  */
132 /*         =1: initial radiation on and final radiation off.              */
133 /*         =2: initial radiation off and final radiation on.              */
134 /*         =3: both initial and final radiation are on.                   */
135 /*IHPR2(3): (D=0) switch for triggered hard scattering with specified     */
136 /*         $P_T\geq$HIPR1(10).                                            */
137 /*         =0: no triggered jet production.                               */
138 /*         =1: ordinary hard processes.                                   */
139 /*         =2: only direct photon production.                             */
140 /*IHPR2(4): (D=1) switch for jet quenching in the excited                 */
141 /*         nuclear matter.                                                */
142 /*IHPR2(5): (D=1) switch for the $P_T$ kick due to soft interactions.     */
143 /*IHPR2(6): (D=1) switch for the nuclear effect on the parton             */
144 /*         distribution function such as shadowing.                       */
145 /*IHPR2(7): (D=1) selection of Duke-Owens set (1 or 2) of parametrization */
146 /*         of nucleon structure functions.                                */
147 /*IHPR2(8): (D=10) maximum number of hard scatterings per                 */
148 /*         nucleon-nucleon interaction. When IHPR2(8)=0, jet              */
149 /*         production will be turned off. When IHPR2(8)$<0$, the          */
150 /*         number of jet production will be fixed at its absolute         */
151 /*         value for each NN collision.                                   */
152 /*IHPR2(9): (D=0) switch to guarantee at least one pair of minijets       */
153 /*         production per event ($pp$, $pA$ or $AB$).                     */
154 /*IHPR2(10): (D=0) option to print warning messages about errors that     */
155 /*         might happen. When a fatal error happens the current event     */
156 /*         will be abandoned and a new one is generated.                  */
157 /*IHPR2(11): (D=1) choice of baryon production model.                     */
158 /*         =0: no baryon-antibaryon pair production, initial              */
159 /*                 diquark treated as a unit.                             */
160 /*         =1: diquark-antidiquark pair production allowed,               */
161 /*                 initial diquark treated as a unit.                     */
162 /*         =2: diquark-antidiquark pair production allowed,               */
163 /*                 with the possibility for diquark to split              */
164 /*                 according to the ``popcorn'' scheme (see the           */
165 /*                 documentation of JETSET 7.2).                          */
166 /*IHPR2(12): (D=1) option to turn off the automatic decay of the          */
167 /*          following particles:                                          */
168 /*         $\pi^0$, $K^0_S$, $D^{\pm}$, $\Lambda$, $\Sigma^{\pm}$.        */
169 /*IHPR2(13): (D=1) option to turn on single diffractive reactions.        */
170 /*IHPR2(14): (D=1) option to turn on elastic scattering.                  */
171 /*IHPR2(15)--IHPR2(18): not used.                                         */
172 /*IHPR2(19): (D=1) option to turn on initial state soft interaction.      */
173 /*IHPR2(20): (D=1) switch for the final fragmentation.                    */
174 /*IHPR2(21): (D=0) option to keep the information of all particles        */
175 /*           including those which have decayed and the decay history     */
176 /*           in the common block HIMAIN2. The line number of the parent   */
177 /*           particle is KATT(I,3). The status of a partcile,             */
178 /*           whether it is a finally produced particle (KATT(I,4)=1)      */
179 /*           or a decayed particle (KATT(I,4)=11) is also kept.           */
180 /*IHPR2(22)-IHPR2(50): not used.                                          */
181 /*HINT1(1): (GeV) colliding energy in the c.m. frame of nucleon-nucleon   */
182 /*         collisions.                                                    */
183 /*HINT1(2): Lorentz transformation variable $\beta$ from laboratory       */
184 /*         to c.m.  frame of nucleon nucleon collisions.                  */
185 /*HINT1(3): rapidity $y_{cm}$ of the c.m. frame                           */
186 /*         $\beta=\tanh y_{cm}$.                                          */
187 /*HINT1(4): rapidity of projectile nucleons (hadron) $y_{proj}$.          */
188 /*HINT1(5): rapidity of target nucleons (hadron) $y_{targ}$.              */
189 /*HINT1(6): (GeV) energy of the projectile nucleons (hadron) in the       */
190 /*         given frame.                                                   */
191 /*HINT1(7): (GeV) energy of the target nucleons (hadron) in the           */
192 /*         given frame.                                                   */
193 /*HINT1(8): (GeV) the rest mass of projectile particles.                  */
194 /*HINT1(9): (GeV) the rest mass of target particles.                      */
195 /*HINT1(10): (mb) the averaged cross section for jet production           */
196 /*         per nucleon-nucleon collisions,                                */
197 /*         $\int d^2b\{1-\exp[-\sigma_{jet}T_N(b)]\}$.                    */
198 /*HINT1(11): (mb) the averaged inclusive cross section $\sigma_{jet}$     */
199 /*         for jet production per nucleon-nucleon collisions.             */
200 /*HINT1(12): (mb) the averaged inelastic cross section of                 */
201 /*         nucleon-nucleon collisions.                                    */
202 /*HINT1(13): (mb) the averaged total cross section of nucleon-nucleon     */
203 /*         collisions.                                                    */
204 /*HINT1(14): (mb) the jet production cross section without nuclear        */
205 /*         shadowing effect $\sigma_{jet}^0$ (see Eq.~\ref{eq:sjetab}).   */
206 /*HINT1(15): (mb) the cross section $\sigma_{jet}^A$ to account for       */
207 /*         the projectile shadowing correction term in the jet cross      */
208 /*         section (see Eq.~\ref{eq:sjetab}).                             */
209 /*HINT1(16): (mb) the cross section $\sigma_{jet}^B$ to account for       */
210 /*         the target shadowing correction term in the jet cross          */
211 /*         section (see Eq.~\ref{eq:sjetab}).                             */
212 /*HINT1(17): (mb) the cross section $\sigma_{jet}^{AB}$ to account        */
213 /*         for the cross term of shadowing correction in the jet          */
214 /*         cross section.                                                 */
215 /*HINT1(18): (mb) the effective cross section                             */
216 /*         $\sigma_{jet}^{eff}(r_A,r_B)$ for jet production               */
217 /*         of the latest nucleon-nucleon collision which depends          */
218 /*         on the transverse coordinates of the colliding                 */
219 /*         nucleons.                                                      */
220 /*HINT1(19): (fm) the (absolute value of) impact parameter of the         */
221 /*         latest event.                                                  */
222 /*HINT1(20): (radians) the azimuthal angle $\phi$ of the impact           */
223 /*         parameter vector in the transverse plane of the latest         */
224 /*         event.                                                         */
225 /*HINT1(21)--HINT1(25): the four momentum and mass ($p_x,p_y,p_z,E,M$)    */
226 /*         (GeV/$c$, GeV, GeV/$c^2$) of the first scattered parton        */
227 /*         in the triggered hard scattering. This is before the final     */
228 /*         state radiation but after the initial state radiation.         */
229 /*HINT1(26)--HINT1(30): not used.                                         */
230 /*HINT1(31)--HINT1(35): the four momentum and mass ($p_x,p_y,p_z,E,M$)    */
231 /*         (GeV/$c$, GeV, GeV/$c^2$) of the second scattered parton       */
232 /*         in the triggered hard scattering. This is before the final     */
233 /*         state radiation but after the initial state radiation.         */
234 /*HINT1(46)--HINT1(40): not used.                                         */
235 /*HINT1(41)--HINT1(45): the four momentum and mass ($p_x,p_y,p_z,E,M$)    */
236 /*         (GeV/$c$, GeV, GeV/$c^2$) of the first scattered parton        */
237 /*         in the latest hard scattering of the latest event.             */
238 /*HINT1(46): $P_T$ (GeV/$c$) of the first scattered parton in the         */
239 /*         latest hard scattering of the latest event.                    */
240 /*HINT1(47)--HINT1(50): not used.                                         */
241 /*HINT1(51)--HINT1(55): the four momentum and mass ($p_x,p_y,p_z,E,M$)    */
242 /*         (GeV/$c$, GeV, GeV/$c^2$) of the second scattered parton       */
243 /*         in the latest hard scattering of the latest event.             */
244 /*HINT1(56): $P_T$ (GeV/$c$) of the second scattered parton in the        */
245 /*         latest hard scattering of the latest event.                    */
246 /*HINT1(57)--HINT1(58): not used.                                         */
247 /*HINT1(59): (mb) the averaged cross section of the                       */
248 /*         triggered jet production (with $P_T$ specified by HIPR1(10)    */
249 /*         and with switch by IHPR2(3)) per nucleon-nucleon               */
250 /*         collision,                                                     */
251 /*         $\int d^2b\{1-\exp[-\sigma_{jet}^{trig}T_N(b)]\}$              */
252 /*HINT1(60): (mb) the averaged inclusive cross section of the             */
253 /*         triggered jet production $\sigma_{jet}^{trig}$                 */
254 /*         (with $P_T$ specified by                                       */
255 /*         HIPR1(10) and with switch by IHPR2(3)) per                     */
256 /*         nucleon-nucleon collision.                                     */
257 /*HINT1(61): (mb) the triggered jet production cross section without      */
258 /*         nuclear shadowing effect (similar to HINT1(14)).               */
259 /*HINT1(62): (mb) the cross section to account for the projectile         */
260 /*         shadowing correction term in the triggered jet cross           */
261 /*         section (similar to HINT1(15)).                                */
262 /*HINT1(63): (mb) the cross section to account for the target             */
263 /*         shadowing correction term in the triggered jet cross           */
264 /*         section (similar to HINT1(16)).                                */
265 /*HINT1(64): (mb) the cross section to account for the cross              */
266 /*         term of shadowing correction in the triggered jet              */
267 /*         cross section (similar to HINT1(17).                           */
268 /*HINT1(65): (mb) the inclusive cross section for latest triggered        */
269 /*         jet production which depends on the transverse coordinates     */
270 /*         of the colliding nucleons (similar to HINT1(18)).              */
271 /*HINT1(67)--HINT1(71): not used.                                         */
272 /*HINT1(72)--HINT1(75): three parameters for the Wood-Saxon               */
273 /*         projectile nuclear distribution and the normalization          */
274 /*         read from a table inside the program,                          */
275 /*         $\rho(r)=C[1+W(r/R_A)^2]/\{1+\exp[(r-R_A)/D]\}$,               */
276 /*         $R_A$=HINT1(72), $D$=HINT1(73), $W$=HINT1(74), $C$=HINT1(75).  */
277 /*HINT1(76)--HINT1(79): three parameters for the Wood-Saxon               */
278 /*         projectile nuclear distribution and the normalization          */
279 /*         read from a table inside the program,                          */
280 /*         $\rho(r)=C[1+W(r/R_A)^2]/\{1+\exp[(r-R_A)/D]\}$,               */
281 /*         $R_A$=HINT1(76), $D$=HINT1(77), $W$=HINT1(78), $C$=HINT1(79).  */
282 /*HINT1(80)--HINT1(100): the probability of $j=0-20$ number of hard       */
283 /*         scatterings per nucleon-nucleon collisions.                    */
284 /*IHNT2(1): the mass number of the projectile nucleus (1 for a hadron).   */
285 /*IHNT2(2): the charge number of the projectile nucleus. If the           */
286 /*         projectile is a hadron, it gives the charge of the hadron.     */
287 /*IHNT2(3): the mass number of the target nucleus (1 for a hadron).       */
288 /*IHNT2(4): the charge number of the target nucleus. If the target        */
289 /*         is a hadron, it gives the charge of the hadron.                */
290 /*IHNT2(5): the flavor code of the projectile hadron (0 for nucleus).     */
291 /*IHNT2(6): the flavor code of the target hadron (0 for nucleus).         */
292 /*IHNT2(7)--IHNT2(8): not used.                                           */
293 /*IHNT2(9): the flavor code of the first scattered parton in the          */
294 /*         triggered hard scattering.                                     */
295 /*IHNT2(10): the flavor code of the second scattered parton in the        */
296 /*         triggered hard scattering.                                     */
297 /*IHNT2(11): the sequence number of the projectile nucleon in the         */
298 /*         latest nucleon-nucleon interaction of the latest event.        */
299 /*IHNT2(12): the sequence number of the target nucleon in the latest      */
300 /*         nucleon-nucleon interaction of the latest event.               */
301 /*IHNT2(13): status of the latest soft string excitation.                 */
302 /*         =1: double diffractive.                                        */
303 /*         =2: single diffractive.                                        */
304 /*         =3: non-single diffractive.                                    */
305 /*IHNT2(14): the flavor code of the first scattered parton in the         */
306 /*         latest hard scattering of the latest event.                    */
307 /*IHNT2(15): the flavor code of the second scattered parton in the        */
308 /*         latest hard scattering of the latest event.                    */
309 /*IHNT2(16)--IHNT2(50): not used.                                         */
310 /*========================================================================*/
311
312 /*========================================================================*/
313 /* COMMON/HIMAIN1/ NATT,EATT,JATT,NT,NP,N0,N01,N10,N11,BB                 */
314 /*------------------------------------------------------------------------*/
315 typedef struct {
316    Int_t      natt;
317    Float_t    eatt;
318    Int_t      jatt;
319    Int_t      nt;
320    Int_t      np;
321    Int_t      n0;
322    Int_t      n01;
323    Int_t      n10;
324    Int_t      n11;
325    Float_t    bb;   
326    } Himain1Common;
327
328 #define HIMAIN1 COMMON_BLOCK(HIMAIN1,himain1)
329 COMMON_BLOCK_DEF(Himain1Common,HIMAIN1);
330 /*************************************************************************/
331 /*           D E S C R I P T I O N :                                     */
332 /*-----------------------------------------------------------------------*/
333 /*COMMON/HIMAIN1/NATT, EATT, JATT, NT, NP, N0, N01, N10, N11             */
334 /*Purpose: to give the overall information of the generated event.       */
335 /*NATT: total number of produced stable and undecayed particles of       */
336 /*         the current event.                                            */
337 /*EATT: the total energy of the produced particles in c.m. frame         */
338 /*         of the collision to check energy conservation.                */
339 /*JATT: the total number of hard scatterings in the current event.       */
340 /*NP, NT: the number of participant projectile and target nucleons       */
341 /*         in the current event.                                         */
342 /*N0, N01, N10, N11: number of $N$-$N$, $N$-$N_{wounded}$,               */
343 /*         $N_{wounded}$-$N$, and                                        */
344 /*         $N_{wounded}$-$N_{wounded}$ collisions in                     */
345 /*         the current event ($N$, $N_{wounded}$ stand                   */
346 /*         for nucleon and wounded nucleon respectively).                */
347 /*=======================================================================*/
348
349
350 /*========================================================*/
351 /* COMMON/HIMAIN2/KATT(200000,4),PATT(200000,4),VATT(200000,4)*/
352 /*--------------------------------------------------------*/
353 typedef struct {
354    Int_t    katt[4][200000];
355    Float_t  patt[4][200000];
356    Float_t  vatt[4][200000];
357 } Himain2Common;
358
359 #define HIMAIN2 COMMON_BLOCK(HIMAIN2,himain2)
360 COMMON_BLOCK_DEF(Himain2Common,HIMAIN2);
361 /*************************************************************************/
362 /*           D E S C R I P T I O N :                                     */
363 /*-----------------------------------------------------------------------*/
364 /*Purpose: to give information of produced stable and undecayed          */
365 /*         particles. Parent particles which decayed are not included    */
366 /*         here.                                                         */
367 /*KATT(I, 1): (I=1,$\cdots$,NATT) flavor codes (see appendix) of         */
368 /*         the produced particles.                                       */
369 /*KATT(I, 2): (I=1,$\cdots$,NATT) status codes to identify the           */
370 /*         sources from which the particles come.                        */
371 /*         =0: projectile nucleon (or hadron) which has                  */
372 /*          not interacted at all.                                       */
373 /*         =1: projectile nucleon (or hadron) which                      */
374 /*          only suffers an elastic collision.                           */
375 /*         =2: from a diffractive projectile nucleon (or hadron)         */
376 /*          in a single diffractive interaction.                         */
377 /*         =3: from the fragmentation of a projectile string             */
378 /*          system (including gluon jets).                               */
379 /*         =10 target nucleon (or hadron) which has not                  */
380 /*          interacted at all.                                           */
381 /*         =11: target nucleon (or hadron) which only                    */
382 /*          suffers an elastic collision.                                */
383 /*         =12: from a diffractive target nucleon (or hadron)            */
384 /*          in a single diffractive interaction.                         */
385 /*         =13: from the fragmentation of a target string                */
386 /*          system (including gluon jets).                               */
387 /*         =20: from scattered partons which form string                 */
388 /*          systems themselves.                                          */
389 /*         =40: from direct production in the hard processes             */
390 /*                 ( currently, only direct photons are included).       */
391 /*KATT(I,3): (I=1,$\cdots$,NATT) line number of the parent particle.     */
392 /*                 For finally produced or directly produced (not from   */
393 /*                 the decay of another particle) particles, it is set   */
394 /*                 to 0 (The option to keep the information of all       */
395 /*                 particles including the decayed ones is IHPR2(21)=1). */
396 /*KATT(I,4): (I=1,$\cdots$,NATT) status number of the particle.          */
397 /*        =1: finally or directly produced particles.                    */
398 /*        =11: particles which has already decayed.                      */
399 /*PATT(I, 1-4): (I=1,$\cdots$,NATT) four-momentum ($p_x,p_y,p_z,E$)      */
400 /*         (GeV/$c$, GeV) of the produced particles.                     */
401 /*                                                                       */
402 /*=======================================================================*/
403
404 /*=======================================================================*/
405 /* COMMON/HIJJET1/NPJ(300),KFPJ(300,500),PJPX(300,500),PJPY(300,500)     */
406 /*     &         ,PJPZ(300,500),PJPE(300,500),PJPM(300,500)              */
407 /*     &         ,NTJ(300),KFTJ(300,500),PJTX(300,500),PJTY(300,500)     */
408 /*     &         ,PJTZ(300,500),PJTE(300,500),PJTM(300,500)              */
409 /*-----------------------------------------------------------------------*/
410 typedef struct {
411    Int_t    npj[300];
412    Int_t    kfpj[500][300];
413    Float_t  pjpx[500][300];
414    Float_t  pjpy[500][300];
415    Float_t  pjpz[500][300];
416    Float_t  pjpe[500][300];
417    Float_t  pjpm[500][300];
418    Int_t    ntj[300];
419    Int_t    kftj[500][300];
420    Float_t  pjtx[500][300];
421    Float_t  pjty[500][300];
422    Float_t  pjtz[500][300];
423    Float_t  pjte[500][300];
424    Float_t  pjtm[500][300];
425 } Hijjet1Common;
426
427 #define HIJJET1 COMMON_BLOCK(HIJJET1,hijjet1)
428 COMMON_BLOCK_DEF(Hijjet1Common,HIJJET1);
429 /*************************************************************************/
430 /*           D E S C R I P T I O N :                                     */
431 /*-----------------------------------------------------------------------*/
432 /*Purpose: contains information about produced partons which are         */
433 /*         connected with the valence quarks and diquarks of             */
434 /*         projectile or target nucleons (or hadron) to form             */
435 /*         string systems for fragmentation. The momentum and            */
436 /*         energy of all produced partons are calculated in              */
437 /*         the c.m. frame of the collision. IAP, IAT are the             */
438 /*         numbers of nucleons in projectile and target nucleus          */
439 /*         respectively (IAP, IAT=1 for hadron projectile or target).    */
440 /*NPJ(I): (I=1,$\cdots$,IAP) number of partons associated with projectile*/
441 /*         nucleon I.                                                    */
442 /*KFPJ(I, J): (I=1,$\cdots$,IAP, J=1,$\cdots$,NPJ(I)) parton             */
443 /*         flavor code of the                                            */
444 /*         parton J associated with projectile nucleon I.                */
445 /*PJPX(I, J), PJPY(I, J), PJPZ(I, J), PJPE(I, J), PJPM(I, J): the four   */
446 /*         momentum and mass ($p_x,p_y,p_z,E,M$)                         */
447 /*         (GeV/$c$, GeV, GeV/$c^2$) of parton J associated with         */
448 /*         the projectile nucleon I.                                     */
449 /*NTJ(I): (I=1,$\cdots$,IAT) number of partons associated with           */
450 /*         target nucleon I.                                             */
451 /*KFTJ(I, J): (I=1,$\cdots$,IAT, J=1,$\cdots$,NTJ(I)): parton            */
452 /*         flavor code of the  parton J associated with                  */
453 /*         target nucleon I.                                             */
454 /*PJTX(I, J), PJTY(I, J), PJTZ(I, J), PJTE(I, J), PJTM(I, J): the four   */
455 /*         momentum and mass ($p_x,p_y,p_z,E,M$)                         */
456 /*         (GeV/$c$, GeV, GeV/$c^2$) of parton J associated with         */
457 /*         target nucleon I.                                             */
458 /*                                                                       */
459 /*=======================================================================*/
460
461 /*=======================================================================*/
462 /* COMMON/HIJJET2/NSG,NJSG(900),IASG(900,3),K1SG(900,100),               */
463 /*     &          K2SG(900,100),PXSG(900,100),PYSG(900,100),             */
464 /*     &          PZSG(900,100),PESG(900,100),PMSG(900,100)              */ 
465 /*-----------------------------------------------------------------------*/
466 typedef struct {
467    Int_t      nsg;
468    Int_t      njsg[900];
469    Int_t      iasg[3][900];
470    Int_t      k1sg[100][900];
471    Int_t      k2sg[100][900];
472    Float_t    pxsg[100][900];
473    Float_t    pysg[100][900];
474    Float_t    pzsg[100][900];
475    Float_t    pesg[100][900];
476    Float_t    pmsg[100][900];
477 } Hijjet2Common;
478
479 #define HIJJET2 COMMON_BLOCK(HIJJET2,hijjet2)
480 COMMON_BLOCK_DEF(Hijjet2Common,HIJJET2);
481 /*************************************************************************/
482 /*           D E S C R I P T I O N :                                     */
483 /*-----------------------------------------------------------------------*/
484 /*Purpose: contains information about the produced partons which         */
485 /*         will form string systems themselves without being             */
486 /*         connected to valence quarks and diquarks.                     */
487 /*NSG: the total number of such string systems.                          */
488 /*NJSG(I): (I=1,$\cdots$,NSG) number of partons in the string system I.  */
489 /*IASG(I, 1), IASG(I, 2): to specify which projectile and target         */
490 /*         nucleons produce string system I.                             */
491 /*IASG(I, 3): to indicate whether the jets will be quenched (0)          */
492 /*         or will not be quenched (1).                                  */
493 /*K1SG(I, J): (J=1,$\cdots$,NJSG(I)) color flow information of parton J  */
494 /*         in string system I (see JETSET 7.2 for detailed               */
495 /*         explanation).                                                 */
496 /*K2SG(I, J): (J=1,$\cdots$,NJSG(I)) flavor code of parton J in string   */
497 /*         system I.                                                     */
498 /*PXSG(I, J), PYSG(I, J), PZSG(I, J), PESG(I, J), PMSG(I, J): four       */
499 /*         momentum and mass ($p_x,p_y,p_z,E,M$)                         */
500 /*         ( GeV/$c$, GeV, GeV/$c^2$) of parton J in string system I.    */
501 /*=======================================================================*/
502
503 /*=======================================================================*/
504 /* COMMON/HISTRNG/NFP(300,15),PP(300,15),NFT(300,15),PT(300,15)          */
505 /*-----------------------------------------------------------------------*/
506 typedef struct {
507    Int_t    nfp[15][300];
508    Float_t  pp[15][300];
509    Int_t    nft[15][300];
510    Float_t  pt[15][300];
511 } HistrngCommon;
512
513 #define HISTRNG COMMON_BLOCK(HISTRNG,histrng)
514 COMMON_BLOCK_DEF(HistrngCommon,HISTRNG);
515 /*************************************************************************/
516 /*           D E S C R I P T I O N :                                     */
517 /*-----------------------------------------------------------------------*/
518 /*Purpose: contains information about the projectile and                 */
519 /* target nucleons (hadron) and the corresponding constituent            */
520 /* quarks, diquarks. IAP, IAT are the numbers of nucleons in             */
521 /* projectile and target nucleus respectively (IAP, IAT=1                */
522 /* for hadron projectile or target).                                     */
523 /*NFP(I, 1): (I=1,$\cdots$,IAP) flavor code of the valence quark in      */
524 /*         projectile nucleon (hadron) I.                                */
525 /*NFP(I, 2): flavor code of diquark in projectile nucleon (anti-quark    */
526 /*         in projectile meson) I.                                       */
527 /*NFP(I, 3): present flavor code of the projectile nucleon (hadron) I    */
528 /*         ( a nucleon or meson can be excited to its vector resonance). */
529 /*NFP(I, 4): original flavor code of projectile nucleon (hadron) I.      */
530 /*NFP(I, 5): collision status of projectile nucleon (hadron) I.          */
531 /*         =0: suffered no collision.                                    */
532 /*         =1: suffered an elastic collision.                            */
533 /*         =2: being the diffractive one in a single-diffractive         */
534 /*          collision.                                                   */
535 /*         =3: became an excited string after an inelastic               */
536 /*          collision.                                                   */
537 /*NFP(I, 6): the total number of hard scatterings associated with        */
538 /*         projectile nucleon (hadron) I. If NFP(I,6)$<0$, it can not    */
539 /*                 produce jets any more due to energy conservation.     */
540 /*NFP(I, 10): to indicate whether the valence quarks or diquarks         */
541 /*         (anti-quarks) in projectile nucleon (hadron) I                */
542 /*         suffered a hard scattering,                                   */
543 /*         =0: has not  suffered a hard scattering.                      */
544 /*         =1: suffered one or more hard scatterings in                  */
545 /*          current binary nucleon-nucleon collision.                    */
546 /*         =-1: suffered one or more hard scatterings in                 */
547 /*          previous binary nucleon-nucleon collisions.                  */
548 /*NFP(I, 11): total number of interactions projectile nucleon (hadron)   */
549 /*         I  has suffered so far.                                       */
550 /*PP(I, 1), PP(I, 2), PP(I, 3), PP(I, 4), PP(I, 5): four momentum and    */
551 /*         the invariant mass ($p_x,p_y,p_z,E,M$)                        */
552 /*         (GeV/$c$, GeV, GeV/$c^2$) of projectile nucleon (hadron) I.   */
553 /*PP(I, 6), PP(I, 7): transverse momentum ($p_x,p_y$) (GeV/$c$) of the   */
554 /*         valence quark in projectile nucleon (hadron) I.               */
555 /*PP(I, 8), PP(I, 9): transverse momentum ($p_x,p_y$) (GeV/$c$) of the   */
556 /*         diquark (anti-quark) in projectile nucleon (hadron) I.        */
557 /*PP(I, 10), PP(I, 11), PP(I, 12): three momentum ($p_x,p_y,p_z$)        */
558 /*         (GeV/$c$) transferred to the quark or diquark (anti-quark)    */
559 /*         in projectile nucleon (hadron) I from the last hard           */
560 /*         scattering.                                                   */
561 /*PP(I, 14): mass (GeV/$c^2$) of the quark in projectile nucleon         */
562 /*         (hadron) I.                                                   */
563 /*PP(I, 15): mass of the diquark (anti-quark) in projectile              */
564 /*         nucleon (hadron) I.                                           */
565 /*NFT(I, 1--15), PT(I,1--15): give the same                              */
566 /*         information for the target nucleons (hadron) and the          */
567 /*         corresponding quarks and diquarks (anti-quarks) as for        */
568 /*         the projectile nucleons.                                      */
569 /*                                                                       */
570 /*=======================================================================*/
571 }
572
573 #endif