14 #include "TDatabasePDG.h" 15 #include "TParticlePDG.h" 26 default:
return "unsupported (" +
std::to_string((
int)origin) +
")";
34 case simb::kCC:
return "charged weak current";
35 case simb::kNC:
return "neutral weak current";
45 case 0:
return "quasi-elastic";
46 case 1:
return "resonant";
47 case 2:
return "deep inelastic";
48 case 3:
return "coherent";
49 default:
return "unknown mode";
59 case simb::kQE :
return "quasi-elastic scattering";
60 case simb::kRes :
return "resonant scattering";
61 case simb::kDIS :
return "deep inelastic scattering";
62 case simb::kCoh :
return "coherent scattering";
69 case simb::kMEC :
return "meson exchange current";
71 case simb::kEM :
return "electromagnetic";
74 case simb::kCCQE :
return "charged current quasi-elastic scattering";
75 case simb::kNCQE :
return "neutral current quasi-elastic scattering";
111 case simb::kCCDIS :
return "charged current deep inelastic scattering";
112 case simb::kNCDIS :
return "neutral current deep inelastic scattering";
115 case simb::kCCQEHyperon :
return "charged current quasi-elastic scattering with hyperon";
116 case simb::kNCCOH :
return "neutral current coherent scattering";
117 case simb::kCCCOH :
return "charged current coherent scattering";
129 case -1:
return "undefined";
130 case 0:
return "initial state";
131 case 1:
return "stable final state";
132 case 2:
return "intermediate";
133 case 3:
return "decayed";
134 case 11:
return "nucleon target";
135 case 12:
return "pre-fragmentation hadronic state";
136 case 13:
return "pre-decay resonant state";
137 case 14:
return "hadron in nucleus";
138 case 15:
return "final state nuclear remnant";
139 case 16:
return "nucleon cluster target";
140 default:
return "unknown";
148 TParticlePDG
const* PDGinfo = TDatabasePDG::Instance()->GetParticle(pigid);
149 return PDGinfo? PDGinfo->GetTitle(): (
"PDG ID " +
std::to_string(pigid));
neutral current quasi-elastic
resonant charged current, nubar p -> nubar n pi+
resonant neutral current, nu p -> nu p pi0
charged current deep inelastic scatter
std::string TruthInteractionTypeName(int type)
resonant charged current, nubar p -> l+ p pi-
neutrino electron elastic scatter
resonant charged current, nubar p -> l+ n pi0
enum simb::_ev_origin Origin_t
event origin types
offset to account for adding in Nuance codes to this enum
std::string TruthCCNCname(int ccnc)
charged current quasi-elastic
resonant charged current, nubar p -> nubar p pi0
resonant charged current, nu n -> l- p pi0
std::string TruthReactionMode(int mode)
Returns the "mode" of the reaction (a lesser version of interaction type).
resonant neutral current, nu n -> nu n pi0
resonant charged current, nu n -> l- n pi+
single particles thrown at the detector
resonant charged current, nubar n -> nubar p pi-
std::string ParticleName(int pigid)
Returns a string with the name of particle the specified with PDG ID.
charged current deep inelastic scatter
resonant charged current, nu p -> l- p pi+
n.b.: this group is similar but not quite, entirely unlike GENIE ScatteringType convention ...
std::string TruthOriginName(simb::Origin_t origin)
Returns a string representing the specified process origin.
charged current coherent pion
resonant neutral current, nu n -> nu p pi-
std::string to_string(Flag_t< Storage > const flag)
Convert a flag into a stream (shows its index).
Utility functions to print MC truth information.
resonant charged current, nubar n -> l+ n pi-
resonant charged current, nubar n -> nubar n pi0
std::string ParticleStatusName(int code)
Describes the status of a particle (simb::MCParticle::StatusCode()).
resonant neutral current, nu p -> nu p pi+
constexpr Point origin()
Returns a origin position with a point of the specified type.