GENIEGenerator
|
Base class for the Pythia (6 and 8) hadronization modules in GENIE. In particular, the base class provides common checks and basic assignments of quark/diquark codes for a no frills interface to Pythia hadronization routines. More...
#include <PythiaBaseHadro2019.h>
Protected Member Functions | |
PythiaBaseHadro2019 () | |
PythiaBaseHadro2019 (string name) | |
PythiaBaseHadro2019 (string name, string config) | |
virtual | ~PythiaBaseHadro2019 () |
virtual void | ProcessEventRecord (GHepRecord *event) const |
virtual void | MakeQuarkDiquarkAssignments (const Interaction *in) const |
virtual bool | AssertValidity (const Interaction *in) const |
virtual void | Initialize (void) |
virtual void | LoadConfig (void) |
virtual void | CopyOriginalDecayFlags (void) const =0 |
virtual void | SetDesiredDecayFlags (void) const =0 |
virtual void | RestoreOriginalDecayFlags (void) const =0 |
virtual bool | Hadronize (GHepRecord *event) const =0 |
Protected Member Functions inherited from genie::EventRecordVisitorI | |
EventRecordVisitorI () | |
EventRecordVisitorI (string name) | |
EventRecordVisitorI (string name, string config) | |
Protected Member Functions inherited from genie::Algorithm | |
Algorithm () | |
Algorithm (string name) | |
Algorithm (string name, string config) | |
void | Initialize (void) |
void | DeleteConfig (void) |
void | DeleteSubstructure (void) |
Registry * | ExtractLocalConfig (const Registry &in) const |
Registry * | ExtractLowerConfig (const Registry &in, const string &alg_key) const |
Split an incoming configuration Registry into a block valid for the sub-algo identified by alg_key. More... | |
template<class T > | |
bool | GetParam (const RgKey &name, T &p, bool is_top_call=true) const |
template<class T > | |
bool | GetParamDef (const RgKey &name, T &p, const T &def) const |
template<class T > | |
int | GetParamVect (const std::string &comm_name, std::vector< T > &v, bool is_top_call=true) const |
Handle to load vectors of parameters. More... | |
int | GetParamVectKeys (const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const |
template<class T > | |
int | GetParamMat (const std::string &comm_name, TMatrixT< T > &mat, bool is_top_call=true) const |
Handle to load matrix of parameters. More... | |
template<class T > | |
int | GetParamMatSym (const std::string &comm_name, TMatrixTSym< T > &mat, bool is_top_call=true) const |
int | GetParamMatKeys (const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const |
int | AddTopRegistry (Registry *rp, bool owns=true) |
add registry with top priority, also update ownership More... | |
int | AddLowRegistry (Registry *rp, bool owns=true) |
add registry with lowest priority, also update ownership More... | |
int | MergeTopRegistry (const Registry &r) |
int | AddTopRegisties (const vector< Registry * > &rs, bool owns=false) |
Add registries with top priority, also udated Ownerships. More... | |
Protected Attributes | |
int | fLeadingQuark |
int | fRemnantDiquark |
double | fSSBarSuppression |
ssbar suppression More... | |
double | fGaussianPt2 |
gaussian pt2 distribution width More... | |
double | fNonGaussianPt2Tail |
non gaussian pt2 tail parameterization More... | |
double | fRemainingECutoff |
remaining E cutoff stopping fragmentation More... | |
double | fDiQuarkSuppression |
di-quark suppression parameter More... | |
double | fLightVMesonSuppression |
light vector meson suppression More... | |
double | fSVMesonSuppression |
strange vector meson suppression More... | |
double | fLunda |
Lund a parameter. More... | |
double | fLundb |
Lund b parameter. More... | |
double | fLundaDiq |
adjustment of Lund a for di-quark More... | |
bool | fOriDecayFlag_pi0 |
bool | fOriDecayFlag_K0 |
bool | fOriDecayFlag_K0b |
bool | fOriDecayFlag_L0 |
bool | fOriDecayFlag_L0b |
bool | fOriDecayFlag_Dm |
bool | fOriDecayFlag_D0 |
bool | fOriDecayFlag_Dp |
bool | fOriDecayFlag_Dpp |
bool | fReqDecayFlag_pi0 |
bool | fReqDecayFlag_K0 |
bool | fReqDecayFlag_K0b |
bool | fReqDecayFlag_L0 |
bool | fReqDecayFlag_L0b |
bool | fReqDecayFlag_Dm |
bool | fReqDecayFlag_D0 |
bool | fReqDecayFlag_Dp |
bool | fReqDecayFlag_Dpp |
Protected Attributes inherited from genie::Algorithm | |
bool | fAllowReconfig |
bool | fOwnsSubstruc |
true if it owns its substructure (sub-algs,...) More... | |
AlgId | fID |
algorithm name and configuration set More... | |
vector< Registry * > | fConfVect |
vector< bool > | fOwnerships |
ownership for every registry in fConfVect More... | |
AlgStatus_t | fStatus |
algorithm execution status More... | |
AlgMap * | fOwnedSubAlgMp |
local pool for owned sub-algs (taken out of the factory pool) More... | |
Additional Inherited Members | |
Public Member Functions inherited from genie::EventRecordVisitorI | |
virtual | ~EventRecordVisitorI () |
Public Member Functions inherited from genie::Algorithm | |
virtual | ~Algorithm () |
virtual void | Configure (const Registry &config) |
virtual void | Configure (string config) |
virtual void | FindConfig (void) |
virtual const Registry & | GetConfig (void) const |
Registry * | GetOwnedConfig (void) |
virtual const AlgId & | Id (void) const |
Get algorithm ID. More... | |
virtual AlgStatus_t | GetStatus (void) const |
Get algorithm status. More... | |
virtual bool | AllowReconfig (void) const |
virtual AlgCmp_t | Compare (const Algorithm *alg) const |
Compare with input algorithm. More... | |
virtual void | SetId (const AlgId &id) |
Set algorithm ID. More... | |
virtual void | SetId (string name, string config) |
const Algorithm * | SubAlg (const RgKey ®istry_key) const |
void | AdoptConfig (void) |
void | AdoptSubstructure (void) |
virtual void | Print (ostream &stream) const |
Print algorithm info. More... | |
Static Public Member Functions inherited from genie::Algorithm | |
static string | BuildParamVectKey (const std::string &comm_name, unsigned int i) |
static string | BuildParamVectSizeKey (const std::string &comm_name) |
static string | BuildParamMatKey (const std::string &comm_name, unsigned int i, unsigned int j) |
static string | BuildParamMatRowSizeKey (const std::string &comm_name) |
static string | BuildParamMatColSizeKey (const std::string &comm_name) |
Base class for the Pythia (6 and 8) hadronization modules in GENIE. In particular, the base class provides common checks and basic assignments of quark/diquark codes for a no frills interface to Pythia hadronization routines.
Definition at line 29 of file PythiaBaseHadro2019.h.
|
protected |
Definition at line 32 of file PythiaBaseHadro2019.cxx.
|
protected |
Definition at line 38 of file PythiaBaseHadro2019.cxx.
|
protected |
Definition at line 44 of file PythiaBaseHadro2019.cxx.
|
protectedvirtual |
Definition at line 50 of file PythiaBaseHadro2019.cxx.
|
protectedvirtual |
Definition at line 276 of file PythiaBaseHadro2019.cxx.
References genie::Interaction::ExclTag(), genie::Target::HitNucPdg(), genie::Target::HitQrkIsSet(), genie::Target::HitQrkPdg(), genie::Interaction::InitState(), genie::pdg::IsAntiDQuark(), genie::pdg::IsAntiNeutrino(), genie::pdg::IsAntiSQuark(), genie::pdg::IsAntiUQuark(), genie::XclsTag::IsCharmEvent(), genie::pdg::IsDarkMatter(), genie::ProcessInfo::IsDarkMatter(), genie::pdg::IsDQuark(), genie::ProcessInfo::IsEM(), genie::pdg::IsNegChargedLepton(), genie::pdg::IsNeutrino(), genie::pdg::IsNeutron(), genie::pdg::IsPosChargedLepton(), genie::pdg::IsProton(), genie::pdg::IsSQuark(), genie::pdg::IsUQuark(), genie::ProcessInfo::IsWeakCC(), genie::ProcessInfo::IsWeakNC(), genie::constants::kNucleonMass, genie::constants::kPionMass, LOG, genie::InitialState::ProbePdg(), genie::Interaction::ProcInfo(), pWARN, genie::InitialState::Tgt(), and genie::utils::kinematics::W().
Referenced by ProcessEventRecord().
|
protectedpure virtual |
Implemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Referenced by ProcessEventRecord().
|
protectedpure virtual |
Implemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Referenced by ProcessEventRecord().
|
protectedvirtual |
Reimplemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Definition at line 353 of file PythiaBaseHadro2019.cxx.
References fDiQuarkSuppression, fGaussianPt2, fLeadingQuark, fLightVMesonSuppression, fLunda, fLundaDiq, fLundb, fNonGaussianPt2Tail, fOriDecayFlag_D0, fOriDecayFlag_Dm, fOriDecayFlag_Dp, fOriDecayFlag_Dpp, fOriDecayFlag_K0, fOriDecayFlag_K0b, fOriDecayFlag_L0, fOriDecayFlag_L0b, fOriDecayFlag_pi0, fRemainingECutoff, fRemnantDiquark, fReqDecayFlag_D0, fReqDecayFlag_Dm, fReqDecayFlag_Dp, fReqDecayFlag_Dpp, fReqDecayFlag_K0, fReqDecayFlag_K0b, fReqDecayFlag_L0, fReqDecayFlag_L0b, fReqDecayFlag_pi0, fSSBarSuppression, and fSVMesonSuppression.
Referenced by genie::Pythia6Hadro2019::Initialize().
|
protectedvirtual |
Reimplemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Definition at line 387 of file PythiaBaseHadro2019.cxx.
References fDiQuarkSuppression, fGaussianPt2, fLightVMesonSuppression, fLunda, fLundaDiq, fLundb, fNonGaussianPt2Tail, fRemainingECutoff, fReqDecayFlag_D0, fReqDecayFlag_Dm, fReqDecayFlag_Dp, fReqDecayFlag_Dpp, fReqDecayFlag_K0, fReqDecayFlag_K0b, fReqDecayFlag_L0, fReqDecayFlag_L0b, fReqDecayFlag_pi0, fSSBarSuppression, fSVMesonSuppression, genie::Algorithm::GetParam(), LOG, and pERROR.
Referenced by genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protectedvirtual |
Definition at line 94 of file PythiaBaseHadro2019.cxx.
References fLeadingQuark, fRemnantDiquark, genie::Target::HitNucPdg(), genie::Target::HitQrkIsSet(), genie::Target::HitQrkPdg(), genie::Target::HitSeaQrk(), genie::Interaction::InitState(), genie::RandomGen::Instance(), genie::pdg::IsAntiDQuark(), genie::pdg::IsAntiNeutrino(), genie::pdg::IsAntiSQuark(), genie::pdg::IsAntiUQuark(), genie::ProcessInfo::IsDarkMatter(), genie::pdg::IsDQuark(), genie::ProcessInfo::IsEM(), genie::pdg::IsNeutrino(), genie::pdg::IsNeutron(), genie::pdg::IsProton(), genie::pdg::IsSQuark(), genie::pdg::IsUQuark(), genie::ProcessInfo::IsWeakCC(), genie::ProcessInfo::IsWeakNC(), genie::Interaction::Kine(), genie::kPdgAntiDQuark, genie::kPdgAntiUQuark, genie::kPdgDDDiquarkS1, genie::kPdgDQuark, genie::kPdgUDDiquarkS0, genie::kPdgUDDiquarkS1, genie::kPdgUQuark, genie::kPdgUUDiquarkS1, LOG, pERROR, pNOTICE, genie::InitialState::ProbePdg(), genie::Interaction::ProcInfo(), genie::RandomGen::RndHadro(), genie::InitialState::Tgt(), genie::Kinematics::W(), and genie::utils::kinematics::W().
Referenced by ProcessEventRecord().
|
protectedvirtual |
Implements genie::EventRecordVisitorI.
Reimplemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Definition at line 55 of file PythiaBaseHadro2019.cxx.
References AssertValidity(), CopyOriginalDecayFlags(), genie::gAbortingInErr, Hadronize(), genie::kHadroSysGenErr, LOG, MakeQuarkDiquarkAssignments(), pFATAL, pWARN, RestoreOriginalDecayFlags(), SetDesiredDecayFlags(), genie::exceptions::EVGThreadException::SetReason(), and genie::exceptions::EVGThreadException::SwitchOnFastForward().
Referenced by genie::Pythia6Hadro2019::ProcessEventRecord(), and genie::Pythia8Hadro2019::ProcessEventRecord().
|
protectedpure virtual |
Implemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Referenced by ProcessEventRecord().
|
protectedpure virtual |
Implemented in genie::Pythia8Hadro2019, and genie::Pythia6Hadro2019.
Referenced by ProcessEventRecord().
|
protected |
di-quark suppression parameter
Definition at line 59 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
gaussian pt2 distribution width
Definition at line 56 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
mutableprotected |
Definition at line 51 of file PythiaBaseHadro2019.h.
Referenced by genie::Pythia6Hadro2019::Hadronize(), genie::Pythia8Hadro2019::Hadronize(), Initialize(), and MakeQuarkDiquarkAssignments().
|
protected |
light vector meson suppression
Definition at line 60 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
Lund a parameter.
Definition at line 62 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
adjustment of Lund a for di-quark
Definition at line 64 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
Lund b parameter.
Definition at line 63 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
non gaussian pt2 tail parameterization
Definition at line 57 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protected |
remaining E cutoff stopping fragmentation
Definition at line 58 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
mutableprotected |
Definition at line 52 of file PythiaBaseHadro2019.h.
Referenced by genie::Pythia6Hadro2019::Hadronize(), genie::Pythia8Hadro2019::Hadronize(), Initialize(), and MakeQuarkDiquarkAssignments().
|
protected |
Definition at line 83 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 82 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 84 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 85 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 78 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 79 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 80 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 81 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
Definition at line 77 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::SetDesiredDecayFlags(), and genie::Pythia8Hadro2019::SetDesiredDecayFlags().
|
protected |
ssbar suppression
Definition at line 55 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().
|
protected |
strange vector meson suppression
Definition at line 61 of file PythiaBaseHadro2019.h.
Referenced by Initialize(), LoadConfig(), genie::Pythia6Hadro2019::LoadConfig(), and genie::Pythia8Hadro2019::LoadConfig().