CMS 3D CMS Logo

PomwigHadronizer.h
Go to the documentation of this file.
1 #ifndef gen_PomwigHadronizer_h
2 #define gen_PomwigHadronizer_h
3 
5 
9 
10 #include <HepMC/IO_HERWIG.h>
11 
12 #include <string>
13 #include <vector>
14 
15 namespace CLHEP {
16  class HepRandomEngine;
17 }
18 
19 namespace gen
20 {
22  {
23  public:
24  PomwigHadronizer(const edm::ParameterSet &params);
25  ~PomwigHadronizer() override;
26 
27  bool readSettings( int );
28  bool initializeForInternalPartons();
29  bool initializeForExternalPartons();
30 
31  bool declareStableParticles(const std::vector<int> &pdgIds);
32  bool declareSpecialSettings( const std::vector<std::string>& ) { return true; }
33  void statistics();
34 
35  bool generatePartonsAndHadronize();
36  bool hadronize();
37  bool decay();
38  bool residualDecay();
39  void finalizeEvent();
40 
41  const char *classname() const { return "PomwigHadronizer"; }
42 
43  private:
44 
45  void doSetRandomEngine(CLHEP::HepRandomEngine* v) override;
46  std::vector<std::string> const& doSharedResources() const override { return theSharedResources; }
47 
48  void clear();
49  bool initializeDPDF();
50 
51  static const std::vector<std::string> theSharedResources;
52 
53  bool needClear;
54 
59  bool printCards;
60 
61  double comEnergy;
64  int h1fit;
65 
66  bool useJimmy;
68  int numTrials;
69 
71 
72  HepMC::IO_HERWIG conv;
73  };
74 }
75 #endif
std::vector< std::string > const & doSharedResources() const override
gen::ParameterCollector parameters
static const std::vector< std::string > theSharedResources
void clear(CLHEP::HepGenMatrix &m)
Helper function: Reset all elements of a matrix to 0.
Definition: matutil.cc:167
HepMC::IO_HERWIG conv
const char * classname() const
bool declareSpecialSettings(const std::vector< std::string > &)