CMS 3D CMS Logo

PyquenHadronizer.h
Go to the documentation of this file.
1 #ifndef Pyquen_Hadronizer_h
2 #define Pyquen_Hadronizer_h
3 
16 
17 #include <map>
18 #include <string>
19 #include <vector>
20 
21 #include "HepMC/GenEvent.h"
22 
23 namespace CLHEP {
24  class HepRandomEngine;
25 }
26 
27 namespace gen {
28  class Pythia6Service;
29 
31  public:
33  ~PyquenHadronizer() override;
34 
36  bool hadronize();
37  bool decay();
38  bool residualDecay();
39  bool readSettings(int);
42  bool declareStableParticles(const std::vector<int>&);
43  bool declareSpecialSettings(const std::vector<std::string>&) { return true; }
44  bool select(HepMC::GenEvent* evtTry) const override { return selector_->filter(evtTry); }
45  void finalizeEvent();
46  void statistics();
47  const char* classname() const;
48 
49  private:
50  void doSetRandomEngine(CLHEP::HepRandomEngine* v) override;
51  std::vector<std::string> const& doSharedResources() const override { return theSharedResources; }
52 
53  static const std::vector<std::string> theSharedResources;
54 
56 
58  bool pyquen_init(const edm::ParameterSet& pset);
59  const char* nucleon();
60  void rotateEvtPlane(HepMC::GenEvent* evt, double angle);
61 
63  double abeamtarget_;
64  unsigned int angularspecselector_;
65  double bmin_;
69  double bmax_;
70  double bfixed_;
71  int cflag_;
72  double comenergy;
73  bool doquench_;
76  bool doIsospin_;
78  bool embedding_;
79  double evtPlane_;
80  double pfrac_;
81 
82  unsigned int nquarkflavor_;
83  double qgpt0_;
85  double qgptau0_;
87  unsigned int maxEventsToPrint_;
90  unsigned int pythiaPylistVerbosity_;
91 
92  // CLHEP::HepRandomEngine* fRandomEngine;
97  };
98 } // namespace gen
99 
100 #endif
gen::PyquenHadronizer::maxEventsToPrint_
unsigned int maxEventsToPrint_
Definition: PyquenHadronizer.h:88
gen::PyquenHadronizer::nucleon
const char * nucleon()
Definition: PyquenHadronizer.cc:257
gen::PyquenHadronizer::decay
bool decay()
Definition: PyquenHadronizer.cc:315
gen::PyquenHadronizer::qgptau0_
double qgptau0_
Definition: PyquenHadronizer.h:86
BaseHiGenEvtSelector.h
gen::PyquenHadronizer::declareStableParticles
bool declareStableParticles(const std::vector< int > &)
Definition: PyquenHadronizer.cc:298
gen::PyquenHadronizer::doSharedResources
std::vector< std::string > const & doSharedResources() const override
Definition: PyquenHadronizer.h:51
gen::PyquenHadronizer::classname
const char * classname() const
Definition: PyquenHadronizer.cc:323
gen::PyquenHadronizer::embedding_
bool embedding_
Definition: PyquenHadronizer.h:78
gen::PyquenHadronizer::evtPlane_
double evtPlane_
Definition: PyquenHadronizer.h:79
gen::PyquenHadronizer::filterType_
std::string filterType_
Definition: PyquenHadronizer.h:95
gen::PyquenHadronizer::pyquen_init
bool pyquen_init(const edm::ParameterSet &pset)
Definition: PyquenHadronizer.cc:226
gen::PyquenHadronizer::PyquenHadronizer
PyquenHadronizer(const edm::ParameterSet &)
Definition: PyquenHadronizer.cc:38
BaseHadronizer.h
BaseHiGenEvtSelector::filter
virtual bool filter(HepMC::GenEvent *)
Definition: BaseHiGenEvtSelector.h:12
gen::PyquenHadronizer::rotateEvtPlane
void rotateEvtPlane(HepMC::GenEvent *evt, double angle)
Definition: PyquenHadronizer.cc:269
gen::PyquenHadronizer::abeamtarget_
double abeamtarget_
Definition: PyquenHadronizer.h:63
gen::PyquenHadronizer::finalizeEvent
void finalizeEvent()
Definition: PyquenHadronizer.cc:319
gen::PyquenHadronizer::declareSpecialSettings
bool declareSpecialSettings(const std::vector< std::string > &)
Definition: PyquenHadronizer.h:43
gen::PyquenHadronizer::qgpt0_
double qgpt0_
Definition: PyquenHadronizer.h:84
gen::PyquenHadronizer::doradiativeenloss_
bool doradiativeenloss_
if true perform quenching (default = true)
Definition: PyquenHadronizer.h:74
gen::BaseHadronizer
Definition: BaseHadronizer.h:46
gen::PyquenHadronizer::initializeForExternalPartons
bool initializeForExternalPartons()
gen::PyquenHadronizer::docollisionalenloss_
bool docollisionalenloss_
DEFAULT = true.
Definition: PyquenHadronizer.h:75
gen::PyquenHadronizer::hadronize
bool hadronize()
Definition: PyquenHadronizer.cc:313
gen::PyquenHadronizer::pythiaPylistVerbosity_
unsigned int pythiaPylistVerbosity_
HepMC verbosity flag.
Definition: PyquenHadronizer.h:90
HepMC::GenEvent
Definition: hepmc_rootio.cc:9
gen::PyquenHadronizer::doIsospin_
bool doIsospin_
DEFAULT = true.
Definition: PyquenHadronizer.h:76
gen::PyquenHadronizer::cflag_
int cflag_
fixed impact param (fm); valid only if cflag_=0
Definition: PyquenHadronizer.h:71
gen::PyquenHadronizer::generatePartonsAndHadronize
bool generatePartonsAndHadronize()
Definition: PyquenHadronizer.cc:118
gen
Definition: PythiaDecays.h:13
gen::PyquenHadronizer::initializeForInternalPartons
bool initializeForInternalPartons()
Definition: PyquenHadronizer.cc:206
CLHEP
Definition: CocoaGlobals.h:27
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
gen::PyquenHadronizer::bmax_
double bmax_
min impact param (fm); valid only if cflag_!=0
Definition: PyquenHadronizer.h:69
gen::PyquenHadronizer::add_heavy_ion_rec
void add_heavy_ion_rec(HepMC::GenEvent *evt)
Definition: PyquenHadronizer.cc:96
edm::ParameterSet
Definition: ParameterSet.h:36
gen::PyquenHadronizer::pyqpythia_init
bool pyqpythia_init(const edm::ParameterSet &pset)
Definition: PyquenHadronizer.cc:216
gen::PyquenHadronizer::doquench_
bool doquench_
collision energy
Definition: PyquenHadronizer.h:73
gen::PyquenHadronizer::statistics
void statistics()
Definition: PyquenHadronizer.cc:321
BaseHiGenEvtSelector
Definition: BaseHiGenEvtSelector.h:8
gen::v
double v[5][pyjets_maxn]
Definition: Cascade2Hadronizer.cc:74
gen::PyquenHadronizer::angularspecselector_
unsigned int angularspecselector_
beam/target atomic mass number
Definition: PyquenHadronizer.h:64
gen::PyquenHadronizer::theSharedResources
static const std::vector< std::string > theSharedResources
Definition: PyquenHadronizer.h:53
gen::PyquenHadronizer::src_
edm::InputTag src_
Pythia PYLIST Verbosity flag.
Definition: PyquenHadronizer.h:93
gen::PyquenHadronizer::residualDecay
bool residualDecay()
Definition: PyquenHadronizer.cc:317
gen::PyquenHadronizer::pset_
edm::ParameterSet pset_
Definition: PyquenHadronizer.h:62
InputTag.h
gen::PyquenHadronizer::bfixed_
double bfixed_
max impact param (fm); valid only if cflag_!=0
Definition: PyquenHadronizer.h:70
gen::PyquenHadronizer::pythia6Service_
Pythia6Service * pythia6Service_
Definition: PyquenHadronizer.h:94
gen::PyquenHadronizer::nquarkflavor_
unsigned int nquarkflavor_
Proton fraction in the nucleus.
Definition: PyquenHadronizer.h:82
gen::PyquenHadronizer::comenergy
double comenergy
centrality flag =0 fixed impact param, <>0 minbias
Definition: PyquenHadronizer.h:72
gen::PyquenHadronizer::pfrac_
double pfrac_
Definition: PyquenHadronizer.h:80
gen::PyquenHadronizer::select
bool select(HepMC::GenEvent *evtTry) const override
Definition: PyquenHadronizer.h:44
angle
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11
gen::PyquenHadronizer::~PyquenHadronizer
~PyquenHadronizer() override
Definition: PyquenHadronizer.cc:85
gen::PyquenHadronizer
Definition: PyquenHadronizer.h:30
gen::PyquenHadronizer::readSettings
bool readSettings(int)
Definition: PyquenHadronizer.cc:189
gen::Pythia6Service
Definition: Pythia6Service.h:24
ParameterSet.h
gen::PyquenHadronizer::selector_
BaseHiGenEvtSelector * selector_
Definition: PyquenHadronizer.h:96
gen::PyquenHadronizer::pythiaHepMCVerbosity_
bool pythiaHepMCVerbosity_
Events to print if verbosity.
Definition: PyquenHadronizer.h:89
gen::PyquenHadronizer::bmin_
double bmin_
Definition: PyquenHadronizer.h:68
edm::InputTag
Definition: InputTag.h:15
gen::PyquenHadronizer::doSetRandomEngine
void doSetRandomEngine(CLHEP::HepRandomEngine *v) override
Definition: PyquenHadronizer.cc:93
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
gen::PyquenHadronizer::protonSide_
int protonSide_
Run n&p with proper ratios; if false, only p+p collisions.
Definition: PyquenHadronizer.h:77