![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
#include <BTagMuonAugmenter.h>
Definition at line 38 of file BTagMuonAugmenter.h.
◆ BTagMuonAugmenter() [1/2]
Definition at line 13 of file BTagMuonAugmenter.cxx.
40 "momentumBalanceSignificance",
41 "scatteringNeighbourSignificance",
45 "ParamEnergyLossSigmaPlus",
46 "ParamEnergyLossSigmaMinus",
48 "MeasEnergyLossSigma",
51 "numberOfInnermostPixelLayerSplitHits",
52 "numberOfInnermostPixelLayerSharedHits",
53 "numberOfInnermostPixelLayerOutliers",
54 "numberOfNextToInnermostPixelLayerHits",
55 "numberOfNextToInnermostPixelLayerOutliers",
57 "numberOfPixelSplitHits",
58 "numberOfPixelSharedHits",
59 "numberOfPixelSpoiltHits",
62 "numberOfSCTSharedHits",
64 "expectInnermostPixelLayerHit",
65 "expectNextToInnermostPixelLayerHit"}) {
◆ ~BTagMuonAugmenter()
FlavorTagDiscriminants::BTagMuonAugmenter::~BTagMuonAugmenter |
( |
| ) |
|
|
default |
◆ BTagMuonAugmenter() [2/2]
FlavorTagDiscriminants::BTagMuonAugmenter::BTagMuonAugmenter |
( |
BTagMuonAugmenter && |
| ) |
|
◆ augment()
Definition at line 79 of file BTagMuonAugmenter.cxx.
82 float dR_closest_muon = 10;
85 char muon_isDefaults = 1;
88 float muon_qOverPratio = -1;
89 float muon_pTrel = -1;
90 float muon_ip3d_d0 = -1;
91 float muon_ip3d_z0 = -1;
92 float muon_ip3d_d0_significance = -1;
93 float muon_ip3d_z0_significance = -1;
94 float muon_ip3d_sigma_d0 = -1;
95 float muon_ip3d_sigma_z0 = -1;
100 var.m_dec(btag) = -1;
108 if (!jet_link.isValid()) {
109 throw std::runtime_error(
"missing jetLink");
114 std::vector<ElementLink<xAOD::MuonContainer>> assocMuons =
116 if (assocMuons.size() > 0) {
117 nAssocMuons = assocMuons.size();
118 for (
unsigned int imu = 0; imu < assocMuons.size(); imu++) {
119 const xAOD::Muon* thisMu = *(assocMuons.at(imu));
129 float dR =
jet.p4().DeltaR(thisMu->
p4());
135 thisMu->
trackParticle(xAOD::Muon::InnerDetectorTrackParticle);
137 thisMu->
trackParticle(xAOD::Muon::ExtrapolatedMuonSpectrometerTrackParticle);
138 if (!IDMuTrack || !MSMuTrack)
142 float momBalSignif0 = 0;
144 if (momBalSignif0 == 0)
146 if (MSMuTrack->
qOverP() == 0)
150 if (dR < dR_closest_muon) {
151 dR_closest_muon = dR;
153 muon_link = assocMuons.at(imu);
157 if (muon_index != -1) {
159 const xAOD::Muon* smtMu = *(assocMuons.at(muon_index));
161 smtMu->
trackParticle(xAOD::Muon::InnerDetectorTrackParticle);
165 smtMu->
trackParticle(xAOD::Muon::ExtrapolatedMuonSpectrometerTrackParticle);
168 muon_dR = dR_closest_muon;
169 muon_qOverPratio = IDMuTrack->
qOverP() / MSMuTrack->
qOverP();
175 double muon_transverseEnergyLoss = muon_energyLoss *
std::sin(smtMu->
p4().Theta());
176 TLorentzVector muon_loss;
178 muon_loss.SetPtEtaPhiE(muon_transverseEnergyLoss, smtMu->
p4().Eta(),
jet.p4().Phi(), muon_energyLoss);
181 TLorentzVector corrected_jet;
182 corrected_jet =
jet.p4() - muon_loss + smtMu->
p4();
183 muon_pTrel = smtMu->
p4().Vect().Perp(corrected_jet.Vect());
197 var.m_dec(btag) =
var.m_acc(*smtMu);
200 var.m_dec(btag) =
var.m_acc(*IDMuTrack);
◆ getAuxInputKeys()
std::set< std::string > FlavorTagDiscriminants::BTagMuonAugmenter::getAuxInputKeys |
( |
| ) |
const |
◆ getConstituentAuxInputKeys()
std::set< std::string > FlavorTagDiscriminants::BTagMuonAugmenter::getConstituentAuxInputKeys |
( |
| ) |
const |
◆ getDecoratorKeys()
std::set< std::string > FlavorTagDiscriminants::BTagMuonAugmenter::getDecoratorKeys |
( |
| ) |
const |
Definition at line 219 of file BTagMuonAugmenter.cxx.
221 std::set<std::string>
keys;
222 for (
const auto& auxid : {
234 keys.insert(type_registry.getName(auxid));
◆ m_acc_assocMuons
◆ m_acc_jetLink
◆ m_acc_muon_energyLoss
AE::ConstAccessor<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_acc_muon_energyLoss |
|
private |
◆ m_btag_track_aug
◆ m_dec_muon_dR
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_dR |
|
private |
◆ m_dec_muon_ip3d_d0
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_d0 |
|
private |
◆ m_dec_muon_ip3d_d0_significance
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_d0_significance |
|
private |
◆ m_dec_muon_ip3d_sigma_d0
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_sigma_d0 |
|
private |
◆ m_dec_muon_ip3d_sigma_z0
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_sigma_z0 |
|
private |
◆ m_dec_muon_ip3d_z0
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_z0 |
|
private |
◆ m_dec_muon_ip3d_z0_significance
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_ip3d_z0_significance |
|
private |
◆ m_dec_muon_isDefaults
AE::Decorator<char> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_isDefaults |
|
private |
◆ m_dec_muon_link
◆ m_dec_muon_pTrel
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_pTrel |
|
private |
◆ m_dec_muon_qOverPratio
AE::Decorator<float> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_muon_qOverPratio |
|
private |
◆ m_dec_nAssocMuons
AE::Decorator<int> FlavorTagDiscriminants::BTagMuonAugmenter::m_dec_nAssocMuons |
|
private |
◆ m_flip_config
FlipTagConfig FlavorTagDiscriminants::BTagMuonAugmenter::m_flip_config |
|
private |
◆ m_float_IO
std::vector<CAccDec<float> > FlavorTagDiscriminants::BTagMuonAugmenter::m_float_IO |
|
private |
◆ m_float_IO_variables
std::vector<std::string> FlavorTagDiscriminants::BTagMuonAugmenter::m_float_IO_variables |
|
private |
◆ m_muonAssociationName
std::string FlavorTagDiscriminants::BTagMuonAugmenter::m_muonAssociationName |
|
private |
◆ m_muonMaxDR
float FlavorTagDiscriminants::BTagMuonAugmenter::m_muonMaxDR |
|
private |
◆ m_muonMinpT
float FlavorTagDiscriminants::BTagMuonAugmenter::m_muonMinpT |
|
private |
◆ m_unsigned_char_IO
std::vector<CAccDec<unsigned char> > FlavorTagDiscriminants::BTagMuonAugmenter::m_unsigned_char_IO |
|
private |
◆ m_unsigned_char_IO_variables
std::vector<std::string> FlavorTagDiscriminants::BTagMuonAugmenter::m_unsigned_char_IO_variables |
|
private |
The documentation for this class was generated from the following files:
std::vector< std::string > m_unsigned_char_IO_variables
AE::Decorator< float > m_dec_muon_ip3d_z0
const TrackParticle * trackParticle(TrackParticleType type) const
Returns a pointer (which can be NULL) to the TrackParticle used in identification of this muon.
static AuxTypeRegistry & instance()
Return the singleton registry instance.
AE::Decorator< float > m_dec_muon_ip3d_d0
virtual FourMom_t p4() const
The full 4-momentum of the particle.
AE::Decorator< float > m_dec_muon_ip3d_d0_significance
AE::ConstAccessor< float > m_acc_muon_energyLoss
@ momentumBalanceSignificance
AE::Decorator< float > m_dec_muon_ip3d_sigma_d0
std::set< std::string > getTrackIpDataDependencyNames() const
AE::Decorator< float > m_dec_muon_dR
bool parameter(float &value, const ParamDef parameter) const
Get a parameter for this Muon - momentumBalanceSignificance for example.
double d0Uncertainty(const xAOD::TrackParticle &track) const
virtual double pt() const
The transverse momentum ( ) of the particle.
std::string m_muonAssociationName
double z0SinThetaUncertainty(const xAOD::TrackParticle &track) const
ElementLink implementation for ROOT usage.
AE::Decorator< float > m_dec_muon_ip3d_z0_significance
AE::Decorator< char > m_dec_muon_isDefaults
BTagTrackIpAccessor m_btag_track_aug
float qOverP() const
Returns the parameter.
AE::Decorator< ElementLink< xAOD::MuonContainer > > m_dec_muon_link
AE::Decorator< float > m_dec_muon_qOverPratio
AE::Decorator< float > m_dec_muon_pTrel
AE::ConstAccessor< std::vector< ElementLink< xAOD::MuonContainer > > > m_acc_assocMuons
AE::ConstAccessor< ElementLink< xAOD::JetContainer > > m_acc_jetLink
Class describing a TrackParticle.
std::vector< CAccDec< float > > m_float_IO
FlipTagConfig m_flip_config
std::vector< CAccDec< unsigned char > > m_unsigned_char_IO
AE::Decorator< float > m_dec_muon_ip3d_sigma_z0
std::vector< std::string > m_float_IO_variables
MuonType muonType() const
AE::Decorator< int > m_dec_nAssocMuons
BTagSignedIP getSignedIp(const xAOD::TrackParticle &track, const xAOD::Jet &jet) const