test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ExoticaDQM.h
Go to the documentation of this file.
1 #ifndef ExoticaDQM_H
2 #define ExoticaDQM_H
3 
4 #include <memory>
5 
6 // DQM
10 
11 // Framework
25 
26 // Trigger
30 
31 // Candidate handling
69 
70 // Other
73 
74 // ROOT
75 #include "TLorentzVector.h"
76 
77 // STDLIB
78 #include <iostream>
79 #include <iomanip>
80 #include <fstream>
81 #include <stdio.h>
82 #include <string>
83 #include <sstream>
84 #include <math.h>
85 #include <vector>
86 #include <map>
87 
88 class ExoticaDQM: public DQMEDAnalyzer {
89 
90 public:
91 
92  ExoticaDQM(const edm::ParameterSet& ps);
93  virtual ~ExoticaDQM();
94 
95 protected:
96 
97  virtual void analyze(edm::Event const& e, edm::EventSetup const& eSetup);
98 
99  //Resonances
100  virtual void analyzeDiJets(edm::Event const& e);
101  virtual void analyzeDiMuons(edm::Event const& e);
102  virtual void analyzeDiElectrons(edm::Event const& e);
103  virtual void analyzeDiPhotons(edm::Event const& e);
104 
105  //Mono Searches
106  virtual void analyzeMonoJets(edm::Event const& e);
107  virtual void analyzeMonoMuons(edm::Event const& e);
108  virtual void analyzeMonoElectrons(edm::Event const& e);
109  virtual void analyzeMonoPhotons(edm::Event const& e);
110 
111 private:
112 
113  void bookHistograms(DQMStore::IBooker& bei, edm::Run const&,
114  edm::EventSetup const&) override;
115 
118 
120 
121  //Trigger
122  std::vector<std::string> HltPaths_;
125 
126  //Vertex
129 
130  // Electrons
133 
134  // Muons
137 
138  // Photons
141 
142  // Jets
146  // Nominal Jets
150 
151  //All Other Jets
152  std::vector<edm::EDGetTokenT<reco::PFJetCollection> > DiJetPFJetToken_;
153  std::vector<edm::InputTag> DiJetPFJetCollection_;
156 
157  // MET
160  //
163 
164  // ECAL RECHITS
167 
170 
172  // Parameters
174  // Cuts - MultiJets
175  // inputs
176 
178 
179  //Varibles Used
180  // PFJets
181  double PFJetPx[2];
182  double PFJetPy[2];
183  double PFJetPt[2];
184  double PFJetEta[2];
185  double PFJetPhi[2];
186  double PFJetRapidity[2];
187  double PFJetMass[2];
188  double PFJetNHEF[2];
189  double PFJetCHEF[2];
190  double PFJetNEMF[2];
191  double PFJetCEMF[2];
192 
193  // Muons
194  //
195  double MuonPx[2];
196  double MuonPy[2];
197  double MuonPt[2];
198  double MuonEta[2];
199  double MuonPhi[2];
200  double MuonCharge[2];
201 
202  // Electrons
203  //
204  double ElectronPx[2];
205  double ElectronPy[2];
206  double ElectronPt[2];
207  double ElectronEta[2];
208  double ElectronPhi[2];
209  double ElectronCharge[2];
210 
211  // Photon
212  //
213  double PhotonEnergy[2];
214  double PhotonPt[2];
215  double PhotonEt[2];
216  double PhotonEta[2];
217  double PhotonEtaSc[2];
218  double PhotonPhi[2];
219  double PhotonHoverE[2];
222  double PhotonE1x5E5x5[2];
223  double PhotonE2x5E5x5[2];
224 
226  // Histograms
228  // Histograms - Dijet
229  std::vector<MonitorElement*> dijet_PFJet_pt;
230  std::vector<MonitorElement*> dijet_PFJet_eta;
231  std::vector<MonitorElement*> dijet_PFJet_phi;
232  std::vector<MonitorElement*> dijet_PFJet_rapidity;
233  std::vector<MonitorElement*> dijet_PFJet_mass;
234  std::vector<MonitorElement*> dijet_deltaPhiPFJet1PFJet2;
235  std::vector<MonitorElement*> dijet_deltaEtaPFJet1PFJet2;
236  std::vector<MonitorElement*> dijet_deltaRPFJet1PFJet2;
237  std::vector<MonitorElement*> dijet_invMassPFJet1PFJet2;
238  std::vector<MonitorElement*> dijet_PFchef;
239  std::vector<MonitorElement*> dijet_PFnhef;
240  std::vector<MonitorElement*> dijet_PFcemf;
241  std::vector<MonitorElement*> dijet_PFnemf;
242  std::vector<MonitorElement*> dijet_PFJetMulti;
243  //
247 
249  // Histograms - DiMuon
250  //
260  //
264 
266  // Histograms - DiElectron
267  //
277  //
281 
283  // Histograms - DiPhoton
284  //
306  //
310 
312  // Histograms - MonoJet
313  //
326  //
330 
332  // Histograms - MonoMuon
333  //
344  //
348 
350  // Histograms - MonoElectron
351  //
362  //
366 
368  // Histograms - DiPhoton
369  //
386  //
390 
391 };
392 
393 
394 #endif
395 
396 /* Local Variables: */
397 /* show-trailing-whitespace: t */
398 /* truncate-lines: t */
399 /* End: */
MonitorElement * dielectron_Electron_phi
Definition: ExoticaDQM.h:270
virtual void analyzeMonoElectrons(edm::Event const &e)
Definition: ExoticaDQM.cc:698
double monomuon_Muon_pt_cut_
Definition: ExoticaDQM.h:345
double dimuon_Muon1_pt_cut_
Definition: ExoticaDQM.h:261
edm::Handle< reco::PhotonCollection > PhotonCollection_
Definition: ExoticaDQM.h:140
virtual void analyzeDiJets(edm::Event const &e)
Definition: ExoticaDQM.cc:501
edm::EDGetTokenT< reco::CaloMETCollection > CaloMETToken_
Definition: ExoticaDQM.h:158
MonitorElement * monojet_deltaPhiPFJetPFMet
Definition: ExoticaDQM.h:320
int dijet_countPFJet_
Definition: ExoticaDQM.h:246
MonitorElement * monojet_PFJet_eta
Definition: ExoticaDQM.h:315
MonitorElement * dielectron_deltaPhiElectron1Electron2
Definition: ExoticaDQM.h:273
double PhotonE2x5E5x5[2]
Definition: ExoticaDQM.h:223
MonitorElement * diphoton_Photon_e2x5e5x5_eb
Definition: ExoticaDQM.h:299
MonitorElement * diphoton_Photon_et
Definition: ExoticaDQM.h:287
double PhotonPt[2]
Definition: ExoticaDQM.h:214
MonitorElement * monomuon_Muon_eta
Definition: ExoticaDQM.h:335
virtual void analyzeMonoMuons(edm::Event const &e)
Definition: ExoticaDQM.cc:681
MonitorElement * monophoton_Photon_phi
Definition: ExoticaDQM.h:375
double PFJetPt[2]
Definition: ExoticaDQM.h:183
std::vector< MonitorElement * > dijet_PFJet_eta
Definition: ExoticaDQM.h:230
double PhotonEtaSc[2]
Definition: ExoticaDQM.h:217
ExoticaDQM(const edm::ParameterSet &ps)
Definition: ExoticaDQM.cc:13
double dielectron_Electron1_pt_cut_
Definition: ExoticaDQM.h:278
double MuonPx[2]
Definition: ExoticaDQM.h:195
MonitorElement * monojet_PFchef
Definition: ExoticaDQM.h:321
virtual void analyzeMonoJets(edm::Event const &e)
Definition: ExoticaDQM.cc:662
double dielectron_Electron2_pt_cut_
Definition: ExoticaDQM.h:279
double PhotonHoverE[2]
Definition: ExoticaDQM.h:219
MonitorElement * monoelectron_PFMet_phi
Definition: ExoticaDQM.h:358
MonitorElement * diphoton_Photon_sigmaietaieta_ee
Definition: ExoticaDQM.h:294
MonitorElement * monophoton_PFMet_phi
Definition: ExoticaDQM.h:383
double ElectronPy[2]
Definition: ExoticaDQM.h:205
double PFJetCHEF[2]
Definition: ExoticaDQM.h:189
MonitorElement * dimuon_deltaRMuon1Muon2
Definition: ExoticaDQM.h:257
double ElectronCharge[2]
Definition: ExoticaDQM.h:209
double MuonPy[2]
Definition: ExoticaDQM.h:196
edm::Handle< reco::CaloJetCollection > caloJetCollection_
Definition: ExoticaDQM.h:144
reco::PFJetCollection pfjets
Definition: ExoticaDQM.h:149
MonitorElement * monophoton_Photon_hovere
Definition: ExoticaDQM.h:376
MonitorElement * monophoton_Photon_energy
Definition: ExoticaDQM.h:371
edm::EDGetTokenT< reco::JetCorrector > JetCorrectorToken_
Definition: ExoticaDQM.h:168
std::vector< MonitorElement * > dijet_invMassPFJet1PFJet2
Definition: ExoticaDQM.h:237
virtual void analyzeDiMuons(edm::Event const &e)
Definition: ExoticaDQM.cc:576
double dijet_PFJet2_pt_cut_
Definition: ExoticaDQM.h:245
MonitorElement * monojet_PFMet_phi
Definition: ExoticaDQM.h:318
MonitorElement * dimuon_deltaEtaMuon1Muon2
Definition: ExoticaDQM.h:255
MonitorElement * diphoton_Photon_energy
Definition: ExoticaDQM.h:286
void bookHistograms(DQMStore::IBooker &bei, edm::Run const &, edm::EventSetup const &) override
Definition: ExoticaDQM.cc:97
int diphoton_countPhoton_
Definition: ExoticaDQM.h:309
MonitorElement * diphoton_PhotonMulti
Definition: ExoticaDQM.h:305
double PFJetNEMF[2]
Definition: ExoticaDQM.h:190
edm::Handle< reco::PFJetCollection > DiJetpfJetCollection_
Definition: ExoticaDQM.h:154
int monoelectron_countElectron_
Definition: ExoticaDQM.h:365
MonitorElement * diphoton_Photon_hovere_ee
Definition: ExoticaDQM.h:292
double PhotonEt[2]
Definition: ExoticaDQM.h:215
MonitorElement * monojet_PFJet_pt
Definition: ExoticaDQM.h:314
MonitorElement * diphoton_Photon_e1x5e5x5_ee
Definition: ExoticaDQM.h:298
MonitorElement * dielectron_Electron_eta
Definition: ExoticaDQM.h:269
edm::EDGetTokenT< reco::PhotonCollection > PhotonToken_
Definition: ExoticaDQM.h:139
edm::Handle< reco::MuonCollection > MuonCollection_
Definition: ExoticaDQM.h:136
edm::EDGetTokenT< edm::TriggerResults > TriggerToken_
Definition: ExoticaDQM.h:123
edm::Handle< reco::PFJetCollection > pfJetCollection_
Definition: ExoticaDQM.h:148
double MuonPt[2]
Definition: ExoticaDQM.h:197
double diphoton_Photon1_pt_cut_
Definition: ExoticaDQM.h:307
MonitorElement * monophoton_Photon_sigmaietaieta
Definition: ExoticaDQM.h:377
double PFJetNHEF[2]
Definition: ExoticaDQM.h:188
MonitorElement * monojet_PFnhef
Definition: ExoticaDQM.h:322
reco::helper::JetIDHelper * jetID
Definition: ExoticaDQM.h:177
double monojet_PFJet_met_cut_
Definition: ExoticaDQM.h:328
std::vector< edm::EDGetTokenT< reco::PFJetCollection > > DiJetPFJetToken_
Definition: ExoticaDQM.h:152
double diphoton_Photon2_pt_cut_
Definition: ExoticaDQM.h:308
double monophoton_Photon_pt_cut_
Definition: ExoticaDQM.h:387
MonitorElement * monomuon_MuonMulti
Definition: ExoticaDQM.h:343
std::vector< MonitorElement * > dijet_PFnhef
Definition: ExoticaDQM.h:239
std::vector< MonitorElement * > dijet_PFJetMulti
Definition: ExoticaDQM.h:242
std::vector< MonitorElement * > dijet_deltaEtaPFJet1PFJet2
Definition: ExoticaDQM.h:235
MonitorElement * monoelectron_Electron_phi
Definition: ExoticaDQM.h:354
MonitorElement * dielectron_ElectronMulti
Definition: ExoticaDQM.h:276
MonitorElement * diphoton_Photon_trksumptsolidconedr03_ee
Definition: ExoticaDQM.h:296
MonitorElement * monoelectron_ElectronPtOverPFMet
Definition: ExoticaDQM.h:357
double PFJetPx[2]
Definition: ExoticaDQM.h:181
MonitorElement * monomuon_PFMet_phi
Definition: ExoticaDQM.h:339
MonitorElement * dielectron_Charge
Definition: ExoticaDQM.h:271
MonitorElement * monojet_PFJetMulti
Definition: ExoticaDQM.h:325
std::vector< MonitorElement * > dijet_PFJet_rapidity
Definition: ExoticaDQM.h:232
MonitorElement * dimuon_invMassMuon1Muon2
Definition: ExoticaDQM.h:258
edm::Handle< reco::JetCorrector > JetCorrector_
Definition: ExoticaDQM.h:169
MonitorElement * monomuon_deltaPhiMuonPFMet
Definition: ExoticaDQM.h:341
MonitorElement * diphoton_Photon_e2x5e5x5_ee
Definition: ExoticaDQM.h:300
double dijet_PFJet1_pt_cut_
Definition: ExoticaDQM.h:244
virtual void analyzeDiPhotons(edm::Event const &e)
Definition: ExoticaDQM.cc:612
int dimuon_countMuon_
Definition: ExoticaDQM.h:263
edm::Handle< reco::VertexCollection > VertexCollection_
Definition: ExoticaDQM.h:128
MonitorElement * diphoton_Photon_trksumptsolidconedr03_eb
Definition: ExoticaDQM.h:295
MonitorElement * monophoton_Photon_e1x5e5x5
Definition: ExoticaDQM.h:379
MonitorElement * monoelectron_deltaPhiElectronPFMet
Definition: ExoticaDQM.h:359
MonitorElement * diphoton_deltaEtaPhoton1Photon2
Definition: ExoticaDQM.h:301
int dielectron_countElectron_
Definition: ExoticaDQM.h:280
edm::EDGetTokenT< reco::GsfElectronCollection > ElectronToken_
Definition: ExoticaDQM.h:131
std::vector< MonitorElement * > dijet_deltaRPFJet1PFJet2
Definition: ExoticaDQM.h:236
MonitorElement * monojet_PFMet
Definition: ExoticaDQM.h:317
MonitorElement * monoelectron_PFMet
Definition: ExoticaDQM.h:356
int nEvents_
Definition: ExoticaDQM.h:117
double ElectronEta[2]
Definition: ExoticaDQM.h:207
double monoelectron_Electron_pt_cut_
Definition: ExoticaDQM.h:363
int monomuon_countMuon_
Definition: ExoticaDQM.h:347
edm::EDGetTokenT< reco::MuonCollection > MuonToken_
Definition: ExoticaDQM.h:135
double dimuon_Muon2_pt_cut_
Definition: ExoticaDQM.h:262
MonitorElement * monomuon_TransverseMass
Definition: ExoticaDQM.h:342
edm::Handle< reco::GsfElectronCollection > ElectronCollection_
Definition: ExoticaDQM.h:132
double ElectronPt[2]
Definition: ExoticaDQM.h:206
double MuonCharge[2]
Definition: ExoticaDQM.h:200
edm::Handle< edm::TriggerResults > TriggerResults_
Definition: ExoticaDQM.h:124
MonitorElement * monojet_PFJet_phi
Definition: ExoticaDQM.h:316
double monomuon_Muon_met_cut_
Definition: ExoticaDQM.h:346
double PFJetRapidity[2]
Definition: ExoticaDQM.h:186
MonitorElement * monojet_PFcemf
Definition: ExoticaDQM.h:323
MonitorElement * dimuon_Muon_pt
Definition: ExoticaDQM.h:251
MonitorElement * monophoton_PFMet
Definition: ExoticaDQM.h:381
virtual void analyzeMonoPhotons(edm::Event const &e)
Definition: ExoticaDQM.cc:715
double PhotonPhi[2]
Definition: ExoticaDQM.h:218
virtual void analyze(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: ExoticaDQM.cc:232
MonitorElement * monophoton_deltaPhiPhotonPFMet
Definition: ExoticaDQM.h:384
double monojet_PFJet_pt_cut_
Definition: ExoticaDQM.h:327
MonitorElement * diphoton_Photon_eta
Definition: ExoticaDQM.h:288
std::vector< MonitorElement * > dijet_PFJet_pt
Definition: ExoticaDQM.h:229
MonitorElement * monophoton_Photon_pt
Definition: ExoticaDQM.h:370
double ElectronPhi[2]
Definition: ExoticaDQM.h:208
MonitorElement * diphoton_Photon_pt
Definition: ExoticaDQM.h:285
int monophoton_countPhoton_
Definition: ExoticaDQM.h:389
MonitorElement * monomuon_PFMet
Definition: ExoticaDQM.h:338
reco::PFJetCollection DiJetpfjets
Definition: ExoticaDQM.h:155
edm::EDGetTokenT< reco::VertexCollection > VertexToken_
Definition: ExoticaDQM.h:127
MonitorElement * diphoton_Photon_sigmaietaieta_eb
Definition: ExoticaDQM.h:293
virtual ~ExoticaDQM()
Definition: ExoticaDQM.cc:90
MonitorElement * monoelectron_Electron_eta
Definition: ExoticaDQM.h:353
MonitorElement * monophoton_Photon_trksumptsolidconedr03
Definition: ExoticaDQM.h:378
MonitorElement * monophoton_Photon_e2x5e5x5
Definition: ExoticaDQM.h:380
MonitorElement * monophoton_PhotonMulti
Definition: ExoticaDQM.h:385
edm::EDGetTokenT< reco::CaloJetCollection > CaloJetToken_
Definition: ExoticaDQM.h:143
MonitorElement * monomuon_Charge
Definition: ExoticaDQM.h:337
reco::CaloJetCollection calojets
Definition: ExoticaDQM.h:145
MonitorElement * diphoton_deltaPhiPhoton1Photon2
Definition: ExoticaDQM.h:302
MonitorElement * monojet_PFJetPtOverPFMet
Definition: ExoticaDQM.h:319
double monophoton_Photon_met_cut_
Definition: ExoticaDQM.h:388
int monojet_countPFJet_
Definition: ExoticaDQM.h:329
double PhotonE1x5E5x5[2]
Definition: ExoticaDQM.h:222
MonitorElement * monophoton_PhotonPtOverPFMet
Definition: ExoticaDQM.h:382
double PhotonEta[2]
Definition: ExoticaDQM.h:216
MonitorElement * monojet_PFnemf
Definition: ExoticaDQM.h:324
double PFJetPy[2]
Definition: ExoticaDQM.h:182
edm::EDGetTokenT< EERecHitCollection > ecalEndcapRecHitToken_
Definition: ExoticaDQM.h:166
double PhotonEnergy[2]
Definition: ExoticaDQM.h:213
MonitorElement * dimuon_Muon_phi
Definition: ExoticaDQM.h:253
MonitorElement * dielectron_deltaRElectron1Electron2
Definition: ExoticaDQM.h:274
MonitorElement * monophoton_Photon_et
Definition: ExoticaDQM.h:372
std::vector< MonitorElement * > dijet_PFJet_phi
Definition: ExoticaDQM.h:231
int nLumiSecs_
Definition: ExoticaDQM.h:116
MonitorElement * diphoton_invMassPhoton1Photon2
Definition: ExoticaDQM.h:304
MonitorElement * monoelectron_Charge
Definition: ExoticaDQM.h:355
double ElectronPx[2]
Definition: ExoticaDQM.h:204
std::vector< PFJet > PFJetCollection
collection of PFJet objects
edm::Handle< reco::CaloMETCollection > caloMETCollection_
Definition: ExoticaDQM.h:159
std::vector< MonitorElement * > dijet_PFchef
Definition: ExoticaDQM.h:238
MonitorElement * dielectron_Electron_pt
Definition: ExoticaDQM.h:268
MonitorElement * dimuon_deltaPhiMuon1Muon2
Definition: ExoticaDQM.h:256
MonitorElement * dielectron_invMassElectron1Electron2
Definition: ExoticaDQM.h:275
MonitorElement * diphoton_Photon_hovere_eb
Definition: ExoticaDQM.h:291
edm::EDGetTokenT< reco::PFJetCollection > PFJetToken_
Definition: ExoticaDQM.h:147
MonitorElement * diphoton_Photon_e1x5e5x5_eb
Definition: ExoticaDQM.h:297
MonitorElement * monomuon_MuonPtOverPFMet
Definition: ExoticaDQM.h:340
std::vector< MonitorElement * > dijet_PFJet_mass
Definition: ExoticaDQM.h:233
MonitorElement * diphoton_Photon_phi
Definition: ExoticaDQM.h:290
MonitorElement * monoelectron_Electron_pt
Definition: ExoticaDQM.h:352
std::vector< MonitorElement * > dijet_PFnemf
Definition: ExoticaDQM.h:241
double PFJetCEMF[2]
Definition: ExoticaDQM.h:191
MonitorElement * monoelectron_TransverseMass
Definition: ExoticaDQM.h:360
MonitorElement * dimuon_MuonMulti
Definition: ExoticaDQM.h:259
virtual void analyzeDiElectrons(edm::Event const &e)
Definition: ExoticaDQM.cc:594
MonitorElement * diphoton_deltaRPhoton1Photon2
Definition: ExoticaDQM.h:303
MonitorElement * monomuon_Muon_pt
Definition: ExoticaDQM.h:334
double PFJetEta[2]
Definition: ExoticaDQM.h:184
MonitorElement * dimuon_Muon_eta
Definition: ExoticaDQM.h:252
double PFJetMass[2]
Definition: ExoticaDQM.h:187
std::vector< edm::InputTag > DiJetPFJetCollection_
Definition: ExoticaDQM.h:153
MonitorElement * dimuon_Charge
Definition: ExoticaDQM.h:254
std::vector< MonitorElement * > dijet_deltaPhiPFJet1PFJet2
Definition: ExoticaDQM.h:234
MonitorElement * monoelectron_ElectronMulti
Definition: ExoticaDQM.h:361
std::vector< std::string > HltPaths_
Definition: ExoticaDQM.h:122
double MuonPhi[2]
Definition: ExoticaDQM.h:199
std::vector< MonitorElement * > dijet_PFcemf
Definition: ExoticaDQM.h:240
double PhotonSigmaIetaIeta[2]
Definition: ExoticaDQM.h:220
MonitorElement * dielectron_deltaEtaElectron1Electron2
Definition: ExoticaDQM.h:272
edm::EDGetTokenT< reco::PFMETCollection > PFMETToken_
Definition: ExoticaDQM.h:161
MonitorElement * monomuon_Muon_phi
Definition: ExoticaDQM.h:336
double MuonEta[2]
Definition: ExoticaDQM.h:198
double monoelectron_Electron_met_cut_
Definition: ExoticaDQM.h:364
double PhotonTrkSumPtSolidConeDR03[2]
Definition: ExoticaDQM.h:221
MonitorElement * diphoton_Photon_etasc
Definition: ExoticaDQM.h:289
double PFJetPhi[2]
Definition: ExoticaDQM.h:185
Definition: Run.h:43
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
edm::Handle< reco::PFMETCollection > pfMETCollection_
Definition: ExoticaDQM.h:162
bool isValidHltConfig_
Definition: ExoticaDQM.h:119
MonitorElement * monophoton_Photon_etasc
Definition: ExoticaDQM.h:374
edm::EDGetTokenT< EBRecHitCollection > ecalBarrelRecHitToken_
Definition: ExoticaDQM.h:165
MonitorElement * monophoton_Photon_eta
Definition: ExoticaDQM.h:373