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