CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MuonID.h
Go to the documentation of this file.
11 
12 using namespace muon;
13 using namespace std;
14 
15 bool isLooseMuonCustom(const reco::Muon & recoMu)
16 {
17  bool flag = false ;
18  if(recoMu.isPFMuon() && (recoMu.isGlobalMuon() || recoMu.isTrackerMuon())) flag = true;
19 
20  return flag;
21 }
22 
23 bool isMediumMuonCustom(const reco::Muon & recoMu)
24  {
25  bool goodGlob = recoMu.isGlobalMuon() &&
26  recoMu.globalTrack()->normalizedChi2() < 3 &&
27  recoMu.combinedQuality().chi2LocalPosition < 12 &&
28  recoMu.combinedQuality().trkKink < 20;
29  bool isMedium = isLooseMuonCustom(recoMu) &&
30  recoMu.innerTrack()->validFraction() > 0.8 &&
31  segmentCompatibility(recoMu) > (goodGlob ? 0.303 : 0.451);
32  return isMedium;
33  }
float chi2LocalPosition
chi2 value for the STA-TK matching of local position
Definition: MuonQuality.h:19
virtual TrackRef innerTrack() const
Definition: Muon.h:48
bool isTrackerMuon() const
Definition: Muon.h:223
bool isGlobalMuon() const
Definition: Muon.h:222
float trkKink
value of the kink algorithm applied to the inner track stub
Definition: MuonQuality.h:11
bool isLooseMuonCustom(const reco::Muon &recoMu)
Definition: MuonID.h:15
MuonQuality combinedQuality() const
get energy deposition information
Definition: Muon.h:121
float segmentCompatibility(const reco::Muon &muon, reco::Muon::ArbitrationType arbitrationType=reco::Muon::SegmentAndTrackArbitration)
bool isMediumMuonCustom(const reco::Muon &recoMu)
Definition: MuonID.h:23
bool isPFMuon() const
Definition: Muon.h:226
volatile std::atomic< bool > shutdown_flag false
virtual TrackRef globalTrack() const
reference to Track reconstructed in both tracked and muon detector
Definition: Muon.h:54