CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PyquenHadronizer.h
Go to the documentation of this file.
1 #ifndef Pyquen_Hadronizer_h
2 #define Pyquen_Hadronizer_h
3 
16 #include <map>
17 #include <string>
18 #include "HepMC/GenEvent.h"
19 
20 namespace gen
21 {
22  class Pythia6Service;
23 
25  public:
26 
28  virtual ~PyquenHadronizer();
29 
31  bool hadronize();
32  bool decay();
33  bool residualDecay();
34  bool readSettings( int );
37  bool declareStableParticles( const std::vector<int>& );
38  bool declareSpecialSettings( const std::vector<std::string>& ) { return true; }
39  virtual bool select(HepMC::GenEvent* evtTry) const { return selector_->filter(evtTry); }
40  void finalizeEvent();
41  void statistics();
42  const char* classname() const;
43 
44  private:
45  void add_heavy_ion_rec(HepMC::GenEvent *evt);
46 
47  bool pyqpythia_init(const edm::ParameterSet &pset);
48  bool pyquen_init(const edm::ParameterSet &pset);
49  const char* nucleon();
50  void rotateEvtPlane(HepMC::GenEvent* evt, double angle);
51 
53  double abeamtarget_;
54  unsigned int angularspecselector_;
55  double bmin_;
59  double bmax_;
60  double bfixed_;
61  int cflag_;
62  double comenergy;
63  bool doquench_;
66  bool doIsospin_;
68  bool embedding_;
69  double evtPlane_;
70  double pfrac_;
71 
72  unsigned int nquarkflavor_;
73  double qgpt0_;
75  double qgptau0_;
77  unsigned int maxEventsToPrint_;
80  unsigned int pythiaPylistVerbosity_;
81 
82  // CLHEP::HepRandomEngine* fRandomEngine;
87  };
88 } /*end namespace*/
89 
90 #endif
unsigned int maxEventsToPrint_
bool pyquen_init(const edm::ParameterSet &pset)
PyquenHadronizer(const edm::ParameterSet &)
bool declareStableParticles(const std::vector< int > &)
bool doradiativeenloss_
if true perform quenching (default = true)
bool docollisionalenloss_
DEFAULT = true.
void rotateEvtPlane(HepMC::GenEvent *evt, double angle)
bool initializeForExternalPartons()
double bmax_
min impact param (fm); valid only if cflag_!=0
virtual bool select(HepMC::GenEvent *evtTry) const
bool declareSpecialSettings(const std::vector< std::string > &)
int cflag_
fixed impact param (fm); valid only if cflag_=0
unsigned int pythiaPylistVerbosity_
HepMC verbosity flag.
bool doIsospin_
DEFAULT = true.
unsigned int angularspecselector_
beam/target atomic mass number
edm::InputTag src_
Pythia PYLIST Verbosity flag.
virtual bool filter(HepMC::GenEvent *)
void add_heavy_ion_rec(HepMC::GenEvent *evt)
Pythia6Service * pythia6Service_
edm::ParameterSet pset_
bool pyqpythia_init(const edm::ParameterSet &pset)
unsigned int nquarkflavor_
Proton fraction in the nucleus.
bool doquench_
collision energy
const char * classname() const
double comenergy
centrality flag =0 fixed impact param, &lt;&gt;0 minbias
bool pythiaHepMCVerbosity_
Events to print if verbosity.
BaseHiGenEvtSelector * selector_
double bfixed_
max impact param (fm); valid only if cflag_!=0
int protonSide_
Run n&amp;p with proper ratios; if false, only p+p collisions.
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11