ATLAS Offline Software
BTagJetAugmenter.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef BTAG_JET_AUGMENTER_HH
6 #define BTAG_JET_AUGMENTER_HH
7 
9 
10 // ATLAS things
11 #include "xAODBTagging/BTagging.h"
12 #include "xAODJet/Jet.h"
14 
16 {
17 public:
19 
20  BTagJetAugmenter(const std::string& associator = "BTagTrackToJetAssociator",
22  bool useIpxd = false);
23 
24  ~BTagJetAugmenter() = default;
26  void augmentJfDr(const xAOD::BTagging &btag) const;
27  void augmentIpRatios(const xAOD::BTagging &btag) const;
29  const xAOD::BTagging &uncalib) const;
30  void augmentBtagJes(const xAOD::Jet &target,
31  const xAOD::Jet &uncalib) const;
32  void augment(const xAOD::BTagging &btag) const;
33  void augment(const xAOD::BTagging &btag,
34  const xAOD::BTagging &uncalibrated_btag) const;
35 
36  std::set<std::string> getDecoratorKeys() const;
37  std::set<std::string> getAuxInputKeys() const;
38 
39 private:
40  bool jfIsDefaults(const xAOD::BTagging &btag) const;
41  double getDmesonMass(int secondaryVtx_track_number, float secondaryVtx_charge, std::vector<TLorentzVector> secondaryVtx_4momentum_vector, std::vector<float> secondaryVtx_charge_vector, const float track_mass, const float track_kaon) const;
42 
43  float safelog_prob(float p_up, float p_down) const;
44 
45 
46  typedef SG::AuxElement AE;
47 
49 
53 
55 
65 
75 
84 
88 
100  // Add new variable
103 
107 
109  bool m_useIpxd;
110 
111 };
112 
113 #endif
BTagJetAugmenter::m_min_trk_flightDirRelEta
AE::Decorator< float > m_min_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:104
BTagJetAugmenter::m_abs_eta_uncalib
AE::Decorator< float > m_abs_eta_uncalib
Definition: BTagJetAugmenter.h:52
Jet.h
BTagJetAugmenter::m_eta_uncalib
AE::Decorator< float > m_eta_uncalib
Definition: BTagJetAugmenter.h:51
FlavorTagDiscriminants::FlipTagConfig::STANDARD
@ STANDARD
BTagJetAugmenter::m_jf_deltaR
AE::Decorator< float > m_jf_deltaR
Definition: BTagJetAugmenter.h:83
BTagJetAugmenter::m_ip2d_bc
AE::Decorator< float > m_ip2d_bc
Definition: BTagJetAugmenter.h:64
BTagJetAugmenter::AE
SG::AuxElement AE
Definition: BTagJetAugmenter.h:46
BTagJetAugmenter::m_ip3d_nTrks
AE::Decorator< int > m_ip3d_nTrks
Definition: BTagJetAugmenter.h:67
BTagging.h
BTagJetAugmenter::m_sv1_vertices
AE::ConstAccessor< std::vector< ElementLink< xAOD::VertexContainer > > > m_sv1_vertices
Definition: BTagJetAugmenter.h:85
BTagJetAugmenter::m_ip2d_pu
AE::ConstAccessor< float > m_ip2d_pu
Definition: BTagJetAugmenter.h:58
BTagJetAugmenter::m_ip3d_isDefaults
AE::Decorator< char > m_ip3d_isDefaults
Definition: BTagJetAugmenter.h:71
BTagJetAugmenter
Definition: BTagJetAugmenter.h:16
BTagJetAugmenter::getDmesonMass
double getDmesonMass(int secondaryVtx_track_number, float secondaryVtx_charge, std::vector< TLorentzVector > secondaryVtx_4momentum_vector, std::vector< float > secondaryVtx_charge_vector, const float track_mass, const float track_kaon) const
Definition: BTagJetAugmenter.cxx:457
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:446
BTagJetAugmenter::m_jet_track_links
AE::ConstAccessor< std::vector< ElementLink< xAOD::TrackParticleContainer > > > m_jet_track_links
Definition: BTagJetAugmenter.h:89
BTagJetAugmenter::augmentBtagJes
void augmentBtagJes(const xAOD::BTagging &target, const xAOD::BTagging &uncalib) const
Definition: BTagJetAugmenter.cxx:223
BTagJetAugmenter::m_jf_nVtx
AE::ConstAccessor< int > m_jf_nVtx
Definition: BTagJetAugmenter.h:80
BTagJetAugmenter::m_ip2d_cu
AE::Decorator< float > m_ip2d_cu
Definition: BTagJetAugmenter.h:62
BTagJetAugmenter::m_sv1_nVtx
AE::Decorator< int > m_sv1_nVtx
Definition: BTagJetAugmenter.h:86
BTagJetAugmenter::m_ip2d_pc
AE::ConstAccessor< float > m_ip2d_pc
Definition: BTagJetAugmenter.h:59
SG::ConstAccessor
Helper class to provide constant type-safe access to aux data.
Definition: ConstAccessor.h:54
BTagJetAugmenter::~BTagJetAugmenter
~BTagJetAugmenter()=default
BTagJetAugmenter::jfIsDefaults
bool jfIsDefaults(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:453
FlipTagEnums.h
BTagJetAugmenter::augment
void augment(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:243
BTagJetAugmenter::augmentIpRatios
void augmentIpRatios(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:211
BTagJetAugmenter::BTagJetAugmenter
BTagJetAugmenter(const std::string &associator="BTagTrackToJetAssociator", FlipTagConfig flip=FlipTagConfig::STANDARD, bool useIpxd=false)
Definition: BTagJetAugmenter.cxx:60
BTagJetAugmenter::m_ip3d_pu
AE::ConstAccessor< float > m_ip3d_pu
Definition: BTagJetAugmenter.h:68
BTagJetAugmenter::m_ip3d_bu
AE::Decorator< float > m_ip3d_bu
Definition: BTagJetAugmenter.h:73
BTagJetAugmenter::getAuxInputKeys
std::set< std::string > getAuxInputKeys() const
Definition: BTagJetAugmenter.cxx:162
BTagJetAugmenter::m_ip2d_bu
AE::Decorator< float > m_ip2d_bu
Definition: BTagJetAugmenter.h:63
BTagJetAugmenter::m_secondaryVtx_m
AE::Decorator< float > m_secondaryVtx_m
Definition: BTagJetAugmenter.h:92
BTagJetAugmenter::m_ip2d_weightBOfTracks
AE::ConstAccessor< std::vector< float > > m_ip2d_weightBOfTracks
Definition: BTagJetAugmenter.h:56
BTagJetAugmenter::m_ip2d_isDefaults
AE::Decorator< char > m_ip2d_isDefaults
Definition: BTagJetAugmenter.h:61
BTagJetAugmenter::m_jf_vertices
AE::ConstAccessor< std::vector< ElementLink< xAOD::BTagVertexContainer > > > m_jf_vertices
Definition: BTagJetAugmenter.h:79
BTagJetAugmenter::m_jf_nSingleTracks
AE::ConstAccessor< int > m_jf_nSingleTracks
Definition: BTagJetAugmenter.h:81
BTagJetAugmenter::augmentJfDr
void augmentJfDr(const xAOD::BTagging &btag) const
Definition: BTagJetAugmenter.cxx:181
BTagJetAugmenter::m_ip3d_bc
AE::Decorator< float > m_ip3d_bc
Definition: BTagJetAugmenter.h:74
SG::Decorator
Helper class to provide type-safe access to aux data.
Definition: Decorator.h:58
BTagJetAugmenter::m_ip3d_pb
AE::ConstAccessor< float > m_ip3d_pb
Definition: BTagJetAugmenter.h:70
BTagJetAugmenter::m_jf_deltaEta
AE::ConstAccessor< float > m_jf_deltaEta
Definition: BTagJetAugmenter.h:76
BTagJetAugmenter::m_secondaryVtx_L3d
AE::Decorator< float > m_secondaryVtx_L3d
Definition: BTagJetAugmenter.h:95
BTagJetAugmenter::getDecoratorKeys
std::set< std::string > getDecoratorKeys() const
Definition: BTagJetAugmenter.cxx:121
BTagJetAugmenter::m_secondaryVtx_avg_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_avg_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:99
BTagJetAugmenter::m_scalarSumTrackPt
AE::Decorator< float > m_scalarSumTrackPt
Definition: BTagJetAugmenter.h:54
xAOD::BTagging_v1
Definition: BTagging_v1.h:39
BTagJetAugmenter::m_secondaryVtx_Lxy
AE::Decorator< float > m_secondaryVtx_Lxy
Definition: BTagJetAugmenter.h:96
BTagJetAugmenter::FlipTagConfig
FlavorTagDiscriminants::FlipTagConfig FlipTagConfig
Definition: BTagJetAugmenter.h:18
BTagJetAugmenter::m_ip3d_pc
AE::ConstAccessor< float > m_ip3d_pc
Definition: BTagJetAugmenter.h:69
BTagJetAugmenter::m_pt_uncalib
AE::Decorator< float > m_pt_uncalib
Definition: BTagJetAugmenter.h:50
BTagJetAugmenter::m_ip2d_nTrks
AE::Decorator< int > m_ip2d_nTrks
Definition: BTagJetAugmenter.h:57
BTagJetAugmenter::m_secondaryVtx_min_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_min_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:97
BTagJetAugmenter::m_ip2d_pb
AE::ConstAccessor< float > m_ip2d_pb
Definition: BTagJetAugmenter.h:60
BTagJetAugmenter::m_secondaryVtx_nTrks
AE::Decorator< int > m_secondaryVtx_nTrks
Definition: BTagJetAugmenter.h:91
BTagJetAugmenter::BTagJetAugmenter
BTagJetAugmenter(BTagJetAugmenter &&)
BTagJetAugmenter::m_secondaryVtx_E
AE::Decorator< float > m_secondaryVtx_E
Definition: BTagJetAugmenter.h:93
EventInfo.h
BTagJetAugmenter::m_ip3d_weightBOfTracks
AE::ConstAccessor< std::vector< float > > m_ip3d_weightBOfTracks
Definition: BTagJetAugmenter.h:66
BTagJetAugmenter::m_secondaryVtx_isDefaults
AE::Decorator< char > m_secondaryVtx_isDefaults
Definition: BTagJetAugmenter.h:90
BTagJetAugmenter::m_DMeson_m
AE::Decorator< float > m_DMeson_m
Definition: BTagJetAugmenter.h:101
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
BTagJetAugmenter::m_flipConfig
FlipTagConfig m_flipConfig
Definition: BTagJetAugmenter.h:108
BTagJetAugmenter::m_ip3d_cu
AE::Decorator< float > m_ip3d_cu
Definition: BTagJetAugmenter.h:72
BTagJetAugmenter::m_jf_isDefaults
AE::Decorator< char > m_jf_isDefaults
Definition: BTagJetAugmenter.h:82
BTagJetAugmenter::m_sv1_isDefaults
AE::Decorator< char > m_sv1_isDefaults
Definition: BTagJetAugmenter.h:87
BTagJetAugmenter::m_secondaryVtx_max_trk_flightDirRelEta
AE::Decorator< float > m_secondaryVtx_max_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:98
COOLRates.target
target
Definition: COOLRates.py:1106
BTagJetAugmenter::m_secondaryVtx_EFrac
AE::Decorator< float > m_secondaryVtx_EFrac
Definition: BTagJetAugmenter.h:94
BTagJetAugmenter::m_max_trk_flightDirRelEta
AE::Decorator< float > m_max_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:105
FlavorTagDiscriminants::FlipTagConfig
FlipTagConfig
Definition: FlipTagEnums.h:14
BTagJetAugmenter::safelog_prob
float safelog_prob(float p_up, float p_down) const
Definition: BTagJetAugmenter.cxx:190
BTagJetAugmenter::m_DMeson_isDefaults
AE::Decorator< char > m_DMeson_isDefaults
Definition: BTagJetAugmenter.h:102
BTagJetAugmenter::m_jf_deltaPhi
AE::ConstAccessor< float > m_jf_deltaPhi
Definition: BTagJetAugmenter.h:77
BTagJetAugmenter::m_jetLink
AE::ConstAccessor< ElementLink< xAOD::JetContainer > > m_jetLink
Definition: BTagJetAugmenter.h:48
BTagJetAugmenter::m_jf_fittedPosition
AE::ConstAccessor< std::vector< float > > m_jf_fittedPosition
Definition: BTagJetAugmenter.h:78
BTagJetAugmenter::m_useIpxd
bool m_useIpxd
Definition: BTagJetAugmenter.h:109
BTagJetAugmenter::m_avg_trk_flightDirRelEta
AE::Decorator< float > m_avg_trk_flightDirRelEta
Definition: BTagJetAugmenter.h:106