47
50
53
56
59
62
67 const auto vertex =
p->end_vertex();
69 }
70
73
76 const int apid = std::abs(
p->pdg_id());
78 if (apid == 1000022 || apid == 1000024 || apid == 5100022) return true;
79 if (apid ==
GRAVITON || apid == 1000039 || apid == 5000039)
return true;
80 if (apid == 9000001 || apid == 9000002 || apid == 9000003 || apid == 9000004 || apid == 9000005 || apid == 9000006) return true;
81 return false;
82 }
83
85
87 auto partOriVert = thePart->production_vertex();
88 if (!partOriVert) return nullptr;
89
90 long partPDG = thePart->pdg_id();
bool is_simulation_vertex(const T &v)
Method to establish if the vertex was created during simulation (TODO migrate to be based on status).
bool is_simulation_particle(const T &p)
Method to establish if a particle (or barcode) was created during the simulation (TODO update to be s...
static const int GRAVITON
bool isZeroEnergyPhoton(const T &p)
Identify a photon with zero energy. Probably a workaround for a generator bug.
bool isStableOrSimDecayed(const T &p)
Identify if particle is satble or decayed in simulation.
bool isPhoton(const T &p)
bool isSpecialNonInteracting(const T &p)
Identify a special non-interacting particles.
bool isStable(const T &p)
Identify if the particle is stable, i.e. has not decayed.
bool isSimInteracting(const T &p)
Identify if the particle could interact with the detector during the simulation, e....
bool isInteracting(const T &p)
Identify if the particle with given PDG ID would not interact with the detector, i....
bool isDecayed(const T &p)
Identify if the particle decayed.
T findMother(T thePart)
Function to get a mother of particle. MCTruthClassifier legacy.
bool isFinalState(const T &p)
Identify if the particle is final state particle.
bool isGenStable(const T &p)
Determine if the particle is stable at the generator (not det-sim) level,.
bool isSimStable(const T &p)
Identify if the particle is considered stable at the post-detector-sim stage.
bool isPhysical(const T &p)
Identify if the particle is physical, i.e. is stable or decayed.