ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4HIJING_Interface.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4HIJING_Interface.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
#ifndef G4HIJING_Interface_hh
27
#define G4HIJING_Interface_hh
28
29
//
30
// MODULE: G4HIJING_Model.hh
31
//
32
// Version: 1.B
33
// Date: 10/09/2013
34
// Author: Khaled Abdel-Waged
35
// Institute: Umm Al-Qura University
36
// Country: SAUDI ARABIA
37
//
38
39
// First: 1-COMMON BLOCK FOR OPTIONS AND PARAMETERS
40
//-----
41
// HIPARNT
42
// input parameters
43
// HIPR1, HIPR2 for event options
44
// HINT1, HINT2 of current event
45
//---------------------------------
46
struct
cchijinghiparnt
47
{
48
49
float
hipr1
[100];
50
G4int
ihpr2
[50];
51
float
hint1
[100];
52
G4int
ihnt2
[50];
53
54
};
55
56
//****************************************************************************
57
// Second: 5-COMMON BLOCKS FOR EVENT INFORMATION
58
//----------------------------------------------------------------------------
59
60
//
61
// HIMAIN1-> Global information of the events are defined
62
//
63
struct
cchijinghimain1
64
{
65
G4int
natt
;
66
float
eatt
;
67
G4int
jatt
,
nt
,
np
,
n0
,
n01
,
n10
,
n11
;
68
};
69
//-----------
70
// HIMAIN2->information of produced stable and undecayed particles
71
//-------
72
struct
cchijinghimain2
73
{
74
G4int
katt
[4][130000];
75
float
patt
[4][130000];
76
};
77
//--------
78
// HIJJET1-> information about produced partons which
79
// are connected with the valence quarks, diquarks,...
80
//--------
81
struct
cchijinghijjet1
82
{
83
G4int
npj
[300],
kfpj
[500][300];
84
float
pjpx
[500][300],
pjpy
[500][300],
pjpz
[500][300],
pjpe
[500][300];
85
float
pjpm
[500][300];
86
G4int
ntj
[300],
kftj
[500][300];
87
float
pjtx
[500][300],
pjty
[500][300],
pjtz
[500][300];
88
float
pjte
[500][300],
pjtm
[500][300];
89
};
90
//--------
91
// HIJJET1-> information about produced partons which
92
// will form string systems without being connected with
93
// valence quarks, diquarks,...
94
// ------
95
struct
cchijinghijjet2
96
{
97
G4int
nsg
,
njsg
[900],
iasg
[3][900],
k1sg
[100][900];
98
G4int
k2sg
[100][900];
99
float
pxsg
[100][900],
pysg
[100][900],
pzsg
[100][900];
100
float
pesg
[100][900],
pmsg
[100][900];
101
};
102
103
//------
104
// HISTRNG
105
// contain information about the projectile and target nucleons
106
//-----
107
struct
cchijinghistrng
108
{
109
G4int
nfp
[15][300];
110
float
pp
[15][300];
111
G4int
nft
[15][300];
112
float
pt
[15][300];
113
};
114
//****************************************************************************
115
// third: 2-COMMON BLOCKS which contain specific information
116
//----------------------------------------------------------------------------
117
118
struct
cchijinghijjet4
119
{
120
G4int
ndr
,
iadr
[2][900],
kfdr
[900];
121
float
pdr
[5][900];
122
};
123
124
struct
cchijinghijcrdn
125
{
126
float
yp
[300][3],
yt
[300][3];
127
};
128
//---------------------------------------------------------
129
// fourth: 5-Other common blocks
130
// --------------------------------------------------------
131
132
133
struct
cchijingbveg1
134
{
135
float
xl
,
xu
,
acc
;
136
G4int
ndim
,
ncall
,
itmx
,
nprn
;
137
};
138
139
140
141
142
struct
cchijingseedvax
143
{
144
G4int
num1
;
145
};
146
147
148
149
struct
cchijingranseed
150
{
151
float
nseed
;
152
};
153
154
155
156
struct
cchijinghijdat
157
{
158
float
hidat0
[10][10],
hidat
[10];
159
};
160
161
162
struct
cchijinghipyint
163
{
164
G4int
mint4
,
mint5
;
165
float
atco
[20][200],
atxs
[200+1];
166
};
167
168
// hijing
169
170
extern
"C"
171
{
172
// initialize HIJING for specified event type,
173
// collision frame and energy
174
175
//extern void hijset_ (float*,
177
// G4int*, G4int*, G4int*, G4int*);
178
179
extern
void
hijset_
(
float
*);
180
181
// to generate a complete event as specified by sybroutine HIJSET
182
183
//extern void hijing_ (const char*,
184
// float*, float*);
185
186
extern
void
hijing_
(
float
*,
float
*);
187
188
extern
float
ulmass_
(
G4int
*);
189
190
191
192
// reset all relevant common blocks and variables and initialize HIJING
193
// for each event
194
195
extern
void
hijini_
();
196
197
// calculate cross sections for minijet production, cross section of
198
// the triggered processes, elastic, inelastic, total cross section..
199
extern
void
hijcrs_
();
200
201
//
202
// initialize program for generating hard scattering
203
//as specified by parameters and options
204
205
extern
void
jetini_
(
G4int
*,
G4int
*,
G4int
*);
206
//
207
208
// re-initiate PYTHIA for the triggered hard processe
209
// or simulate one hard scattering among the multiple jet production
210
//per NN-collision
211
212
extern
void
hijhrd_
(
G4int
*,
G4int
*,
G4int
*,
G4int
*,
G4int
*);
213
214
//
215
//generate soft interaction for each binary NN-collision
216
217
extern
void
hijsft_
(
G4int
*,
G4int
*,
G4int
*);
218
219
// rearrange gluon jets in a string system according to their rapidities
220
221
extern
void
hijsrt_
(
G4int
*,
G4int
*);
222
223
// perform jet quenching by allowing final state interaction of produced jet
224
// inside excited strings
225
226
extern
void
quench_
(
G4int
*,
G4int
*);
227
228
//
229
// arrange produced partons together with the valence quarks and diquarks
230
231
extern
void
hijfrg_
(
G4int
*,
G4int
*,
G4int
*);
232
233
// perform soft radiation according to the Lund dipole approx.
234
235
extern
void
attrad_
(
G4int
*);
236
237
// generate flavor codes of the valence quark (diquark)
238
//inside a given nucleon (hadron).
239
240
extern
void
attflv_
(
G4int
*,
G4int
*,
G4int
*);
241
242
// perform elastic scattering and possible elastic NN cascading
243
244
extern
void
hijcsc_
(
G4int
*,
G4int
*);
245
246
// three parameter Wood-Sax distribution
247
248
extern
void
hijwds_
(
G4int
*,
G4int
*,
float
*);
249
250
// gives profile function of 2 colliding nuclei at a given impact parameter
251
252
extern
float
profile_
(
float
*);
253
254
// transform the produced particles from c.m to lab frame
255
256
extern
void
hiboost_
();
257
258
//----------------------------------------
259
// the default values of the parametrs and options to initialize
260
// the event record common blocks
261
262
extern
void
g4hijingblockdata_
();
263
// ----------------------
264
// random generator
265
266
extern
void
rlu_
(
G4int
*);
267
268
//-----------------------------------------
269
extern
struct
cchijinghiparnt
hiparnt_;
270
271
extern
struct
cchijinghimain1
himain1_;
272
extern
struct
cchijinghimain2
himain2_;
273
274
extern
struct
cchijinghijjet1
hijjet1_;
275
extern
struct
cchijinghijjet2
hijjet2_;
276
277
extern
struct
cchijinghistrng
histrng_;
278
279
extern
struct
cchijinghijjet4
hijjet4_;
280
281
extern
struct
cchijinghijcrdn
hijcrdn_;
282
283
extern
struct
cchijingbveg1
bveg1_;
284
285
extern
struct
cchijingseedvax
seedvax_;
286
287
extern
struct
cchijingranseed
ranseed_;
288
289
extern
struct
cchijinghijdat
hijdat_;
290
291
extern
struct
cchijinghipyint
hipyint_;
292
293
}
294
295
#endif
296
geant4
tree
geant4-10.6-release
examples
extended
hadronic
Hadr02
include
G4HIJING_Interface.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:06
using
1.8.2 with
ECCE GitHub integration