LeptoHadronization.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::LeptoHadronization
5 
6 \brief Provides access to the LEPTO hadronization models. \n
7 
8 \author Alfonso Garcia <alfonsog \at nikhef.nl>
9  NIKHEF (Amsterdam)
10 
11 \created October 18, 2019
12 
13 \cpright Copyright (c) 2003-2018, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15  or see $GENIE/LICENSE
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _LEPTO_HADRONIZATION_H_
20 #define _LEPTO_HADRONIZATION_H_
21 
22 #define __GENIE_PYTHIA6_ENABLED__
23 
27 
28 #ifdef __GENIE_PYTHIA6_ENABLED__
29 #include <TPythia6.h>
30 #endif
31 
32 using namespace genie::utils::math;
33 
34 namespace genie {
35 
36 class GHepParticle;
37 
39 
40 public:
42  LeptoHadronization(string config);
43  virtual ~LeptoHadronization();
44 
45  //-- implement the HadronizationModelI interface
46  void ProcessEventRecord(GHepRecord * event) const;
47 
48  //-- overload the Algorithm::Configure() methods to load private data
49  // members from configuration options
50  void Configure(const Registry & config);
51  void Configure(string config);
52 
53 private:
54 
55  bool Hadronize (GHepRecord * event) const;
56 
57  void Initialize (void) const;
58  void LoadConfig (void);
59 
60 #ifdef __GENIE_PYTHIA6_ENABLED__
61  mutable TPythia6 * fPythia; ///< PYTHIA6 wrapper class
62 #endif
63 
64  //-- configuration parameters
65  int fMaxIterHad; // Maxmium number of iterations to look for a combination of hadrons
66  double fPrimordialKT; // Width of Gaussian distribution for the primordial transverse momentum kT of partons in the nucleon.
67  double fRemnantPT; // Width of Gaussian distribution in transverse momentum when a non-trivial target remnant is split into two particles
68  double fMinESinglet; // It is, with quark masses added, used to define the minimum allowable energy of a colour-singlet parton system.
69  bool fPromptPythiaList; // Print the list of particles from PYTHIA
70  double fWmin; // Minimum value of W
71 
72 };
73 
74 } // genie namespace
75 
76 #endif // _LEPTO_HADRONIZATION__H_
77 
TPythia6 * fPythia
PYTHIA6 wrapper class.
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
Defines the EventRecordVisitorI interface. Concrete implementations of this interface use the &#39;Visito...
Provides access to the LEPTO hadronization models. .
Simple mathematical utilities not found in ROOT&#39;s TMath.
static Config * config
Definition: config.cpp:1054
void Initialize(void)
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
void Configure(string mesg)
Definition: gEvServ.cxx:196
GENIE&#39;s GHEP MC event record.
Definition: GHepRecord.h:45
Event finding and building.