CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
EwkMuDQM Class Reference

#include <EwkMuDQM.h>

Inheritance diagram for EwkMuDQM:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
 
virtual void beginJob ()
 
virtual void beginRun (const edm::Run &, const edm::EventSetup &)
 
virtual void endJob ()
 
virtual void endRun (const edm::Run &, const edm::EventSetup &)
 
 EwkMuDQM (const edm::ParameterSet &)
 
void init_histograms ()
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 
- Public Member Functions inherited from edm::EDConsumerBase
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Attributes

MonitorElementacop_after_
 
MonitorElementacop_before_
 
double acopCut_
 
edm::EDGetTokenT< reco::BeamSpotbeamSpotTag_
 
MonitorElementdimuonmass_afterZ_
 
MonitorElementdimuonmass_before_
 
double dimuonMassMax_
 
double dimuonMassMin_
 
MonitorElementdxy1_afterZ_
 
MonitorElementdxy2_afterZ_
 
MonitorElementdxy_after_
 
MonitorElementdxy_before_
 
double dxyCut_
 
double eJetMin_
 
MonitorElementeta1_afterZ_
 
MonitorElementeta2_afterZ_
 
MonitorElementeta_after_
 
MonitorElementeta_before_
 
double etaCut_
 
MonitorElementgoodewkmuon1_afterZ_
 
MonitorElementgoodewkmuon2_afterZ_
 
MonitorElementgoodewkmuon_after_
 
MonitorElementgoodewkmuon_before_
 
HLTConfigProvider hltConfigProvider_
 
bool isAlsoTrackerMuon_
 
bool isCombinedIso_
 
MonitorElementiso1_afterZ_
 
MonitorElementiso2_afterZ_
 
MonitorElementiso_after_
 
MonitorElementiso_before_
 
double isoCut03_
 
bool isRelativeIso_
 
bool isValidHltConfig_
 
edm::InputTag jetTag_
 
edm::EDGetTokenT< edm::View
< reco::Jet > > 
jetToken_
 
MonitorElementleadingjet_eta_after_
 
MonitorElementleadingjet_eta_afterZ_
 
MonitorElementleadingjet_eta_before_
 
MonitorElementleadingjet_pt_after_
 
MonitorElementleadingjet_pt_afterZ_
 
MonitorElementleadingjet_pt_before_
 
MonitorElementmet_after_
 
MonitorElementmet_afterZ_
 
MonitorElementmet_before_
 
double metMax_
 
double metMin_
 
edm::InputTag metTag_
 
edm::EDGetTokenT< edm::View
< reco::MET > > 
metToken_
 
MonitorElementmt_after_
 
MonitorElementmt_before_
 
double mtMax_
 
double mtMin_
 
MonitorElementmuoncharge_after_
 
MonitorElementmuoncharge_afterZ_
 
MonitorElementmuoncharge_before_
 
int muonHitsCut_
 
edm::EDGetTokenT< edm::View
< reco::Muon > > 
muonTag_
 
MonitorElementn_zselPt1thr_
 
MonitorElementn_zselPt2thr_
 
unsigned int nall
 
MonitorElementngoodmuons_
 
unsigned int nhlt
 
unsigned int niso
 
int nJetMax_
 
MonitorElementnjets_after_
 
MonitorElementnjets_afterZ_
 
MonitorElementnjets_before_
 
int nMatchesCut_
 
unsigned int nmet
 
MonitorElementnmuons_
 
double normalizedChi2Cut_
 
MonitorElementnpfph_
 
MonitorElementnph_
 
int nPhoMax_
 
MonitorElementnpvs_after_
 
MonitorElementnpvs_afterZ_
 
MonitorElementnpvs_before_
 
unsigned int nrec
 
unsigned int nsel
 
unsigned int nz
 
MonitorElementpfphEta_
 
MonitorElementpfphPt_
 
MonitorElementphEta_
 
edm::EDGetTokenT< edm::View
< reco::Photon > > 
phoTag_
 
MonitorElementphPt_
 
int pixelHitsCut_
 
MonitorElementpt1_afterZ_
 
MonitorElementpt2_afterZ_
 
MonitorElementpt_after_
 
MonitorElementpt_before_
 
double ptCut_
 
MonitorElementptDiffPM_afterZ_
 
MonitorElementptDiffPM_before_
 
double ptThrForPhoton_
 
double ptThrForZ1_
 
double ptThrForZ2_
 
DQMStoretheDbe
 
int trackerHitsCut_
 
MonitorElementtrig_after_
 
MonitorElementtrig_before_
 
std::vector< std::string > trigPathNames_
 
edm::EDGetTokenT
< edm::TriggerResults
trigTag_
 
edm::EDGetTokenT< edm::View
< reco::Vertex > > 
vertexTag_
 
MonitorElementztrig_afterZ_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

DQM offline for EWKMu

Definition at line 29 of file EwkMuDQM.h.

Constructor & Destructor Documentation

EwkMuDQM::EwkMuDQM ( const edm::ParameterSet cfg)

Definition at line 37 of file EwkMuDQM.cc.

References init_histograms(), isValidHltConfig_, cppFunctionSkipper::operator, DQMStore::setCurrentFolder(), and theDbe.

37  :
38  // Input collections
39  metTag_ (cfg.getUntrackedParameter<edm::InputTag> ("METTag", edm::InputTag("pfmet"))),
40  jetTag_ (cfg.getUntrackedParameter<edm::InputTag> ("JetTag", edm::InputTag("ak5PFJets"))),
41  trigTag_ (consumes<edm::TriggerResults> (
42  cfg.getUntrackedParameter<edm::InputTag> ("TrigTag",
43  edm::InputTag("TriggerResults::HLT")))),
45  cfg.getUntrackedParameter<edm::InputTag> ("MuonTag",
46  edm::InputTag("muons")))),
48  cfg.getUntrackedParameter<edm::InputTag> ("METTag",
49  edm::InputTag("pfmet")))),
51  cfg.getUntrackedParameter<edm::InputTag> ("JetTag",
52  edm::InputTag("ak5PFJets")))),
54  cfg.getUntrackedParameter<edm::InputTag> ("phoTag",
55  edm::InputTag("photons")))),
57  cfg.getUntrackedParameter<edm::InputTag> ("VertexTag",
58  edm::InputTag("offlinePrimaryVertices")))),
59  beamSpotTag_ (consumes<reco::BeamSpot> (
60  cfg.getUntrackedParameter<edm::InputTag> ("beamSpotTag",
61  edm::InputTag("offlineBeamSpot")))),
62  trigPathNames_(cfg.getUntrackedParameter<std::vector <std::string> >("TrigPathNames")),
63 
64  // Muon quality cuts
65  isAlsoTrackerMuon_(cfg.getUntrackedParameter<bool>("IsAlsoTrackerMuon", true)), // Glb muon also tracker muon
66  dxyCut_ (cfg.getUntrackedParameter<double>("DxyCut", 0.2)), // dxy < 0.2 cm
67  normalizedChi2Cut_(cfg.getUntrackedParameter<double>("NormalizedChi2Cut", 10.)), // chi2/ndof (of global fit) <10.0
68  trackerHitsCut_ (cfg.getUntrackedParameter<int>("TrackerHitsCut", 11)), // Tracker Hits >10
69  pixelHitsCut_ (cfg.getUntrackedParameter<int>("PixelHitsCut", 1)), // Pixel Hits >0
70  muonHitsCut_ (cfg.getUntrackedParameter<int>("MuonHitsCut", 1)), // Valid Muon Hits >0
71  nMatchesCut_ (cfg.getUntrackedParameter<int>("NMatchesCut", 2)), // At least 2 Chambers with matches
72 
73  // W-boson cuts
74  isRelativeIso_(cfg.getUntrackedParameter<bool>("IsRelativeIso", true)),
75  isCombinedIso_(cfg.getUntrackedParameter<bool>("IsCombinedIso", false)),
76  isoCut03_ (cfg.getUntrackedParameter<double>("IsoCut03", 0.1)),
77  acopCut_ (cfg.getUntrackedParameter<double>("AcopCut", 999.)),
78  metMin_ (cfg.getUntrackedParameter<double>("MetMin", -999999.)),
79  metMax_ (cfg.getUntrackedParameter<double>("MetMax", 999999.)),
80  mtMin_ (cfg.getUntrackedParameter<double>("MtMin", 50.)),
81  mtMax_ (cfg.getUntrackedParameter<double>("MtMax", 200.)),
82  ptCut_ (cfg.getUntrackedParameter<double>("PtCut", 20.)),
83  etaCut_ (cfg.getUntrackedParameter<double>("EtaCut", 2.4)),
84 
85  // Z rejection
86  ptThrForZ1_ (cfg.getUntrackedParameter<double>("PtThrForZ1", 20.)),
87  ptThrForZ2_ (cfg.getUntrackedParameter<double>("PtThrForZ2", 10.)),
88 
89  // Z selection
90  dimuonMassMin_(cfg.getUntrackedParameter<double>("dimuonMassMin", 80.)),
91  dimuonMassMax_(cfg.getUntrackedParameter<double>("dimuonMassMax", 120.)),
92 
93  // Top rejection
94  eJetMin_ (cfg.getUntrackedParameter<double>("EJetMin", 999999.)),
95  nJetMax_ (cfg.getUntrackedParameter<int>("NJetMax", 999999)),
96 
97  // Photon cuts
98  ptThrForPhoton_(cfg.getUntrackedParameter<double>("ptThrForPhoton",5.)),
99  nPhoMax_(cfg.getUntrackedParameter<int>("nPhoMax", 999999))
100 {
101  isValidHltConfig_ = false;
102 
104  theDbe->setCurrentFolder("Physics/EwkMuDQM");
105  init_histograms();
106 
107 }
T getUntrackedParameter(std::string const &, T const &) const
DQMStore * theDbe
Definition: EwkMuDQM.h:96
double etaCut_
Definition: EwkMuDQM.h:71
int nMatchesCut_
Definition: EwkMuDQM.h:58
double mtMax_
Definition: EwkMuDQM.h:68
double ptThrForPhoton_
Definition: EwkMuDQM.h:82
double metMax_
Definition: EwkMuDQM.h:66
edm::EDGetTokenT< reco::BeamSpot > beamSpotTag_
Definition: EwkMuDQM.h:49
edm::EDGetTokenT< edm::TriggerResults > trigTag_
Definition: EwkMuDQM.h:43
double ptCut_
Definition: EwkMuDQM.h:70
double isoCut03_
Definition: EwkMuDQM.h:62
std::vector< std::string > trigPathNames_
Definition: EwkMuDQM.h:50
double eJetMin_
Definition: EwkMuDQM.h:79
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
double metMin_
Definition: EwkMuDQM.h:65
double ptThrForZ2_
Definition: EwkMuDQM.h:74
void init_histograms()
Definition: EwkMuDQM.cc:130
int nJetMax_
Definition: EwkMuDQM.h:80
double dxyCut_
Definition: EwkMuDQM.h:53
bool isAlsoTrackerMuon_
Definition: EwkMuDQM.h:52
double dimuonMassMin_
Definition: EwkMuDQM.h:76
bool isCombinedIso_
Definition: EwkMuDQM.h:61
double dimuonMassMax_
Definition: EwkMuDQM.h:77
bool isRelativeIso_
Definition: EwkMuDQM.h:60
edm::InputTag jetTag_
Definition: EwkMuDQM.h:42
int pixelHitsCut_
Definition: EwkMuDQM.h:56
edm::EDGetTokenT< edm::View< reco::Vertex > > vertexTag_
Definition: EwkMuDQM.h:48
double normalizedChi2Cut_
Definition: EwkMuDQM.h:54
edm::InputTag metTag_
Definition: EwkMuDQM.h:41
int trackerHitsCut_
Definition: EwkMuDQM.h:55
double mtMin_
Definition: EwkMuDQM.h:67
double ptThrForZ1_
Definition: EwkMuDQM.h:73
edm::EDGetTokenT< edm::View< reco::Jet > > jetToken_
Definition: EwkMuDQM.h:46
int muonHitsCut_
Definition: EwkMuDQM.h:57
edm::EDGetTokenT< edm::View< reco::Muon > > muonTag_
Definition: EwkMuDQM.h:44
int nPhoMax_
Definition: EwkMuDQM.h:83
edm::EDGetTokenT< edm::View< reco::MET > > metToken_
Definition: EwkMuDQM.h:45
edm::EDGetTokenT< edm::View< reco::Photon > > phoTag_
Definition: EwkMuDQM.h:47
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:584
double acopCut_
Definition: EwkMuDQM.h:64
bool isValidHltConfig_
Definition: EwkMuDQM.h:85

Member Function Documentation

void EwkMuDQM::analyze ( const edm::Event ev,
const edm::EventSetup iSet 
)
virtual

Implements edm::EDAnalyzer.

Definition at line 270 of file EwkMuDQM.cc.

References acop_after_, acop_before_, acopCut_, beamSpotTag_, DeDxDiscriminatorTools::charge(), reco::LeafCandidate::charge(), dimuonmass_afterZ_, dimuonmass_before_, dimuonMassMax_, dimuonMassMin_, dxy1_afterZ_, dxy2_afterZ_, dxy_after_, dxy_before_, dxyCut_, eJetMin_, reco::MuonIsolation::emEt, reco::LeafCandidate::et(), reco::LeafCandidate::eta(), eta(), eta1_afterZ_, eta2_afterZ_, eta_after_, eta_before_, etaCut_, MonitorElement::Fill(), newFWLiteAna::found, edm::Event::getByToken(), reco::Muon::globalTrack(), goodewkmuon1_afterZ_, goodewkmuon2_afterZ_, goodewkmuon_after_, goodewkmuon_before_, reco::MuonIsolation::hadEt, hltConfigProvider_, i, getHLTprescales::index, reco::Muon::innerTrack(), isCombinedIso_, reco::Muon::isGlobalMuon(), edm::Ref< C, T, F >::isNull(), iso1_afterZ_, iso2_afterZ_, iso_after_, iso_before_, isoCut03_, reco::Muon::isolationR03(), isRelativeIso_, reco::Muon::isTrackerMuon(), reco::Vertex::isValid(), j, metsig::jet, jetToken_, findQualityFiles::jj, leadingjet_eta_after_, leadingjet_eta_afterZ_, leadingjet_eta_before_, leadingjet_pt_after_, leadingjet_pt_afterZ_, leadingjet_pt_before_, LogTrace, M_PI, CaloMET_cfi::met, met_after_, met_afterZ_, met_before_, metMax_, metMin_, metToken_, mt_after_, mt_before_, mtMax_, mtMin_, RPCpg::mu, muoncharge_after_, muoncharge_afterZ_, muoncharge_before_, muonHitsCut_, muonTag_, n_zselPt1thr_, n_zselPt2thr_, nall, ngoodmuons_, nJetMax_, njets_after_, njets_afterZ_, njets_before_, nMatchesCut_, nmuons_, normalizedChi2Cut_, nph_, npvs_after_, npvs_afterZ_, npvs_before_, reco::Muon::numberOfMatches(), reco::LeafCandidate::p(), phEta_, reco::LeafCandidate::phi(), phoTag_, phPt_, pixelHitsCut_, HLTConfigProvider::prescaleSet(), HLTConfigProvider::prescaleSize(), HLTConfigProvider::prescaleValue(), RecoTauCleanerPlugins::pt, reco::LeafCandidate::pt(), pt1_afterZ_, pt2_afterZ_, pt_after_, pt_before_, ptCut_, ptDiffPM_afterZ_, ptDiffPM_before_, ptThrForPhoton_, ptThrForZ1_, ptThrForZ2_, reco::LeafCandidate::px(), reco::LeafCandidate::py(), reco::LeafCandidate::pz(), mathSSE::sqrt(), AlCaHLTBitMon_QueryRunRegistry::string, reco::MuonIsolation::sumPt, trackerHitsCut_, trig_after_, trig_before_, edm::TriggerNames::triggerName(), edm::Event::triggerNames(), triggerResults, trigNames, trigPathNames_, trigTag_, Geom::Phi< T >::value(), GoodVertex_cfg::vertexCollection, vertexTag_, and ztrig_afterZ_.

270  {
271 
272  // Muon collection
273  Handle<View<Muon> > muonCollection;
274  if (!ev.getByToken(muonTag_, muonCollection)) {
275  //LogWarning("") << ">>> Muon collection does not exist !!!";
276  return;
277  }
278  unsigned int muonCollectionSize = muonCollection->size();
279 
280  // Beam spot
281  Handle<reco::BeamSpot> beamSpotHandle;
282  if (!ev.getByToken(beamSpotTag_, beamSpotHandle)) {
283  //LogWarning("") << ">>> No beam spot found !!!";
284  return;
285  }
286 
287 
288  // Loop to reject/control Z->mumu is done separately
289  unsigned int nmuonsForZ1 = 0;
290  unsigned int nmuonsForZ2 = 0;
291  bool cosmic = false;
292  for (unsigned int i=0; i<muonCollectionSize; i++) {
293  const Muon& mu = muonCollection->at(i);
294  if (!mu.isGlobalMuon()) continue;
295  double pt = mu.pt();
296  double dxy = mu.innerTrack()->dxy(beamSpotHandle->position());
297 
298  if (fabs(dxy)>1) { cosmic=true; break;}
299 
300  if (pt>ptThrForZ1_) nmuonsForZ1++;
301  if (pt>ptThrForZ2_) nmuonsForZ2++;
302 
303  for (unsigned int j=i+1; j<muonCollectionSize; j++) {
304  const Muon& mu2 = muonCollection->at(j);
305  if (mu2.isGlobalMuon() && (mu.charge()*mu2.charge()==-1) ){
306  const math::XYZTLorentzVector ZRecoGlb (mu.px()+mu2.px(), mu.py()+mu2.py() , mu.pz()+mu2.pz(), mu.p()+mu2.p());
307  dimuonmass_before_->Fill(ZRecoGlb.mass());
308  if (mu.charge()>0) {
309  ptDiffPM_before_->Fill(mu.pt()-mu2.pt());
310  }
311  else {
312  ptDiffPM_before_->Fill(mu2.pt()-mu.pt());
313  }
314  }
315  }
316  }
317  if(cosmic) return;
318 
319  LogTrace("") << "> Z rejection: muons above " << ptThrForZ1_ << " [GeV]: " << nmuonsForZ1;
320  LogTrace("") << "> Z rejection: muons above " << ptThrForZ2_ << " [GeV]: " << nmuonsForZ2;
321 
322  // MET
323  Handle<View<MET> > metCollection;
324  if (!ev.getByToken(metToken_, metCollection)) {
325  //LogWarning("") << ">>> MET collection does not exist !!!";
326  return;
327  }
328  const MET& met = metCollection->at(0);
329  double met_et = met.pt();
330  LogTrace("") << ">>> MET, MET_px, MET_py: " << met_et << ", " << met.px() << ", " << met.py() << " [GeV]";
331  met_before_->Fill(met_et);
332 
333  // Vertices in the event
335  if (!ev.getByToken(vertexTag_, vertexCollection)) {
336  LogError("") << ">>> Vertex collection does not exist !!!";
337  return;
338  }
339  unsigned int vertexCollectionSize = vertexCollection->size();
340 
341 
342 
343  int nvvertex = 0;
344  for (unsigned int i=0; i<vertexCollectionSize; i++) {
345  const Vertex& vertex = vertexCollection->at(i);
346  if (vertex.isValid()) nvvertex++;
347  }
348 
349  npvs_before_->Fill(nvvertex);
350 
351  bool trigger_fired = false;
353  if (!ev.getByToken(trigTag_, triggerResults)) {
354  //LogWarning("") << ">>> TRIGGER collection does not exist !!!";
355  return;
356  }
357  const edm::TriggerNames & trigNames = ev.triggerNames(*triggerResults);
358  // LogWarning("")<<"Loop over triggers";
359 
360  /* change faulty logic of triggering
361  for (unsigned int i=0; i<triggerResults->size(); i++)
362  {
363  const std::string trigName = trigNames.triggerName(i);
364 
365  bool found=false;
366  for(unsigned int index=0; index<trigPathNames_.size() && found==false; index++) {
367  size_t trigPath = trigName.find(trigPathNames_[index]); // 0 if found, pos if not
368  if (trigPath==0) found=true;
369  }
370  if(!found) {continue;}
371 
372  bool prescaled=false;
373  for (unsigned int ps= 0; ps< hltConfigProvider_.prescaleSize(); ps++){
374  const unsigned int prescaleValue = hltConfigProvider_.prescaleValue(ps, trigName) ;
375  if (prescaleValue != 1) prescaled =true;
376  }
377 
378  if( triggerResults->accept(i) && !prescaled){ trigger_fired=true;}
379  // LogWarning("")<<"TrigNo: "<<i<<" "<<found<<" "<<trigName<<" ---> FIRED";}
380  }
381  */
382 
383  // get the prescale set for this event
384  const int prescaleSet=hltConfigProvider_.prescaleSet(ev,iSet);
385  if (prescaleSet==-1) {
386  LogTrace("") << "Failed to determine prescaleSet\n";
387  //std::cout << "Failed to determine prescaleSet. Check the GlobalTag in cfg\n";
388  return;
389  }
390 
391  for (unsigned int i=0; (i<triggerResults->size()) && (trigger_fired==false); i++) {
392  // skip trigger, if it did not fire
393  if (!triggerResults->accept(i)) continue;
394 
395  // skip trigger, if it is not on our list
396  bool found=false;
397  const std::string trigName = trigNames.triggerName(i);
398  for(unsigned int index=0; index<trigPathNames_.size() && found==false; index++) {
399  if ( trigName.find(trigPathNames_.at(index)) == 0 ) found=true;
400  }
401  if(!found) continue;
402 
403  // skip trigger, if it is prescaled
404  if (prescaleSet!=-1) {
405  if (hltConfigProvider_.prescaleValue(prescaleSet,trigName) != 1)
406  continue;
407  }
408  else {
409  // prescaleSet is not known.
410  // This branch is not needed, if prescaleSet=-1 forces to skip event
411  int prescaled=0;
412  for (unsigned int ps=0;
413  !prescaled && (ps<hltConfigProvider_.prescaleSize());
414  ++ps) {
415  if (hltConfigProvider_.prescaleValue(ps, trigName) != 1) {
416  prescaled=1;
417  }
418  }
419  if (prescaled) {
420  //std::cout << "trigger prescaled\n";
421  continue;
422  }
423  }
424 
425  //std::cout << "found unprescaled trigger that fired: " << trigName << "\n";
426  trigger_fired=true;
427  }
428  //if (trigger_fired) std::cout << "\n\tGot Trigger\n";
429 
430  trig_before_->Fill(trigger_fired);
431 
432  // Jet collection
433  Handle<View<Jet> > jetCollection;
434  if (!ev.getByToken(jetToken_, jetCollection)) {
435  //LogError("") << ">>> JET collection does not exist !!!";
436  return;
437  }
438  unsigned int jetCollectionSize = jetCollection->size();
439  int njets = 0; int LEADJET=-1; double max_pt=0;
440  for (unsigned int i=0; i<jetCollectionSize; i++) {
441  const Jet& jet = jetCollection->at(i);
442  double minDistance=99999; // This is in order to use PFJets
443  for (unsigned int j=0; j<muonCollectionSize; j++) {
444  const Muon& mu = muonCollection->at(j);
445  double distance = sqrt( (mu.eta()-jet.eta())*(mu.eta()-jet.eta()) +(mu.phi()-jet.phi())*(mu.phi()-jet.phi()) );
446  if (minDistance>distance) minDistance=distance;
447  }
448  if (minDistance<0.3) continue; // 0.3 is the isolation cone around the muon
449  if(jet.et()>max_pt) { LEADJET=i; max_pt=jet.et();}
450  if (jet.et()>eJetMin_) {njets++;}
451  }
452 
453 
454  LogTrace("") << ">>> Total number of jets: " << jetCollectionSize;
455  LogTrace("") << ">>> Number of jets above " << eJetMin_ << " [GeV]: " << njets;
456  njets_before_->Fill(njets);
457  double lead_jet_pt=-1;
458  double lead_jet_eta=-100;
459  if(LEADJET!=-1){
460  const Jet& leadJet = jetCollection->at(LEADJET);
461  leadingjet_pt_before_->Fill(leadJet.pt());
462  leadingjet_eta_before_->Fill(leadJet.eta());
463  lead_jet_pt=leadJet.pt();
464  lead_jet_eta=leadJet.eta();
465  }
466  //Photon Collection
467  Handle<View<Photon> > photonCollection;
468  if(!ev.getByToken(phoTag_, photonCollection)){
469  //LogError("")
470  return;
471  }
472  unsigned int ngam=0;
473 
474  for (unsigned int i=0; i<photonCollection->size(); i++){
475  const Photon &ph = photonCollection->at(i);
476  double photonPt = ph.pt();
477  if (photonPt> ptThrForPhoton_) {
478  ngam++;
479  phEta_->Fill(ph.eta());
480  }
481  phPt_->Fill(photonPt);
482  }
483  nph_->Fill(ngam);
484  LogTrace("") << " >>> N photons " << ngam << std::endl;
485 
486  nmuons_->Fill(muonCollectionSize);
487 
489  //Handle<View<Photon> > pfPhotonCollection;
491  //if(!ev.getByLabel(pfPhoTag_,pfPhotonCollection)){
493  //return;
494  //}
495  //unsigned int npfgam=0;
496  //
497  //for (unsigned int i=0; i<pfPhotonCollection->size(); i++){
498  // const Photon &ph = pfPhotonCollection->at(i);
499  // double photonPt = ph.pt();
500  // if (photonPt> ptThrForPhoton_) npfgam++;
501  // pfphPt_->Fill(photonPt);
502  // }
503  //npfph_->Fill(npfgam);
504  //LogTrace("") << " >>> N PF photons " << npfgam << std::endl;
505 
506  // Start counting
507  nall++;
508 
509  // Histograms per event should be done only once, so keep track of them
510  bool hlt_hist_done = false;
511  bool zhlt_hist_done = false;
512  bool zjets_hist_done = false;
513  bool zfullsel_hist_done = false;
514  bool met_hist_done = false;
515  bool njets_hist_done = false;
516  bool wfullsel_hist_done = false;
517 
518  // Central W->mu nu selection criteria
519  const int NFLAGS = 11;
520  bool muon_sel[NFLAGS];
521  const int NFLAGSZ = 13;
522  bool zmuon_sel[NFLAGSZ];
523  bool muon4Z=false;
524 
525  double number_of_muons=0;
526  double number_of_goodMuons=0;
527 
528 
529  for (unsigned int i=0; i<muonCollectionSize; i++) {
530  for (int j=0; j<NFLAGS; ++j) {
531  muon_sel[j] = false;
532  }
533 
534  number_of_muons++;
535 
536  const Muon& mu = muonCollection->at(i);
537  if (!mu.isGlobalMuon()) continue;
538  if (mu.globalTrack().isNull()) continue;
539  if (mu.innerTrack().isNull()) continue;
540 
541  LogTrace("") << "> Wsel: processing muon number " << i << "...";
542  reco::TrackRef gm = mu.globalTrack();
543  reco::TrackRef tk = mu.innerTrack();
544 
545  // Pt,eta cuts
546  double pt = mu.pt();
547  double eta = mu.eta();
548  LogTrace("") << "\t... pt, eta: " << pt << " [GeV], " << eta;;
549  if (pt>ptCut_) muon_sel[0] = true;
550  if (fabs(eta)<etaCut_) muon_sel[1] = true;
551 
552  double charge=mu.charge();
553 
554  // d0, chi2, nhits quality cuts
555  double dxy = gm->dxy(beamSpotHandle->position());
556  double normalizedChi2 = gm->normalizedChi2();
557  double trackerHits = tk->hitPattern().numberOfValidTrackerHits();
558  int pixelHits = tk->hitPattern().numberOfValidPixelHits();
559  int muonHits = gm->hitPattern().numberOfValidMuonHits();
560  int nMatches = mu.numberOfMatches();
561 
562  LogTrace("") << "\t... dxy, normalizedChi2, trackerHits, isTrackerMuon?: " << dxy << " [cm], " << normalizedChi2 << ", " << trackerHits << ", " << mu.isTrackerMuon();
563  if (fabs(dxy)<dxyCut_) muon_sel[2] = true;
564 
565  bool quality=true;
566 
567  if (normalizedChi2>normalizedChi2Cut_) quality =false;
568  if (trackerHits<trackerHitsCut_) quality =false;
569  if (pixelHits<pixelHitsCut_) quality =false;
570  if (muonHits<muonHitsCut_) quality=false;;
571  if (!mu.isTrackerMuon()) quality=false;
572  if (nMatches<nMatchesCut_) quality=false;
573  muon_sel[3]=quality;
574  if(quality) number_of_goodMuons++;
575 
576  pt_before_->Fill(pt);
577  eta_before_->Fill(eta);
578  dxy_before_->Fill(dxy);
579  muoncharge_before_->Fill(charge);
580  goodewkmuon_before_->Fill(quality);
581 
582  // Charge asymmetry
583  //if (quality) {
584  // if (charge>0) ptPlus_before_->Fill(pt);
585  // if (charge<0) ptMinus_before_->Fill(pt);
586  //}
587 
588 
589  // Isolation cuts
590  double isovar = mu.isolationR03().sumPt;
591  if (isCombinedIso_) {
592  isovar += mu.isolationR03().emEt;
593  isovar += mu.isolationR03().hadEt;
594  }
595  if (isRelativeIso_) isovar /= pt;
596  if (isovar<isoCut03_) muon_sel[4] = true;
597 
598  LogTrace("") << "\t... isolation value" << isovar <<", isolated? " << muon_sel[6];
599  iso_before_->Fill(isovar);
600 
601 
602  // HLT (not mtched to muon for the time being)
603  if (trigger_fired) muon_sel[5] = true;
604 
605  // For Z:
606  if (pt>ptThrForZ1_ && fabs(eta)<etaCut_ && fabs(dxy)<dxyCut_ && quality && trigger_fired && isovar<isoCut03_) { muon4Z = true;}
607 
608 
609  // MET/MT cuts
610  double w_et = met_et+mu.pt();
611  double w_px = met.px()+mu.px();
612  double w_py = met.py()+mu.py();
613 
614  double massT = w_et*w_et - w_px*w_px - w_py*w_py;
615  massT = (massT>0) ? sqrt(massT) : 0;
616 
617  LogTrace("") << "\t... W mass, W_et, W_px, W_py: " << massT << ", " << w_et << ", " << w_px << ", " << w_py << " [GeV]";
618  if (massT>mtMin_ && massT<mtMax_) muon_sel[6] = true;
619  mt_before_->Fill(massT);
620  if (met_et>metMin_ && met_et<metMax_) muon_sel[7] = true;
621 
622  // Acoplanarity cuts
623  Geom::Phi<double> deltaphi(mu.phi()-atan2(met.py(),met.px()));
624  double acop = deltaphi.value();
625  if (acop<0) acop = - acop;
626  acop = M_PI - acop;
627  LogTrace("") << "\t... acoplanarity: " << acop;
628  if (acop<acopCut_) muon_sel[8] = true;
629  acop_before_->Fill(acop);
630 
631  // Remaining flags (from global event information)
632  if (nmuonsForZ1<1 || nmuonsForZ2<2) muon_sel[9] = true;
633  if (njets<=nJetMax_) muon_sel[10] = true;
634 
635  // Collect necessary flags "per muon"
636  int flags_passed = 0;
637  for (int j=0; j<NFLAGS; ++j) {
638  if (muon_sel[j]) flags_passed += 1;
639  }
640 
641  // Do N-1 histograms now (and only once for global event quantities)
642  if (flags_passed >= (NFLAGS-1)) {
643  if (!muon_sel[0] || flags_passed==NFLAGS)
644  pt_after_->Fill(pt);
645  if (!muon_sel[1] || flags_passed==NFLAGS)
646  eta_after_->Fill(eta);
647  if (!muon_sel[2] || flags_passed==NFLAGS)
648  dxy_after_->Fill(dxy);
649  if (!muon_sel[3] || flags_passed==NFLAGS)
650  goodewkmuon_after_->Fill(quality);
651  if (!muon_sel[4] || flags_passed==NFLAGS)
652  iso_after_->Fill(isovar);
653  if (!muon_sel[5] || flags_passed==NFLAGS)
654  if (!hlt_hist_done) trig_after_->Fill(trigger_fired);
655  hlt_hist_done = true;
656  if (!muon_sel[6] || flags_passed==NFLAGS)
657  mt_after_->Fill(massT);
658  if (!muon_sel[7] || flags_passed==NFLAGS)
659  if (!met_hist_done) met_after_->Fill(met_et);
660  met_hist_done = true;
661  if (!muon_sel[8] || flags_passed==NFLAGS)
662  acop_after_->Fill(acop);
663  // no action here for muon_sel[9]
664  if (!muon_sel[10] || flags_passed==NFLAGS) {
665  if (!njets_hist_done) {
666  njets_after_->Fill(njets);
667  leadingjet_pt_after_->Fill(lead_jet_pt);
668  leadingjet_eta_after_->Fill(lead_jet_eta);
669  }
670  njets_hist_done = true;
671  }
672  if( flags_passed==NFLAGS ) {
673  if (!wfullsel_hist_done){
674  npvs_after_->Fill(nvvertex);
675  muoncharge_after_->Fill(charge);
676  //if (charge>0) ptPlus_afterW_->Fill(pt);
677  //if (charge<0) ptMinus_afterW_->Fill(pt);
678  }
679  wfullsel_hist_done=true;
680  }
681  }
682 
683 
684  // The cases in which the event is rejected as a Z are considered independently:
685  if ( muon4Z && !muon_sel[9]){
686 
687  // Plots for 2 muons
688  for (unsigned int j=i+1; j<muonCollectionSize; j++) {
689 
690  for (int ij=0; ij<NFLAGSZ; ++ij) {
691  zmuon_sel[ij] = false;
692  }
693 
694  for (int ji=0; ji<5; ++ji ) {
695  zmuon_sel[ji] = muon_sel[ji];
696  }
697 
698  const Muon& mu2 = muonCollection->at(j);
699  if (!mu2.isGlobalMuon()) continue;
700  if (mu2.charge() * charge != -1 ) continue;
701  reco::TrackRef gm2 = mu2.globalTrack();
702  reco::TrackRef tk2 = mu2.innerTrack();
703  double pt2 = mu2.pt(); if (pt2>ptThrForZ2_) zmuon_sel[5] = true;
704  double eta2=mu2.eta(); if (fabs(eta2)<etaCut_) zmuon_sel[6] = true;
705  double dxy2 = gm2->dxy(beamSpotHandle->position()); if (fabs(dxy2)<dxyCut_) zmuon_sel[7] = true;
706  double normalizedChi22 = gm2->normalizedChi2();
707  double trackerHits2 = tk2->hitPattern().numberOfValidTrackerHits();
708  int pixelHits2 = tk2->hitPattern().numberOfValidPixelHits();
709  int muonHits2 = gm2->hitPattern().numberOfValidMuonHits();
710  int nMatches2 = mu2.numberOfMatches();
711  bool quality2=true;
712  if (normalizedChi22>normalizedChi2Cut_) quality2 = false;
713  if (trackerHits2<trackerHitsCut_) quality2 = false;
714  if (pixelHits2<pixelHitsCut_) quality2 = false;
715  if (muonHits2<muonHitsCut_) quality2 = false;
716  if (!mu2.isTrackerMuon()) quality2 = false;
717  if (nMatches2<nMatchesCut_) quality2 = false;
718  zmuon_sel[8]=quality2;
719  double isovar2 = mu2.isolationR03().sumPt;
720  if (isCombinedIso_) {
721  isovar2 += mu2.isolationR03().emEt;
722  isovar2 += mu2.isolationR03().hadEt;
723  }
724  if (isRelativeIso_) isovar2 /= pt2;
725  if (isovar2<isoCut03_) zmuon_sel[9] = true;
726  if (trigger_fired) zmuon_sel[10] = true;
727  const math::XYZTLorentzVector ZRecoGlb (mu.px()+mu2.px(), mu.py()+mu2.py() , mu.pz()+mu2.pz(), mu.p()+mu2.p());
728  if (ZRecoGlb.mass()>dimuonMassMin_ && ZRecoGlb.mass()<dimuonMassMax_) zmuon_sel[11] = true;
729 
730  //jet flag
731  if (njets <=nJetMax_) zmuon_sel[12] = true;
732 
733  // start filling histos: N-1 plots
734  int flags_passed_z = 0;
735 
736  for (int jj=0; jj<NFLAGSZ; ++jj) {
737  if (zmuon_sel[jj]) ++flags_passed_z ;
738  }
739 
740  if (flags_passed_z >= (NFLAGSZ-1)) {
741  if (!zmuon_sel[0] || flags_passed_z==NFLAGSZ) {pt1_afterZ_->Fill(pt); }
742  if (!zmuon_sel[1] || flags_passed_z==NFLAGSZ) {eta1_afterZ_->Fill(eta); }
743  if (!zmuon_sel[2] || flags_passed_z==NFLAGSZ) {dxy1_afterZ_->Fill(dxy); }
744  if (!zmuon_sel[3] || flags_passed_z==NFLAGSZ) {goodewkmuon1_afterZ_->Fill(quality); }
745  if (!zmuon_sel[4] || flags_passed_z==NFLAGSZ) {iso1_afterZ_->Fill(isovar); }
746  if (!zmuon_sel[5] || flags_passed_z==NFLAGSZ) { pt2_afterZ_->Fill(pt2); }
747  if (!zmuon_sel[6] || flags_passed_z==NFLAGSZ) { eta2_afterZ_->Fill(eta2); }
748  if (!zmuon_sel[7] || flags_passed_z==NFLAGSZ) {dxy2_afterZ_->Fill(dxy2); }
749  if (!zmuon_sel[8] || flags_passed_z==NFLAGSZ) {goodewkmuon2_afterZ_->Fill(quality2); }
750  if (!zmuon_sel[9] || flags_passed_z==NFLAGSZ) {iso2_afterZ_->Fill(isovar2); }
751  if (!zmuon_sel[10] || flags_passed_z==NFLAGSZ) {
752  if (!zhlt_hist_done) ztrig_afterZ_->Fill(trigger_fired);
753  zhlt_hist_done = true;
754  }
755  if (!zmuon_sel[11] || flags_passed_z==NFLAGSZ) {dimuonmass_afterZ_->Fill(ZRecoGlb.mass()); }
756  if (!zmuon_sel[12] || flags_passed_z==NFLAGSZ ){
757  if(!zjets_hist_done){
758  njets_afterZ_->Fill(njets);
759  leadingjet_pt_afterZ_->Fill(lead_jet_pt);
760  leadingjet_eta_afterZ_->Fill(lead_jet_eta);
761  }
762  zjets_hist_done=true;
763  }
764  if(flags_passed_z==NFLAGSZ) {
765  met_afterZ_->Fill(met_et);
766  if(!zfullsel_hist_done){
767  npvs_afterZ_->Fill(nvvertex);
768  muoncharge_afterZ_->Fill(charge);
769  if (charge>0) {
770  //ptPlus_afterZ_->Fill(mu.pt());
771  //ptMinus_afterZ_->Fill(mu2.pt());
772  ptDiffPM_afterZ_->Fill(mu.pt()-mu2.pt());
773  }
774  else {
775  //ptPlus_afterZ_->Fill(mu2.pt());
776  //ptMinus_afterZ_->Fill(mu.pt());
777  ptDiffPM_afterZ_->Fill(mu2.pt()-mu.pt());
778  }
779  }
780  zfullsel_hist_done=true;
781  }
782  }
783  }
784  }
785  }
786 
787  if (zfullsel_hist_done) {
788  // here was a Z candidate
789  n_zselPt1thr_->Fill(nmuonsForZ1);
790  n_zselPt2thr_->Fill(nmuonsForZ2);
791  }
792 
793  //nmuons_->Fill(number_of_muons);
794  //nmuons_->Fill(muonCollectionSize);
795  ngoodmuons_->Fill(number_of_goodMuons);
796 
797  return;
798 
799 }
MonitorElement * met_before_
Definition: EwkMuDQM.h:112
float hadEt
hcal sum-Et
Definition: MuonIsolation.h:9
virtual double et() const GCC11_FINAL
transverse energy
int i
Definition: DBlmapReader.cc:9
MonitorElement * ptDiffPM_afterZ_
Definition: EwkMuDQM.h:134
double etaCut_
Definition: EwkMuDQM.h:71
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
Definition: Event.cc:204
MonitorElement * dimuonmass_afterZ_
Definition: EwkMuDQM.h:154
unsigned int nall
Definition: EwkMuDQM.h:88
int nMatchesCut_
Definition: EwkMuDQM.h:58
MonitorElement * phEta_
Definition: EwkMuDQM.h:172
tuple met
____________________________________________________________________________||
Definition: CaloMET_cfi.py:7
float sumPt
sum-pt of tracks
Definition: MuonIsolation.h:7
MonitorElement * njets_afterZ_
Definition: EwkMuDQM.h:119
virtual double p() const GCC11_FINAL
magnitude of momentum vector
MonitorElement * iso2_afterZ_
Definition: EwkMuDQM.h:146
double mtMax_
Definition: EwkMuDQM.h:68
MonitorElement * npvs_before_
Definition: EwkMuDQM.h:156
double ptThrForPhoton_
Definition: EwkMuDQM.h:82
virtual TrackRef innerTrack() const
Definition: Muon.h:48
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:434
MonitorElement * dxy1_afterZ_
Definition: EwkMuDQM.h:139
MonitorElement * njets_before_
Definition: EwkMuDQM.h:117
MonitorElement * dxy_before_
Definition: EwkMuDQM.h:102
MonitorElement * ztrig_afterZ_
Definition: EwkMuDQM.h:152
MonitorElement * trig_before_
Definition: EwkMuDQM.h:108
MonitorElement * trig_after_
Definition: EwkMuDQM.h:109
MonitorElement * leadingjet_eta_afterZ_
Definition: EwkMuDQM.h:125
double metMax_
Definition: EwkMuDQM.h:66
bool isTrackerMuon() const
Definition: Muon.h:219
MonitorElement * muoncharge_before_
Definition: EwkMuDQM.h:160
Base class for all types of Jets.
Definition: Jet.h:20
bool isValid() const
Tells whether the vertex is valid.
Definition: Vertex.h:60
edm::EDGetTokenT< reco::BeamSpot > beamSpotTag_
Definition: EwkMuDQM.h:49
MonitorElement * eta2_afterZ_
Definition: EwkMuDQM.h:143
edm::EDGetTokenT< edm::TriggerResults > trigTag_
Definition: EwkMuDQM.h:43
double ptCut_
Definition: EwkMuDQM.h:70
double isoCut03_
Definition: EwkMuDQM.h:62
MonitorElement * npvs_afterZ_
Definition: EwkMuDQM.h:158
bool isGlobalMuon() const
Definition: Muon.h:218
MonitorElement * leadingjet_eta_before_
Definition: EwkMuDQM.h:123
std::vector< std::string > trigPathNames_
Definition: EwkMuDQM.h:50
double eJetMin_
Definition: EwkMuDQM.h:79
T eta() const
MonitorElement * acop_before_
Definition: EwkMuDQM.h:114
MonitorElement * leadingjet_pt_after_
Definition: EwkMuDQM.h:121
virtual double pz() const GCC11_FINAL
z coordinate of momentum vector
double charge(const std::vector< uint8_t > &Ampls)
tuple vertexCollection
MonitorElement * goodewkmuon_before_
Definition: EwkMuDQM.h:104
virtual double py() const GCC11_FINAL
y coordinate of momentum vector
MonitorElement * eta_after_
Definition: EwkMuDQM.h:101
MonitorElement * muoncharge_afterZ_
Definition: EwkMuDQM.h:162
MonitorElement * pt_before_
Definition: EwkMuDQM.h:98
MonitorElement * dxy2_afterZ_
Definition: EwkMuDQM.h:144
void Fill(long long x)
MonitorElement * leadingjet_pt_before_
Definition: EwkMuDQM.h:120
MonitorElement * goodewkmuon1_afterZ_
Definition: EwkMuDQM.h:140
MonitorElement * iso_before_
Definition: EwkMuDQM.h:106
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
MonitorElement * npvs_after_
Definition: EwkMuDQM.h:157
virtual float phi() const GCC11_FINAL
momentum azimuthal angle
MonitorElement * goodewkmuon2_afterZ_
Definition: EwkMuDQM.h:145
unsigned int prescaleValue(unsigned int set, const std::string &trigger) const
HLT prescale value in specific prescale set for a specific trigger path.
MonitorElement * njets_after_
Definition: EwkMuDQM.h:118
bool isNull() const
Checks for null.
Definition: Ref.h:247
MonitorElement * ngoodmuons_
Definition: EwkMuDQM.h:165
MonitorElement * n_zselPt2thr_
Definition: EwkMuDQM.h:150
double metMin_
Definition: EwkMuDQM.h:65
MonitorElement * pt2_afterZ_
Definition: EwkMuDQM.h:142
double ptThrForZ2_
Definition: EwkMuDQM.h:74
int nJetMax_
Definition: EwkMuDQM.h:80
Definition: MET.h:32
HLTConfigProvider hltConfigProvider_
Definition: EwkMuDQM.h:86
T sqrt(T t)
Definition: SSEVec.h:48
float emEt
ecal sum-Et
Definition: MuonIsolation.h:8
MonitorElement * met_afterZ_
Definition: EwkMuDQM.h:136
double dxyCut_
Definition: EwkMuDQM.h:53
virtual double px() const GCC11_FINAL
x coordinate of momentum vector
MonitorElement * leadingjet_eta_after_
Definition: EwkMuDQM.h:124
int j
Definition: DBlmapReader.cc:9
double dimuonMassMin_
Definition: EwkMuDQM.h:76
const int mu
Definition: Constants.h:22
bool isCombinedIso_
Definition: EwkMuDQM.h:61
double dimuonMassMax_
Definition: EwkMuDQM.h:77
static std::string const triggerResults
Definition: EdmProvDump.cc:41
MonitorElement * mt_after_
Definition: EwkMuDQM.h:111
MonitorElement * goodewkmuon_after_
Definition: EwkMuDQM.h:105
MonitorElement * muoncharge_after_
Definition: EwkMuDQM.h:161
MonitorElement * mt_before_
Definition: EwkMuDQM.h:110
#define LogTrace(id)
MonitorElement * eta_before_
Definition: EwkMuDQM.h:100
MonitorElement * iso1_afterZ_
Definition: EwkMuDQM.h:141
bool isRelativeIso_
Definition: EwkMuDQM.h:60
int numberOfMatches(ArbitrationType type=SegmentAndTrackArbitration) const
get number of chambers with matched segments
Definition: Muon.cc:60
virtual float eta() const GCC11_FINAL
momentum pseudorapidity
static const char *const trigNames[]
Definition: EcalDumpRaw.cc:74
int pixelHitsCut_
Definition: EwkMuDQM.h:56
edm::EDGetTokenT< edm::View< reco::Vertex > > vertexTag_
Definition: EwkMuDQM.h:48
MonitorElement * nmuons_
Definition: EwkMuDQM.h:164
double normalizedChi2Cut_
Definition: EwkMuDQM.h:54
#define M_PI
Definition: BFit3D.cc:3
int prescaleSet(const edm::Event &iEvent, const edm::EventSetup &iSetup) const
MonitorElement * pt_after_
Definition: EwkMuDQM.h:99
MonitorElement * iso_after_
Definition: EwkMuDQM.h:107
std::string const & triggerName(unsigned int index) const
Definition: TriggerNames.cc:27
virtual int charge() const GCC11_FINAL
electric charge
MonitorElement * eta1_afterZ_
Definition: EwkMuDQM.h:138
MonitorElement * ptDiffPM_before_
Definition: EwkMuDQM.h:129
MonitorElement * pt1_afterZ_
Definition: EwkMuDQM.h:137
MonitorElement * nph_
Definition: EwkMuDQM.h:168
int trackerHitsCut_
Definition: EwkMuDQM.h:55
double mtMin_
Definition: EwkMuDQM.h:67
MonitorElement * phPt_
Definition: EwkMuDQM.h:170
double ptThrForZ1_
Definition: EwkMuDQM.h:73
edm::EDGetTokenT< edm::View< reco::Jet > > jetToken_
Definition: EwkMuDQM.h:46
MonitorElement * dxy_after_
Definition: EwkMuDQM.h:103
unsigned int prescaleSize() const
int muonHitsCut_
Definition: EwkMuDQM.h:57
MonitorElement * met_after_
Definition: EwkMuDQM.h:113
edm::EDGetTokenT< edm::View< reco::Muon > > muonTag_
Definition: EwkMuDQM.h:44
virtual float pt() const GCC11_FINAL
transverse momentum
MonitorElement * n_zselPt1thr_
Definition: EwkMuDQM.h:149
edm::EDGetTokenT< edm::View< reco::MET > > metToken_
Definition: EwkMuDQM.h:45
edm::EDGetTokenT< edm::View< reco::Photon > > phoTag_
Definition: EwkMuDQM.h:47
MonitorElement * dimuonmass_before_
Definition: EwkMuDQM.h:153
const MuonIsolation & isolationR03() const
Definition: Muon.h:158
double acopCut_
Definition: EwkMuDQM.h:64
virtual TrackRef globalTrack() const
reference to Track reconstructed in both tracked and muon detector
Definition: Muon.h:54
MonitorElement * leadingjet_pt_afterZ_
Definition: EwkMuDQM.h:122
MonitorElement * acop_after_
Definition: EwkMuDQM.h:115
void EwkMuDQM::beginJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 126 of file EwkMuDQM.cc.

126  {
127 
128 }
void EwkMuDQM::beginRun ( const edm::Run iRun,
const edm::EventSetup iSet 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 109 of file EwkMuDQM.cc.

References hltConfigProvider_, HLTConfigProvider::init(), isValidHltConfig_, nall, nhlt, niso, nmet, nrec, nsel, and nz.

109  {
110  nall = 0;
111  nsel = 0;
112  nz = 0;
113 
114  nrec = 0;
115  niso = 0;
116  nhlt = 0;
117  nmet = 0;
118 
119  // passed as parameter to HLTConfigProvider::init(), not yet used
120  bool isConfigChanged = false;
121  // isValidHltConfig_ used to short-circuit analyze() in case of problems
122  isValidHltConfig_ = hltConfigProvider_.init( iRun, iSet, "HLT", isConfigChanged );
123 
124 }
unsigned int nall
Definition: EwkMuDQM.h:88
unsigned int nrec
Definition: EwkMuDQM.h:89
unsigned int nhlt
Definition: EwkMuDQM.h:91
HLTConfigProvider hltConfigProvider_
Definition: EwkMuDQM.h:86
unsigned int nsel
Definition: EwkMuDQM.h:93
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
unsigned int nz
Definition: EwkMuDQM.h:94
unsigned int niso
Definition: EwkMuDQM.h:90
unsigned int nmet
Definition: EwkMuDQM.h:92
bool isValidHltConfig_
Definition: EwkMuDQM.h:85
void EwkMuDQM::endJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 263 of file EwkMuDQM.cc.

263  {
264 }
void EwkMuDQM::endRun ( const edm::Run r,
const edm::EventSetup iSet 
)
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 266 of file EwkMuDQM.cc.

266  {
267 
268 }
void EwkMuDQM::init_histograms ( )

\ For charge asymmetry studies

\ For Z-boson events

Definition at line 130 of file EwkMuDQM.cc.

References acop_after_, acop_before_, DQMStore::book1D(), dimuonmass_afterZ_, dimuonmass_before_, dxy1_afterZ_, dxy2_afterZ_, dxy_after_, dxy_before_, eJetMin_, eta1_afterZ_, eta2_afterZ_, eta_after_, eta_before_, goodewkmuon1_afterZ_, goodewkmuon2_afterZ_, goodewkmuon_after_, goodewkmuon_before_, isCombinedIso_, iso1_afterZ_, iso2_afterZ_, iso_after_, iso_before_, isRelativeIso_, jetTag_, edm::InputTag::label(), leadingjet_eta_after_, leadingjet_eta_afterZ_, leadingjet_eta_before_, leadingjet_pt_after_, leadingjet_pt_afterZ_, leadingjet_pt_before_, M_PI, met_after_, met_afterZ_, met_before_, metTag_, mt_after_, mt_before_, muoncharge_after_, muoncharge_afterZ_, muoncharge_before_, n_zselPt1thr_, n_zselPt2thr_, ngoodmuons_, njets_after_, njets_afterZ_, njets_before_, nmuons_, nph_, npvs_after_, npvs_afterZ_, npvs_before_, phEta_, phPt_, pt1_afterZ_, pt2_afterZ_, pt_after_, pt_before_, ptDiffPM_afterZ_, ptDiffPM_before_, ptThrForPhoton_, ptThrForZ1_, ptThrForZ2_, theDbe, trig_after_, trig_before_, and ztrig_afterZ_.

Referenced by EwkMuDQM().

130  {
131 
132  char chtitle[256] = "";
133 
134  pt_before_ = theDbe->book1D("PT_BEFORECUTS","Muon transverse momentum (global muon) [GeV]",100,0.,100.);
135  pt_after_ = theDbe->book1D("PT_AFTERWCUTS","Muon transverse momentum (global muon) [GeV]",100,0.,100.);
136 
137  eta_before_ = theDbe->book1D("ETA_BEFORECUTS","Muon pseudo-rapidity",50,-2.5,2.5);
138  eta_after_ = theDbe->book1D("ETA_AFTERWCUTS","Muon pseudo-rapidity",50,-2.5,2.5);
139 
140  dxy_before_ = theDbe->book1D("DXY_BEFORECUTS","Muon transverse distance to beam spot [cm]",100,-0.5,0.5);
141  dxy_after_ = theDbe->book1D("DXY_AFTERWCUTS","Muon transverse distance to beam spot [cm]",100,-0.5,0.5);
142 
143  goodewkmuon_before_ = theDbe->book1D("GOODEWKMUON_BEFORECUTS","Quality-muon flag",2,-0.5,1.5);
144  goodewkmuon_after_ = theDbe->book1D("GOODEWKMUON_AFTERWCUTS","Quality-muon flag",2,-0.5,1.5);
145 
146  if (isRelativeIso_) {
147  if (isCombinedIso_) {
148  iso_before_ = theDbe->book1D("ISO_BEFORECUTS","Relative (combined) isolation variable",100, 0., 1.);
149  iso_after_ = theDbe->book1D("ISO_AFTERWCUTS","Relative (combined) isolation variable",100, 0., 1.);
150  } else {
151  iso_before_ = theDbe->book1D("ISO_BEFORECUTS","Relative (tracker) isolation variable",100, 0., 1.);
152  iso_after_ = theDbe->book1D("ISO_AFTERWCUTS","Relative (tracker) isolation variable",100, 0., 1.);
153  }
154  } else {
155  if (isCombinedIso_) {
156  iso_before_ = theDbe->book1D("ISO_BEFORECUTS","Absolute (combined) isolation variable [GeV]",100, 0., 20.);
157  iso_after_ = theDbe->book1D("ISO_AFTERWCUTS","Absolute (combined) isolation variable [GeV]",100, 0., 20.);
158  } else {
159  iso_before_ = theDbe->book1D("ISO_BEFORECUTS","Absolute (tracker) isolation variable [GeV]",100, 0., 20.);
160  iso_after_ = theDbe->book1D("ISO_AFTERWCUTS","Absolute (tracker) isolation variable [GeV]",100, 0., 20.);
161  }
162  }
163 
164  trig_before_ = theDbe->book1D("TRIG_BEFORECUTS","Trigger response (boolean of muon triggers)",2,-0.5,1.5);
165  trig_after_ = theDbe->book1D("TRIG_AFTERWCUTS","Trigger response (boolean of muon triggers)",2,-0.5,1.5);
166 
167  snprintf(chtitle, 255, "Transverse mass (%s) [GeV]", metTag_.label().data());
168  mt_before_ = theDbe->book1D("MT_BEFORECUTS",chtitle,150,0.,300.);
169  mt_after_ = theDbe->book1D("MT_AFTERWCUTS",chtitle,150,0.,300.);
170 
171  snprintf(chtitle, 255, "Missing transverse energy (%s) [GeV]", metTag_.label().data());
172  met_before_ = theDbe->book1D("MET_BEFORECUTS",chtitle,100,0.,200.);
173  met_after_ = theDbe->book1D("MET_AFTERWCUTS",chtitle,100,0.,200.);
174  met_afterZ_ = theDbe->book1D("MET_AFTERZCUTS",chtitle,100,0.,200.);
175 
176  snprintf(chtitle, 255, "MU-MET (%s) acoplanarity", metTag_.label().data());
177  acop_before_ = theDbe->book1D("ACOP_BEFORECUTS",chtitle,50,0.,M_PI);
178  acop_after_ = theDbe->book1D("ACOP_AFTERWCUTS",chtitle,50,0.,M_PI);
179 
180  snprintf(chtitle, 255, "Z selection: muons above %.2f GeV", ptThrForZ1_);
181  n_zselPt1thr_ = theDbe->book1D("NZSELPT1THR",chtitle,10,-0.5,9.5);
182  snprintf(chtitle, 255, "Z selection: muons above %.2f GeV", ptThrForZ2_);
183  n_zselPt2thr_ = theDbe->book1D("NZSELPT2THR",chtitle,10,-0.5,9.5);
184 
185  snprintf(chtitle, 255, "Number of jets (%s) above %.2f GeV", jetTag_.label().data(), eJetMin_);
186  njets_before_ = theDbe->book1D("NJETS_BEFORECUTS",chtitle,16,-0.5,15.5);
187  njets_after_ = theDbe->book1D("NJETS_AFTERWCUTS",chtitle,16,-0.5,15.5);
188  njets_afterZ_ = theDbe->book1D("NJETS_AFTERZCUTS",chtitle,16,-0.5,15.5);
189 
190  leadingjet_pt_before_ = theDbe->book1D("LEADINGJET_PT_BEFORECUTS","Leading Jet transverse momentum",300,0.,300.);
191  leadingjet_pt_after_ = theDbe->book1D("LEADINGJET_PT_AFTERWCUTS","Leading Jet transverse momentum",300,0.,300.);
192  leadingjet_pt_afterZ_ = theDbe->book1D("LEADINGJET_PT_AFTERZCUTS","Leading Jet transverse momentum",300,0.,300.);
193 
194  leadingjet_eta_before_ = theDbe->book1D("LEADINGJET_ETA_BEFORECUTS","Leading Jet pseudo-rapidity",50,-2.5,2.5);
195  leadingjet_eta_after_ = theDbe->book1D("LEADINGJET_ETA_AFTERWCUTS","Leading Jet pseudo-rapidity",50,-2.5,2.5);
196  leadingjet_eta_afterZ_ = theDbe->book1D("LEADINGJET_ETA_AFTERZCUTS","Leading Jet pseudo-rapidity",50,-2.5,2.5);
197 
200  //ptPlus_before_ = theDbe->book1D("PTPLUS_BEFORE_CUTS","Muon+ transverse momentum before cuts [GeV]",100,0.,100.);
201  //ptMinus_before_ = theDbe->book1D("PTMINUS_BEFORE_CUTS","Muon- transverse momentum before cuts [GeV]",100,0.,100.);
202  //ptPlus_afterW_ = theDbe->book1D("PTPLUS_AFTERW_CUTS","Muon+ transverse momentum after W cuts [GeV]",100,0.,100.);
203  //ptMinus_afterW_ = theDbe->book1D("PTMINUS_AFTERW_CUTS","Muon- transverse momentum after W cuts [GeV]",100,0.,100.);
204  //ptPlus_afterZ_ = theDbe->book1D("PTPLUS_AFTERZ_CUTS","Muon+ transverse momentum after Z cuts [GeV]",100,0.,100.);
205  //ptMinus_afterZ_ = theDbe->book1D("PTMINUS_AFTERZ_CUTS","Muon- transverse momentum after Z cuts [GeV]",100,0.,100.);
206  ptDiffPM_before_ = theDbe->book1D("PTDIFFPM_BEFORE_CUTS","pt(Muon+)-pt(Muon-) after Z cuts [GeV]",200,-100.,100.);
207  ptDiffPM_afterZ_ = theDbe->book1D("PTDIFFPM_AFTERZ_CUTS","pt(Muon+)-pt(Muon-) after Z cuts [GeV]",200,-100.,100.);
208 
211  pt1_afterZ_ = theDbe->book1D("PT1_AFTERZCUTS","Muon transverse momentum (global muon) [GeV]",100,0.,100.);
212  eta1_afterZ_ = theDbe->book1D("ETA1_AFTERZCUTS","Muon pseudo-rapidity",50,-2.5,2.5);
213  dxy1_afterZ_ = theDbe->book1D("DXY1_AFTERZCUTS","Muon transverse distance to beam spot [cm]",100,-0.5,0.5);
214  goodewkmuon1_afterZ_ = theDbe->book1D("GOODEWKMUON1_AFTERZCUTS","Quality-muon flag",2,-0.5,1.5);
215 
216  if (isRelativeIso_) {
217  if (isCombinedIso_) {
218  iso1_afterZ_ = theDbe->book1D("ISO1_AFTERZCUTS","Relative (combined) isolation variable",100, 0., 1.);
219  iso2_afterZ_ = theDbe->book1D("ISO2_AFTERZCUTS","Relative (combined) isolation variable",100, 0., 1.);
220  } else {
221  iso1_afterZ_ = theDbe->book1D("ISO1_AFTERZCUTS","Relative (tracker) isolation variable",100, 0., 1.);
222  iso2_afterZ_ = theDbe->book1D("ISO2_AFTERZCUTS","Relative (tracker) isolation variable",100, 0., 1.);
223  }
224  } else {
225  if (isCombinedIso_) {
226  iso1_afterZ_ = theDbe->book1D("ISO1_AFTERZCUTS","Absolute (combined) isolation variable [GeV]",100, 0., 20.);
227  iso2_afterZ_ = theDbe->book1D("ISO2_AFTERZCUTS","Absolute (combined) isolation variable [GeV]",100, 0., 20.);
228  } else {
229  iso1_afterZ_ = theDbe->book1D("ISO1_AFTERZCUTS","Absolute (tracker) isolation variable [GeV]",100, 0., 20.);
230  iso2_afterZ_ = theDbe->book1D("ISO2_AFTERZCUTS","Absolute (tracker) isolation variable [GeV]",100, 0., 20.);
231  }
232  }
233 
234  pt2_afterZ_ = theDbe->book1D("PT2_AFTERZCUTS","Muon transverse momentum (global muon) [GeV]",100,0.,100.);
235  eta2_afterZ_ = theDbe->book1D("ETA2_AFTERZCUTS","Muon pseudo-rapidity",50,-2.5,2.5);
236  dxy2_afterZ_ = theDbe->book1D("DXY2_AFTERZCUTS","Muon transverse distance to beam spot [cm]",100,-0.5,0.5);
237  goodewkmuon2_afterZ_ = theDbe->book1D("GOODEWKMUON2_AFTERZCUTS","Quality-muon flag",2,-0.5,1.5);
238  ztrig_afterZ_ = theDbe->book1D("ZTRIG_AFTERZCUTS","Trigger response (boolean of muon triggers)",2,-0.5,1.5);
239  dimuonmass_before_= theDbe->book1D("DIMUONMASS_BEFORECUTS","DiMuonMass (2 globals)",100,0,200);
240  dimuonmass_afterZ_= theDbe->book1D("DIMUONMASS_AFTERZCUTS","DiMuonMass (2 globals)",100,0,200);
241  npvs_before_ = theDbe->book1D("NPVs_BEFORECUTS","Number of Valid Primary Vertices",51,-0.5,50.5);
242  npvs_after_ = theDbe->book1D("NPVs_AFTERWCUTS","Number of Valid Primary Vertices",51,-0.5,50.5);
243  npvs_afterZ_ = theDbe->book1D("NPVs_AFTERZCUTS","Number of Valid Primary Vertices",51,-0.5,50.5);
244  muoncharge_before_ = theDbe->book1D("MUONCHARGE_BEFORECUTS","Muon Charge",3,-1.5,1.5);
245  muoncharge_after_ = theDbe->book1D("MUONCHARGE_AFTERWCUTS","Muon Charge",3,-1.5,1.5);
246  muoncharge_afterZ_ = theDbe->book1D("MUONCHARGE_AFTERZCUTS","Muon Charge",3,-1.5,1.5);
247 
248  // Adding these to replace the NZ ones (more useful, since they are more general?)
249  nmuons_ = theDbe->book1D("NMuons","Number of muons in the event",10,-0.5,9.5);
250  ngoodmuons_ = theDbe->book1D("NGoodMuons","Number of muons passing the quality criteria",10,-0.5,9.5);
251 
252  nph_ = theDbe->book1D("nph","Number of photons in the event",20,0.,20.);
253  //npfph_ = theDbe->book1D("npfph","Number of PF photons in the event",20,0.,20.);
254  phPt_ = theDbe->book1D("phPt","Photon transverse momentum [GeV]",100,0.,1000.);
255  //pfphPt_ = theDbe->book1D("pfphPt","PF Photon transverse momentum [GeV]",1000,0.,1000.);
256  snprintf(chtitle, 255, "Photon pseudorapidity (pT>%4.1f)",ptThrForPhoton_);
257  phEta_ = theDbe->book1D("phEta",chtitle,100,-2.5,2.5);
258  //pfphEta_ = theDbe->book1D("pfphEta","PF Photon pseudorapidity",100,-2.5,2.5);
259 
260 }
MonitorElement * met_before_
Definition: EwkMuDQM.h:112
DQMStore * theDbe
Definition: EwkMuDQM.h:96
MonitorElement * ptDiffPM_afterZ_
Definition: EwkMuDQM.h:134
MonitorElement * dimuonmass_afterZ_
Definition: EwkMuDQM.h:154
MonitorElement * phEta_
Definition: EwkMuDQM.h:172
MonitorElement * njets_afterZ_
Definition: EwkMuDQM.h:119
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:872
MonitorElement * iso2_afterZ_
Definition: EwkMuDQM.h:146
MonitorElement * npvs_before_
Definition: EwkMuDQM.h:156
double ptThrForPhoton_
Definition: EwkMuDQM.h:82
MonitorElement * dxy1_afterZ_
Definition: EwkMuDQM.h:139
MonitorElement * njets_before_
Definition: EwkMuDQM.h:117
MonitorElement * dxy_before_
Definition: EwkMuDQM.h:102
MonitorElement * ztrig_afterZ_
Definition: EwkMuDQM.h:152
MonitorElement * trig_before_
Definition: EwkMuDQM.h:108
MonitorElement * trig_after_
Definition: EwkMuDQM.h:109
MonitorElement * leadingjet_eta_afterZ_
Definition: EwkMuDQM.h:125
MonitorElement * muoncharge_before_
Definition: EwkMuDQM.h:160
MonitorElement * eta2_afterZ_
Definition: EwkMuDQM.h:143
MonitorElement * npvs_afterZ_
Definition: EwkMuDQM.h:158
MonitorElement * leadingjet_eta_before_
Definition: EwkMuDQM.h:123
double eJetMin_
Definition: EwkMuDQM.h:79
MonitorElement * acop_before_
Definition: EwkMuDQM.h:114
MonitorElement * leadingjet_pt_after_
Definition: EwkMuDQM.h:121
MonitorElement * goodewkmuon_before_
Definition: EwkMuDQM.h:104
MonitorElement * eta_after_
Definition: EwkMuDQM.h:101
MonitorElement * muoncharge_afterZ_
Definition: EwkMuDQM.h:162
MonitorElement * pt_before_
Definition: EwkMuDQM.h:98
MonitorElement * dxy2_afterZ_
Definition: EwkMuDQM.h:144
MonitorElement * leadingjet_pt_before_
Definition: EwkMuDQM.h:120
MonitorElement * goodewkmuon1_afterZ_
Definition: EwkMuDQM.h:140
MonitorElement * iso_before_
Definition: EwkMuDQM.h:106
MonitorElement * npvs_after_
Definition: EwkMuDQM.h:157
MonitorElement * goodewkmuon2_afterZ_
Definition: EwkMuDQM.h:145
MonitorElement * njets_after_
Definition: EwkMuDQM.h:118
MonitorElement * ngoodmuons_
Definition: EwkMuDQM.h:165
MonitorElement * n_zselPt2thr_
Definition: EwkMuDQM.h:150
MonitorElement * pt2_afterZ_
Definition: EwkMuDQM.h:142
double ptThrForZ2_
Definition: EwkMuDQM.h:74
MonitorElement * met_afterZ_
Definition: EwkMuDQM.h:136
MonitorElement * leadingjet_eta_after_
Definition: EwkMuDQM.h:124
bool isCombinedIso_
Definition: EwkMuDQM.h:61
MonitorElement * mt_after_
Definition: EwkMuDQM.h:111
MonitorElement * goodewkmuon_after_
Definition: EwkMuDQM.h:105
MonitorElement * muoncharge_after_
Definition: EwkMuDQM.h:161
MonitorElement * mt_before_
Definition: EwkMuDQM.h:110
MonitorElement * eta_before_
Definition: EwkMuDQM.h:100
MonitorElement * iso1_afterZ_
Definition: EwkMuDQM.h:141
bool isRelativeIso_
Definition: EwkMuDQM.h:60
edm::InputTag jetTag_
Definition: EwkMuDQM.h:42
MonitorElement * nmuons_
Definition: EwkMuDQM.h:164
#define M_PI
Definition: BFit3D.cc:3
edm::InputTag metTag_
Definition: EwkMuDQM.h:41
MonitorElement * pt_after_
Definition: EwkMuDQM.h:99
MonitorElement * iso_after_
Definition: EwkMuDQM.h:107
MonitorElement * eta1_afterZ_
Definition: EwkMuDQM.h:138
MonitorElement * ptDiffPM_before_
Definition: EwkMuDQM.h:129
MonitorElement * pt1_afterZ_
Definition: EwkMuDQM.h:137
std::string const & label() const
Definition: InputTag.h:42
MonitorElement * nph_
Definition: EwkMuDQM.h:168
MonitorElement * phPt_
Definition: EwkMuDQM.h:170
double ptThrForZ1_
Definition: EwkMuDQM.h:73
MonitorElement * dxy_after_
Definition: EwkMuDQM.h:103
MonitorElement * met_after_
Definition: EwkMuDQM.h:113
MonitorElement * n_zselPt1thr_
Definition: EwkMuDQM.h:149
MonitorElement * dimuonmass_before_
Definition: EwkMuDQM.h:153
MonitorElement * leadingjet_pt_afterZ_
Definition: EwkMuDQM.h:122
MonitorElement * acop_after_
Definition: EwkMuDQM.h:115

Member Data Documentation

MonitorElement* EwkMuDQM::acop_after_
private

Definition at line 115 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::acop_before_
private

Definition at line 114 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::acopCut_
private

Definition at line 64 of file EwkMuDQM.h.

Referenced by analyze().

edm::EDGetTokenT<reco::BeamSpot> EwkMuDQM::beamSpotTag_
private

Definition at line 49 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::dimuonmass_afterZ_
private

Definition at line 154 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::dimuonmass_before_
private

Definition at line 153 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::dimuonMassMax_
private

Definition at line 77 of file EwkMuDQM.h.

Referenced by analyze().

double EwkMuDQM::dimuonMassMin_
private

Definition at line 76 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::dxy1_afterZ_
private

Definition at line 139 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::dxy2_afterZ_
private

Definition at line 144 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::dxy_after_
private

Definition at line 103 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::dxy_before_
private

Definition at line 102 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::dxyCut_
private

Definition at line 53 of file EwkMuDQM.h.

Referenced by analyze().

double EwkMuDQM::eJetMin_
private

Definition at line 79 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::eta1_afterZ_
private

Definition at line 138 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::eta2_afterZ_
private

Definition at line 143 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::eta_after_
private

Definition at line 101 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::eta_before_
private

Definition at line 100 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::etaCut_
private

Definition at line 71 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::goodewkmuon1_afterZ_
private

Definition at line 140 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::goodewkmuon2_afterZ_
private

Definition at line 145 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::goodewkmuon_after_
private

Definition at line 105 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::goodewkmuon_before_
private

Definition at line 104 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

HLTConfigProvider EwkMuDQM::hltConfigProvider_
private

Definition at line 86 of file EwkMuDQM.h.

Referenced by analyze(), and beginRun().

bool EwkMuDQM::isAlsoTrackerMuon_
private

Definition at line 52 of file EwkMuDQM.h.

bool EwkMuDQM::isCombinedIso_
private

Definition at line 61 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::iso1_afterZ_
private

Definition at line 141 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::iso2_afterZ_
private

Definition at line 146 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::iso_after_
private

Definition at line 107 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::iso_before_
private

Definition at line 106 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::isoCut03_
private

Definition at line 62 of file EwkMuDQM.h.

Referenced by analyze().

bool EwkMuDQM::isRelativeIso_
private

Definition at line 60 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

bool EwkMuDQM::isValidHltConfig_
private

Definition at line 85 of file EwkMuDQM.h.

Referenced by beginRun(), and EwkMuDQM().

edm::InputTag EwkMuDQM::jetTag_
private

Definition at line 42 of file EwkMuDQM.h.

Referenced by init_histograms().

edm::EDGetTokenT<edm::View<reco::Jet> > EwkMuDQM::jetToken_
private

Definition at line 46 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::leadingjet_eta_after_
private

Definition at line 124 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::leadingjet_eta_afterZ_
private

Definition at line 125 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::leadingjet_eta_before_
private

Definition at line 123 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::leadingjet_pt_after_
private

Definition at line 121 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::leadingjet_pt_afterZ_
private

Definition at line 122 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::leadingjet_pt_before_
private

Definition at line 120 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::met_after_
private

Definition at line 113 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::met_afterZ_
private

Definition at line 136 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::met_before_
private

Definition at line 112 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::metMax_
private

Definition at line 66 of file EwkMuDQM.h.

Referenced by analyze().

double EwkMuDQM::metMin_
private

Definition at line 65 of file EwkMuDQM.h.

Referenced by analyze().

edm::InputTag EwkMuDQM::metTag_
private

Definition at line 41 of file EwkMuDQM.h.

Referenced by init_histograms().

edm::EDGetTokenT<edm::View<reco::MET> > EwkMuDQM::metToken_
private

Definition at line 45 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::mt_after_
private

Definition at line 111 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::mt_before_
private

Definition at line 110 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::mtMax_
private

Definition at line 68 of file EwkMuDQM.h.

Referenced by analyze().

double EwkMuDQM::mtMin_
private

Definition at line 67 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::muoncharge_after_
private

Definition at line 161 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::muoncharge_afterZ_
private

Definition at line 162 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::muoncharge_before_
private

Definition at line 160 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

int EwkMuDQM::muonHitsCut_
private

Definition at line 57 of file EwkMuDQM.h.

Referenced by analyze().

edm::EDGetTokenT<edm::View<reco::Muon> > EwkMuDQM::muonTag_
private

Definition at line 44 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::n_zselPt1thr_
private

Definition at line 149 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::n_zselPt2thr_
private

Definition at line 150 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

unsigned int EwkMuDQM::nall
private

Definition at line 88 of file EwkMuDQM.h.

Referenced by analyze(), and beginRun().

MonitorElement* EwkMuDQM::ngoodmuons_
private

Definition at line 165 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

unsigned int EwkMuDQM::nhlt
private

Definition at line 91 of file EwkMuDQM.h.

Referenced by beginRun().

unsigned int EwkMuDQM::niso
private

Definition at line 90 of file EwkMuDQM.h.

Referenced by beginRun().

int EwkMuDQM::nJetMax_
private

Definition at line 80 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::njets_after_
private

Definition at line 118 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::njets_afterZ_
private

Definition at line 119 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::njets_before_
private

Definition at line 117 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

int EwkMuDQM::nMatchesCut_
private

Definition at line 58 of file EwkMuDQM.h.

Referenced by analyze().

unsigned int EwkMuDQM::nmet
private

Definition at line 92 of file EwkMuDQM.h.

Referenced by beginRun().

MonitorElement* EwkMuDQM::nmuons_
private

Definition at line 164 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::normalizedChi2Cut_
private

Definition at line 54 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::npfph_
private

Definition at line 167 of file EwkMuDQM.h.

MonitorElement* EwkMuDQM::nph_
private

Definition at line 168 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

int EwkMuDQM::nPhoMax_
private

Definition at line 83 of file EwkMuDQM.h.

MonitorElement* EwkMuDQM::npvs_after_
private

Definition at line 157 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::npvs_afterZ_
private

Definition at line 158 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::npvs_before_
private

Definition at line 156 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

unsigned int EwkMuDQM::nrec
private

Definition at line 89 of file EwkMuDQM.h.

Referenced by beginRun().

unsigned int EwkMuDQM::nsel
private

Definition at line 93 of file EwkMuDQM.h.

Referenced by beginRun().

unsigned int EwkMuDQM::nz
private

Definition at line 94 of file EwkMuDQM.h.

Referenced by beginRun().

MonitorElement* EwkMuDQM::pfphEta_
private

Definition at line 171 of file EwkMuDQM.h.

MonitorElement* EwkMuDQM::pfphPt_
private

Definition at line 169 of file EwkMuDQM.h.

MonitorElement* EwkMuDQM::phEta_
private

Definition at line 172 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

edm::EDGetTokenT<edm::View<reco::Photon> > EwkMuDQM::phoTag_
private

Definition at line 47 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::phPt_
private

Definition at line 170 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

int EwkMuDQM::pixelHitsCut_
private

Definition at line 56 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::pt1_afterZ_
private

Definition at line 137 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::pt2_afterZ_
private

Definition at line 142 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::pt_after_
private

Definition at line 99 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::pt_before_
private

Definition at line 98 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::ptCut_
private

Definition at line 70 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::ptDiffPM_afterZ_
private

Definition at line 134 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::ptDiffPM_before_
private

Definition at line 129 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::ptThrForPhoton_
private

Definition at line 82 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::ptThrForZ1_
private

Definition at line 73 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

double EwkMuDQM::ptThrForZ2_
private

Definition at line 74 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

DQMStore* EwkMuDQM::theDbe
private

Definition at line 96 of file EwkMuDQM.h.

Referenced by EwkMuDQM(), and init_histograms().

int EwkMuDQM::trackerHitsCut_
private

Definition at line 55 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::trig_after_
private

Definition at line 109 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

MonitorElement* EwkMuDQM::trig_before_
private

Definition at line 108 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().

std::vector<std::string> EwkMuDQM::trigPathNames_
private

Definition at line 50 of file EwkMuDQM.h.

Referenced by analyze().

edm::EDGetTokenT<edm::TriggerResults> EwkMuDQM::trigTag_
private

Definition at line 43 of file EwkMuDQM.h.

Referenced by analyze().

edm::EDGetTokenT<edm::View<reco::Vertex> > EwkMuDQM::vertexTag_
private

Definition at line 48 of file EwkMuDQM.h.

Referenced by analyze().

MonitorElement* EwkMuDQM::ztrig_afterZ_
private

Definition at line 152 of file EwkMuDQM.h.

Referenced by analyze(), and init_histograms().