CMS 3D CMS Logo

TopMonitor.h
Go to the documentation of this file.
1 #ifndef DQMOffline_Trigger_TopMonitor_h
2 #define DQMOffline_Trigger_TopMonitor_h
3 
4 #include <string>
5 #include <vector>
6 #include <map>
7 
40 
42 
43 //
44 // class declaration
45 //
46 
47 class TopMonitor : public DQMEDAnalyzer, public TriggerDQMBase {
48 public:
51 
53  ~TopMonitor() throw() override;
54  static void fillDescriptions(edm::ConfigurationDescriptions &descriptions);
55 
56 protected:
57  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
58  void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override;
59 
60  struct JetRefCompare {
61  inline bool operator()(const edm::RefToBase<reco::Jet> &j1, const edm::RefToBase<reco::Jet> &j2) const {
62  return (j1.id() < j2.id()) || ((j1.id() == j2.id()) && (j1.key() < j2.key()));
63  }
64  };
65  typedef std::map<edm::RefToBase<reco::Jet>, float, JetRefCompare> JetTagMap;
66 
67 private:
69 
72 
79  std::vector<edm::EDGetTokenT<reco::JetTagCollection> > jetTagTokens_;
81 
82  struct PVcut {
83  double dxy;
84  double dz;
85  };
86 
97 
98  std::vector<double> met_variable_binning_;
99  std::vector<double> HT_variable_binning_;
100  std::vector<double> jetPt_variable_binning_;
101  std::vector<double> muPt_variable_binning_;
102  std::vector<double> elePt_variable_binning_;
103  std::vector<double> jetEta_variable_binning_;
104  std::vector<double> muEta_variable_binning_;
105  std::vector<double> eleEta_variable_binning_;
106  std::vector<double> invMass_mumu_variable_binning_;
107  std::vector<double> MHT_variable_binning_;
108 
109  std::vector<double> HT_variable_binning_2D_;
110  std::vector<double> jetPt_variable_binning_2D_;
111  std::vector<double> muPt_variable_binning_2D_;
112  std::vector<double> elePt_variable_binning_2D_;
113  std::vector<double> phoPt_variable_binning_2D_;
114  std::vector<double> jetEta_variable_binning_2D_;
115  std::vector<double> muEta_variable_binning_2D_;
116  std::vector<double> eleEta_variable_binning_2D_;
117  std::vector<double> phoEta_variable_binning_2D_;
118  std::vector<double> phi_variable_binning_2D_;
119 
120  ObjME metME_;
122  ObjME metVsLS_;
123  ObjME metPhiME_;
124 
125  ObjME jetVsLS_;
126  ObjME muVsLS_;
127  ObjME eleVsLS_;
128  ObjME phoVsLS_;
129  ObjME bjetVsLS_;
130  ObjME htVsLS_;
131 
132  ObjME jetEtaPhi_HEP17_; // for HEP17 monitoring
133 
134  ObjME jetMulti_;
135  ObjME eleMulti_;
136  ObjME muMulti_;
137  ObjME phoMulti_;
138  ObjME bjetMulti_;
139 
142 
147  ObjME elePt_muPt_;
150  ObjME eventMHT_;
153  ObjME muPt_phoPt_;
155 
157 
158  ObjME eventHT_;
160 
161  std::vector<ObjME> muPhi_;
162  std::vector<ObjME> muEta_;
163  std::vector<ObjME> muPt_;
164 
165  std::vector<ObjME> elePhi_;
166  std::vector<ObjME> eleEta_;
167  std::vector<ObjME> elePt_;
168 
169  std::vector<ObjME> jetPhi_;
170  std::vector<ObjME> jetEta_;
171  std::vector<ObjME> jetPt_;
172 
173  std::vector<ObjME> phoPhi_;
174  std::vector<ObjME> phoEta_;
175  std::vector<ObjME> phoPt_;
176 
177  std::vector<ObjME> bjetPhi_;
178  std::vector<ObjME> bjetEta_;
179  std::vector<ObjME> bjetPt_;
180  std::vector<ObjME> bjetCSV_;
181  std::vector<ObjME> muPt_variableBinning_;
182  std::vector<ObjME> elePt_variableBinning_;
183  std::vector<ObjME> jetPt_variableBinning_;
184  std::vector<ObjME> bjetPt_variableBinning_;
185 
186  std::vector<ObjME> muEta_variableBinning_;
187  std::vector<ObjME> eleEta_variableBinning_;
188  std::vector<ObjME> jetEta_variableBinning_;
189  std::vector<ObjME> bjetEta_variableBinning_;
190 
191  // 2D distributions
192  std::vector<ObjME> jetPtEta_;
193  std::vector<ObjME> jetEtaPhi_;
194 
195  std::vector<ObjME> elePtEta_;
196  std::vector<ObjME> eleEtaPhi_;
197 
198  std::vector<ObjME> muPtEta_;
199  std::vector<ObjME> muEtaPhi_;
200 
201  std::vector<ObjME> phoPtEta_;
202  std::vector<ObjME> phoEtaPhi_;
203 
204  std::vector<ObjME> bjetPtEta_;
205  std::vector<ObjME> bjetEtaPhi_;
206  std::vector<ObjME> bjetCSVHT_;
207 
208  std::unique_ptr<GenericTriggerEventFlag> num_genTriggerEventFlag_;
209  std::unique_ptr<GenericTriggerEventFlag> den_genTriggerEventFlag_;
210 
217 
219 
221 
222  unsigned int njets_;
223  unsigned int nelectrons_;
224  unsigned int nmuons_;
225  unsigned int nphotons_;
229  double HTcut_;
230  unsigned int nbjets_;
235 
236  bool applyMETcut_ = false;
237 
240  bool opsign_;
242  double MHTcut_;
243 
245 
248 };
249 
250 #endif // DQMOffline_Trigger_TopMonitor_h
dqm::reco::DQMStore DQMStore
Definition: TopMonitor.h:50
ObjME mu1Pt_mu2Pt_
Definition: TopMonitor.h:145
std::vector< double > elePt_variable_binning_2D_
Definition: TopMonitor.h:112
std::vector< ObjME > jetEta_variableBinning_
Definition: TopMonitor.h:188
StringCutObjectSelector< reco::Jet, true > bjetSelection_
Definition: TopMonitor.h:220
StringCutObjectSelector< reco::PFJet, true > jetSelection_
Definition: TopMonitor.h:212
ObjME jetVsLS_
Definition: TopMonitor.h:125
std::vector< double > jetEta_variable_binning_
Definition: TopMonitor.h:103
std::string btagalgoName_
Definition: TopMonitor.h:232
StringCutObjectSelector< reco::PFJet, true > HTdefinition_
Definition: TopMonitor.h:216
std::vector< ObjME > jetEtaPhi_
Definition: TopMonitor.h:193
std::vector< ObjME > bjetPtEta_
Definition: TopMonitor.h:204
ObjME jetEtaPhi_HEP17_
Definition: TopMonitor.h:132
double bJetMuDeltaRmax_
Definition: TopMonitor.h:227
std::vector< double > muEta_variable_binning_
Definition: TopMonitor.h:104
ObjME DeltaR_jet_Mu_
Definition: TopMonitor.h:156
ObjME muEta_phoEta_
Definition: TopMonitor.h:154
std::vector< ObjME > muPt_
Definition: TopMonitor.h:163
std::vector< ObjME > jetPtEta_
Definition: TopMonitor.h:192
MEbinning invMass_mumu_binning_
Definition: TopMonitor.h:95
std::vector< ObjME > bjetCSVHT_
Definition: TopMonitor.h:206
std::vector< ObjME > bjetPt_variableBinning_
Definition: TopMonitor.h:184
ObjME muVsLS_
Definition: TopMonitor.h:126
std::vector< ObjME > muEta_
Definition: TopMonitor.h:162
MEbinning HT_binning_
Definition: TopMonitor.h:92
ObjME eleEta_muEta_
Definition: TopMonitor.h:148
ObjME eventMHT_variableBinning_
Definition: TopMonitor.h:152
bool applyLeptonPVcuts_
Definition: TopMonitor.h:234
std::vector< ObjME > elePt_variableBinning_
Definition: TopMonitor.h:182
bool hltPathsAreValid_
Definition: TopMonitor.h:71
std::vector< double > jetPt_variable_binning_
Definition: TopMonitor.h:100
ObjME phoVsLS_
Definition: TopMonitor.h:128
ObjME ele1Pt_ele2Pt_
Definition: TopMonitor.h:143
ObjME ele1Eta_ele2Eta_
Definition: TopMonitor.h:144
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
ObjME elePt_eventHT_
Definition: TopMonitor.h:141
edm::EDGetTokenT< reco::VertexCollection > vtxToken_
Definition: TopMonitor.h:73
std::vector< ObjME > bjetCSV_
Definition: TopMonitor.h:180
StringCutObjectSelector< reco::MET, true > metSelection_
Definition: TopMonitor.h:211
std::vector< ObjME > phoEta_
Definition: TopMonitor.h:174
ObjME muMulti_
Definition: TopMonitor.h:136
std::vector< ObjME > eleEtaPhi_
Definition: TopMonitor.h:196
std::vector< double > muPt_variable_binning_
Definition: TopMonitor.h:101
ObjME metME_variableBinning_
Definition: TopMonitor.h:121
ProductID id() const
Definition: RefToBase.h:214
ObjME metME_
Definition: TopMonitor.h:120
MEbinning met_binning_
Definition: TopMonitor.h:87
edm::EDGetTokenT< reco::PFMETCollection > metToken_
Definition: TopMonitor.h:80
bool invMassCutInAllMuPairs_
Definition: TopMonitor.h:244
const bool requireValidHLTPaths_
Definition: TopMonitor.h:70
ObjME eventMHT_
Definition: TopMonitor.h:150
double bJetDeltaEtaMax_
Definition: TopMonitor.h:228
ObjME bjetVsLS_
Definition: TopMonitor.h:129
std::string folderName_
Definition: TopMonitor.h:68
ObjME metVsLS_
Definition: TopMonitor.h:122
TopMonitor(const edm::ParameterSet &)
Definition: TopMonitor.cc:18
edm::EDGetTokenT< reco::MuonCollection > muoToken_
Definition: TopMonitor.h:74
PVcut lepPVcuts_
Definition: TopMonitor.h:233
std::vector< ObjME > jetPt_variableBinning_
Definition: TopMonitor.h:183
bool enablePhotonPlot_
Definition: TopMonitor.h:246
unsigned int nphotons_
Definition: TopMonitor.h:225
ObjME elePt_jetPt_
Definition: TopMonitor.h:140
std::vector< ObjME > muPhi_
Definition: TopMonitor.h:161
std::vector< double > HT_variable_binning_
Definition: TopMonitor.h:99
std::vector< ObjME > muPt_variableBinning_
Definition: TopMonitor.h:181
int iEvent
Definition: GenABIO.cc:224
ObjME metPhiME_
Definition: TopMonitor.h:123
unsigned int njets_
Definition: TopMonitor.h:222
std::vector< ObjME > bjetPt_
Definition: TopMonitor.h:179
ObjME jetMulti_
Definition: TopMonitor.h:134
size_t key() const
Definition: RefToBase.h:219
std::vector< double > invMass_mumu_variable_binning_
Definition: TopMonitor.h:106
std::vector< double > MHT_variable_binning_
Definition: TopMonitor.h:107
bool operator()(const edm::RefToBase< reco::Jet > &j1, const edm::RefToBase< reco::Jet > &j2) const
Definition: TopMonitor.h:61
ObjME invMass_mumu_variableBinning_
Definition: TopMonitor.h:151
std::vector< ObjME > muEtaPhi_
Definition: TopMonitor.h:199
edm::EDGetTokenT< edm::View< reco::GsfElectron > > eleToken_
Definition: TopMonitor.h:75
std::vector< ObjME > jetEta_
Definition: TopMonitor.h:170
unsigned int nelectrons_
Definition: TopMonitor.h:223
std::vector< ObjME > phoEtaPhi_
Definition: TopMonitor.h:202
edm::EDGetTokenT< reco::PhotonCollection > phoToken_
Definition: TopMonitor.h:77
unsigned int nmuons_
Definition: TopMonitor.h:224
ObjME bjetMulti_
Definition: TopMonitor.h:138
ObjME eleVsLS_
Definition: TopMonitor.h:127
std::vector< double > met_variable_binning_
Definition: TopMonitor.h:98
std::vector< ObjME > jetPhi_
Definition: TopMonitor.h:169
std::vector< ObjME > eleEta_
Definition: TopMonitor.h:166
std::vector< ObjME > muPtEta_
Definition: TopMonitor.h:198
bool applyMETcut_
Definition: TopMonitor.h:236
std::vector< double > jetPt_variable_binning_2D_
Definition: TopMonitor.h:110
double MHTcut_
Definition: TopMonitor.h:242
std::vector< double > HT_variable_binning_2D_
Definition: TopMonitor.h:109
MEbinning MHT_binning_
Definition: TopMonitor.h:96
std::vector< double > phi_variable_binning_2D_
Definition: TopMonitor.h:118
std::vector< ObjME > jetPt_
Definition: TopMonitor.h:171
double HTcut_
Definition: TopMonitor.h:229
std::vector< ObjME > eleEta_variableBinning_
Definition: TopMonitor.h:187
ObjME elePt_muPt_
Definition: TopMonitor.h:147
std::vector< ObjME > elePhi_
Definition: TopMonitor.h:165
std::vector< double > jetEta_variable_binning_2D_
Definition: TopMonitor.h:114
ObjME invMass_mumu_
Definition: TopMonitor.h:149
std::vector< ObjME > bjetEta_variableBinning_
Definition: TopMonitor.h:189
std::vector< double > muPt_variable_binning_2D_
Definition: TopMonitor.h:111
StringCutObjectSelector< reco::Photon, true > phoSelection_
Definition: TopMonitor.h:215
unsigned int nbjets_
Definition: TopMonitor.h:230
std::map< edm::RefToBase< reco::Jet >, float, JetRefCompare > JetTagMap
Definition: TopMonitor.h:65
ObjME phoMulti_
Definition: TopMonitor.h:137
std::vector< ObjME > elePt_
Definition: TopMonitor.h:167
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: TopMonitor.cc:178
std::vector< ObjME > bjetEtaPhi_
Definition: TopMonitor.h:205
StringCutObjectSelector< reco::GsfElectron, true > eleSelection_
Definition: TopMonitor.h:213
ObjME htVsLS_
Definition: TopMonitor.h:130
std::vector< ObjME > phoPt_
Definition: TopMonitor.h:175
std::vector< double > elePt_variable_binning_
Definition: TopMonitor.h:102
MEbinning csv_binning_
Definition: TopMonitor.h:94
double workingpoint_
Definition: TopMonitor.h:231
ObjME mu1Eta_mu2Eta_
Definition: TopMonitor.h:146
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: TopMonitor.cc:1149
std::unique_ptr< GenericTriggerEventFlag > den_genTriggerEventFlag_
Definition: TopMonitor.h:209
double invMassUppercut_
Definition: TopMonitor.h:238
std::vector< ObjME > bjetEta_
Definition: TopMonitor.h:178
bool enableMETPlot_
Definition: TopMonitor.h:247
HLT enums.
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: TopMonitor.cc:703
MEbinning DR_binning_
Definition: TopMonitor.h:93
std::vector< ObjME > phoPtEta_
Definition: TopMonitor.h:201
ObjME muPt_phoPt_
Definition: TopMonitor.h:153
StringCutObjectSelector< reco::Vertex, true > vtxSelection_
Definition: TopMonitor.h:218
std::vector< ObjME > elePtEta_
Definition: TopMonitor.h:195
bool opsign_
Definition: TopMonitor.h:240
StringCutObjectSelector< reco::PFJet, true > MHTdefinition_
Definition: TopMonitor.h:241
edm::EDGetTokenT< reco::PFJetCollection > jetToken_
Definition: TopMonitor.h:78
MEbinning phi_binning_
Definition: TopMonitor.h:89
MEbinning eta_binning_
Definition: TopMonitor.h:91
edm::EDGetTokenT< edm::ValueMap< bool > > elecIDToken_
Definition: TopMonitor.h:76
ObjME eleMulti_
Definition: TopMonitor.h:135
std::vector< double > phoEta_variable_binning_2D_
Definition: TopMonitor.h:117
double leptJetDeltaRmin_
Definition: TopMonitor.h:226
std::vector< double > muEta_variable_binning_2D_
Definition: TopMonitor.h:115
MEbinning ls_binning_
Definition: TopMonitor.h:88
std::vector< double > eleEta_variable_binning_2D_
Definition: TopMonitor.h:116
std::unique_ptr< GenericTriggerEventFlag > num_genTriggerEventFlag_
Definition: TopMonitor.h:208
std::vector< ObjME > phoPhi_
Definition: TopMonitor.h:173
double invMassLowercut_
Definition: TopMonitor.h:239
dqm::reco::MonitorElement MonitorElement
Definition: TopMonitor.h:49
~TopMonitor() override
Definition: TopMonitor.cc:171
MEbinning pt_binning_
Definition: TopMonitor.h:90
std::vector< double > phoPt_variable_binning_2D_
Definition: TopMonitor.h:113
StringCutObjectSelector< reco::Muon, true > muoSelection_
Definition: TopMonitor.h:214
ObjME eventHT_variableBinning_
Definition: TopMonitor.h:159
std::vector< ObjME > muEta_variableBinning_
Definition: TopMonitor.h:186
std::vector< ObjME > bjetPhi_
Definition: TopMonitor.h:177
std::vector< edm::EDGetTokenT< reco::JetTagCollection > > jetTagTokens_
Definition: TopMonitor.h:79
std::vector< double > eleEta_variable_binning_
Definition: TopMonitor.h:105
ObjME eventHT_
Definition: TopMonitor.h:158