6 using namespace trigger;
17 typedef std::vector<edm::InputTag> vtag;
22 HltPaths_ = ps.
getParameter<vector<string> >(
"HltPaths");
26 ElectronToken_ = consumes<reco::GsfElectronCollection>(ps.
getParameter<
InputTag>(
"electronCollection"));
34 DiJetPFJetCollection_ = ps.
getParameter<std::vector<edm::InputTag> >(
"DiJetPFJetCollection");
35 for (std::vector<edm::InputTag>::const_iterator jetlabel = DiJetPFJetCollection_.begin(),
36 jetlabelEnd = DiJetPFJetCollection_.end();
37 jetlabel != jetlabelEnd;
39 DiJetPFJetToken_.push_back(consumes<reco::PFJetCollection>(*jetlabel));
44 ecalBarrelRecHitToken_ = consumes<EBRecHitCollection>(
47 ecalEndcapRecHitToken_ = consumes<EERecHitCollection>(
52 MuonDispToken_ = consumes<reco::TrackCollection>(ps.
getParameter<
InputTag>(
"displacedMuonCollection"));
54 MuonDispSAToken_ = consumes<reco::TrackCollection>(ps.
getParameter<
InputTag>(
"displacedSAMuonCollection"));
56 GenParticleToken_ = consumes<reco::GenParticleCollection>(ps.
getParameter<
InputTag>(
"genParticleCollection"));
66 dijet_PFJet1_pt_cut_ = ps.
getParameter<
double>(
"dijet_PFJet1_pt_cut");
67 dijet_PFJet2_pt_cut_ = ps.
getParameter<
double>(
"dijet_PFJet2_pt_cut");
69 dimuon_Muon1_pt_cut_ = ps.
getParameter<
double>(
"dimuon_Muon1_pt_cut");
70 dimuon_Muon2_pt_cut_ = ps.
getParameter<
double>(
"dimuon_Muon2_pt_cut");
72 dielectron_Electron1_pt_cut_ = ps.
getParameter<
double>(
"dielectron_Electron2_pt_cut");
73 dielectron_Electron2_pt_cut_ = ps.
getParameter<
double>(
"dielectron_Electron2_pt_cut");
75 diphoton_Photon1_pt_cut_ = ps.
getParameter<
double>(
"diphoton_Photon2_pt_cut");
76 diphoton_Photon2_pt_cut_ = ps.
getParameter<
double>(
"diphoton_Photon2_pt_cut");
78 monojet_PFJet_pt_cut_ = ps.
getParameter<
double>(
"monojet_PFJet_pt_cut");
79 monojet_PFJet_met_cut_ = ps.
getParameter<
double>(
"monojet_PFJet_met_cut");
81 monomuon_Muon_pt_cut_ = ps.
getParameter<
double>(
"monomuon_Muon_pt_cut");
82 monomuon_Muon_met_cut_ = ps.
getParameter<
double>(
"monomuon_Muon_met_cut");
84 monoelectron_Electron_pt_cut_ = ps.
getParameter<
double>(
"monoelectron_Electron_pt_cut");
85 monoelectron_Electron_met_cut_ = ps.
getParameter<
double>(
"monoelectron_Electron_met_cut");
87 monophoton_Photon_pt_cut_ = ps.
getParameter<
double>(
"monophoton_Photon_pt_cut");
88 monophoton_Photon_met_cut_ = ps.
getParameter<
double>(
"monophoton_Photon_met_cut");
90 dispFermion_eta_cut_ = ps.
getParameter<
double>(
"dispFermion_eta_cut");
91 dispFermion_pt_cut_ = ps.
getParameter<
double>(
"dispFermion_pt_cut");
109 for (
unsigned int icoll = 0;
icoll < DiJetPFJetCollection_.size(); ++
icoll) {
110 std::stringstream
ss;
111 ss <<
"Physics/Exotica/Dijets/" << DiJetPFJetCollection_[
icoll].label();
114 dijet_PFJet_pt.push_back(bei.
book1D(
"dijet_PFJet_pt",
"Pt of PFJet (GeV)", 50, 30.0, 5000));
115 dijet_PFJet_eta.push_back(bei.
book1D(
"dijet_PFJet_eta",
"#eta (PFJet)", 50, -2.5, 2.5));
116 dijet_PFJet_phi.push_back(bei.
book1D(
"dijet_PFJet_phi",
"#phi (PFJet)", 50, -3.14, 3.14));
117 dijet_PFJet_rapidity.push_back(bei.
book1D(
"dijet_PFJet_rapidity",
"Rapidity (PFJet)", 50, -6.0, 6.0));
118 dijet_PFJet_mass.push_back(bei.
book1D(
"dijet_PFJet_mass",
"Mass (PFJets)", 50, 0., 500.));
119 dijet_deltaPhiPFJet1PFJet2.push_back(
120 bei.
book1D(
"dijet_deltaPhiPFJet1PFJet2",
"#Delta#phi(Leading PFJet, Sub PFJet)", 40, 0., 3.15));
121 dijet_deltaEtaPFJet1PFJet2.push_back(
122 bei.
book1D(
"dijet_deltaEtaPFJet1PFJet2",
"#Delta#eta(Leading PFJet, Sub PFJet)", 40, -5., 5.));
123 dijet_deltaRPFJet1PFJet2.push_back(
124 bei.
book1D(
"dijet_deltaRPFJet1PFJet2",
"#DeltaR(Leading PFJet, Sub PFJet)", 50, 0., 6.));
125 dijet_invMassPFJet1PFJet2.push_back(
126 bei.
book1D(
"dijet_invMassPFJet1PFJet2",
"Leading PFJet, SubLeading PFJet Invariant mass (GeV)", 50, 0., 8000.));
127 dijet_PFchef.push_back(bei.
book1D(
"dijet_PFchef",
"Leading PFJet CHEF", 50, 0.0, 1.0));
128 dijet_PFnhef.push_back(bei.
book1D(
"dijet_PFnhef",
"Leading PFJet NHEF", 50, 0.0, 1.0));
129 dijet_PFcemf.push_back(bei.
book1D(
"dijet_PFcemf",
"Leading PFJet CEMF", 50, 0.0, 1.0));
130 dijet_PFnemf.push_back(bei.
book1D(
"dijet_PFnemf",
"Leading PFJEt NEMF", 50, 0.0, 1.0));
131 dijet_PFJetMulti.push_back(bei.
book1D(
"dijet_PFJetMulti",
"No. of PFJets", 10, 0., 10.));
135 dimuon_Muon_pt = bei.
book1D(
"dimuon_Muon_pt",
"Pt of Muon (GeV)", 50, 30.0, 2000);
136 dimuon_Muon_eta = bei.
book1D(
"dimuon_Muon_eta",
"#eta (Muon)", 50, -2.5, 2.5);
137 dimuon_Muon_phi = bei.
book1D(
"dimuon_Muon_phi",
"#phi (Muon)", 50, -3.14, 3.14);
138 dimuon_Charge = bei.
book1D(
"dimuon_Charge",
"Charge of the Muon", 10, -5., 5.);
139 dimuon_deltaEtaMuon1Muon2 =
140 bei.
book1D(
"dimuon_deltaEtaMuon1Muon2",
"#Delta#eta(Leading Muon, Sub Muon)", 40, -5., 5.);
141 dimuon_deltaPhiMuon1Muon2 =
142 bei.
book1D(
"dimuon_deltaPhiMuon1Muon2",
"#Delta#phi(Leading Muon, Sub Muon)", 40, 0., 3.15);
143 dimuon_deltaRMuon1Muon2 = bei.
book1D(
"dimuon_deltaRMuon1Muon2",
"#DeltaR(Leading Muon, Sub Muon)", 50, 0., 6.);
144 dimuon_invMassMuon1Muon2 =
145 bei.
book1D(
"dimuon_invMassMuon1Muon2",
"Leading Muon, SubLeading Muon Low Invariant mass (GeV)", 50, 500., 4500.);
146 dimuon_MuonMulti = bei.
book1D(
"dimuon_MuonMulti",
"No. of Muons", 10, 0., 10.);
149 dielectron_Electron_pt = bei.
book1D(
"dielectron_Electron_pt",
"Pt of Electron (GeV)", 50, 30.0, 2000);
150 dielectron_Electron_eta = bei.
book1D(
"dielectron_Electron_eta",
"#eta (Electron)", 50, -2.5, 2.5);
151 dielectron_Electron_phi = bei.
book1D(
"dielectron_Electron_phi",
"#phi (Electron)", 50, -3.14, 3.14);
152 dielectron_Charge = bei.
book1D(
"dielectron_Charge",
"Charge of the Electron", 10, -5., 5.);
153 dielectron_deltaEtaElectron1Electron2 =
154 bei.
book1D(
"dielectron_deltaEtaElectron1Electron2",
"#Delta#eta(Leading Electron, Sub Electron)", 40, -5., 5.);
155 dielectron_deltaPhiElectron1Electron2 =
156 bei.
book1D(
"dielectron_deltaPhiElectron1Electron2",
"#Delta#phi(Leading Electron, Sub Electron)", 40, 0., 3.15);
157 dielectron_deltaRElectron1Electron2 =
158 bei.
book1D(
"dielectron_deltaRElectron1Electron2",
"#DeltaR(Leading Electron, Sub Electron)", 50, 0., 6.);
159 dielectron_invMassElectron1Electron2 = bei.
book1D(
"dielectron_invMassElectron1Electron2",
160 "Leading Electron, SubLeading Electron Invariant mass (GeV)",
164 dielectron_ElectronMulti = bei.
book1D(
"dielectron_ElectronMulti",
"No. of Electrons", 10, 0., 10.);
167 diphoton_Photon_energy = bei.
book1D(
"diphoton_Photon_energy",
"Energy of Photon (GeV)", 50, 30.0, 300);
168 diphoton_Photon_et = bei.
book1D(
"diphoton_Photon_et",
"Et of Photon (GeV)", 50, 30.0, 300);
169 diphoton_Photon_pt = bei.
book1D(
"diphoton_Photon_pt",
"Pt of Photon (GeV)", 50, 30.0, 300);
170 diphoton_Photon_eta = bei.
book1D(
"diphoton_Photon_eta",
"#eta (Photon)", 50, -2.5, 2.5);
171 diphoton_Photon_etasc = bei.
book1D(
"diphoton_Photon_etasc",
"#eta sc(Photon)", 50, -2.5, 2.5);
172 diphoton_Photon_phi = bei.
book1D(
"diphoton_Photon_phi",
"#phi (Photon)", 50, -3.14, 3.14);
173 diphoton_Photon_hovere_eb = bei.
book1D(
"diphoton_Photon_hovere_eb",
"H/E (Photon) EB", 50, 0., 0.50);
174 diphoton_Photon_hovere_ee = bei.
book1D(
"diphoton_Photon_hovere_ee",
"H/E (Photon) EE", 50, 0., 0.50);
175 diphoton_Photon_sigmaietaieta_eb =
176 bei.
book1D(
"diphoton_Photon_sigmaietaieta_eb",
"#sigma_{i #eta i #eta} (Photon) EB", 50, 0., 0.03);
177 diphoton_Photon_sigmaietaieta_ee =
178 bei.
book1D(
"diphoton_Photon_sigmaietaieta_ee",
"#sigma_{i #eta i #eta} (Photon) EE", 50, 0., 0.03);
179 diphoton_Photon_trksumptsolidconedr03_eb =
180 bei.
book1D(
"diphoton_Photon_trksumptsolidconedr03_eb",
"TrkSumPtDr03 (Photon) EB", 50, 0., 15.);
181 diphoton_Photon_trksumptsolidconedr03_ee =
182 bei.
book1D(
"diphoton_Photon_trksumptsolidconedr03_ee",
"TrkSumPtDr03 (Photon) EE", 50, 0., 15.);
183 diphoton_Photon_e1x5e5x5_eb = bei.
book1D(
"diphoton_Photon_e1x5e5x5_eb",
"E_{1x5}/E_{5x5} (Photon) EB", 50, 0., 1.);
184 diphoton_Photon_e1x5e5x5_ee = bei.
book1D(
"diphoton_Photon_e1x5e5x5_ee",
"E_{1x5}/E_{5x5} (Photon) EE", 50, 0., 1.);
185 diphoton_Photon_e2x5e5x5_eb = bei.
book1D(
"diphoton_Photon_e2x5e5x5_eb",
"E_{2x5}/E_{5x5} (Photon) EB", 50, 0., 1.);
186 diphoton_Photon_e2x5e5x5_ee = bei.
book1D(
"diphoton_Photon_e2x5e5x5_ee",
"E_{2x5}/E_{5x5} (Photon) EE", 50, 0., 1.);
187 diphoton_deltaEtaPhoton1Photon2 =
188 bei.
book1D(
"diphoton_deltaEtaPhoton1Photon2",
"#Delta#eta(SubLeading Photon, Sub Photon)", 40, -5., 5.);
189 diphoton_deltaPhiPhoton1Photon2 =
190 bei.
book1D(
"diphoton_deltaPhiPhoton1Photon2",
"#Delta#phi(SubLeading Photon, Sub Photon)", 40, 0., 3.15);
191 diphoton_deltaRPhoton1Photon2 =
192 bei.
book1D(
"diphoton_deltaRPhoton1Photon2",
"#DeltaR(SubLeading Photon, Sub Photon)", 50, 0., 6.);
193 diphoton_invMassPhoton1Photon2 = bei.
book1D(
194 "diphoton_invMassPhoton1Photon2",
"SubLeading Photon, SubSubLeading Photon Invariant mass (GeV)", 50, 500., 4500.);
195 diphoton_PhotonMulti = bei.
book1D(
"diphoton_PhotonMulti",
"No. of Photons", 10, 0., 10.);
198 monojet_PFJet_pt = bei.
book1D(
"monojet_PFJet_pt",
"Pt of MonoJet (GeV)", 50, 30.0, 1000);
199 monojet_PFJet_eta = bei.
book1D(
"monojet_PFJet_eta",
"#eta(MonoJet)", 50, -2.5, 2.5);
200 monojet_PFJet_phi = bei.
book1D(
"monojet_PFJet_phi",
"#phi(MonoJet)", 50, -3.14, 3.14);
201 monojet_PFMet = bei.
book1D(
"monojet_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 1000);
202 monojet_PFMet_phi = bei.
book1D(
"monojet_PFMet_phi",
"#phi(PFMET #phi)", 50, -3.14, 3.14);
203 monojet_PFJetPtOverPFMet = bei.
book1D(
"monojet_PFJetPtOverPFMet",
"Pt of MonoJet/MET (GeV)", 40, 0.0, 5.);
204 monojet_deltaPhiPFJetPFMet = bei.
book1D(
"monojet_deltaPhiPFJetPFMet",
"#Delta#phi(MonoJet, PFMet)", 40, 0., 3.15);
205 monojet_PFchef = bei.
book1D(
"monojet_PFchef",
"MonojetJet CHEF", 50, 0.0, 1.0);
206 monojet_PFnhef = bei.
book1D(
"monojet_PFnhef",
"MonojetJet NHEF", 50, 0.0, 1.0);
207 monojet_PFcemf = bei.
book1D(
"monojet_PFcemf",
"MonojetJet CEMF", 50, 0.0, 1.0);
208 monojet_PFnemf = bei.
book1D(
"monojet_PFnemf",
"MonojetJet NEMF", 50, 0.0, 1.0);
209 monojet_PFJetMulti = bei.
book1D(
"monojet_PFJetMulti",
"No. of PFJets", 10, 0., 10.);
212 monomuon_Muon_pt = bei.
book1D(
"monomuon_Muon_pt",
"Pt of Monomuon (GeV)", 50, 30.0, 2000);
213 monomuon_Muon_eta = bei.
book1D(
"monomuon_Muon_eta",
"#eta(Monomuon)", 50, -2.5, 2.5);
214 monomuon_Muon_phi = bei.
book1D(
"monomuon_Muon_phi",
"#phi(Monomuon)", 50, -3.14, 3.14);
215 monomuon_Charge = bei.
book1D(
"monomuon_Charge",
"Charge of the MonoMuon", 10, -5., 5.);
216 monomuon_PFMet = bei.
book1D(
"monomuon_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 2000);
217 monomuon_PFMet_phi = bei.
book1D(
"monomuon_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
218 monomuon_MuonPtOverPFMet = bei.
book1D(
"monomuon_MuonPtOverPFMet",
"Pt of Monomuon/PFMet", 40, 0.0, 5.);
219 monomuon_deltaPhiMuonPFMet = bei.
book1D(
"monomuon_deltaPhiMuonPFMet",
"#Delta#phi(Monomuon, PFMet)", 40, 0., 3.15);
220 monomuon_TransverseMass = bei.
book1D(
"monomuon_TransverseMass",
"Transverse Mass M_{T} GeV", 40, 200., 3000.);
221 monomuon_MuonMulti = bei.
book1D(
"monomuon_MuonMulti",
"No. of Muons", 10, 0., 10.);
224 monoelectron_Electron_pt = bei.
book1D(
"monoelectron_Electron_pt",
"Pt of Monoelectron (GeV)", 50, 30.0, 4000);
225 monoelectron_Electron_eta = bei.
book1D(
"monoelectron_Electron_eta",
"#eta(MonoElectron)", 50, -2.5, 2.5);
226 monoelectron_Electron_phi = bei.
book1D(
"monoelectron_Electron_phi",
"#phi(MonoElectron)", 50, -3.14, 3.14);
227 monoelectron_Charge = bei.
book1D(
"monoelectron_Charge",
"Charge of the MonoElectron", 10, -5., 5.);
228 monoelectron_PFMet = bei.
book1D(
"monoelectron_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 4000);
229 monoelectron_PFMet_phi = bei.
book1D(
"monoelectron_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
230 monoelectron_ElectronPtOverPFMet =
231 bei.
book1D(
"monoelectron_ElectronPtOverPFMet",
"Pt of Monoelectron/PFMet", 40, 0.0, 5.);
232 monoelectron_deltaPhiElectronPFMet =
233 bei.
book1D(
"monoelectron_deltaPhiElectronPFMet",
"#Delta#phi(MonoElectron, PFMet)", 40, 0., 3.15);
234 monoelectron_TransverseMass = bei.
book1D(
"monoelectron_TransverseMass",
"Transverse Mass M_{T} GeV", 40, 200., 4000.);
235 monoelectron_ElectronMulti = bei.
book1D(
"monoelectron_ElectronMulti",
"No. of Electrons", 10, 0., 10.);
239 monophoton_Photon_energy = bei.
book1D(
"monophoton_Photon_energy",
"Energy of Leading Photon (GeV)", 50, 30.0, 1000);
240 monophoton_Photon_et = bei.
book1D(
"monophoton_Photon_et",
"Et of Leading Photon (GeV)", 50, 30.0, 1000);
241 monophoton_Photon_pt = bei.
book1D(
"monophoton_Photon_pt",
"Pt of Leading Photon (GeV)", 50, 30.0, 1000);
242 monophoton_Photon_eta = bei.
book1D(
"monophoton_Photon_eta",
"#eta (Leading Photon)", 50, -2.5, 2.5);
243 monophoton_Photon_etasc = bei.
book1D(
"monophoton_Photon_etasc",
"#eta sc(Leading Photon)", 50, -2.5, 2.5);
244 monophoton_Photon_phi = bei.
book1D(
"monophoton_Photon_phi",
"#phi(Leading Photon)", 50, -3.14, 3.14);
245 monophoton_Photon_hovere = bei.
book1D(
"monophoton_Photon_hovere",
"H/E (Leading Photon)", 50, 0., 0.50);
246 monophoton_Photon_sigmaietaieta =
247 bei.
book1D(
"monophoton_Photon_sigmaietaieta",
"#sigma_{i #eta i #eta} (Leading Photon)", 50, 0., 0.03);
248 monophoton_Photon_trksumptsolidconedr03 =
249 bei.
book1D(
"monophoton_Photon_trksumptsolidconedr03",
"TrkSumPtDr03 (Leading Photon)", 50, 0., 15.);
250 monophoton_Photon_e1x5e5x5 = bei.
book1D(
"monophoton_Photon_e1x5e5x5",
"E_{1x5}/E_{5x5} (Leading Photon)", 50, 0., 1.);
251 monophoton_Photon_e2x5e5x5 = bei.
book1D(
"monophoton_Photon_e2x5e5x5",
"E_{2x5}/E_{5x5} (Leading Photon)", 50, 0., 1.);
252 monophoton_PFMet = bei.
book1D(
"monophoton_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 1000);
253 monophoton_PFMet_phi = bei.
book1D(
"monophoton_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
254 monophoton_PhotonPtOverPFMet = bei.
book1D(
"monophoton_PhotonPtOverPFMet",
"Pt of Monophoton/PFMet", 40, 0.0, 5.);
255 monophoton_deltaPhiPhotonPFMet =
256 bei.
book1D(
"monophoton_deltaPhiPhotonPFMet",
"#Delta#phi(SubLeading Photon, PFMet)", 40, 0., 3.15);
257 monophoton_PhotonMulti = bei.
book1D(
"monophoton_PhotonMulti",
"No. of Photons", 10, 0., 10.);
261 dispElec_track_effi_lxy = bei.
bookProfile(
"dispElec_track_effi_lxy",
262 "Electron channel; transverse decay length (cm); track reco efficiency",
269 dispElec_elec_effi_lxy = bei.
bookProfile(
"dispElec_elec_effi_lxy",
270 "Electron channel; transverse decay length (cm); electron reco efficiency",
277 dispMuon_track_effi_lxy = bei.
bookProfile(
"dispMuon_track_effi_lxy",
278 "Muon channel; transverse decay length (cm); track reco efficiency",
285 dispMuon_muon_effi_lxy = bei.
bookProfile(
"dispMuon_muon_effi_lxy",
286 "Muon channel; transverse decay length (cm); muon reco efficiency",
293 dispMuon_muonDisp_effi_lxy =
295 "Muon channel; transverse decay length (cm); displacedMuon reco efficiency",
302 dispMuon_muonDispSA_effi_lxy =
304 "Muon channel; transverse decay length (cm); displacedSAMuon reco efficiency",
312 dispJet_track_effi_lxy = bei.
bookProfile(
"dispJet_track_effi_lxy",
313 "Jet channel; transverse decay length (cm); track reco efficiency",
331 bool ValidTriggers = iEvent.
getByToken(TriggerToken_, TriggerResults_);
336 bool ValidVertices = iEvent.
getByToken(VertexToken_, VertexCollection_);
341 bool ValidGedGsfElectron = iEvent.
getByToken(ElectronToken_, ElectronCollection_);
342 if (!ValidGedGsfElectron)
346 bool ValidPFMuon = iEvent.
getByToken(MuonToken_, MuonCollection_);
351 bool ValidPFJet = iEvent.
getByToken(PFJetToken_, pfJetCollection_);
352 pfjets = *pfJetCollection_;
357 bool ValidPFMET = iEvent.
getByToken(PFMETToken_, pfMETCollection_);
362 bool ValidCaloPhoton = iEvent.
getByToken(PhotonToken_, PhotonCollection_);
363 if (!ValidCaloPhoton)
367 bool ValidTracks = iEvent.
getByToken(TrackToken_, TrackCollection_);
372 iEvent.
getByToken(MuonDispToken_, MuonDispCollection_);
373 iEvent.
getByToken(MuonDispSAToken_, MuonDispSACollection_);
376 bool ValidGenParticles = iEvent.
getByToken(GenParticleToken_, GenCollection_);
379 bool ValidJetCorrector = iEvent.
getByToken(JetCorrectorToken_, JetCorrector_);
383 int N_Triggers = TriggerResults_->size();
384 int N_GoodTriggerPaths = HltPaths_.size();
385 bool triggered_event =
false;
387 for (
int i_Trig = 0; i_Trig < N_Triggers; ++i_Trig) {
388 if (TriggerResults_.product()->accept(i_Trig)) {
389 for (
int n = 0;
n < N_GoodTriggerPaths;
n++) {
390 if (trigName.
triggerName(i_Trig).find(HltPaths_[
n]) != std::string::npos) {
391 triggered_event =
true;
396 if (triggered_event ==
false)
399 for (
int i = 0;
i < 2;
i++) {
423 ElectronCharge[
i] = 0.;
425 PhotonEnergy[
i] = 0.;
431 PhotonHoverE[
i] = 0.;
432 PhotonSigmaIetaIeta[
i] = 0.;
433 PhotonTrkSumPtSolidConeDR03[
i] = 0.;
434 PhotonE1x5E5x5[
i] = 0.;
435 PhotonE2x5E5x5[
i] = 0.;
439 dijet_countPFJet_ = 0;
440 monojet_countPFJet_ = 0;
442 PFJetCollection::const_iterator pfjet_ = pfjets.begin();
443 for (; pfjet_ != pfjets.end(); ++pfjet_) {
445 if (ValidJetCorrector)
446 scale = JetCorrector_->correction(*pfjet_);
447 if (scale * pfjet_->pt() > PFJetPt[0]) {
448 PFJetPt[1] = PFJetPt[0];
449 PFJetPx[1] = PFJetPx[0];
450 PFJetPy[1] = PFJetPy[0];
451 PFJetEta[1] = PFJetEta[0];
452 PFJetPhi[1] = PFJetPhi[0];
453 PFJetRapidity[1] = PFJetRapidity[0];
454 PFJetMass[1] = PFJetMass[0];
455 PFJetNHEF[1] = PFJetNHEF[0];
456 PFJetCHEF[1] = PFJetCHEF[0];
457 PFJetNEMF[1] = PFJetNEMF[0];
458 PFJetCEMF[1] = PFJetCEMF[0];
460 PFJetPt[0] = scale * pfjet_->pt();
461 PFJetPx[0] = scale * pfjet_->px();
462 PFJetPy[0] = scale * pfjet_->py();
463 PFJetEta[0] = pfjet_->eta();
464 PFJetPhi[0] = pfjet_->phi();
465 PFJetRapidity[0] = pfjet_->rapidity();
466 PFJetMass[0] = pfjet_->mass();
467 PFJetNHEF[0] = pfjet_->neutralHadronEnergyFraction();
468 PFJetCHEF[0] = pfjet_->chargedHadronEnergyFraction();
469 PFJetNEMF[0] = pfjet_->neutralEmEnergyFraction();
470 PFJetCEMF[0] = pfjet_->chargedEmEnergyFraction();
471 }
else if (scale * pfjet_->pt() < PFJetPt[0] && scale * pfjet_->pt() > PFJetPt[1]) {
472 PFJetPt[1] = scale * pfjet_->pt();
473 PFJetPx[1] = scale * pfjet_->px();
474 PFJetPy[1] = scale * pfjet_->py();
475 PFJetEta[1] = pfjet_->eta();
476 PFJetPhi[1] = pfjet_->phi();
477 PFJetRapidity[1] = pfjet_->rapidity();
478 PFJetMass[1] = pfjet_->mass();
479 PFJetNHEF[1] = pfjet_->neutralHadronEnergyFraction();
480 PFJetCHEF[1] = pfjet_->chargedHadronEnergyFraction();
481 PFJetNEMF[1] = pfjet_->neutralEmEnergyFraction();
482 PFJetCEMF[1] = pfjet_->chargedEmEnergyFraction();
485 if (scale * pfjet_->pt() > dijet_PFJet1_pt_cut_)
487 if (scale * pfjet_->pt() > dijet_PFJet1_pt_cut_)
488 monojet_countPFJet_++;
492 reco::VertexCollection::const_iterator primaryVertex_ = vertexCollection.begin();
494 dimuon_countMuon_ = 0;
495 monomuon_countMuon_ = 0;
496 reco::MuonCollection::const_iterator muon_ = MuonCollection_->begin();
497 for (; muon_ != MuonCollection_->end(); muon_++) {
500 if (muon_->isGlobalMuon() && muon_->globalTrack()->hitPattern().numberOfValidMuonHits() > 0 &&
501 muon_->numberOfMatchedStations() > 1 && muon_->innerTrack()->hitPattern().trackerLayersWithMeasurement() > 5 &&
502 muon_->innerTrack()->hitPattern().numberOfValidPixelHits() > 0 &&
503 muon_->muonBestTrack()->ptError() / muon_->muonBestTrack()->pt() < 0.3 &&
504 fabs(muon_->muonBestTrack()->dxy(primaryVertex_->position())) < 0.2 &&
505 fabs(muon_->bestTrack()->dz(primaryVertex_->position())) < 0.5 && fabs(muon_->eta()) < 2.1)
508 if (HighPt ==
true) {
509 if (muon_->pt() > MuonPt[0]) {
510 MuonPt[1] = MuonPt[0];
511 MuonPx[1] = MuonPx[0];
512 MuonPy[1] = MuonPy[0];
513 MuonEta[1] = MuonEta[0];
514 MuonPhi[1] = MuonPhi[0];
515 MuonCharge[1] = MuonCharge[0];
517 MuonPt[0] = muon_->pt();
518 MuonPx[0] = muon_->px();
519 MuonPy[0] = muon_->py();
520 MuonEta[0] = muon_->eta();
521 MuonPhi[0] = muon_->phi();
522 MuonCharge[0] = muon_->charge();
525 if (muon_->pt() > dimuon_Muon1_pt_cut_)
527 if (muon_->pt() > dimuon_Muon1_pt_cut_)
528 monomuon_countMuon_++;
531 dielectron_countElectron_ = 0;
532 monoelectron_countElectron_ = 0;
533 reco::GsfElectronCollection::const_iterator electron_ = ElectronCollection_->begin();
534 for (; electron_ != ElectronCollection_->end(); electron_++) {
536 if (electron_->e5x5() <= 0)
538 if (electron_->gsfTrack().isNull())
540 bool HEPP_ele =
false;
541 double sceta = electron_->caloPosition().eta();
542 double dEtaIn = fabs(electron_->deltaEtaSuperClusterTrackAtVtx());
543 double dPhiIn = fabs(electron_->deltaPhiSuperClusterTrackAtVtx());
544 double HoverE = electron_->hadronicOverEm();
545 int missingHits = electron_->gsfTrack()->hitPattern().numberOfLostTrackerHits(HitPattern::MISSING_INNER_HITS);
546 double dxy = electron_->gsfTrack()->dxy(primaryVertex_->position());
547 double tkIso = electron_->dr03TkSumPt();
548 double e2x5Fraction = electron_->e2x5Max() / electron_->e5x5();
549 double e1x5Fraction = electron_->e1x5() / electron_->e5x5();
550 double scSigmaIetaIeta = electron_->scSigmaIEtaIEta();
551 if (electron_->ecalDriven() && electron_->pt() > 35.) {
552 if (fabs(sceta) < 1.442) {
553 if (fabs(dEtaIn) < 0.005 && fabs(dPhiIn) < 0.06 && HoverE < 0.05 && tkIso < 5. && missingHits <= 1 &&
554 fabs(dxy) < 0.02 && (e2x5Fraction > 0.94 || e1x5Fraction > 0.83))
556 }
else if (fabs(sceta) > 1.56 && fabs(sceta) < 2.5) {
557 if (fabs(dEtaIn) < 0.007 && fabs(dPhiIn) < 0.06 && HoverE < 0.05 && tkIso < 5. && missingHits <= 1 &&
558 fabs(dxy) < 0.02 && scSigmaIetaIeta < 0.03)
563 if (HEPP_ele ==
false)
565 if (electron_->pt() > ElectronPt[0]) {
566 ElectronPt[1] = ElectronPt[0];
567 ElectronPx[1] = ElectronPx[0];
568 ElectronPy[1] = ElectronPy[0];
569 ElectronEta[1] = ElectronEta[0];
570 ElectronPhi[1] = ElectronPhi[0];
571 ElectronCharge[1] = ElectronCharge[0];
573 ElectronPt[0] = electron_->pt();
574 ElectronPx[0] = electron_->px();
575 ElectronPy[0] = electron_->py();
576 ElectronEta[0] = electron_->eta();
577 ElectronPhi[0] = electron_->phi();
578 ElectronCharge[0] = electron_->charge();
580 if (electron_->pt() > dielectron_Electron1_pt_cut_)
581 dielectron_countElectron_++;
582 if (electron_->pt() > dielectron_Electron1_pt_cut_)
583 monoelectron_countElectron_++;
586 diphoton_countPhoton_ = 0.;
587 reco::PhotonCollection::const_iterator photon_ = PhotonCollection_->begin();
588 for (; photon_ != PhotonCollection_->end(); ++photon_) {
589 if (photon_->pt() > PhotonPt[0]) {
590 PhotonEnergy[1] = PhotonEnergy[0];
591 PhotonPt[1] = PhotonPt[0];
592 PhotonEt[1] = PhotonEt[0];
593 PhotonEta[1] = PhotonEta[0];
594 PhotonEtaSc[1] = PhotonEtaSc[0];
595 PhotonPhi[1] = PhotonPhi[0];
596 PhotonHoverE[1] = PhotonHoverE[0];
597 PhotonSigmaIetaIeta[1] = PhotonSigmaIetaIeta[0];
598 PhotonTrkSumPtSolidConeDR03[1] = PhotonTrkSumPtSolidConeDR03[0];
599 PhotonE1x5E5x5[1] = PhotonE1x5E5x5[0];
600 PhotonE2x5E5x5[1] = PhotonE2x5E5x5[0];
602 PhotonEnergy[0] = photon_->energy();
603 PhotonPt[0] = photon_->pt();
604 PhotonEt[0] = photon_->et();
605 PhotonEta[0] = photon_->eta();
606 PhotonEtaSc[0] = photon_->caloPosition().eta();
607 PhotonPhi[0] = photon_->phi();
608 PhotonHoverE[0] = photon_->hadronicOverEm();
609 PhotonSigmaIetaIeta[0] = photon_->sigmaIetaIeta();
610 PhotonTrkSumPtSolidConeDR03[0] = photon_->trkSumPtSolidConeDR03();
611 PhotonE1x5E5x5[0] = photon_->e1x5() / photon_->e5x5();
612 PhotonE2x5E5x5[0] = photon_->e2x5() / photon_->e5x5();
614 if (photon_->pt() > dielectron_Electron1_pt_cut_)
615 diphoton_countPhoton_++;
624 analyzeDiJets(iEvent);
625 analyzeDiMuons(iEvent);
626 analyzeDiElectrons(iEvent);
627 analyzeDiPhotons(iEvent);
630 analyzeMonoJets(iEvent);
631 analyzeMonoMuons(iEvent);
632 analyzeMonoElectrons(iEvent);
635 if (ValidGenParticles) {
636 analyzeDisplacedLeptons(iEvent, iSetup);
637 analyzeDisplacedJets(iEvent, iSetup);
646 const unsigned int stop1 = 1000006;
647 const unsigned int stop2 = 2000006;
648 const float deltaRcut = 0.01;
649 const float invPtcut = 0.1;
654 unsigned int idPdg =
abs(
gen.pdgId());
656 if (idPdg == stop1 || idPdg == stop2) {
657 unsigned int nDau =
gen.numberOfDaughters();
658 for (
unsigned int i = 0;
i < nDau;
i++) {
661 if (fabs(dau->
eta()) < dispFermion_eta_cut_ && dau->
pt() > dispFermion_pt_cut_) {
662 unsigned int pdgIdDau =
abs(dau->
pdgId());
664 if (pdgIdDau == 11 || pdgIdDau == 13) {
667 float lxy = dau->
vertex().rho();
670 GlobalVector genP = this->getGenParticleTrajectoryAtBeamline(iSetup, dau);
672 if (pdgIdDau == 11) {
675 bool recoedTrk =
false;
677 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 / dau->
pt() - 1 / trk.pt()) < invPtcut) {
682 dispElec_track_effi_lxy->Fill(lxy, recoedTrk);
685 bool recoedE =
false;
687 if (
reco::deltaR(genP, eReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / eReco.pt()) < invPtcut)
690 dispElec_elec_effi_lxy->Fill(lxy, recoedE);
692 }
else if (pdgIdDau == 13) {
695 bool recoedTrk =
false;
697 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 / dau->
pt() - 1 / trk.pt()) < invPtcut) {
702 dispMuon_track_effi_lxy->Fill(lxy, recoedTrk);
705 bool recoedMu =
false;
706 for (
const reco::Muon& muReco : *MuonCollection_) {
707 if (
reco::deltaR(genP, muReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / muReco.pt()) < invPtcut)
710 dispMuon_muon_effi_lxy->Fill(lxy, recoedMu);
713 bool recoedMuDisp =
false;
714 for (
const reco::Track& muDispReco : *MuonDispCollection_) {
715 if (
reco::deltaR(genP, muDispReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / muDispReco.pt()) < invPtcut)
718 dispMuon_muonDisp_effi_lxy->Fill(lxy, recoedMuDisp);
721 bool recoedMuDispSA =
false;
722 for (
const reco::Track& muDispSAReco : *MuonDispSACollection_) {
724 fabs(1 / dau->
pt() - 1 / muDispSAReco.pt()) < invPtcut)
725 recoedMuDispSA =
true;
727 dispMuon_muonDispSA_effi_lxy->Fill(lxy, recoedMuDispSA);
742 auto isRhadron = [](
unsigned int pdgId) {
return (pdgId / 100) == 10006 || (pdgId / 1000) == 1006; };
744 const float deltaRcut = 0.01;
745 const float invPtcut = 0.1;
750 unsigned int idPdg =
abs(
gen.pdgId());
752 if (idPdg == 11 || idPdg == 13 || idPdg == 211 || idPdg == 321 || idPdg == 2212) {
754 if (fabs(
gen.eta()) < dispFermion_eta_cut_ &&
gen.pt() > dispFermion_pt_cut_) {
758 bool foundParton =
false;
761 unsigned int idPdgMoth =
abs(genMoth->
pdgId());
764 if ((idPdgMoth >= 1 && idPdgMoth <= 6) || idPdgMoth == 21)
767 if (isRhadron(idPdgMoth)) {
768 genRhadron = genMoth;
773 if (foundParton && genRhadron !=
nullptr) {
779 GlobalVector genP = this->getGenParticleTrajectoryAtBeamline(iSetup, &
gen);
782 bool recoedTrk =
false;
784 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 /
gen.pt() - 1 / trk.pt()) < invPtcut) {
789 dispJet_track_effi_lxy->Fill(lxy, recoedTrk);
820 for (
unsigned int icoll = 0;
icoll < DiJetPFJetCollection_.size(); ++
icoll) {
821 dijet_countPFJet_ = 0;
822 bool ValidDiJetPFJets = iEvent.
getByToken(DiJetPFJetToken_[
icoll], DiJetpfJetCollection_);
823 if (!ValidDiJetPFJets)
825 DiJetpfjets = *DiJetpfJetCollection_;
826 for (
int i = 0;
i < 2;
i++) {
837 PFJetCollection::const_iterator DiJetpfjet_ = DiJetpfjets.begin();
838 for (; DiJetpfjet_ != DiJetpfjets.end(); ++DiJetpfjet_) {
840 if (scale * DiJetpfjet_->pt() > PFJetPt[0]) {
841 PFJetPt[1] = PFJetPt[0];
842 PFJetPx[1] = PFJetPx[0];
843 PFJetPy[1] = PFJetPy[0];
844 PFJetEta[1] = PFJetEta[0];
845 PFJetPhi[1] = PFJetPhi[0];
846 PFJetRapidity[1] = DiJetpfjet_->rapidity();
847 PFJetMass[1] = DiJetpfjet_->mass();
848 PFJetNHEF[1] = PFJetNHEF[0];
849 PFJetCHEF[1] = PFJetCHEF[0];
850 PFJetNEMF[1] = PFJetNEMF[0];
851 PFJetCEMF[1] = PFJetCEMF[0];
852 PFJetPt[0] = scale * DiJetpfjet_->pt();
853 PFJetPx[0] = scale * DiJetpfjet_->px();
854 PFJetPy[0] = scale * DiJetpfjet_->py();
855 PFJetEta[0] = DiJetpfjet_->eta();
856 PFJetPhi[0] = DiJetpfjet_->phi();
857 PFJetRapidity[0] = DiJetpfjet_->rapidity();
858 PFJetMass[0] = DiJetpfjet_->mass();
859 PFJetNHEF[0] = DiJetpfjet_->neutralHadronEnergyFraction();
860 PFJetCHEF[0] = DiJetpfjet_->chargedHadronEnergyFraction();
861 PFJetNEMF[0] = DiJetpfjet_->neutralEmEnergyFraction();
862 PFJetCEMF[0] = DiJetpfjet_->chargedEmEnergyFraction();
863 }
else if (scale * DiJetpfjet_->pt() < PFJetPt[0] && scale * DiJetpfjet_->pt() > PFJetPt[1]) {
864 PFJetPt[1] = scale * DiJetpfjet_->pt();
865 PFJetPx[1] = scale * DiJetpfjet_->px();
866 PFJetPy[1] = scale * DiJetpfjet_->py();
867 PFJetEta[1] = DiJetpfjet_->eta();
868 PFJetPhi[1] = DiJetpfjet_->phi();
869 PFJetRapidity[1] = DiJetpfjet_->rapidity();
870 PFJetMass[1] = DiJetpfjet_->mass();
871 PFJetNHEF[1] = DiJetpfjet_->neutralHadronEnergyFraction();
872 PFJetCHEF[1] = DiJetpfjet_->chargedHadronEnergyFraction();
873 PFJetNEMF[1] = DiJetpfjet_->neutralEmEnergyFraction();
874 PFJetCEMF[1] = DiJetpfjet_->chargedEmEnergyFraction();
877 if (scale * DiJetpfjet_->pt() > dijet_PFJet1_pt_cut_)
880 if (PFJetPt[0] > dijet_PFJet1_pt_cut_ && PFJetPt[1] > dijet_PFJet2_pt_cut_) {
881 dijet_PFJet_pt[
icoll]->Fill(PFJetPt[0]);
882 dijet_PFJet_eta[
icoll]->Fill(PFJetEta[0]);
883 dijet_PFJet_phi[
icoll]->Fill(PFJetPhi[0]);
884 dijet_PFJet_rapidity[
icoll]->Fill(PFJetRapidity[0]);
885 dijet_PFJet_mass[
icoll]->Fill(PFJetMass[0]);
886 dijet_PFJet_pt[
icoll]->Fill(PFJetPt[1]);
887 dijet_PFJet_eta[
icoll]->Fill(PFJetEta[1]);
888 dijet_PFJet_phi[
icoll]->Fill(PFJetPhi[1]);
889 dijet_PFJet_rapidity[
icoll]->Fill(PFJetRapidity[1]);
890 dijet_PFJet_mass[
icoll]->Fill(PFJetMass[1]);
891 dijet_deltaPhiPFJet1PFJet2[
icoll]->Fill(
deltaPhi(PFJetPhi[0], PFJetPhi[1]));
892 dijet_deltaEtaPFJet1PFJet2[
icoll]->Fill(PFJetEta[0] - PFJetEta[1]);
893 dijet_deltaRPFJet1PFJet2[
icoll]->Fill(
deltaR(PFJetEta[0], PFJetPhi[0], PFJetEta[1], PFJetPhi[1]));
894 dijet_invMassPFJet1PFJet2[
icoll]->Fill(
895 sqrt(2 * PFJetPt[0] * PFJetPt[1] * (cosh(PFJetEta[0] - PFJetEta[1]) -
cos(PFJetPhi[0] - PFJetPhi[1]))));
896 dijet_PFchef[
icoll]->Fill(PFJetCHEF[0]);
897 dijet_PFnhef[
icoll]->Fill(PFJetNHEF[0]);
898 dijet_PFcemf[
icoll]->Fill(PFJetCEMF[0]);
899 dijet_PFnemf[
icoll]->Fill(PFJetNEMF[0]);
900 dijet_PFJetMulti[
icoll]->Fill(dijet_countPFJet_);
906 if (MuonPt[0] > dimuon_Muon1_pt_cut_ && MuonPt[1] > dimuon_Muon2_pt_cut_ && MuonCharge[0] * MuonCharge[1] == -1) {
907 dimuon_Muon_pt->Fill(MuonPt[0]);
908 dimuon_Muon_eta->Fill(MuonEta[0]);
909 dimuon_Muon_phi->Fill(MuonPhi[0]);
910 dimuon_Muon_pt->Fill(MuonPt[1]);
911 dimuon_Muon_eta->Fill(MuonEta[1]);
912 dimuon_Muon_phi->Fill(MuonPhi[1]);
913 dimuon_Charge->Fill(MuonCharge[0]);
914 dimuon_Charge->Fill(MuonCharge[1]);
915 dimuon_deltaPhiMuon1Muon2->Fill(
deltaPhi(MuonPhi[0], MuonPhi[1]));
916 dimuon_deltaEtaMuon1Muon2->Fill(MuonEta[0] - MuonEta[1]);
917 dimuon_deltaRMuon1Muon2->Fill(
deltaR(MuonEta[0], MuonPhi[0], MuonEta[1], MuonPhi[1]));
918 dimuon_invMassMuon1Muon2->Fill(
919 sqrt(2 * MuonPt[0] * MuonPt[1] * (cosh(MuonEta[0] - MuonEta[1]) -
cos(MuonPhi[0] - MuonPhi[1]))));
920 dimuon_MuonMulti->Fill(dimuon_countMuon_);
925 if (ElectronPt[0] > dielectron_Electron1_pt_cut_ && ElectronPt[1] > dielectron_Electron2_pt_cut_ &&
926 ElectronCharge[0] * ElectronCharge[1] == -1.) {
927 dielectron_Electron_pt->Fill(ElectronPt[0]);
928 dielectron_Electron_eta->Fill(ElectronEta[0]);
929 dielectron_Electron_phi->Fill(ElectronPhi[0]);
930 dielectron_Electron_pt->Fill(ElectronPt[1]);
931 dielectron_Electron_eta->Fill(ElectronEta[1]);
932 dielectron_Electron_phi->Fill(ElectronPhi[1]);
933 dielectron_Charge->Fill(ElectronCharge[0]);
934 dielectron_Charge->Fill(ElectronCharge[1]);
935 dielectron_deltaPhiElectron1Electron2->Fill(
deltaPhi(ElectronPhi[0], ElectronPhi[1]));
936 dielectron_deltaEtaElectron1Electron2->Fill(ElectronEta[0] - ElectronEta[1]);
937 dielectron_deltaRElectron1Electron2->Fill(
deltaR(ElectronEta[0], ElectronPhi[0], ElectronEta[1], ElectronPhi[1]));
938 dielectron_invMassElectron1Electron2->Fill(
939 sqrt(2 * ElectronPt[0] * ElectronPt[1] *
940 (cosh(ElectronEta[0] - ElectronEta[1]) -
cos(ElectronPhi[0] - ElectronPhi[1]))));
941 dielectron_ElectronMulti->Fill(dielectron_countElectron_);
946 if (PhotonPt[0] > diphoton_Photon1_pt_cut_ && PhotonPt[1] > diphoton_Photon2_pt_cut_) {
947 diphoton_Photon_energy->Fill(PhotonEnergy[0]);
948 diphoton_Photon_pt->Fill(PhotonPt[0]);
949 diphoton_Photon_et->Fill(PhotonEt[0]);
950 diphoton_Photon_eta->Fill(PhotonEta[0]);
951 diphoton_Photon_etasc->Fill(PhotonEtaSc[0]);
952 diphoton_Photon_phi->Fill(PhotonPhi[0]);
953 if (fabs(PhotonEtaSc[0]) < 1.442) {
954 diphoton_Photon_hovere_eb->Fill(PhotonHoverE[0]);
955 diphoton_Photon_sigmaietaieta_eb->Fill(PhotonSigmaIetaIeta[0]);
956 diphoton_Photon_trksumptsolidconedr03_eb->Fill(PhotonTrkSumPtSolidConeDR03[0]);
957 diphoton_Photon_e1x5e5x5_eb->Fill(PhotonE1x5E5x5[0]);
958 diphoton_Photon_e2x5e5x5_eb->Fill(PhotonE2x5E5x5[0]);
960 if (fabs(PhotonEtaSc[0]) > 1.566 && fabs(PhotonEtaSc[0]) < 2.5) {
961 diphoton_Photon_hovere_ee->Fill(PhotonHoverE[0]);
962 diphoton_Photon_sigmaietaieta_ee->Fill(PhotonSigmaIetaIeta[0]);
963 diphoton_Photon_trksumptsolidconedr03_ee->Fill(PhotonTrkSumPtSolidConeDR03[0]);
964 diphoton_Photon_e1x5e5x5_ee->Fill(PhotonE1x5E5x5[0]);
965 diphoton_Photon_e2x5e5x5_ee->Fill(PhotonE2x5E5x5[0]);
967 diphoton_Photon_energy->Fill(PhotonEnergy[1]);
968 diphoton_Photon_pt->Fill(PhotonPt[1]);
969 diphoton_Photon_et->Fill(PhotonEt[1]);
970 diphoton_Photon_eta->Fill(PhotonEta[1]);
971 diphoton_Photon_etasc->Fill(PhotonEtaSc[1]);
972 diphoton_Photon_phi->Fill(PhotonPhi[1]);
973 if (fabs(PhotonEtaSc[1]) < 1.4442) {
974 diphoton_Photon_hovere_eb->Fill(PhotonHoverE[1]);
975 diphoton_Photon_sigmaietaieta_eb->Fill(PhotonSigmaIetaIeta[1]);
976 diphoton_Photon_trksumptsolidconedr03_eb->Fill(PhotonTrkSumPtSolidConeDR03[1]);
977 diphoton_Photon_e1x5e5x5_eb->Fill(PhotonE1x5E5x5[1]);
978 diphoton_Photon_e2x5e5x5_eb->Fill(PhotonE2x5E5x5[1]);
980 if (fabs(PhotonEtaSc[1]) > 1.566 && fabs(PhotonEtaSc[1]) < 2.5) {
981 diphoton_Photon_hovere_ee->Fill(PhotonHoverE[1]);
982 diphoton_Photon_sigmaietaieta_ee->Fill(PhotonSigmaIetaIeta[1]);
983 diphoton_Photon_trksumptsolidconedr03_ee->Fill(PhotonTrkSumPtSolidConeDR03[1]);
984 diphoton_Photon_e1x5e5x5_ee->Fill(PhotonE1x5E5x5[1]);
985 diphoton_Photon_e2x5e5x5_ee->Fill(PhotonE2x5E5x5[1]);
987 diphoton_deltaPhiPhoton1Photon2->Fill(
deltaPhi(PhotonPhi[0], PhotonPhi[1]));
988 diphoton_deltaEtaPhoton1Photon2->Fill(PhotonEta[0] - PhotonEta[1]);
989 diphoton_deltaRPhoton1Photon2->Fill(
deltaR(PhotonEta[0], PhotonPhi[0], PhotonEta[1], PhotonPhi[1]));
990 diphoton_invMassPhoton1Photon2->Fill(
991 sqrt(2 * PhotonPt[0] * PhotonPt[1] * (cosh(PhotonEta[0] - PhotonEta[1]) -
cos(PhotonPhi[0] - PhotonPhi[1]))));
992 diphoton_PhotonMulti->Fill(diphoton_countPhoton_);
998 const PFMET pfmet = pfmetcol->front();
999 if (PFJetPt[0] > monojet_PFJet_pt_cut_ && pfmet.
et() > monojet_PFJet_met_cut_) {
1000 monojet_PFJet_pt->Fill(PFJetPt[0]);
1001 monojet_PFJet_eta->Fill(PFJetEta[0]);
1002 monojet_PFJet_phi->Fill(PFJetPhi[0]);
1003 monojet_PFMet->Fill(pfmet.
et());
1004 monojet_PFMet_phi->Fill(pfmet.
phi());
1005 monojet_PFJetPtOverPFMet->Fill(PFJetPt[0] / pfmet.
et());
1006 monojet_deltaPhiPFJetPFMet->Fill(
deltaPhi(PFJetPhi[0], pfmet.
phi()));
1007 monojet_PFchef->Fill(PFJetCHEF[0]);
1008 monojet_PFnhef->Fill(PFJetNHEF[0]);
1009 monojet_PFcemf->Fill(PFJetCEMF[0]);
1010 monojet_PFnemf->Fill(PFJetNEMF[0]);
1011 monojet_PFJetMulti->Fill(monojet_countPFJet_);
1017 const PFMET pfmet = pfmetcol->front();
1018 if (MuonPt[0] > monomuon_Muon_pt_cut_ && pfmet.
et() > monomuon_Muon_met_cut_) {
1019 monomuon_Muon_pt->Fill(MuonPt[0]);
1020 monomuon_Muon_eta->Fill(MuonEta[0]);
1021 monomuon_Muon_phi->Fill(MuonPhi[0]);
1022 monomuon_Charge->Fill(MuonCharge[0]);
1023 monomuon_PFMet->Fill(pfmet.
et());
1024 monomuon_PFMet_phi->Fill(pfmet.
phi());
1025 monomuon_MuonPtOverPFMet->Fill(MuonPt[0] / pfmet.
et());
1026 monomuon_deltaPhiMuonPFMet->Fill(
deltaPhi(MuonPhi[0], pfmet.
phi()));
1027 monomuon_TransverseMass->Fill(
sqrt(2 * MuonPt[0] * pfmet.
et() * (1 -
cos(
deltaPhi(MuonPhi[0], pfmet.
phi())))));
1028 monomuon_MuonMulti->Fill(monomuon_countMuon_);
1034 const PFMET pfmet = pfmetcol->front();
1035 if (ElectronPt[0] > monoelectron_Electron_pt_cut_ && pfmet.
et() > monoelectron_Electron_met_cut_) {
1036 monoelectron_Electron_pt->Fill(ElectronPt[0]);
1037 monoelectron_Electron_eta->Fill(ElectronEta[0]);
1038 monoelectron_Electron_phi->Fill(ElectronPhi[0]);
1039 monoelectron_Charge->Fill(ElectronCharge[0]);
1040 monoelectron_PFMet->Fill(pfmet.
et());
1041 monoelectron_PFMet_phi->Fill(pfmet.
phi());
1042 monoelectron_ElectronPtOverPFMet->Fill(ElectronPt[0] / pfmet.
et());
1043 monoelectron_deltaPhiElectronPFMet->Fill(
deltaPhi(ElectronPhi[0], pfmet.
phi()));
1044 monoelectron_TransverseMass->Fill(
1046 monoelectron_ElectronMulti->Fill(monoelectron_countElectron_);
1052 const PFMET pfmet = pfmetcol->front();
1053 if (PhotonPt[0] > monophoton_Photon_pt_cut_ && pfmet.
et() > monophoton_Photon_met_cut_) {
1054 monophoton_Photon_energy->Fill(PhotonEnergy[0]);
1055 monophoton_Photon_pt->Fill(PhotonPt[0]);
1056 monophoton_Photon_et->Fill(PhotonEt[0]);
1057 monophoton_Photon_eta->Fill(PhotonEta[0]);
1058 monophoton_Photon_etasc->Fill(PhotonEtaSc[0]);
1059 monophoton_Photon_phi->Fill(PhotonPhi[0]);
1060 monophoton_Photon_hovere->Fill(PhotonHoverE[0]);
1061 monophoton_Photon_sigmaietaieta->Fill(PhotonSigmaIetaIeta[0]);
1062 monophoton_Photon_trksumptsolidconedr03->Fill(PhotonTrkSumPtSolidConeDR03[0]);
1063 monophoton_Photon_e1x5e5x5->Fill(PhotonE1x5E5x5[0]);
1064 monophoton_Photon_e2x5e5x5->Fill(PhotonE2x5E5x5[0]);
1065 monophoton_PFMet->Fill(pfmet.
et());
1066 monophoton_PFMet_phi->Fill(pfmet.
phi());
1067 monophoton_PhotonPtOverPFMet->Fill(PhotonPt[0] / pfmet.
et());
1068 monophoton_deltaPhiPhotonPFMet->Fill(
deltaPhi(PhotonPhi[0], pfmet.
phi()));
1069 monophoton_PhotonMulti->Fill(monophoton_countPhoton_);
virtual void analyzeMonoElectrons(edm::Event const &e)
virtual void analyzeDiJets(edm::Event const &e)
T getUntrackedParameter(std::string const &, T const &) const
double pz() const final
z coordinate of momentum vector
const Candidate * mother(size_type=0) const override
return mother at a given position, i = 0, ... numberOfMothers() - 1 (read only mode) ...
virtual void analyzeMonoMuons(edm::Event const &e)
double pt() const final
transverse momentum
ExoticaDQM(const edm::ParameterSet &ps)
double vz() const override
z coordinate of vertex position
virtual void setCurrentFolder(std::string const &fullpath)
void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override
virtual void analyzeMonoJets(edm::Event const &e)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Global3DPoint GlobalPoint
double vy() const override
y coordinate of vertex position
virtual void analyzeDiMuons(edm::Event const &e)
std::vector< Vertex > VertexCollection
collection of Vertex objects
void bookHistograms(DQMStore::IBooker &bei, edm::Run const &, edm::EventSetup const &) override
const Point & vertex() const override
vertex position (overwritten by PF...)
size_t numberOfMothers() const override
number of mothers
virtual void analyzeDisplacedJets(edm::Event const &e, const edm::EventSetup &s)
edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const override
virtual GlobalVector getGenParticleTrajectoryAtBeamline(const edm::EventSetup &iSetup, const reco::GenParticle *gen)
int pdgId() const final
PDG identifier.
bool getData(T &iHolder) const
double px() const final
x coordinate of momentum vector
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
virtual void analyzeDiPhotons(edm::Event const &e)
Cos< T >::type cos(const T &t)
virtual void analyzeDisplacedLeptons(edm::Event const &e, const edm::EventSetup &s)
Abs< T >::type abs(const T &t)
virtual const Point & vertex() const =0
vertex position
double py() const final
y coordinate of momentum vector
double vx() const override
x coordinate of vertex position
GlobalVector momentum() const
FTS const & trackStateAtPCA() const
constexpr auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
virtual void analyzeMonoPhotons(edm::Event const &e)
Log< level::Info, false > LogInfo
std::string const & triggerName(unsigned int index) const
T getParameter(std::string const &) const
double et() const final
transverse energy
virtual void analyzeDiElectrons(edm::Event const &e)
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
double phi() const final
momentum azimuthal angle
std::vector< std::string > vstring
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
int charge() const final
electric charge
Global3DVector GlobalVector
double eta() const final
momentum pseudorapidity