 |
ATLAS Offline Software
|
|
double | getCTau (const xAOD::TruthVertex *decVtx) |
|
double | getCalEnergyLogRatio (double EMF) |
|
bool | comparePt (const xAOD::TruthParticle *part1, const xAOD::TruthParticle *part2) |
|
std::vector< const xAOD::TruthParticle * > | getChildren (const xAOD::TruthParticle *mother) |
|
std::vector< const xAOD::TruthParticle * > | getStableChildrenRecursive (const xAOD::TruthParticle *particle, bool findOnlyGenStable, std::unordered_set< const xAOD::TruthParticle * > &visited) |
|
std::vector< const xAOD::TruthParticle * > | getStableChildren (const xAOD::TruthParticle *particle, bool findOnlyGenStable) |
|
std::vector< const xAOD::TruthParticle * > | getDecayProducts (const xAOD::TruthVertex *vtx) |
|
std::vector< ActiveVertex > | getActiveVertices (const xAOD::Jet *jet, const xAOD::TruthParticleContainer &truthParticles) |
|
VtxIso | getIso (const xAOD::Vertex *vtx, const xAOD::TrackParticleContainer &Tracks, const xAOD::JetContainer &Jets, double trackIso_pT, double softTrackIso_R, double jetIso_pT, double jetIso_LogRatio) |
|
◆ comparePt()
◆ getActiveVertices()
Definition at line 107 of file MuonSpectrometer/MuonValidation/MuonVertexValidation/src/Utils.cxx.
111 std::set<const xAOD::TruthVertex*> seenVertices;
112 std::vector<ActiveVertex> actVertices;
113 std::vector<const xAOD::TruthParticle*>
children;
117 if (!
tp || !
tp->isStable() ||
jet->p4().DeltaR(
tp->p4()) > 0.4)
continue;
120 size_t decayDepth{0};
123 if (decayDepth > 200)
break;
128 if (!prodVtx || seenVertices.count(prodVtx))
break;
129 if (prodVtx->
v4().Mag2() < 0)
break;
130 seenVertices.insert(prodVtx);
136 if (nChildren >= 2) {
137 TLorentzVector vtx4Vec;
138 float scalarPtSum{0.};
140 vtx4Vec += child->p4();
141 scalarPtSum += child->p4().Pt();
143 actVertices.push_back({prodVtx, vtx4Vec.E(), vtx4Vec.M(), vtx4Vec.Pt(), scalarPtSum, nChildren, decayDepth});
◆ getCalEnergyLogRatio()
double MSVtxValidationAlgUtils::getCalEnergyLogRatio |
( |
double |
EMF | ) |
|
◆ getChildren()
◆ getCTau()
◆ getDecayProducts()
◆ getIso()
Definition at line 153 of file MuonSpectrometer/MuonValidation/MuonVertexValidation/src/Utils.cxx.
165 double hardTrack_mindR{99.};
169 if(
Track->pt() >= trackIso_pT && dR < hardTrack_mindR) hardTrack_mindR = dR;
174 iso.track_mindR = hardTrack_mindR != 99. ? hardTrack_mindR : -1.;
175 iso.track_pTsum = softTrack_pTsum.mag() != 0. ? softTrack_pTsum.perp()/
Gaudi::Units::GeV : -1.;
178 double jet_mindR{99.};
180 if(
Jet->
pt() < jetIso_pT)
continue;
183 if(logratio >= jetIso_LogRatio)
continue;
190 iso.jet_mindR = jet_mindR != 99. ? jet_mindR : -1.;
◆ getStableChildren()
◆ getStableChildrenRecursive()
Definition at line 54 of file MuonSpectrometer/MuonValidation/MuonVertexValidation/src/Utils.cxx.
57 std::vector<const xAOD::TruthParticle*> stableChildren;
63 bool particleIsStable = findOnlyGenStable ?
particle->isGenStable() :
particle->isStable();
64 if (particleIsStable) {
66 return stableChildren;
75 if (std::none_of(stableChildren.begin(), stableChildren.end(), [&](
const auto&
x) {return x==c;})) stableChildren.push_back(
c);
79 return stableChildren;
size_t nOutgoingParticles() const
Get the number of outgoing particles.
std::vector< const xAOD::TrackParticle * > Tracks
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
virtual double eta() const
pseudo rapidity
Basic data class defines behavior for all Jet objects The Jet class is the principal data class for...
const Amg::Vector3D & position() const
Returns the 3-pos.
double getCalEnergyLogRatio(double EMF)
bool greater(double a, double b)
Compare two FP numbers, working around x87 precision issues.
FourVec_t v4() const
The full 4-vector of the vertex.
bool isPhysical(const T &p)
Identify if the particle is physical, i.e. is stable or decayed.
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...
double deltaR(double rapidity1, double phi1, double rapidity2, double phi2)
from bare bare rapidity,phi
Class describing a truth particle in the MC record.
const TruthParticle_v1 * incomingParticle(size_t index) const
Get one of the incoming particles.
virtual double phi() const
phi in [-pi,pi[
bool greater_equal(double a, double b)
Compare two FP numbers, working around x87 precision issues.
Class describing a truth vertex in the MC record.
size_t nChildren() const
Number of children of this particle.
const TruthParticle_v1 * child(size_t i) const
Retrieve the i-th mother (TruthParticle) of this TruthParticle.
Eigen::Matrix< double, 3, 1 > Vector3D
std::vector< const xAOD::TruthParticle * > getDecayProducts(const xAOD::TruthVertex *vtx)
virtual double pt() const
transverse momentum
Class describing a TrackParticle.
GenVecFourVec_t genvecV4() const
The full 4-vector of the particle : GenVector form.
const TruthParticle_v1 * outgoingParticle(size_t index) const
Get one of the outgoing particles.
void zero(TH2 *h)
zero the contents of a 2d histogram
std::vector< const xAOD::TruthParticle * > getStableChildrenRecursive(const xAOD::TruthParticle *particle, bool findOnlyGenStable, std::unordered_set< const xAOD::TruthParticle * > &visited)
std::vector< const xAOD::TruthParticle * > getChildren(const xAOD::TruthParticle *mother)