Main Page
Namespaces
Classes
Package Documentation
GeneratorInterface
ReggeGribovPartonMCInterface
interface
ReggeGribovPartonMCHadronizer.h
Go to the documentation of this file.
1
#ifndef REGGEGRIBOVPARTONMCHADRONIZER_H
2
#define REGGEGRIBOVPARTONMCHADRONIZER_H
3
4
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
5
#include "
GeneratorInterface/Core/interface/BaseHadronizer.h
"
6
#include "
FWCore/ParameterSet/interface/FileInPath.h
"
7
8
#include <map>
9
#include <string>
10
#include <vector>
11
#include <cmath>
12
13
namespace
HepMC
{
14
class
GenEvent;
15
class
GenParticle
;
16
class
GenVertex;
17
}
18
19
namespace
CLHEP
{
20
class
HepRandomEngine;
21
}
22
23
extern
"C"
24
{
25
//iout,ievent,noutpart,impactpar,outpart,outpx,outpy,outpz,oute,outm,outstat
26
void
crmc_f_
(
int
&,
int
&,
int
&,
double
&,
int
&,
double
&,
double
&,
double
&,
27
double
&,
double
&,
int
&);
28
29
//iEvent,iSeed,pproj,ptarg,ipart,itarg,imodel,itab,iout,output,param
30
void
crmc_set_f_
(
int
&,
int
&,
double
&,
double
&,
int
&,
int
&,
int
&,
int
&,
31
int
&,
const
char
*,
const
char
*);
32
33
//iEvent,iSeed,pproj,ptarg,ipart,itarg,imodel,itab,iout,output,param
34
void
crmc_init_f_
();
35
}
36
37
#define nmxhep 99990
38
39
extern
"C"
40
{
41
/* extern struct
42
{
43
int nevhep;
44
int nhep;
45
46
int isthep[nmxhep];
47
int idhep[nmxhep];
48
int jmohep[nmxhep][2];
49
int jdahep[nmxhep][2];
50
double phep[nmxhep][5];
51
double vhep[nmxhep][5];
52
} hepcom_; //epos.inc*/
53
54
extern
struct
55
{
56
float
sigtot
;
// ........ total cross section
57
float
sigcut
;
58
float
sigela
;
59
float
sloela
;
60
float
sigsd
;
61
float
sigine
;
62
float
sigdif
;
63
float
sigineaa
;
64
float
sigtotaa
;
65
float
sigelaaa
;
66
float
sigcutaa
;
67
}
hadr5_
;
//epos.inc
68
69
extern
struct
70
{
71
float
phievt
;
// ........ angle of impact parameter
72
int
nevt
;
// ........ error code. 1=valid event, 0=invalid event
73
float
bimevt
;
// ........ absolute value of impact parameter
74
int
kolevt
;
// ........ number of collisions
75
int
koievt
;
// ........ number of inelastic collisions
76
float
pmxevt
;
// ........ reference momentum
77
float
egyevt
;
// ........ pp cm energy (hadron) or string energy (lepton)
78
int
npjevt
;
// ........ number of primary projectile participants
79
int
ntgevt
;
// ........ number of primary target participants
80
int
npnevt
;
// ........ number of primary projectile neutron spectators
81
int
nppevt
;
// ........ number of primary projectile proton spectators
82
int
ntnevt
;
// ........ number of primary target neutron spectators
83
int
ntpevt
;
// ........ number of primary target proton spectators
84
int
jpnevt
;
// ........ number of absolute projectile neutron spectators
85
int
jppevt
;
// ........ number of absolute projectile proton spectators
86
int
jtnevt
;
// ........ number of absolute target neutron spectators
87
int
jtpevt
;
// ........ number of absolute target proton spectators
88
float
xbjevt
;
// ........ bjorken x for dis
89
float
qsqevt
;
// ........ q**2 for dis
90
int
nglevt
;
// ........ number of collisions acc to Glauber
91
float
zppevt
;
// ........ average Z-parton-proj
92
float
zptevt
;
// ........ average Z-parton-targ
93
int
minfra
;
//
94
int
maxfra
;
//
95
int
kohevt
;
// ........ number of hard collisions
96
}
cevt_
;
//epos.inc
97
98
extern
struct
99
{
100
int
ng1evt
;
// ........ number of collisions acc to Glauber
101
int
ng2evt
;
// ........ number of Glauber participants with at least two IAs
102
float
rglevt
;
// ........
103
float
sglevt
;
// ........
104
float
eglevt
;
// ........
105
float
fglevt
;
// ........
106
int
ikoevt
;
// ........ number of elementary parton-parton scatterings
107
float
typevt
;
// ........ type of event (1=Non Diff, 2=Double Diff, 3=Single Diff)
108
}
c2evt_
;
//epos.inc
109
110
extern
struct
111
{
112
float
bmaxim
;
113
float
bminim
;
114
float
phimax
;
115
float
phimin
;
116
}
nucl2_
;
//epos.inc
117
}
118
119
120
extern
"C"
121
{
122
extern
struct
123
{
124
char
fnch
[500];
125
char
fnhi
[500];
126
char
fndt
[500];
127
char
fnii
[500];
128
char
fnid
[500];
129
char
fnie
[500];
130
char
fnrj
[500];
131
char
fnmt
[500];
132
char
fngrv
[500];
133
char
fncp
[500];
134
char
fnnx
[500];
135
char
fncs
[500];
136
char
fndr
[500];
137
char
fnhpf
[500];
138
}
fname_
;
//epos.inc
139
140
extern
struct
141
{
142
int
nfnch
;
143
int
nfnhi
;
144
int
nfndt
;
145
int
nfnii
;
146
int
nfnid
;
147
int
nfnie
;
148
int
nfnrj
;
149
int
nfnmt
;
150
int
nfngrv
;
151
int
nfncp
;
152
int
nfnnx
;
153
int
nfncs
;
154
int
nfndr
;
155
int
nfnhpf
;
156
}
nfname_
;
//epos.inc
157
158
extern
struct
159
{
160
char
fndat
[500];
161
char
fnncs
[500];
162
int
ifdat
;
163
int
ifncs
;
164
}
qgsfname_
;
//epos-bas.f
165
166
extern
struct
167
{
168
int
nfndat
;
169
int
nfnncs
;
170
}
qgsnfname_
;
//epos-bas.f
171
172
extern
struct
173
{
174
char
fniidat
[500];
175
char
fniincs
[500];
176
int
ifiidat
;
177
int
ifiincs
;
178
}
qgsiifname_
;
//epos-bas.f
179
180
extern
struct
181
{
182
int
nfniidat
;
183
int
nfniincs
;
184
}
qgsiinfname_
;
//epos-bas.f
185
}
186
187
namespace
gen
188
{
189
extern
"C"
{
190
float
rangen_
();
191
}
192
193
extern
"C"
{
194
double
drangen_
(
int
*);
195
}
196
197
198
class
ReggeGribovPartonMCHadronizer :
public
BaseHadronizer
199
{
200
201
public
:
202
ReggeGribovPartonMCHadronizer(
const
edm::ParameterSet
&);
203
~ReggeGribovPartonMCHadronizer()
override
;
204
205
bool
generatePartonsAndHadronize();
206
bool
hadronize();
207
bool
decay
();
208
bool
residualDecay();
209
bool
readSettings
(
int
) {
return
true
; }
210
bool
initializeForExternalPartons
() {
return
true
; }
211
bool
initializeForInternalPartons();
212
bool
declareStableParticles(
const
std::vector<int>& );
213
bool
declareSpecialSettings
(
const
std::vector<std::string>& ) {
return
true
; }
214
bool
initializeTablePaths();
215
216
void
finalizeEvent();
217
void
statistics
();
218
const
char
*
classname
()
const
;
219
220
private
:
221
222
void
doSetRandomEngine(CLHEP::HepRandomEngine*
v
)
override
;
223
224
edm::ParameterSet
pset_
;
225
double
m_BeamMomentum
;
226
double
m_TargetMomentum
;
227
int
m_BeamID
;
228
int
m_TargetID
;
229
int
m_HEModel
;
230
double
m_bMin
;
231
double
m_bMax
;
232
edm::FileInPath
m_ParamFileName
;
233
bool
m_SkipNuclFrag
;
234
int
m_NEvent
;
235
236
int
m_NParticles
;
237
double
m_ImpactParameter
;
238
int
m_PartID[
nmxhep
];
239
double
m_PartPx[
nmxhep
];
240
double
m_PartPy[
nmxhep
];
241
double
m_PartPz[
nmxhep
];
242
double
m_PartEnergy[
nmxhep
];
243
double
m_PartMass[
nmxhep
];
244
int
m_PartStatus[
nmxhep
];
245
246
bool
m_IsInitialized
;
247
};
248
249
}
/*end namespace*/
250
251
#endif //ifndef REGGEGRIBOVPARTONMCHADRONIZER_H
nfnid
int nfnid
Definition:
ReggeGribovPartonMCHadronizer.h:146
nfnmt
int nfnmt
Definition:
ReggeGribovPartonMCHadronizer.h:149
eglevt
float eglevt
Definition:
ReggeGribovPartonMCHadronizer.h:104
BaseHadronizer.h
zptevt
float zptevt
Definition:
ReggeGribovPartonMCHadronizer.h:92
fnii
char fnii[500]
Definition:
ReggeGribovPartonMCHadronizer.h:127
gen::ReggeGribovPartonMCHadronizer::declareSpecialSettings
bool declareSpecialSettings(const std::vector< std::string > &)
Definition:
ReggeGribovPartonMCHadronizer.h:213
sigcut
float sigcut
Definition:
ReggeGribovPartonMCHadronizer.h:57
fnmt
char fnmt[500]
Definition:
ReggeGribovPartonMCHadronizer.h:131
gen::ReggeGribovPartonMCHadronizer::m_IsInitialized
bool m_IsInitialized
Definition:
ReggeGribovPartonMCHadronizer.h:246
nfnii
int nfnii
Definition:
ReggeGribovPartonMCHadronizer.h:145
nfname_
struct @752 nfname_
xbjevt
float xbjevt
Definition:
ReggeGribovPartonMCHadronizer.h:88
gen::ReggeGribovPartonMCHadronizer::m_ParamFileName
edm::FileInPath m_ParamFileName
Definition:
ReggeGribovPartonMCHadronizer.h:232
hadr5_
struct @747 hadr5_
kolevt
int kolevt
Definition:
ReggeGribovPartonMCHadronizer.h:74
qgsiifname_
struct @755 qgsiifname_
sigdif
float sigdif
Definition:
ReggeGribovPartonMCHadronizer.h:62
GenParticle
Definition:
GenParticle.py:1
nglevt
int nglevt
Definition:
ReggeGribovPartonMCHadronizer.h:90
ikoevt
int ikoevt
Definition:
ReggeGribovPartonMCHadronizer.h:106
npnevt
int npnevt
Definition:
ReggeGribovPartonMCHadronizer.h:80
fname_
struct @751 fname_
jtpevt
int jtpevt
Definition:
ReggeGribovPartonMCHadronizer.h:87
gen::ReggeGribovPartonMCHadronizer::pset_
edm::ParameterSet pset_
Definition:
ReggeGribovPartonMCHadronizer.h:224
sigtotaa
float sigtotaa
Definition:
ReggeGribovPartonMCHadronizer.h:64
nfngrv
int nfngrv
Definition:
ReggeGribovPartonMCHadronizer.h:150
findQualityFiles.v
v
Definition:
findQualityFiles.py:179
ifiincs
int ifiincs
Definition:
ReggeGribovPartonMCHadronizer.h:177
gen::ReggeGribovPartonMCHadronizer::m_NParticles
int m_NParticles
Definition:
ReggeGribovPartonMCHadronizer.h:236
ifiidat
int ifiidat
Definition:
ReggeGribovPartonMCHadronizer.h:176
crmc_f_
void crmc_f_(int &, int &, int &, double &, int &, double &, double &, double &, double &, double &, int &)
qgsiinfname_
struct @756 qgsiinfname_
gen::ReggeGribovPartonMCHadronizer::readSettings
bool readSettings(int)
Definition:
ReggeGribovPartonMCHadronizer.h:209
zppevt
float zppevt
Definition:
ReggeGribovPartonMCHadronizer.h:91
nfncp
int nfncp
Definition:
ReggeGribovPartonMCHadronizer.h:151
ParameterSet.h
CLHEP
Definition:
CocoaGlobals.h:27
fnncs
char fnncs[500]
Definition:
ReggeGribovPartonMCHadronizer.h:161
ntgevt
int ntgevt
Definition:
ReggeGribovPartonMCHadronizer.h:79
nfndt
int nfndt
Definition:
ReggeGribovPartonMCHadronizer.h:144
nfnhpf
int nfnhpf
Definition:
ReggeGribovPartonMCHadronizer.h:155
sglevt
float sglevt
Definition:
ReggeGribovPartonMCHadronizer.h:103
fnrj
char fnrj[500]
Definition:
ReggeGribovPartonMCHadronizer.h:130
gen::ReggeGribovPartonMCHadronizer::m_SkipNuclFrag
bool m_SkipNuclFrag
Definition:
ReggeGribovPartonMCHadronizer.h:233
c2evt_
struct @749 c2evt_
ifdat
int ifdat
Definition:
ReggeGribovPartonMCHadronizer.h:162
minfra
int minfra
Definition:
ReggeGribovPartonMCHadronizer.h:93
cevt_
struct @748 cevt_
sigcutaa
float sigcutaa
Definition:
ReggeGribovPartonMCHadronizer.h:66
phimax
float phimax
Definition:
ReggeGribovPartonMCHadronizer.h:114
fncp
char fncp[500]
Definition:
ReggeGribovPartonMCHadronizer.h:133
qgsfname_
struct @753 qgsfname_
bmaxim
float bmaxim
Definition:
ReggeGribovPartonMCHadronizer.h:112
bminim
float bminim
Definition:
ReggeGribovPartonMCHadronizer.h:113
fnid
char fnid[500]
Definition:
ReggeGribovPartonMCHadronizer.h:128
jpnevt
int jpnevt
Definition:
ReggeGribovPartonMCHadronizer.h:84
ng2evt
int ng2evt
Definition:
ReggeGribovPartonMCHadronizer.h:101
gen::drangen_
double drangen_(int *)
Definition:
ReggeGribovPartonMCHadronizer.cc:54
ntnevt
int ntnevt
Definition:
ReggeGribovPartonMCHadronizer.h:82
nmxhep
#define nmxhep
Definition:
ReggeGribovPartonMCHadronizer.h:37
FileInPath.h
crmc_init_f_
void crmc_init_f_()
gen::ReggeGribovPartonMCHadronizer::m_bMin
double m_bMin
Definition:
ReggeGribovPartonMCHadronizer.h:230
maxfra
int maxfra
Definition:
ReggeGribovPartonMCHadronizer.h:94
fniidat
char fniidat[500]
Definition:
ReggeGribovPartonMCHadronizer.h:174
fnhpf
char fnhpf[500]
Definition:
ReggeGribovPartonMCHadronizer.h:137
jppevt
int jppevt
Definition:
ReggeGribovPartonMCHadronizer.h:85
gen
Definition:
PythiaDecays.h:13
sigtot
float sigtot
Definition:
ReggeGribovPartonMCHadronizer.h:56
fncs
char fncs[500]
Definition:
ReggeGribovPartonMCHadronizer.h:135
nfnie
int nfnie
Definition:
ReggeGribovPartonMCHadronizer.h:147
fnch
char fnch[500]
Definition:
ReggeGribovPartonMCHadronizer.h:124
nfnnx
int nfnnx
Definition:
ReggeGribovPartonMCHadronizer.h:152
nfndr
int nfndr
Definition:
ReggeGribovPartonMCHadronizer.h:154
nevt
int nevt
Definition:
ReggeGribovPartonMCHadronizer.h:72
npjevt
int npjevt
Definition:
ReggeGribovPartonMCHadronizer.h:78
nfniidat
int nfniidat
Definition:
ReggeGribovPartonMCHadronizer.h:182
rglevt
float rglevt
Definition:
ReggeGribovPartonMCHadronizer.h:102
gen::ReggeGribovPartonMCHadronizer::m_BeamMomentum
double m_BeamMomentum
Definition:
ReggeGribovPartonMCHadronizer.h:225
nfnrj
int nfnrj
Definition:
ReggeGribovPartonMCHadronizer.h:148
phimin
float phimin
Definition:
ReggeGribovPartonMCHadronizer.h:115
edm::FileInPath
Definition:
FileInPath.h:64
typevt
float typevt
Definition:
ReggeGribovPartonMCHadronizer.h:107
gen::ReggeGribovPartonMCHadronizer::m_HEModel
int m_HEModel
Definition:
ReggeGribovPartonMCHadronizer.h:229
egyevt
float egyevt
Definition:
ReggeGribovPartonMCHadronizer.h:77
phievt
float phievt
Definition:
ReggeGribovPartonMCHadronizer.h:71
fniincs
char fniincs[500]
Definition:
ReggeGribovPartonMCHadronizer.h:175
myMessageLogger_cff.statistics
statistics
Definition:
myMessageLogger_cff.py:9
nfncs
int nfncs
Definition:
ReggeGribovPartonMCHadronizer.h:153
ng1evt
int ng1evt
Definition:
ReggeGribovPartonMCHadronizer.h:100
jtnevt
int jtnevt
Definition:
ReggeGribovPartonMCHadronizer.h:86
gen::rangen_
float rangen_()
Definition:
ReggeGribovPartonMCHadronizer.cc:48
qsqevt
float qsqevt
Definition:
ReggeGribovPartonMCHadronizer.h:89
ifncs
int ifncs
Definition:
ReggeGribovPartonMCHadronizer.h:163
fndat
char fndat[500]
Definition:
ReggeGribovPartonMCHadronizer.h:160
sigelaaa
float sigelaaa
Definition:
ReggeGribovPartonMCHadronizer.h:65
pmxevt
float pmxevt
Definition:
ReggeGribovPartonMCHadronizer.h:76
fglevt
float fglevt
Definition:
ReggeGribovPartonMCHadronizer.h:105
nfnch
int nfnch
Definition:
ReggeGribovPartonMCHadronizer.h:142
gen::ReggeGribovPartonMCHadronizer::m_TargetID
int m_TargetID
Definition:
ReggeGribovPartonMCHadronizer.h:228
gen::ReggeGribovPartonMCHadronizer::m_BeamID
int m_BeamID
Definition:
ReggeGribovPartonMCHadronizer.h:227
data-class-funcs.classname
classname
Definition:
data-class-funcs.py:33
sigine
float sigine
Definition:
ReggeGribovPartonMCHadronizer.h:61
nucl2_
struct @750 nucl2_
sloela
float sloela
Definition:
ReggeGribovPartonMCHadronizer.h:59
kohevt
int kohevt
Definition:
ReggeGribovPartonMCHadronizer.h:95
fnnx
char fnnx[500]
Definition:
ReggeGribovPartonMCHadronizer.h:134
fndt
char fndt[500]
Definition:
ReggeGribovPartonMCHadronizer.h:126
sigela
float sigela
Definition:
ReggeGribovPartonMCHadronizer.h:58
koievt
int koievt
Definition:
ReggeGribovPartonMCHadronizer.h:75
gen::ReggeGribovPartonMCHadronizer::m_TargetMomentum
double m_TargetMomentum
Definition:
ReggeGribovPartonMCHadronizer.h:226
ntpevt
int ntpevt
Definition:
ReggeGribovPartonMCHadronizer.h:83
HepMC
Definition:
GenParticle.h:15
nfniincs
int nfniincs
Definition:
ReggeGribovPartonMCHadronizer.h:183
fnie
char fnie[500]
Definition:
ReggeGribovPartonMCHadronizer.h:129
edm::ParameterSet
Definition:
ParameterSet.h:36
fndr
char fndr[500]
Definition:
ReggeGribovPartonMCHadronizer.h:136
nfnhi
int nfnhi
Definition:
ReggeGribovPartonMCHadronizer.h:143
nfnncs
int nfnncs
Definition:
ReggeGribovPartonMCHadronizer.h:169
gen::ReggeGribovPartonMCHadronizer::m_ImpactParameter
double m_ImpactParameter
Definition:
ReggeGribovPartonMCHadronizer.h:237
crmc_set_f_
void crmc_set_f_(int &, int &, double &, double &, int &, int &, int &, int &, int &, const char *, const char *)
sigsd
float sigsd
Definition:
ReggeGribovPartonMCHadronizer.h:60
fnhi
char fnhi[500]
Definition:
ReggeGribovPartonMCHadronizer.h:125
gen::ReggeGribovPartonMCHadronizer::initializeForExternalPartons
bool initializeForExternalPartons()
Definition:
ReggeGribovPartonMCHadronizer.h:210
SelectingProcedure_cff.decay
decay
Definition:
SelectingProcedure_cff.py:61
nfndat
int nfndat
Definition:
ReggeGribovPartonMCHadronizer.h:168
bimevt
float bimevt
Definition:
ReggeGribovPartonMCHadronizer.h:73
qgsnfname_
struct @754 qgsnfname_
nppevt
int nppevt
Definition:
ReggeGribovPartonMCHadronizer.h:81
sigineaa
float sigineaa
Definition:
ReggeGribovPartonMCHadronizer.h:63
gen::ReggeGribovPartonMCHadronizer::m_NEvent
int m_NEvent
Definition:
ReggeGribovPartonMCHadronizer.h:234
gen::ReggeGribovPartonMCHadronizer::m_bMax
double m_bMax
Definition:
ReggeGribovPartonMCHadronizer.h:231
fngrv
char fngrv[500]
Definition:
ReggeGribovPartonMCHadronizer.h:132
Generated for CMSSW Reference Manual by
1.8.11