24 using namespace genie;
35 (pdgc > 2000000000 && pdgc < 2000100000) ||
44 return (pdgc > 1000000000 && pdgc < 1999999999);
59 int Z = (ion_pdgc/10000) - 1000*(ion_pdgc/10000000);
67 int A = (ion_pdgc/10) - 1000*(ion_pdgc/10000);
82 int ion_pdgc = 1000000000 + L*100000000 + Z*10000 + A*10 + I;
91 bool is_lepton = (is_neutral_lepton || is_charged_lepton);
98 return is_neutral_lepton;
106 bool is_charged_lepton = is_neg_lepton || is_pos_lepton;
107 return is_charged_lepton;
112 bool is_nu = (pdgc ==
kPdgNuE) ||
145 return is_neg_lepton;
154 return is_pos_lepton;
394 return ((pdgc>=100 && pdgc<=9999) || (pdgc>=-9999 && pdgc<=-100));
421 return ( std::abs( pdgc ) ==
kPdgHNL );
428 if(geant_code == 6)
return kPdgMuon;
430 if(geant_code == 34)
return kPdgTau;
432 if(geant_code == 8)
return kPdgPiP;
433 if(geant_code == 9)
return kPdgPiM;
434 if(geant_code == 7)
return kPdgPi0;
435 if(geant_code == 17)
return kPdgEta;
436 if(geant_code == 11)
return kPdgKP;
437 if(geant_code == 12)
return kPdgKM;
438 if(geant_code == 10)
return kPdgK0L;
439 if(geant_code == 16)
return kPdgK0S;
440 if(geant_code == 35)
return kPdgDP;
441 if(geant_code == 36)
return kPdgDM;
442 if(geant_code == 37)
return kPdgD0;
444 if(geant_code == 39)
return kPdgDPs;
445 if(geant_code == 40)
return kPdgDMs;
447 if(geant_code == 44)
return kPdgZ0;
448 if(geant_code == 42)
return kPdgWP;
449 if(geant_code == 43)
return kPdgWM;
462 if(geant_code == 22)
return kPdgXi0;
463 if(geant_code == 23)
return kPdgXiM;
470 const int kPdgDeuteron = 1000010020;
471 const int kPdgTritium = 1000010030;
472 const int kPdgAlpha = 1000020040;
473 const int kPdgHe3 = 1000020030;
474 if(geant_code == 45)
return kPdgDeuteron;
475 if(geant_code == 46)
return kPdgTritium;
476 if(geant_code == 47)
return kPdgAlpha;
477 if(geant_code == 49)
return kPdgHe3;
480 <<
"Can not convert geant code: " << geant_code <<
" to PDG";
const int kPdgBUDiquarkS0
const int kPdgUUDiquarkS1
bool IsParticle(int pdgc)
not ion or pseudo-particle
bool IsNeutrino(int pdgc)
const int kPdgSDDiquarkS1
const int kPdgBCDiquarkS0
const int kPdgBCDiquarkS1
const int kPdgBUDiquarkS1
const int kPdgSUDiquarkS1
int IonPdgCodeToA(int pdgc)
const int kPdgSUDiquarkS0
bool IsAntiNuTau(int pdgc)
int SwitchProtonNeutron(int pdgc)
bool IsAntiQuark(int pdgc)
const int kPdgSSDiquarkS1
bool IsDarkMatter(int pdgc)
bool IsChargedLepton(int pdgc)
bool IsAntiSQuark(int pdgc)
const int kPdgCSDiquarkS1
bool IsAntiDQuark(int pdgc)
const int kPdgCDDiquarkS1
int ModifyNucleonCluster(int pdgc, int dQ)
const int kPdgCSDiquarkS0
const int kPdgSDDiquarkS0
bool IsPosChargedLepton(int pdgc)
const int kPdgBBDiquarkS1
int GeantToPdg(int geant_code)
const int kPdgCDDiquarkS0
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
const int kPdgBDDiquarkS0
bool IsAntiDarkMatter(int pdgc)
const int kPdgUDDiquarkS1
const int kPdgAntiDarkMatter
static constexpr double A
bool IsAntiNeutrino(int pdgc)
bool IsAntiTQuark(int pdgc)
bool IsAntiMuon(int pdgc)
const int kPdgBSDiquarkS0
bool IsAntiBQuark(int pdgc)
const int kPdgBSDiquarkS1
bool IsPositron(int pdgc)
const int kPdgUDDiquarkS0
bool IsAntiNuMu(int pdgc)
const int kPdgCUDiquarkS1
bool IsNeutralLepton(int pdgc)
bool Is2NucleonCluster(int pdgc)
const int kPdgDNuMediator
const int kPdgAntiNeutron
bool IsAntiCQuark(int pdgc)
bool IsPseudoParticle(int pdgc)
bool IsNeutronOrProton(int pdgc)
int IonPdgCode(int A, int Z)
bool IsDarkSectorParticle(int pdgc)
const int kPdgCCDiquarkS1
int Neutrino2ChargedLepton(int pdgc)
bool IsBaryonResonance(int pdgc)
is input a baryon resonance?
int IonPdgCodeToZ(int pdgc)
bool IsBaryonResonance(int pdgc)
const int kPdgDarkNeutrino
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
const int kPdgBDDiquarkS1
bool IsNegChargedLepton(int pdgc)
bool IsElectron(int pdgc)
const int kPdgCUDiquarkS0
bool IsAntiUQuark(int pdgc)
const int kPdgDDDiquarkS1