ATLAS Offline Software
Namespaces | Classes | Typedefs | Enumerations | Functions
met Namespace Reference

Namespaces

 jetTrkAffSyst
 
 softCaloAffSyst
 
 softTrkAffSyst
 

Classes

class  METAssociationTool
 
class  METAssociator
 
class  METAssocTestAlg
 
class  METBuilderTool
 
class  METCaloRegionsTool
 
class  METEgammaAssociator
 
class  METElectronAssociator
 
class  METJetAssocTool
 
class  METJetTool
 
class  METMaker
 
class  METMakerAlg
 
class  METMuonAssociator
 
class  METPhotonAssociator
 
class  METReaderAlg
 
class  METRecoAlg
 
class  METRecoTool
 
class  METRefinerTool
 
class  METRegionsTool
 
class  METSignificance
 
class  METSoftAssociator
 
class  METSoftTermsTool
 
class  METSystematicsTool
 
class  METTauAssociator
 
class  METTrackFilterTool
 
class  METTruthAssociator
 
class  METTruthTool
 
struct  missingEt
 

Typedefs

typedef ElementLink< xAOD::IParticleContainerobj_link_t
 
using iplink_t = ElementLink< xAOD::IParticleContainer >
 

Enumerations

enum  SoftTermParams { Random = 0, PthardParam = 1, TSTParam = 2 }
 
enum  METSignificanceResoTerms {
  ResoNone = 0, ResoJet = 1, ResoSoft = 2, ResoEle = 3,
  ResoMuo = 4, ResoPho = 5, ResoTau = 6
}
 
enum  SystType { INVALID =-1, SOFTCALO, SOFTTRK, JETTRK }
 
enum  SWClusterMatchMethod { DeltaR, ClusterLink }
 
enum  SystApplied {
  NONE, MET_SOFTTRK_SCALEUP, MET_SOFTTRK_SCALEDOWN, MET_SOFTTRK_RESOPARA,
  MET_SOFTTRK_RESOPERP, MET_SOFTTRK_RESOCORR, MET_SOFTCALO_SCALEUP, MET_SOFTCALO_SCALEDOWN,
  MET_SOFTCALO_RESO, MET_JETTRK_SCALEUP, MET_JETTRK_SCALEDOWN
}
 

Functions

SystType getSystType (const CP::SystematicVariation &systematic)
 
void addGhostMuonsToJets (const xAOD::MuonContainer &muons, xAOD::JetContainer &jets)
 
StatusCode buildMETSum (const std::string &totalName, xAOD::MissingETContainer *metCont)
 
StatusCode buildMETSum (const std::string &totalName, xAOD::MissingETContainer *metCont, MissingETBase::Types::bitmask_t softTermsSource)
 
StatusCode fillMET (xAOD::MissingET *&met, xAOD::MissingETContainer *metCont, const std::string &metKey, const MissingETBase::Types::bitmask_t metSource)
 

Typedef Documentation

◆ iplink_t

Definition at line 63 of file METMaker.cxx.

◆ obj_link_t

Definition at line 38 of file METMaker.h.

Enumeration Type Documentation

◆ METSignificanceResoTerms

Enumerator
ResoNone 
ResoJet 
ResoSoft 
ResoEle 
ResoMuo 
ResoPho 
ResoTau 

Definition at line 31 of file IMETSignificance.h.

31  {
32  ResoNone = 0,
33  ResoJet = 1,
34  ResoSoft = 2,
35  ResoEle = 3,
36  ResoMuo = 4,
37  ResoPho = 5,
38  ResoTau = 6
39  };

◆ SoftTermParams

Enumerator
Random 
PthardParam 
TSTParam 

Definition at line 26 of file IMETSignificance.h.

26  {
27  Random = 0,
28  PthardParam = 1,
29  TSTParam = 2
30  };

◆ SWClusterMatchMethod

Enumerator
DeltaR 
ClusterLink 

Definition at line 10 of file METRecoCommon.h.

10  {
11  DeltaR,
13  };

◆ SystApplied

Enumerator
NONE 
MET_SOFTTRK_SCALEUP 
MET_SOFTTRK_SCALEDOWN 
MET_SOFTTRK_RESOPARA 
MET_SOFTTRK_RESOPERP 
MET_SOFTTRK_RESOCORR 
MET_SOFTCALO_SCALEUP 
MET_SOFTCALO_SCALEDOWN 
MET_SOFTCALO_RESO 
MET_JETTRK_SCALEUP 
MET_JETTRK_SCALEDOWN 

Definition at line 68 of file METSystematicsTool.h.

◆ SystType

Enumerator
INVALID 
SOFTCALO 
SOFTTRK 
JETTRK 

Definition at line 46 of file IMETSystematicsTool.h.

46  {
47  INVALID=-1,
48  SOFTCALO,
49  SOFTTRK,
50  JETTRK
51  };

Function Documentation

◆ addGhostMuonsToJets()

void met::addGhostMuonsToJets ( const xAOD::MuonContainer muons,
xAOD::JetContainer jets 
)

Definition at line 34 of file METHelpers.cxx.

35  {
36  std::vector<const xAOD::TrackParticle*> jet_tracks;
37  for (xAOD::Jet* jet: jets) {
38  // Fill this with muons to be associated
39  std::vector<const xAOD::Muon*> muons_in_jet;
40  // Get the tracks associated to the jet
41  jet_tracks.clear();
42  if ( jet->getAssociatedObjects("GhostTrack", jet_tracks) ) {
43 
44  for(const auto *const muon : muons) {
45  const xAOD::TrackParticle* idtrack = muon->trackParticle( xAOD::Muon::InnerDetectorTrackParticle );
46  if(!idtrack) continue;
47  // check if this is ghost associated to a jet
48  // make sure the jet is close first
49  if(xAOD::P4Helpers::deltaR2(*jet,*muon)>0.36) continue;
50 
51  for(unsigned jtrk=0; jtrk<jet_tracks.size(); ++jtrk) {
52  // check if the track pointers match
53  if(jet_tracks.at(jtrk)==idtrack) {
54  muons_in_jet.push_back(muon);
55  break;
56  }
57  } // loop over jet tracks
58  } // loop over muons
59  } // jet has associated tracks
60  jet->setAssociatedObjects( "GhostMuon", muons_in_jet) ;
61  } // loop over jets
62  }

◆ buildMETSum() [1/2]

StatusCode met::buildMETSum ( const std::string &  totalName,
xAOD::MissingETContainer metCont 
)

Definition at line 64 of file METHelpers.cxx.

66  {
67  using namespace msgMET;
68  ANA_MSG_DEBUG("Build MET total: " << totalName);
69 
70  xAOD::MissingET* metFinal = nullptr;
71  if(fillMET(metFinal, metCont, totalName, MissingETBase::Source::total()) != StatusCode::SUCCESS){
72  ANA_MSG_ERROR("failed to fill MET term");
73  return StatusCode::FAILURE;
74  }
75 
76  for(xAOD::MissingETContainer::const_iterator iMET=metCont->begin(); iMET!=metCont->end(); ++iMET) {
77  if(*iMET==metFinal) continue;
78  *metFinal += **iMET;
79  }
80 
81  ANA_MSG_DEBUG( "Rebuilt MET Final --"
82  << " mpx: " << metFinal->mpx()
83  << " mpy: " << metFinal->mpy()
84  );
85 
86  return StatusCode::SUCCESS;
87  }

◆ buildMETSum() [2/2]

StatusCode met::buildMETSum ( const std::string &  totalName,
xAOD::MissingETContainer metCont,
MissingETBase::Types::bitmask_t  softTermsSource 
)

Definition at line 89 of file METHelpers.cxx.

92  {
93  using namespace msgMET;
94  ANA_MSG_DEBUG("Build MET total: " << totalName);
95 
96  xAOD::MissingET* metFinal = nullptr;
97  if( fillMET(metFinal, metCont, totalName, MissingETBase::Source::total()) != StatusCode::SUCCESS) {
98  ANA_MSG_ERROR("failed to fill MET term \"" << totalName << "\"");
99  return StatusCode::FAILURE;
100  }
101 
102  // not using a reference, because the iterator doesn't return a reference
103  for(const auto met : *metCont) {
104  if(MissingETBase::Source::isTotalTerm(met->source())) continue;
105  if(met->source()==invisSource) continue;
106  if(softTermsSource && MissingETBase::Source::isSoftTerm(met->source())) {
107  if(!MissingETBase::Source::hasPattern(met->source(),softTermsSource)) continue;
108  }
109  ANA_MSG_VERBOSE("Add MET term " << met->name() );
110  *metFinal += *met;
111  }
112 
113  ANA_MSG_DEBUG( "Rebuilt MET Final --"
114  << " mpx: " << metFinal->mpx()
115  << " mpy: " << metFinal->mpy()
116  );
117 
118  return StatusCode::SUCCESS;
119  }

◆ fillMET()

StatusCode met::fillMET ( xAOD::MissingET *&  met,
xAOD::MissingETContainer metCont,
const std::string &  metKey,
const MissingETBase::Types::bitmask_t  metSource 
)

Definition at line 123 of file METHelpers.cxx.

126  {
127  using namespace msgMET;
128  if(met != nullptr){
129  ANA_MSG_ERROR("You can't fill a filled MET value");
130  return StatusCode::FAILURE;
131  }
132  if(metCont->find(metKey)!=metCont->end()){
133  ANA_MSG_ERROR("Attempted to add a duplicate MET term: " << metKey);
134  return StatusCode::FAILURE;
135  }
136 
137  met = new xAOD::MissingET();
138  metCont->push_back(met);
139 
140  met->setName (metKey);
141  met->setSource(metSource);
142 
143  return StatusCode::SUCCESS;
144  }

◆ getSystType()

SystType met::getSystType ( const CP::SystematicVariation systematic)
inline

Definition at line 53 of file IMETSystematicsTool.h.

54  {
55  if(systematic == met::softCaloAffSyst::MET_SoftCalo_ScaleUp ||
56  systematic == met::softCaloAffSyst::MET_SoftCalo_ScaleDown ||
57  systematic == met::softCaloAffSyst::MET_SoftCalo_Reso ) return SOFTCALO;
58  if(systematic == met::softTrkAffSyst::MET_SoftTrk_ScaleUp ||
59  systematic == met::softTrkAffSyst::MET_SoftTrk_ScaleDown ||
60  systematic == met::softTrkAffSyst::MET_SoftTrk_ResoPara ||
61  systematic == met::softTrkAffSyst::MET_SoftTrk_ResoPerp ) return SOFTTRK;
62  if(systematic == met::jetTrkAffSyst::MET_JetTrk_ScaleUp ||
63  systematic == met::jetTrkAffSyst::MET_JetTrk_ScaleDown ) return JETTRK;
64  return INVALID;
65  }
met::ResoPho
@ ResoPho
Definition: IMETSignificance.h:37
NONE
@ NONE
Definition: sTGCenumeration.h:13
xAOD::muon
@ muon
Definition: TrackingPrimitives.h:195
met::ResoNone
@ ResoNone
Definition: IMETSignificance.h:32
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
MissingETBase::Source::hasPattern
static bool hasPattern(E bits, F mask)
Generic check for given pattern.
Definition: MissingETBase.h:382
met::ResoEle
@ ResoEle
Definition: IMETSignificance.h:35
met::DeltaR
@ DeltaR
Definition: METRecoCommon.h:11
met::ResoSoft
@ ResoSoft
Definition: IMETSignificance.h:34
MissingETBase::Source::isTotalTerm
static bool isTotalTerm(Types::bitmask_t bits, Region reg=Region::FullAcceptance)
Definition: MissingETBase.h:405
met::MET_SOFTCALO_RESO
@ MET_SOFTCALO_RESO
Definition: METSystematicsTool.h:77
xAOD::MissingET
MissingET_v1 MissingET
Version control by type defintion.
Definition: Event/xAOD/xAODMissingET/xAODMissingET/MissingET.h:15
ANA_MSG_ERROR
#define ANA_MSG_ERROR(xmsg)
Macro printing error messages.
Definition: Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:294
met::MET_JETTRK_SCALEDOWN
@ MET_JETTRK_SCALEDOWN
Definition: METSystematicsTool.h:79
met::JETTRK
@ JETTRK
Definition: IMETSystematicsTool.h:50
xAOD::P4Helpers::deltaR2
double deltaR2(double rapidity1, double phi1, double rapidity2, double phi2)
from bare rapidity,phi
Definition: xAODP4Helpers.h:111
met::ResoTau
@ ResoTau
Definition: IMETSignificance.h:38
met::MET_SOFTCALO_SCALEUP
@ MET_SOFTCALO_SCALEUP
Definition: METSystematicsTool.h:75
xAOD::MissingETContainer_v1::find
const_iterator find(const std::string &name) const
Find non-modifiable MET object by name.
Definition: MissingETContainer_v1.cxx:52
met::MET_SOFTTRK_RESOPARA
@ MET_SOFTTRK_RESOPARA
Definition: METSystematicsTool.h:72
met
Definition: IMETSignificance.h:24
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
Random
Definition: TrigAnalysis/TrigInDetAnalysisUser/Resplot/src/Random.h:26
met::MET_SOFTTRK_RESOCORR
@ MET_SOFTTRK_RESOCORR
Definition: METSystematicsTool.h:74
met::ClusterLink
@ ClusterLink
Definition: METRecoCommon.h:12
met::PthardParam
@ PthardParam
Definition: IMETSignificance.h:28
xAOD::MissingET_v1
Principal data object for Missing ET.
Definition: MissingET_v1.h:25
xAOD::MissingET_v1::mpx
float mpx() const
Returns .
met::TSTParam
@ TSTParam
Definition: IMETSignificance.h:29
met::SOFTTRK
@ SOFTTRK
Definition: IMETSystematicsTool.h:49
met::ResoJet
@ ResoJet
Definition: IMETSignificance.h:33
met::MET_SOFTCALO_SCALEDOWN
@ MET_SOFTCALO_SCALEDOWN
Definition: METSystematicsTool.h:76
ANA_MSG_VERBOSE
#define ANA_MSG_VERBOSE(xmsg)
Macro printing verbose messages.
Definition: Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:286
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
met::SOFTCALO
@ SOFTCALO
Definition: IMETSystematicsTool.h:48
met::MET_SOFTTRK_RESOPERP
@ MET_SOFTTRK_RESOPERP
Definition: METSystematicsTool.h:73
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
met::INVALID
@ INVALID
Definition: IMETSystematicsTool.h:47
met::ResoMuo
@ ResoMuo
Definition: IMETSignificance.h:36
met::MET_SOFTTRK_SCALEUP
@ MET_SOFTTRK_SCALEUP
Definition: METSystematicsTool.h:70
met::MET_JETTRK_SCALEUP
@ MET_JETTRK_SCALEUP
Definition: METSystematicsTool.h:78
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
MissingETBase::Source::total
static Types::bitmask_t total(Region reg=Region::FullAcceptance)
Standard full reconstructed MET.
Definition: MissingETBase.h:271
met::fillMET
StatusCode fillMET(xAOD::MissingET *&met, xAOD::MissingETContainer *metCont, const std::string &metKey, const MissingETBase::Types::bitmask_t metSource)
Definition: METHelpers.cxx:123
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
xAOD::MissingET_v1::mpy
float mpy() const
Returns .
MissingETBase::Source::isSoftTerm
static bool isSoftTerm(Types::bitmask_t bits, Region reg=Region::FullAcceptance)
Definition: MissingETBase.h:403
met::MET_SOFTTRK_SCALEDOWN
@ MET_SOFTTRK_SCALEDOWN
Definition: METSystematicsTool.h:71
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
ANA_MSG_DEBUG
#define ANA_MSG_DEBUG(xmsg)
Macro printing debug messages.
Definition: Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:288