CMS 3D CMS Logo

HijingHadronizer.h
Go to the documentation of this file.
1 #ifndef HijingHadronizer_h
2 #define HijingHadronizer_h
3 
6 
7 #include <map>
8 #include <string>
9 #include <vector>
10 #include <cmath>
11 
12 namespace HepMC {
13  class GenEvent;
14  class GenParticle;
15  class GenVertex;
16 } // namespace HepMC
17 
18 namespace CLHEP {
19  class HepRandomEngine;
20 }
21 
22 namespace gen {
23  extern "C" {
24  float hijran_(int*);
25  }
26 
28  public:
30  ~HijingHadronizer() override;
31 
33  bool hadronize();
34  bool decay();
35  bool residualDecay();
36  bool readSettings(int) { return true; }
39  bool declareStableParticles(const std::vector<int>&);
40  bool declareSpecialSettings(const std::vector<std::string>&) { return true; }
41 
42  void finalizeEvent();
43  void statistics();
44  const char* classname() const;
45 
46  private:
47  void doSetRandomEngine(CLHEP::HepRandomEngine* v) override;
48  std::vector<std::string> const& doSharedResources() const override { return theSharedResources; }
49 
51  HepMC::GenParticle* build_hijing(int index, int barcode);
52  HepMC::GenVertex* build_hijing_vertex(int i, int id);
54  bool call_hijset(
55  double efrm, std::string frame, std::string proj, std::string targ, int iap, int izp, int iat, int izt);
56  // inline double nuclear_radius() const;
57  void rotateEvtPlane();
58 
61  double bmax_; // max impact param;
62  // units of nucl radius
63  double bmin_; // min impact param;
64  // units of nucl radius
65  double efrm_; // collision energy
69  int iap_;
70  int izp_;
71  int iat_;
72  int izt_;
73 
74  // unsigned int maxEventsToPrint_; // Events to print if verbosity
75  // unsigned int pythiaPylistVerbosity_; // pythia verbosity; def=1
76 
77  double phi0_; // Event plane angle
78  double sinphi0_;
79  double cosphi0_;
80  bool rotate_; // Switch to rotate event plane
81 
82  static const std::vector<std::string> theSharedResources;
83 
84  // unsigned int shadowingswitch_; // shadowing switcher
85  // 1-ON, 0-OFF
86  // double signn_; // inelastic nucleon nucleon cross section [mb]
87  // DEFAULT= 58 mb
88  // CLHEP::HepRandomEngine* fRandomEngine;
89  // Pythia6Service* pythia6Service_;
90  };
91 
92 } // namespace gen
93 
94 #endif
gen::HijingHadronizer::call_hijset
bool call_hijset(double efrm, std::string frame, std::string proj, std::string targ, int iap, int izp, int iat, int izt)
Definition: HijingHadronizer.cc:244
gen::HijingHadronizer::rotateEvtPlane
void rotateEvtPlane()
Definition: HijingHadronizer.cc:280
amptDefault_cfi.iap
iap
Definition: amptDefault_cfi.py:15
mps_fire.i
i
Definition: mps_fire.py:355
gen::HijingHadronizer::sinphi0_
double sinphi0_
Definition: HijingHadronizer.h:78
gen::HijingHadronizer::declareStableParticles
bool declareStableParticles(const std::vector< int > &)
Definition: HijingHadronizer.cc:277
gen::HijingHadronizer::build_hijing
HepMC::GenParticle * build_hijing(int index, int barcode)
Definition: HijingHadronizer.cc:109
gen::HijingHadronizer::~HijingHadronizer
~HijingHadronizer() override
Definition: HijingHadronizer.cc:78
gen::HijingHadronizer::izp_
int izp_
Definition: HijingHadronizer.h:70
BaseHadronizer.h
gen::HijingHadronizer::initializeForInternalPartons
bool initializeForInternalPartons()
Definition: HijingHadronizer.cc:263
gen::HijingHadronizer::residualDecay
bool residualDecay()
Definition: HijingHadronizer.cc:291
gen::HijingHadronizer::pset_
edm::ParameterSet pset_
Definition: HijingHadronizer.h:60
gen::HijingHadronizer::evt
HepMC::GenEvent * evt
Definition: HijingHadronizer.h:59
amptDefault_cfi.izt
izt
Definition: amptDefault_cfi.py:18
gen::HijingHadronizer::add_heavy_ion_rec
void add_heavy_ion_rec(HepMC::GenEvent *evt)
Definition: HijingHadronizer.cc:86
gen::HijingHadronizer::izt_
int izt_
Definition: HijingHadronizer.h:72
GenParticle
Definition: GenParticle.py:1
gen::BaseHadronizer
Definition: BaseHadronizer.h:46
gen::HijingHadronizer::decay
bool decay()
Definition: HijingHadronizer.cc:289
HepMC::GenEvent
Definition: hepmc_rootio.cc:9
gen::HijingHadronizer::phi0_
double phi0_
Definition: HijingHadronizer.h:77
gen
Definition: PythiaDecays.h:13
gen::HijingHadronizer::HijingHadronizer
HijingHadronizer(const edm::ParameterSet &)
Definition: HijingHadronizer.cc:56
gen::HijingHadronizer::targ_
std::string targ_
Definition: HijingHadronizer.h:68
gen::HijingHadronizer::theSharedResources
static const std::vector< std::string > theSharedResources
Definition: HijingHadronizer.h:82
CLHEP
Definition: CocoaGlobals.h:27
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
gen::HijingHadronizer::frame_
std::string frame_
Definition: HijingHadronizer.h:66
gen::HijingHadronizer::get_particles
bool get_particles(HepMC::GenEvent *evt)
Definition: HijingHadronizer.cc:176
amptDefault_cfi.proj
proj
Definition: amptDefault_cfi.py:13
edm::ParameterSet
Definition: ParameterSet.h:36
gen::v
double v[5][pyjets_maxn]
Definition: Cascade2Hadronizer.cc:74
gen::hijran_
float hijran_(int *)
Definition: HijingHadronizer.cc:35
gen::HijingHadronizer::initializeForExternalPartons
bool initializeForExternalPartons()
gen::HijingHadronizer::declareSpecialSettings
bool declareSpecialSettings(const std::vector< std::string > &)
Definition: HijingHadronizer.h:40
gen::HijingHadronizer::readSettings
bool readSettings(int)
Definition: HijingHadronizer.h:36
gen::HijingHadronizer::build_hijing_vertex
HepMC::GenVertex * build_hijing_vertex(int i, int id)
Definition: HijingHadronizer.cc:138
amptDefault_cfi.iat
iat
Definition: amptDefault_cfi.py:17
gen::HijingHadronizer::iat_
int iat_
Definition: HijingHadronizer.h:71
gen::HijingHadronizer::finalizeEvent
void finalizeEvent()
Definition: HijingHadronizer.cc:293
gen::HijingHadronizer::iap_
int iap_
Definition: HijingHadronizer.h:69
gen::HijingHadronizer::doSharedResources
std::vector< std::string > const & doSharedResources() const override
Definition: HijingHadronizer.h:48
gen::HijingHadronizer::cosphi0_
double cosphi0_
Definition: HijingHadronizer.h:79
GenParticle.GenParticle
GenParticle
Definition: GenParticle.py:18
HepMC
Definition: GenParticle.h:15
amptDefault_cfi.frame
frame
Definition: amptDefault_cfi.py:12
gen::HijingHadronizer::efrm_
double efrm_
Definition: HijingHadronizer.h:65
gen::HijingHadronizer::classname
const char * classname() const
Definition: HijingHadronizer.cc:297
gen::HijingHadronizer::bmin_
double bmin_
Definition: HijingHadronizer.h:63
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
gen::HijingHadronizer::bmax_
double bmax_
Definition: HijingHadronizer.h:61
amptDefault_cfi.izp
izp
Definition: amptDefault_cfi.py:16
gen::HijingHadronizer::proj_
std::string proj_
Definition: HijingHadronizer.h:67
gen::HijingHadronizer::hadronize
bool hadronize()
Definition: HijingHadronizer.cc:287
ParameterSet.h
amptDefault_cfi.targ
targ
Definition: amptDefault_cfi.py:14
gen::HijingHadronizer::statistics
void statistics()
Definition: HijingHadronizer.cc:295
gen::HijingHadronizer::doSetRandomEngine
void doSetRandomEngine(CLHEP::HepRandomEngine *v) override
Definition: HijingHadronizer.cc:83
gen::HijingHadronizer
Definition: HijingHadronizer.h:27
gen::HijingHadronizer::generatePartonsAndHadronize
bool generatePartonsAndHadronize()
Definition: HijingHadronizer.cc:151
gen::HijingHadronizer::rotate_
bool rotate_
Definition: HijingHadronizer.h:80