CMS 3D CMS Logo

B2GDQM.h
Go to the documentation of this file.
1 #ifndef B2GDQM_H
2 #define B2GDQM_H
3 
14 
15 // Trigger stuff
18 
26 
31 
33 
34 // ParticleFlow
36 
37 // EGamma
42 
43 // Muon
48 
49 // Jets
53 
54 // MET
62 
63 //
66 
68 
70 
71 #include <iostream>
72 #include <fstream>
73 #include <string>
74 #include <vector>
75 #include <map>
76 #include <cmath>
77 
78 class B2GDQM : public DQMEDAnalyzer {
79 public:
80  B2GDQM(const edm::ParameterSet& ps);
81  ~B2GDQM() override;
82 
83 protected:
84  void analyze(edm::Event const& e, edm::EventSetup const& eSetup) override;
85 
86  virtual void analyzeJets(edm::Event const& e, edm::EventSetup const& eSetup);
87  virtual void analyzeSemiMu(edm::Event const& e, edm::EventSetup const& eSetup);
88  virtual void analyzeSemiE(edm::Event const& e, edm::EventSetup const& eSetup);
89  virtual void analyzeAllHad(edm::Event const& e, edm::EventSetup const& eSetup);
90 
91 private:
92  void bookHistograms(DQMStore::IBooker& bei, edm::Run const&, edm::EventSetup const&) override;
95 
98 
99  // Variables from config file
102 
104 
105  std::vector<edm::InputTag> jetLabels_;
106  std::vector<edm::EDGetTokenT<edm::View<reco::Jet> > > jetTokens_;
109 
110  // EDIT from 2019 (S. Rappoccio): Change CMS top tagger algorithm from ancient Run 1
111  // definition to modern soft-drop based tagger.
114 
117 
120 
122  // Parameters
124 
125  std::vector<double> jetPtMins_;
126 
127  double allHadPtCut_; // pt of both jets
128  double allHadRapidityCut_; // rapidity difference |y0-y1| max
129  double allHadDeltaPhiCut_; // |phi0 - phi1| min
130 
131  double semiMu_HadJetPtCut_; // min pt of hadronic-side jet
132  double semiMu_LepJetPtCut_; // min pt of leptonic-side jet
133  double semiMu_dphiHadCut_; // min deltaPhi between muon and hadronic-side jet
134  double semiMu_dRMin_; // min deltaR between muon and nearest jet for 2d cut
135  double semiMu_ptRel_; // max ptRel between muon and nearest jet for 2d cut
136  std::shared_ptr<StringCutObjectSelector<reco::Muon> > muonSelect_; // Selection on all muons
137 
138  double semiE_HadJetPtCut_; // pt of hadronic-side jet
139  double semiE_LepJetPtCut_; // min pt of leptonic-side jet
140  double semiE_dphiHadCut_; // min deltaPhi between electron and hadronic-side
141  // jet
142  double semiE_dRMin_; // min deltaR between electron and nearest jet for 2d
143  // cut
144  double semiE_ptRel_; // max ptRel between electron and nearest jet for 2d cut
145  std::shared_ptr<StringCutObjectSelector<reco::GsfElectron> > elecSelect_; // Kinematic selection on all electrons
146 
149  // Histograms
151  std::vector<MonitorElement*> pfJet_pt;
152  std::vector<MonitorElement*> pfJet_y;
153  std::vector<MonitorElement*> pfJet_phi;
154  std::vector<MonitorElement*> pfJet_m;
155  std::vector<MonitorElement*> pfJet_chef;
156  std::vector<MonitorElement*> pfJet_nhef;
157  std::vector<MonitorElement*> pfJet_cemf;
158  std::vector<MonitorElement*> pfJet_nemf;
159  std::vector<MonitorElement*> boostedJet_subjetPt;
160  std::vector<MonitorElement*> boostedJet_subjetY;
161  std::vector<MonitorElement*> boostedJet_subjetPhi;
162  std::vector<MonitorElement*> boostedJet_subjetM;
163  std::vector<MonitorElement*> boostedJet_subjetN;
164  std::vector<MonitorElement*> boostedJet_massDrop;
165  std::vector<MonitorElement*> boostedJet_wMass;
168 
181 
194 
206 };
207 
208 #endif
B2GDQM::allHad_pt0
MonitorElement * allHad_pt0
Definition: B2GDQM.h:195
B2GDQM::allHad_wMass0
MonitorElement * allHad_wMass0
Definition: B2GDQM.h:199
CaloJetCollection.h
TrajectoryStateOnSurface.h
Handle.h
Muon.h
B2GDQM::pfJet_chef
std::vector< MonitorElement * > pfJet_chef
Definition: B2GDQM.h:155
B2GDQM::bookHistograms
void bookHistograms(DQMStore::IBooker &bei, edm::Run const &, edm::EventSetup const &) override
Definition: B2GDQM.cc:142
B2GDQM::boostedJet_wMass
std::vector< MonitorElement * > boostedJet_wMass
Definition: B2GDQM.h:165
B2GDQM::allHad_y1
MonitorElement * allHad_y1
Definition: B2GDQM.h:201
B2GDQM::electronLabel_
edm::InputTag electronLabel_
Definition: B2GDQM.h:118
ESHandle.h
TriggerResults.h
B2GDQM::pfMet_phi
MonitorElement * pfMet_phi
Definition: B2GDQM.h:167
PFCandidate.h
GenMETCollection.h
B2GDQM::muonLabel_
edm::InputTag muonLabel_
Definition: B2GDQM.h:115
edm::Run
Definition: Run.h:45
B2GDQM::semiE_hadJetWMass
MonitorElement * semiE_hadJetWMass
Definition: B2GDQM.h:192
deltaPhi.h
edm::EDGetTokenT< edm::TriggerResults >
LuminosityBlock.h
B2GDQM::semiE_dphiHadCut_
double semiE_dphiHadCut_
Definition: B2GDQM.h:140
B2GDQM::semiMu_dphiHadCut_
double semiMu_dphiHadCut_
Definition: B2GDQM.h:133
B2GDQM::allHad_phi1
MonitorElement * allHad_phi1
Definition: B2GDQM.h:202
DataKeyTags.h
PFJetCollection.h
Measurement1D.h
B2GDQM::boostedJet_subjetY
std::vector< MonitorElement * > boostedJet_subjetY
Definition: B2GDQM.h:160
B2GDQM::semiE_eDRMin
MonitorElement * semiE_eDRMin
Definition: B2GDQM.h:185
B2GDQM::PFMETLabel_
edm::InputTag PFMETLabel_
Definition: B2GDQM.h:107
BasicJetCollection.h
DQMStore.h
B2GDQM::hltConfigProvider_
HLTConfigProvider hltConfigProvider_
Definition: B2GDQM.h:96
dqm::legacy::MonitorElement
Definition: MonitorElement.h:462
PFMETCollection.h
B2GDQM::pfMet_pt
MonitorElement * pfMet_pt
Definition: B2GDQM.h:166
B2GDQM::semiMu_hadJetY
MonitorElement * semiMu_hadJetY
Definition: B2GDQM.h:176
B2GDQM::semiE_eEta
MonitorElement * semiE_eEta
Definition: B2GDQM.h:183
B2GDQM::semiMu_muDRMin
MonitorElement * semiMu_muDRMin
Definition: B2GDQM.h:172
B2GDQM::semiMu_hadJetDR
MonitorElement * semiMu_hadJetDR
Definition: B2GDQM.h:174
edm::Handle< edm::TriggerResults >
B2GDQM::PFJetCorService_
std::string PFJetCorService_
Definition: B2GDQM.h:147
B2GDQM::allHad_wMass1
MonitorElement * allHad_wMass1
Definition: B2GDQM.h:204
EcalRecHitCollections.h
B2GDQM::analyzeAllHad
virtual void analyzeAllHad(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: B2GDQM.cc:321
B2GDQM::allHad_y0
MonitorElement * allHad_y0
Definition: B2GDQM.h:196
CaloMETCollection.h
B2GDQM
Definition: B2GDQM.h:78
CandidateFwd.h
B2GDQM::boostedJet_subjetPt
std::vector< MonitorElement * > boostedJet_subjetPt
Definition: B2GDQM.h:159
B2GDQM::pfJet_cemf
std::vector< MonitorElement * > pfJet_cemf
Definition: B2GDQM.h:157
B2GDQM::jetPtMins_
std::vector< double > jetPtMins_
Definition: B2GDQM.h:125
B2GDQM::semiE_dRMin_
double semiE_dRMin_
Definition: B2GDQM.h:142
B2GDQM::muonSelect_
std::shared_ptr< StringCutObjectSelector< reco::Muon > > muonSelect_
Definition: B2GDQM.h:136
B2GDQM::boostedJet_subjetPhi
std::vector< MonitorElement * > boostedJet_subjetPhi
Definition: B2GDQM.h:161
B2GDQM::semiE_hadJetMass
MonitorElement * semiE_hadJetMass
Definition: B2GDQM.h:191
CaloMET.h
B2GDQM::semiE_ePt
MonitorElement * semiE_ePt
Definition: B2GDQM.h:182
B2GDQM::semiE_mttbar
MonitorElement * semiE_mttbar
Definition: B2GDQM.h:193
MuonSelectors.h
MuonFwd.h
B2GDQM::semiMu_mttbar
MonitorElement * semiMu_mttbar
Definition: B2GDQM.h:180
B2GDQM::pfJet_y
std::vector< MonitorElement * > pfJet_y
Definition: B2GDQM.h:152
B2GDQM::theTriggerResultsCollection
edm::InputTag theTriggerResultsCollection
Definition: B2GDQM.h:100
B2GDQM::semiE_ptRel_
double semiE_ptRel_
Definition: B2GDQM.h:144
Run.h
B2GDQM::allHad_phi0
MonitorElement * allHad_phi0
Definition: B2GDQM.h:197
B2GDQM::analyzeSemiE
virtual void analyzeSemiE(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: B2GDQM.cc:451
MuonIsolation.h
B2GDQM::ievt
int ievt
Definition: B2GDQM.h:94
B2GDQM::jetLabels_
std::vector< edm::InputTag > jetLabels_
Definition: B2GDQM.h:105
GsfElectron.h
B2GDQM::semiE_LepJetPtCut_
double semiE_LepJetPtCut_
Definition: B2GDQM.h:139
B2GDQM::B2GDQM
B2GDQM(const edm::ParameterSet &ps)
Definition: B2GDQM.cc:77
B2GDQM::muonToken_
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
Definition: B2GDQM.h:116
DQMEDAnalyzer.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
Vertex.h
B2GDQM::allHad_pt1
MonitorElement * allHad_pt1
Definition: B2GDQM.h:200
B2GDQM::allHadDeltaPhiCut_
double allHadDeltaPhiCut_
Definition: B2GDQM.h:129
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
B2GDQM::analyze
void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override
Definition: B2GDQM.cc:229
B2GDQM::allHadPtCut_
double allHadPtCut_
Definition: B2GDQM.h:127
B2GDQM::semiMu_muPhi
MonitorElement * semiMu_muPhi
Definition: B2GDQM.h:171
B2GDQM::jetTokens_
std::vector< edm::EDGetTokenT< edm::View< reco::Jet > > > jetTokens_
Definition: B2GDQM.h:106
B2GDQM::semiE_hadJetY
MonitorElement * semiE_hadJetY
Definition: B2GDQM.h:189
ElectronFwd.h
B2GDQM::triggerToken_
edm::EDGetTokenT< edm::TriggerResults > triggerToken_
Definition: B2GDQM.h:101
METCollection.h
GsfElectronFwd.h
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
B2GDQM::pfJet_m
std::vector< MonitorElement * > pfJet_m
Definition: B2GDQM.h:154
EcalClusterTools.h
B2GDQM::isValidHltConfig_
bool isValidHltConfig_
Definition: B2GDQM.h:97
B2GDQM::semiE_hadJetPt
MonitorElement * semiE_hadJetPt
Definition: B2GDQM.h:188
PFMET.h
B2GDQM::pfJet_pt
std::vector< MonitorElement * > pfJet_pt
Definition: B2GDQM.h:151
B2GDQM::triggerResults_
edm::Handle< edm::TriggerResults > triggerResults_
Definition: B2GDQM.h:103
B2GDQM::irun
int irun
Definition: B2GDQM.h:94
B2GDQM::boostedJet_massDrop
std::vector< MonitorElement * > boostedJet_massDrop
Definition: B2GDQM.h:164
B2GDQM::sdjetToken_
edm::EDGetTokenT< edm::View< reco::BasicJet > > sdjetToken_
Definition: B2GDQM.h:113
edm::EventSetup
Definition: EventSetup.h:58
HLTConfigProvider.h
B2GDQM::boostedJet_subjetN
std::vector< MonitorElement * > boostedJet_subjetN
Definition: B2GDQM.h:163
B2GDQM::sdjetLabel_
edm::InputTag sdjetLabel_
Definition: B2GDQM.h:112
B2GDQM::allHad_mass0
MonitorElement * allHad_mass0
Definition: B2GDQM.h:198
InputTag.h
B2GDQM::semiMu_hadJetPhi
MonitorElement * semiMu_hadJetPhi
Definition: B2GDQM.h:177
B2GDQM::semiMu_dRMin_
double semiMu_dRMin_
Definition: B2GDQM.h:134
B2GDQM::PFMETToken_
edm::EDGetTokenT< std::vector< reco::PFMET > > PFMETToken_
Definition: B2GDQM.h:108
B2GDQM::nLumiSecs_
int nLumiSecs_
Definition: B2GDQM.h:93
MET.h
B2GDQM::semiMu_LepJetPtCut_
double semiMu_LepJetPtCut_
Definition: B2GDQM.h:132
CaloCellGeometry.h
Electron.h
HLTConfigProvider
Definition: HLTConfigProvider.h:29
StringCutObjectSelector.h
B2GDQM::semiMu_hadJetWMass
MonitorElement * semiMu_hadJetWMass
Definition: B2GDQM.h:179
B2GDQM::semiE_hadJetDR
MonitorElement * semiE_hadJetDR
Definition: B2GDQM.h:187
B2GDQM::boostedJet_subjetM
std::vector< MonitorElement * > boostedJet_subjetM
Definition: B2GDQM.h:162
B2GDQM::allHad_mass1
MonitorElement * allHad_mass1
Definition: B2GDQM.h:203
CaloGeometry.h
B2GDQM::pfJet_nhef
std::vector< MonitorElement * > pfJet_nhef
Definition: B2GDQM.h:156
B2GDQM::semiMu_hadJetMass
MonitorElement * semiMu_hadJetMass
Definition: B2GDQM.h:178
GlobalVector.h
EventSetup.h
B2GDQM::electronToken_
edm::EDGetTokenT< edm::View< reco::GsfElectron > > electronToken_
Definition: B2GDQM.h:119
dqm::implementation::IBooker
Definition: DQMStore.h:43
B2GDQM::semiMu_muEta
MonitorElement * semiMu_muEta
Definition: B2GDQM.h:170
B2GDQM::semiMu_ptRel_
double semiMu_ptRel_
Definition: B2GDQM.h:135
B2GDQM::semiMu_muPtRel
MonitorElement * semiMu_muPtRel
Definition: B2GDQM.h:173
B2GDQM::semiE_hadJetPhi
MonitorElement * semiE_hadJetPhi
Definition: B2GDQM.h:190
B2GDQM::analyzeSemiMu
virtual void analyzeSemiMu(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: B2GDQM.cc:369
B2GDQM::semiMu_HadJetPtCut_
double semiMu_HadJetPtCut_
Definition: B2GDQM.h:131
Candidate.h
B2GDQM::pfJet_phi
std::vector< MonitorElement * > pfJet_phi
Definition: B2GDQM.h:153
B2GDQM::~B2GDQM
~B2GDQM() override
Definition: B2GDQM.cc:134
ParameterSet.h
B2GDQM::semiE_HadJetPtCut_
double semiE_HadJetPtCut_
Definition: B2GDQM.h:138
B2GDQM::allHad_mttbar
MonitorElement * allHad_mttbar
Definition: B2GDQM.h:205
B2GDQM::semiMu_muPt
MonitorElement * semiMu_muPt
Definition: B2GDQM.h:169
B2GDQM::semiE_ePtRel
MonitorElement * semiE_ePtRel
Definition: B2GDQM.h:186
edm::Event
Definition: Event.h:73
B2GDQM::analyzeJets
virtual void analyzeJets(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: B2GDQM.cc:236
B2GDQM::semiMu_hadJetPt
MonitorElement * semiMu_hadJetPt
Definition: B2GDQM.h:175
B2GDQM::elecSelect_
std::shared_ptr< StringCutObjectSelector< reco::GsfElectron > > elecSelect_
Definition: B2GDQM.h:145
edm::InputTag
Definition: InputTag.h:15
B2GDQM::allHadRapidityCut_
double allHadRapidityCut_
Definition: B2GDQM.h:128
B2GDQM::nEvents_
int nEvents_
Definition: B2GDQM.h:94
B2GDQM::semiE_ePhi
MonitorElement * semiE_ePhi
Definition: B2GDQM.h:184
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
B2GDQM::pfJet_nemf
std::vector< MonitorElement * > pfJet_nemf
Definition: B2GDQM.h:158