 |
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) |
|
JetVtxApprox | getJetVtxApprox (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()
◆ getCalEnergyLogRatio()
double MSVtxValidationAlgUtils::getCalEnergyLogRatio |
( |
double |
EMF | ) |
|
◆ getChildren()
◆ getCTau()
◆ getIso()
Definition at line 134 of file MuonSpectrometer/MuonValidation/MuonVertexValidation/src/Utils.cxx.
146 double hardTrack_mindR{99.};
150 if(
Track->pt() >= trackIso_pT && dR < hardTrack_mindR) hardTrack_mindR = dR;
155 iso.track_mindR = hardTrack_mindR != 99. ? hardTrack_mindR : -1.;
156 iso.track_pTsum = softTrack_pTsum.mag() != 0. ? softTrack_pTsum.perp()/
Gaudi::Units::GeV : -1.;
159 double jet_mindR{99.};
161 if(
Jet->
pt() < jetIso_pT)
continue;
164 if(logratio >= jetIso_LogRatio)
continue;
171 iso.jet_mindR = jet_mindR != 99. ? jet_mindR : -1.;
◆ getJetVtxApprox()
Definition at line 91 of file MuonSpectrometer/MuonValidation/MuonVertexValidation/src/Utils.cxx.
95 std::set<const xAOD::TruthVertex*> seenVertices;
98 size_t maxChildren{0};
99 size_t maxDecayDepth{0};
102 if (!
tp || !
tp->isStable() ||
jet->p4().DeltaR(
tp->p4()) > 0.4)
continue;
108 if (decayDepth > 200)
break;
113 if (!prodVtx || seenVertices.count(prodVtx))
break;
114 if (prodVtx->
v4().Mag2() < 0)
break;
115 seenVertices.insert(prodVtx);
120 if ((nChildren >= 2) && ((nChildren > maxChildren) || (mostActiveVertex && nChildren == maxChildren && prodVtx->
v4().Vect().Mag2() > mostActiveVertex->
v4().Vect().Mag2()))) {
121 mostActiveVertex = prodVtx;
122 maxChildren = nChildren;
123 maxDecayDepth = decayDepth;
128 JetVtxApprox jetVtx{mostActiveVertex, maxChildren, maxDecayDepth};
◆ 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
virtual double pt() const
transverse momentum
Class describing a TrackParticle.
GenVecFourVec_t genvecV4() const
The full 4-vector of the particle : GenVector form.
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)