16 typedef std::vector<edm::InputTag> vtag;
22 ElectronToken_ = consumes<reco::GsfElectronCollection>(ps.
getParameter<
InputTag>(
"electronCollection"));
30 DiJetPFJetCollection_ = ps.
getParameter<std::vector<edm::InputTag> >(
"DiJetPFJetCollection");
31 for (std::vector<edm::InputTag>::const_iterator jetlabel = DiJetPFJetCollection_.begin(),
32 jetlabelEnd = DiJetPFJetCollection_.end();
33 jetlabel != jetlabelEnd;
35 DiJetPFJetToken_.push_back(consumes<reco::PFJetCollection>(*jetlabel));
40 ecalBarrelRecHitToken_ = consumes<EBRecHitCollection>(
43 ecalEndcapRecHitToken_ = consumes<EERecHitCollection>(
48 MuonDispToken_ = consumes<reco::TrackCollection>(ps.
getParameter<
InputTag>(
"displacedMuonCollection"));
50 MuonDispSAToken_ = consumes<reco::TrackCollection>(ps.
getParameter<
InputTag>(
"displacedSAMuonCollection"));
52 GenParticleToken_ = consumes<reco::GenParticleCollection>(ps.
getParameter<
InputTag>(
"genParticleCollection"));
62 dijet_PFJet1_pt_cut_ = ps.
getParameter<
double>(
"dijet_PFJet1_pt_cut");
63 dijet_PFJet2_pt_cut_ = ps.
getParameter<
double>(
"dijet_PFJet2_pt_cut");
65 dimuon_Muon1_pt_cut_ = ps.
getParameter<
double>(
"dimuon_Muon1_pt_cut");
66 dimuon_Muon2_pt_cut_ = ps.
getParameter<
double>(
"dimuon_Muon2_pt_cut");
68 dielectron_Electron1_pt_cut_ = ps.
getParameter<
double>(
"dielectron_Electron2_pt_cut");
69 dielectron_Electron2_pt_cut_ = ps.
getParameter<
double>(
"dielectron_Electron2_pt_cut");
71 diphoton_Photon1_pt_cut_ = ps.
getParameter<
double>(
"diphoton_Photon2_pt_cut");
72 diphoton_Photon2_pt_cut_ = ps.
getParameter<
double>(
"diphoton_Photon2_pt_cut");
74 monojet_PFJet_pt_cut_ = ps.
getParameter<
double>(
"monojet_PFJet_pt_cut");
75 monojet_PFJet_met_cut_ = ps.
getParameter<
double>(
"monojet_PFJet_met_cut");
77 monomuon_Muon_pt_cut_ = ps.
getParameter<
double>(
"monomuon_Muon_pt_cut");
78 monomuon_Muon_met_cut_ = ps.
getParameter<
double>(
"monomuon_Muon_met_cut");
80 monoelectron_Electron_pt_cut_ = ps.
getParameter<
double>(
"monoelectron_Electron_pt_cut");
81 monoelectron_Electron_met_cut_ = ps.
getParameter<
double>(
"monoelectron_Electron_met_cut");
83 monophoton_Photon_pt_cut_ = ps.
getParameter<
double>(
"monophoton_Photon_pt_cut");
84 monophoton_Photon_met_cut_ = ps.
getParameter<
double>(
"monophoton_Photon_met_cut");
86 dispFermion_eta_cut_ = ps.
getParameter<
double>(
"dispFermion_eta_cut");
87 dispFermion_pt_cut_ = ps.
getParameter<
double>(
"dispFermion_pt_cut");
105 for (
unsigned int icoll = 0;
icoll < DiJetPFJetCollection_.size(); ++
icoll) {
106 std::stringstream
ss;
107 ss <<
"Physics/Exotica/Dijets/" << DiJetPFJetCollection_[
icoll].label();
110 dijet_PFJet_pt.push_back(bei.
book1D(
"dijet_PFJet_pt",
"Pt of PFJet (GeV)", 50, 30.0, 5000));
111 dijet_PFJet_eta.push_back(bei.
book1D(
"dijet_PFJet_eta",
"#eta (PFJet)", 50, -2.5, 2.5));
112 dijet_PFJet_phi.push_back(bei.
book1D(
"dijet_PFJet_phi",
"#phi (PFJet)", 50, -3.14, 3.14));
113 dijet_PFJet_rapidity.push_back(bei.
book1D(
"dijet_PFJet_rapidity",
"Rapidity (PFJet)", 50, -6.0, 6.0));
114 dijet_PFJet_mass.push_back(bei.
book1D(
"dijet_PFJet_mass",
"Mass (PFJets)", 50, 0., 500.));
115 dijet_deltaPhiPFJet1PFJet2.push_back(
116 bei.
book1D(
"dijet_deltaPhiPFJet1PFJet2",
"#Delta#phi(Leading PFJet, Sub PFJet)", 40, 0., 3.15));
117 dijet_deltaEtaPFJet1PFJet2.push_back(
118 bei.
book1D(
"dijet_deltaEtaPFJet1PFJet2",
"#Delta#eta(Leading PFJet, Sub PFJet)", 40, -5., 5.));
119 dijet_deltaRPFJet1PFJet2.push_back(
120 bei.
book1D(
"dijet_deltaRPFJet1PFJet2",
"#DeltaR(Leading PFJet, Sub PFJet)", 50, 0., 6.));
121 dijet_invMassPFJet1PFJet2.push_back(
122 bei.
book1D(
"dijet_invMassPFJet1PFJet2",
"Leading PFJet, SubLeading PFJet Invariant mass (GeV)", 50, 0., 8000.));
123 dijet_PFchef.push_back(bei.
book1D(
"dijet_PFchef",
"Leading PFJet CHEF", 50, 0.0, 1.0));
124 dijet_PFnhef.push_back(bei.
book1D(
"dijet_PFnhef",
"Leading PFJet NHEF", 50, 0.0, 1.0));
125 dijet_PFcemf.push_back(bei.
book1D(
"dijet_PFcemf",
"Leading PFJet CEMF", 50, 0.0, 1.0));
126 dijet_PFnemf.push_back(bei.
book1D(
"dijet_PFnemf",
"Leading PFJEt NEMF", 50, 0.0, 1.0));
127 dijet_PFJetMulti.push_back(bei.
book1D(
"dijet_PFJetMulti",
"No. of PFJets", 10, 0., 10.));
131 dimuon_Muon_pt = bei.
book1D(
"dimuon_Muon_pt",
"Pt of Muon (GeV)", 50, 30.0, 2000);
132 dimuon_Muon_eta = bei.
book1D(
"dimuon_Muon_eta",
"#eta (Muon)", 50, -2.5, 2.5);
133 dimuon_Muon_phi = bei.
book1D(
"dimuon_Muon_phi",
"#phi (Muon)", 50, -3.14, 3.14);
134 dimuon_Charge = bei.
book1D(
"dimuon_Charge",
"Charge of the Muon", 10, -5., 5.);
135 dimuon_deltaEtaMuon1Muon2 =
136 bei.
book1D(
"dimuon_deltaEtaMuon1Muon2",
"#Delta#eta(Leading Muon, Sub Muon)", 40, -5., 5.);
137 dimuon_deltaPhiMuon1Muon2 =
138 bei.
book1D(
"dimuon_deltaPhiMuon1Muon2",
"#Delta#phi(Leading Muon, Sub Muon)", 40, 0., 3.15);
139 dimuon_deltaRMuon1Muon2 = bei.
book1D(
"dimuon_deltaRMuon1Muon2",
"#DeltaR(Leading Muon, Sub Muon)", 50, 0., 6.);
140 dimuon_invMassMuon1Muon2 =
141 bei.
book1D(
"dimuon_invMassMuon1Muon2",
"Leading Muon, SubLeading Muon Low Invariant mass (GeV)", 50, 500., 4500.);
142 dimuon_MuonMulti = bei.
book1D(
"dimuon_MuonMulti",
"No. of Muons", 10, 0., 10.);
145 dielectron_Electron_pt = bei.
book1D(
"dielectron_Electron_pt",
"Pt of Electron (GeV)", 50, 30.0, 2000);
146 dielectron_Electron_eta = bei.
book1D(
"dielectron_Electron_eta",
"#eta (Electron)", 50, -2.5, 2.5);
147 dielectron_Electron_phi = bei.
book1D(
"dielectron_Electron_phi",
"#phi (Electron)", 50, -3.14, 3.14);
148 dielectron_Charge = bei.
book1D(
"dielectron_Charge",
"Charge of the Electron", 10, -5., 5.);
149 dielectron_deltaEtaElectron1Electron2 =
150 bei.
book1D(
"dielectron_deltaEtaElectron1Electron2",
"#Delta#eta(Leading Electron, Sub Electron)", 40, -5., 5.);
151 dielectron_deltaPhiElectron1Electron2 =
152 bei.
book1D(
"dielectron_deltaPhiElectron1Electron2",
"#Delta#phi(Leading Electron, Sub Electron)", 40, 0., 3.15);
153 dielectron_deltaRElectron1Electron2 =
154 bei.
book1D(
"dielectron_deltaRElectron1Electron2",
"#DeltaR(Leading Electron, Sub Electron)", 50, 0., 6.);
155 dielectron_invMassElectron1Electron2 = bei.
book1D(
"dielectron_invMassElectron1Electron2",
156 "Leading Electron, SubLeading Electron Invariant mass (GeV)",
160 dielectron_ElectronMulti = bei.
book1D(
"dielectron_ElectronMulti",
"No. of Electrons", 10, 0., 10.);
163 diphoton_Photon_energy = bei.
book1D(
"diphoton_Photon_energy",
"Energy of Photon (GeV)", 50, 30.0, 300);
164 diphoton_Photon_et = bei.
book1D(
"diphoton_Photon_et",
"Et of Photon (GeV)", 50, 30.0, 300);
165 diphoton_Photon_pt = bei.
book1D(
"diphoton_Photon_pt",
"Pt of Photon (GeV)", 50, 30.0, 300);
166 diphoton_Photon_eta = bei.
book1D(
"diphoton_Photon_eta",
"#eta (Photon)", 50, -2.5, 2.5);
167 diphoton_Photon_etasc = bei.
book1D(
"diphoton_Photon_etasc",
"#eta sc(Photon)", 50, -2.5, 2.5);
168 diphoton_Photon_phi = bei.
book1D(
"diphoton_Photon_phi",
"#phi (Photon)", 50, -3.14, 3.14);
169 diphoton_Photon_hovere_eb = bei.
book1D(
"diphoton_Photon_hovere_eb",
"H/E (Photon) EB", 50, 0., 0.50);
170 diphoton_Photon_hovere_ee = bei.
book1D(
"diphoton_Photon_hovere_ee",
"H/E (Photon) EE", 50, 0., 0.50);
171 diphoton_Photon_sigmaietaieta_eb =
172 bei.
book1D(
"diphoton_Photon_sigmaietaieta_eb",
"#sigma_{i #eta i #eta} (Photon) EB", 50, 0., 0.03);
173 diphoton_Photon_sigmaietaieta_ee =
174 bei.
book1D(
"diphoton_Photon_sigmaietaieta_ee",
"#sigma_{i #eta i #eta} (Photon) EE", 50, 0., 0.03);
175 diphoton_Photon_trksumptsolidconedr03_eb =
176 bei.
book1D(
"diphoton_Photon_trksumptsolidconedr03_eb",
"TrkSumPtDr03 (Photon) EB", 50, 0., 15.);
177 diphoton_Photon_trksumptsolidconedr03_ee =
178 bei.
book1D(
"diphoton_Photon_trksumptsolidconedr03_ee",
"TrkSumPtDr03 (Photon) EE", 50, 0., 15.);
179 diphoton_Photon_e1x5e5x5_eb = bei.
book1D(
"diphoton_Photon_e1x5e5x5_eb",
"E_{1x5}/E_{5x5} (Photon) EB", 50, 0., 1.);
180 diphoton_Photon_e1x5e5x5_ee = bei.
book1D(
"diphoton_Photon_e1x5e5x5_ee",
"E_{1x5}/E_{5x5} (Photon) EE", 50, 0., 1.);
181 diphoton_Photon_e2x5e5x5_eb = bei.
book1D(
"diphoton_Photon_e2x5e5x5_eb",
"E_{2x5}/E_{5x5} (Photon) EB", 50, 0., 1.);
182 diphoton_Photon_e2x5e5x5_ee = bei.
book1D(
"diphoton_Photon_e2x5e5x5_ee",
"E_{2x5}/E_{5x5} (Photon) EE", 50, 0., 1.);
183 diphoton_deltaEtaPhoton1Photon2 =
184 bei.
book1D(
"diphoton_deltaEtaPhoton1Photon2",
"#Delta#eta(SubLeading Photon, Sub Photon)", 40, -5., 5.);
185 diphoton_deltaPhiPhoton1Photon2 =
186 bei.
book1D(
"diphoton_deltaPhiPhoton1Photon2",
"#Delta#phi(SubLeading Photon, Sub Photon)", 40, 0., 3.15);
187 diphoton_deltaRPhoton1Photon2 =
188 bei.
book1D(
"diphoton_deltaRPhoton1Photon2",
"#DeltaR(SubLeading Photon, Sub Photon)", 50, 0., 6.);
189 diphoton_invMassPhoton1Photon2 = bei.
book1D(
190 "diphoton_invMassPhoton1Photon2",
"SubLeading Photon, SubSubLeading Photon Invariant mass (GeV)", 50, 500., 4500.);
191 diphoton_PhotonMulti = bei.
book1D(
"diphoton_PhotonMulti",
"No. of Photons", 10, 0., 10.);
194 monojet_PFJet_pt = bei.
book1D(
"monojet_PFJet_pt",
"Pt of MonoJet (GeV)", 50, 30.0, 1000);
195 monojet_PFJet_eta = bei.
book1D(
"monojet_PFJet_eta",
"#eta(MonoJet)", 50, -2.5, 2.5);
196 monojet_PFJet_phi = bei.
book1D(
"monojet_PFJet_phi",
"#phi(MonoJet)", 50, -3.14, 3.14);
197 monojet_PFMet = bei.
book1D(
"monojet_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 1000);
198 monojet_PFMet_phi = bei.
book1D(
"monojet_PFMet_phi",
"#phi(PFMET #phi)", 50, -3.14, 3.14);
199 monojet_PFJetPtOverPFMet = bei.
book1D(
"monojet_PFJetPtOverPFMet",
"Pt of MonoJet/MET (GeV)", 40, 0.0, 5.);
200 monojet_deltaPhiPFJetPFMet = bei.
book1D(
"monojet_deltaPhiPFJetPFMet",
"#Delta#phi(MonoJet, PFMet)", 40, 0., 3.15);
201 monojet_PFchef = bei.
book1D(
"monojet_PFchef",
"MonojetJet CHEF", 50, 0.0, 1.0);
202 monojet_PFnhef = bei.
book1D(
"monojet_PFnhef",
"MonojetJet NHEF", 50, 0.0, 1.0);
203 monojet_PFcemf = bei.
book1D(
"monojet_PFcemf",
"MonojetJet CEMF", 50, 0.0, 1.0);
204 monojet_PFnemf = bei.
book1D(
"monojet_PFnemf",
"MonojetJet NEMF", 50, 0.0, 1.0);
205 monojet_PFJetMulti = bei.
book1D(
"monojet_PFJetMulti",
"No. of PFJets", 10, 0., 10.);
208 monomuon_Muon_pt = bei.
book1D(
"monomuon_Muon_pt",
"Pt of Monomuon (GeV)", 50, 30.0, 2000);
209 monomuon_Muon_eta = bei.
book1D(
"monomuon_Muon_eta",
"#eta(Monomuon)", 50, -2.5, 2.5);
210 monomuon_Muon_phi = bei.
book1D(
"monomuon_Muon_phi",
"#phi(Monomuon)", 50, -3.14, 3.14);
211 monomuon_Charge = bei.
book1D(
"monomuon_Charge",
"Charge of the MonoMuon", 10, -5., 5.);
212 monomuon_PFMet = bei.
book1D(
"monomuon_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 2000);
213 monomuon_PFMet_phi = bei.
book1D(
"monomuon_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
214 monomuon_MuonPtOverPFMet = bei.
book1D(
"monomuon_MuonPtOverPFMet",
"Pt of Monomuon/PFMet", 40, 0.0, 5.);
215 monomuon_deltaPhiMuonPFMet = bei.
book1D(
"monomuon_deltaPhiMuonPFMet",
"#Delta#phi(Monomuon, PFMet)", 40, 0., 3.15);
216 monomuon_TransverseMass = bei.
book1D(
"monomuon_TransverseMass",
"Transverse Mass M_{T} GeV", 40, 200., 3000.);
217 monomuon_MuonMulti = bei.
book1D(
"monomuon_MuonMulti",
"No. of Muons", 10, 0., 10.);
220 monoelectron_Electron_pt = bei.
book1D(
"monoelectron_Electron_pt",
"Pt of Monoelectron (GeV)", 50, 30.0, 4000);
221 monoelectron_Electron_eta = bei.
book1D(
"monoelectron_Electron_eta",
"#eta(MonoElectron)", 50, -2.5, 2.5);
222 monoelectron_Electron_phi = bei.
book1D(
"monoelectron_Electron_phi",
"#phi(MonoElectron)", 50, -3.14, 3.14);
223 monoelectron_Charge = bei.
book1D(
"monoelectron_Charge",
"Charge of the MonoElectron", 10, -5., 5.);
224 monoelectron_PFMet = bei.
book1D(
"monoelectron_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 4000);
225 monoelectron_PFMet_phi = bei.
book1D(
"monoelectron_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
226 monoelectron_ElectronPtOverPFMet =
227 bei.
book1D(
"monoelectron_ElectronPtOverPFMet",
"Pt of Monoelectron/PFMet", 40, 0.0, 5.);
228 monoelectron_deltaPhiElectronPFMet =
229 bei.
book1D(
"monoelectron_deltaPhiElectronPFMet",
"#Delta#phi(MonoElectron, PFMet)", 40, 0., 3.15);
230 monoelectron_TransverseMass = bei.
book1D(
"monoelectron_TransverseMass",
"Transverse Mass M_{T} GeV", 40, 200., 4000.);
231 monoelectron_ElectronMulti = bei.
book1D(
"monoelectron_ElectronMulti",
"No. of Electrons", 10, 0., 10.);
235 monophoton_Photon_energy = bei.
book1D(
"monophoton_Photon_energy",
"Energy of Leading Photon (GeV)", 50, 30.0, 1000);
236 monophoton_Photon_et = bei.
book1D(
"monophoton_Photon_et",
"Et of Leading Photon (GeV)", 50, 30.0, 1000);
237 monophoton_Photon_pt = bei.
book1D(
"monophoton_Photon_pt",
"Pt of Leading Photon (GeV)", 50, 30.0, 1000);
238 monophoton_Photon_eta = bei.
book1D(
"monophoton_Photon_eta",
"#eta (Leading Photon)", 50, -2.5, 2.5);
239 monophoton_Photon_etasc = bei.
book1D(
"monophoton_Photon_etasc",
"#eta sc(Leading Photon)", 50, -2.5, 2.5);
240 monophoton_Photon_phi = bei.
book1D(
"monophoton_Photon_phi",
"#phi(Leading Photon)", 50, -3.14, 3.14);
241 monophoton_Photon_hovere = bei.
book1D(
"monophoton_Photon_hovere",
"H/E (Leading Photon)", 50, 0., 0.50);
242 monophoton_Photon_sigmaietaieta =
243 bei.
book1D(
"monophoton_Photon_sigmaietaieta",
"#sigma_{i #eta i #eta} (Leading Photon)", 50, 0., 0.03);
244 monophoton_Photon_trksumptsolidconedr03 =
245 bei.
book1D(
"monophoton_Photon_trksumptsolidconedr03",
"TrkSumPtDr03 (Leading Photon)", 50, 0., 15.);
246 monophoton_Photon_e1x5e5x5 = bei.
book1D(
"monophoton_Photon_e1x5e5x5",
"E_{1x5}/E_{5x5} (Leading Photon)", 50, 0., 1.);
247 monophoton_Photon_e2x5e5x5 = bei.
book1D(
"monophoton_Photon_e2x5e5x5",
"E_{2x5}/E_{5x5} (Leading Photon)", 50, 0., 1.);
248 monophoton_PFMet = bei.
book1D(
"monophoton_PFMet",
"Pt of PFMET (GeV)", 40, 0.0, 1000);
249 monophoton_PFMet_phi = bei.
book1D(
"monophoton_PFMet_phi",
"PFMET #phi", 50, -3.14, 3.14);
250 monophoton_PhotonPtOverPFMet = bei.
book1D(
"monophoton_PhotonPtOverPFMet",
"Pt of Monophoton/PFMet", 40, 0.0, 5.);
251 monophoton_deltaPhiPhotonPFMet =
252 bei.
book1D(
"monophoton_deltaPhiPhotonPFMet",
"#Delta#phi(SubLeading Photon, PFMet)", 40, 0., 3.15);
253 monophoton_PhotonMulti = bei.
book1D(
"monophoton_PhotonMulti",
"No. of Photons", 10, 0., 10.);
257 dispElec_track_effi_lxy = bei.
bookProfile(
"dispElec_track_effi_lxy",
258 "Electron channel; transverse decay length (cm); track reco efficiency",
265 dispElec_elec_effi_lxy = bei.
bookProfile(
"dispElec_elec_effi_lxy",
266 "Electron channel; transverse decay length (cm); electron reco efficiency",
273 dispMuon_track_effi_lxy = bei.
bookProfile(
"dispMuon_track_effi_lxy",
274 "Muon channel; transverse decay length (cm); track reco efficiency",
281 dispMuon_muon_effi_lxy = bei.
bookProfile(
"dispMuon_muon_effi_lxy",
282 "Muon channel; transverse decay length (cm); muon reco efficiency",
289 dispMuon_muonDisp_effi_lxy =
291 "Muon channel; transverse decay length (cm); displacedMuon reco efficiency",
298 dispMuon_muonDispSA_effi_lxy =
300 "Muon channel; transverse decay length (cm); displacedSAMuon reco efficiency",
308 dispJet_track_effi_lxy = bei.
bookProfile(
"dispJet_track_effi_lxy",
309 "Jet channel; transverse decay length (cm); track reco efficiency",
327 bool ValidVertices =
iEvent.getByToken(VertexToken_, VertexCollection_);
332 bool ValidGedGsfElectron =
iEvent.getByToken(ElectronToken_, ElectronCollection_);
333 if (!ValidGedGsfElectron)
337 bool ValidPFMuon =
iEvent.getByToken(MuonToken_, MuonCollection_);
342 bool ValidPFJet =
iEvent.getByToken(PFJetToken_, pfJetCollection_);
343 pfjets = *pfJetCollection_;
348 bool ValidPFMET =
iEvent.getByToken(PFMETToken_, pfMETCollection_);
353 bool ValidCaloPhoton =
iEvent.getByToken(PhotonToken_, PhotonCollection_);
354 if (!ValidCaloPhoton)
358 bool ValidTracks =
iEvent.getByToken(TrackToken_, TrackCollection_);
363 iEvent.getByToken(MuonDispToken_, MuonDispCollection_);
364 iEvent.getByToken(MuonDispSAToken_, MuonDispSACollection_);
367 bool ValidGenParticles =
iEvent.getByToken(GenParticleToken_, GenCollection_);
370 bool ValidJetCorrector =
iEvent.getByToken(JetCorrectorToken_, JetCorrector_);
372 for (
int i = 0;
i < 2;
i++) {
396 ElectronCharge[
i] = 0.;
398 PhotonEnergy[
i] = 0.;
404 PhotonHoverE[
i] = 0.;
405 PhotonSigmaIetaIeta[
i] = 0.;
406 PhotonTrkSumPtSolidConeDR03[
i] = 0.;
407 PhotonE1x5E5x5[
i] = 0.;
408 PhotonE2x5E5x5[
i] = 0.;
412 dijet_countPFJet_ = 0;
413 monojet_countPFJet_ = 0;
415 PFJetCollection::const_iterator pfjet_ = pfjets.begin();
416 for (; pfjet_ != pfjets.end(); ++pfjet_) {
418 if (ValidJetCorrector)
419 scale = JetCorrector_->correction(*pfjet_);
420 if (
scale * pfjet_->pt() > PFJetPt[0]) {
421 PFJetPt[1] = PFJetPt[0];
422 PFJetPx[1] = PFJetPx[0];
423 PFJetPy[1] = PFJetPy[0];
424 PFJetEta[1] = PFJetEta[0];
425 PFJetPhi[1] = PFJetPhi[0];
426 PFJetRapidity[1] = PFJetRapidity[0];
427 PFJetMass[1] = PFJetMass[0];
428 PFJetNHEF[1] = PFJetNHEF[0];
429 PFJetCHEF[1] = PFJetCHEF[0];
430 PFJetNEMF[1] = PFJetNEMF[0];
431 PFJetCEMF[1] = PFJetCEMF[0];
433 PFJetPt[0] =
scale * pfjet_->pt();
434 PFJetPx[0] =
scale * pfjet_->px();
435 PFJetPy[0] =
scale * pfjet_->py();
436 PFJetEta[0] = pfjet_->eta();
437 PFJetPhi[0] = pfjet_->phi();
438 PFJetRapidity[0] = pfjet_->rapidity();
439 PFJetMass[0] = pfjet_->mass();
440 PFJetNHEF[0] = pfjet_->neutralHadronEnergyFraction();
441 PFJetCHEF[0] = pfjet_->chargedHadronEnergyFraction();
442 PFJetNEMF[0] = pfjet_->neutralEmEnergyFraction();
443 PFJetCEMF[0] = pfjet_->chargedEmEnergyFraction();
444 }
else if (
scale * pfjet_->pt() < PFJetPt[0] &&
scale * pfjet_->pt() > PFJetPt[1]) {
445 PFJetPt[1] =
scale * pfjet_->pt();
446 PFJetPx[1] =
scale * pfjet_->px();
447 PFJetPy[1] =
scale * pfjet_->py();
448 PFJetEta[1] = pfjet_->eta();
449 PFJetPhi[1] = pfjet_->phi();
450 PFJetRapidity[1] = pfjet_->rapidity();
451 PFJetMass[1] = pfjet_->mass();
452 PFJetNHEF[1] = pfjet_->neutralHadronEnergyFraction();
453 PFJetCHEF[1] = pfjet_->chargedHadronEnergyFraction();
454 PFJetNEMF[1] = pfjet_->neutralEmEnergyFraction();
455 PFJetCEMF[1] = pfjet_->chargedEmEnergyFraction();
458 if (
scale * pfjet_->pt() > dijet_PFJet1_pt_cut_)
460 if (
scale * pfjet_->pt() > dijet_PFJet1_pt_cut_)
461 monojet_countPFJet_++;
465 reco::VertexCollection::const_iterator primaryVertex_ =
vertexCollection.begin();
467 dimuon_countMuon_ = 0;
468 monomuon_countMuon_ = 0;
469 reco::MuonCollection::const_iterator muon_ = MuonCollection_->begin();
470 for (; muon_ != MuonCollection_->end(); muon_++) {
473 if (muon_->isGlobalMuon() && muon_->globalTrack()->hitPattern().numberOfValidMuonHits() > 0 &&
474 muon_->numberOfMatchedStations() > 1 && muon_->innerTrack()->hitPattern().trackerLayersWithMeasurement() > 5 &&
475 muon_->innerTrack()->hitPattern().numberOfValidPixelHits() > 0 &&
476 muon_->muonBestTrack()->ptError() / muon_->muonBestTrack()->pt() < 0.3 &&
477 fabs(muon_->muonBestTrack()->dxy(primaryVertex_->position())) < 0.2 &&
478 fabs(muon_->bestTrack()->dz(primaryVertex_->position())) < 0.5 && fabs(muon_->eta()) < 2.1)
481 if (HighPt ==
true) {
482 if (muon_->pt() > MuonPt[0]) {
483 MuonPt[1] = MuonPt[0];
484 MuonPx[1] = MuonPx[0];
485 MuonPy[1] = MuonPy[0];
486 MuonEta[1] = MuonEta[0];
487 MuonPhi[1] = MuonPhi[0];
488 MuonCharge[1] = MuonCharge[0];
490 MuonPt[0] = muon_->pt();
491 MuonPx[0] = muon_->px();
492 MuonPy[0] = muon_->py();
493 MuonEta[0] = muon_->eta();
494 MuonPhi[0] = muon_->phi();
495 MuonCharge[0] = muon_->charge();
496 }
else if (muon_->pt() > MuonPt[1] && muon_->pt() < MuonPt[0]) {
497 MuonPt[1] = muon_->pt();
498 MuonPx[1] = muon_->px();
499 MuonPy[1] = muon_->py();
500 MuonEta[1] = muon_->eta();
501 MuonPhi[1] = muon_->phi();
502 MuonCharge[1] = muon_->charge();
505 if (muon_->pt() > dimuon_Muon1_pt_cut_)
507 if (muon_->pt() > monomuon_Muon_pt_cut_)
508 monomuon_countMuon_++;
511 dielectron_countElectron_ = 0;
512 monoelectron_countElectron_ = 0;
513 reco::GsfElectronCollection::const_iterator electron_ = ElectronCollection_->begin();
514 for (; electron_ != ElectronCollection_->end(); electron_++) {
516 if (electron_->e5x5() <= 0)
518 if (electron_->gsfTrack().isNull())
520 bool HEPP_ele =
false;
521 double sceta = electron_->caloPosition().eta();
522 double dEtaIn = fabs(electron_->deltaEtaSuperClusterTrackAtVtx());
523 double dPhiIn = fabs(electron_->deltaPhiSuperClusterTrackAtVtx());
524 double HoverE = electron_->hadronicOverEm();
525 int missingHits = electron_->gsfTrack()->hitPattern().numberOfLostTrackerHits(HitPattern::MISSING_INNER_HITS);
526 double dxy = electron_->gsfTrack()->dxy(primaryVertex_->position());
527 double tkIso = electron_->dr03TkSumPt();
528 double e2x5Fraction = electron_->e2x5Max() / electron_->e5x5();
529 double e1x5Fraction = electron_->e1x5() / electron_->e5x5();
530 double scSigmaIetaIeta = electron_->scSigmaIEtaIEta();
531 if (electron_->ecalDriven() && electron_->pt() > 35.) {
532 if (fabs(sceta) < 1.442) {
533 if (fabs(
dEtaIn) < 0.005 && fabs(
dPhiIn) < 0.06 && HoverE < 0.05 && tkIso < 5. && missingHits <= 1 &&
534 fabs(
dxy) < 0.02 && (e2x5Fraction > 0.94 || e1x5Fraction > 0.83))
536 }
else if (fabs(sceta) > 1.56 && fabs(sceta) < 2.5) {
537 if (fabs(
dEtaIn) < 0.007 && fabs(
dPhiIn) < 0.06 && HoverE < 0.05 && tkIso < 5. && missingHits <= 1 &&
538 fabs(
dxy) < 0.02 && scSigmaIetaIeta < 0.03)
543 if (HEPP_ele ==
false)
545 if (electron_->pt() > ElectronPt[0]) {
546 ElectronPt[1] = ElectronPt[0];
547 ElectronPx[1] = ElectronPx[0];
548 ElectronPy[1] = ElectronPy[0];
549 ElectronEta[1] = ElectronEta[0];
550 ElectronPhi[1] = ElectronPhi[0];
551 ElectronCharge[1] = ElectronCharge[0];
553 ElectronPt[0] = electron_->pt();
554 ElectronPx[0] = electron_->px();
555 ElectronPy[0] = electron_->py();
556 ElectronEta[0] = electron_->eta();
557 ElectronPhi[0] = electron_->phi();
558 ElectronCharge[0] = electron_->charge();
559 }
else if (electron_->pt() > ElectronPt[1] && electron_->pt() < ElectronPt[0]) {
560 ElectronPt[1] = electron_->pt();
561 ElectronPx[1] = electron_->px();
562 ElectronPy[1] = electron_->py();
563 ElectronEta[1] = electron_->eta();
564 ElectronPhi[1] = electron_->phi();
565 ElectronCharge[1] = electron_->charge();
567 if (electron_->pt() > dielectron_Electron1_pt_cut_)
568 dielectron_countElectron_++;
569 if (electron_->pt() > monoelectron_Electron_pt_cut_)
570 monoelectron_countElectron_++;
573 diphoton_countPhoton_ = 0.;
574 reco::PhotonCollection::const_iterator photon_ = PhotonCollection_->begin();
575 for (; photon_ != PhotonCollection_->end(); ++photon_) {
576 if (photon_->pt() > PhotonPt[0]) {
577 PhotonEnergy[1] = PhotonEnergy[0];
578 PhotonPt[1] = PhotonPt[0];
579 PhotonEt[1] = PhotonEt[0];
580 PhotonEta[1] = PhotonEta[0];
581 PhotonEtaSc[1] = PhotonEtaSc[0];
582 PhotonPhi[1] = PhotonPhi[0];
583 PhotonHoverE[1] = PhotonHoverE[0];
584 PhotonSigmaIetaIeta[1] = PhotonSigmaIetaIeta[0];
585 PhotonTrkSumPtSolidConeDR03[1] = PhotonTrkSumPtSolidConeDR03[0];
586 PhotonE1x5E5x5[1] = PhotonE1x5E5x5[0];
587 PhotonE2x5E5x5[1] = PhotonE2x5E5x5[0];
588 PhotonEnergy[0] = photon_->energy();
589 PhotonPt[0] = photon_->pt();
590 PhotonEt[0] = photon_->et();
591 PhotonEta[0] = photon_->eta();
592 PhotonEtaSc[0] = photon_->caloPosition().eta();
593 PhotonPhi[0] = photon_->phi();
594 PhotonHoverE[0] = photon_->hadronicOverEm();
595 PhotonSigmaIetaIeta[0] = photon_->sigmaIetaIeta();
596 PhotonTrkSumPtSolidConeDR03[0] = photon_->trkSumPtSolidConeDR03();
597 PhotonE1x5E5x5[0] = photon_->e1x5() / photon_->e5x5();
598 PhotonE2x5E5x5[0] = photon_->e2x5() / photon_->e5x5();
599 }
else if (photon_->pt() > PhotonPt[1] && photon_->pt() < PhotonPt[0]) {
600 PhotonEnergy[1] = photon_->energy();
601 PhotonPt[1] = photon_->pt();
602 PhotonEt[1] = photon_->et();
603 PhotonEta[1] = photon_->eta();
604 PhotonEtaSc[1] = photon_->caloPosition().eta();
605 PhotonPhi[1] = photon_->phi();
606 PhotonHoverE[1] = photon_->hadronicOverEm();
607 PhotonSigmaIetaIeta[1] = photon_->sigmaIetaIeta();
608 PhotonTrkSumPtSolidConeDR03[1] = photon_->trkSumPtSolidConeDR03();
609 PhotonE1x5E5x5[1] = photon_->e1x5() / photon_->e5x5();
610 PhotonE2x5E5x5[1] = photon_->e2x5() / photon_->e5x5();
612 if (photon_->pt() > diphoton_Photon1_pt_cut_)
613 diphoton_countPhoton_++;
623 analyzeDiElectrons(
iEvent);
629 analyzeMonoElectrons(
iEvent);
632 if (ValidGenParticles) {
633 analyzeDisplacedLeptons(
iEvent, iSetup);
634 analyzeDisplacedJets(
iEvent, iSetup);
643 const unsigned int stop1 = 1000006;
644 const unsigned int stop2 = 2000006;
645 const float deltaRcut = 0.01;
646 const float invPtcut = 0.1;
651 unsigned int idPdg =
abs(
gen.pdgId());
653 if (idPdg == stop1 || idPdg == stop2) {
654 unsigned int nDau =
gen.numberOfDaughters();
655 for (
unsigned int i = 0;
i < nDau;
i++) {
658 if (fabs(dau->
eta()) < dispFermion_eta_cut_ && dau->
pt() > dispFermion_pt_cut_) {
659 unsigned int pdgIdDau =
abs(dau->
pdgId());
661 if (pdgIdDau == 11 || pdgIdDau == 13) {
664 float lxy = dau->
vertex().rho();
667 GlobalVector genP = this->getGenParticleTrajectoryAtBeamline(iSetup, dau);
669 if (pdgIdDau == 11) {
672 bool recoedTrk =
false;
674 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 / dau->
pt() - 1 / trk.pt()) < invPtcut) {
679 dispElec_track_effi_lxy->Fill(lxy, recoedTrk);
682 bool recoedE =
false;
684 if (
reco::deltaR(genP, eReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / eReco.pt()) < invPtcut)
687 dispElec_elec_effi_lxy->Fill(lxy, recoedE);
689 }
else if (pdgIdDau == 13) {
692 bool recoedTrk =
false;
694 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 / dau->
pt() - 1 / trk.pt()) < invPtcut) {
699 dispMuon_track_effi_lxy->Fill(lxy, recoedTrk);
702 bool recoedMu =
false;
703 for (
const reco::Muon& muReco : *MuonCollection_) {
704 if (
reco::deltaR(genP, muReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / muReco.pt()) < invPtcut)
707 dispMuon_muon_effi_lxy->Fill(lxy, recoedMu);
710 bool recoedMuDisp =
false;
711 for (
const reco::Track& muDispReco : *MuonDispCollection_) {
712 if (
reco::deltaR(genP, muDispReco) < deltaRcut && fabs(1 / dau->
pt() - 1 / muDispReco.pt()) < invPtcut)
715 dispMuon_muonDisp_effi_lxy->Fill(lxy, recoedMuDisp);
718 bool recoedMuDispSA =
false;
719 for (
const reco::Track& muDispSAReco : *MuonDispSACollection_) {
721 fabs(1 / dau->
pt() - 1 / muDispSAReco.pt()) < invPtcut)
722 recoedMuDispSA =
true;
724 dispMuon_muonDispSA_effi_lxy->Fill(lxy, recoedMuDispSA);
739 auto isRhadron = [](
unsigned int pdgId) {
return (
pdgId / 100) == 10006 || (
pdgId / 1000) == 1006; };
741 const float deltaRcut = 0.01;
742 const float invPtcut = 0.1;
747 unsigned int idPdg =
abs(
gen.pdgId());
749 if (idPdg == 11 || idPdg == 13 || idPdg == 211 || idPdg == 321 || idPdg == 2212) {
751 if (fabs(
gen.eta()) < dispFermion_eta_cut_ &&
gen.pt() > dispFermion_pt_cut_) {
755 bool foundParton =
false;
758 unsigned int idPdgMoth =
abs(genMoth->
pdgId());
761 if ((idPdgMoth >= 1 && idPdgMoth <= 6) || idPdgMoth == 21)
764 if (isRhadron(idPdgMoth)) {
765 genRhadron = genMoth;
770 if (foundParton && genRhadron !=
nullptr) {
776 GlobalVector genP = this->getGenParticleTrajectoryAtBeamline(iSetup, &
gen);
779 bool recoedTrk =
false;
781 if (
reco::deltaR(genP, trk) < deltaRcut && fabs(1 /
gen.pt() - 1 / trk.pt()) < invPtcut) {
786 dispJet_track_effi_lxy->Fill(lxy, recoedTrk);
817 for (
unsigned int icoll = 0;
icoll < DiJetPFJetCollection_.size(); ++
icoll) {
818 dijet_countPFJet_ = 0;
819 bool ValidDiJetPFJets =
iEvent.getByToken(DiJetPFJetToken_[
icoll], DiJetpfJetCollection_);
820 if (!ValidDiJetPFJets)
822 DiJetpfjets = *DiJetpfJetCollection_;
823 for (
int i = 0;
i < 2;
i++) {
834 PFJetCollection::const_iterator DiJetpfjet_ = DiJetpfjets.begin();
835 for (; DiJetpfjet_ != DiJetpfjets.end(); ++DiJetpfjet_) {
837 if (
scale * DiJetpfjet_->pt() > PFJetPt[0]) {
838 PFJetPt[1] = PFJetPt[0];
839 PFJetPx[1] = PFJetPx[0];
840 PFJetPy[1] = PFJetPy[0];
841 PFJetEta[1] = PFJetEta[0];
842 PFJetPhi[1] = PFJetPhi[0];
843 PFJetRapidity[1] = DiJetpfjet_->rapidity();
844 PFJetMass[1] = DiJetpfjet_->mass();
845 PFJetNHEF[1] = PFJetNHEF[0];
846 PFJetCHEF[1] = PFJetCHEF[0];
847 PFJetNEMF[1] = PFJetNEMF[0];
848 PFJetCEMF[1] = PFJetCEMF[0];
849 PFJetPt[0] =
scale * DiJetpfjet_->pt();
850 PFJetPx[0] =
scale * DiJetpfjet_->px();
851 PFJetPy[0] =
scale * DiJetpfjet_->py();
852 PFJetEta[0] = DiJetpfjet_->eta();
853 PFJetPhi[0] = DiJetpfjet_->phi();
854 PFJetRapidity[0] = DiJetpfjet_->rapidity();
855 PFJetMass[0] = DiJetpfjet_->mass();
856 PFJetNHEF[0] = DiJetpfjet_->neutralHadronEnergyFraction();
857 PFJetCHEF[0] = DiJetpfjet_->chargedHadronEnergyFraction();
858 PFJetNEMF[0] = DiJetpfjet_->neutralEmEnergyFraction();
859 PFJetCEMF[0] = DiJetpfjet_->chargedEmEnergyFraction();
860 }
else if (
scale * DiJetpfjet_->pt() < PFJetPt[0] &&
scale * DiJetpfjet_->pt() > PFJetPt[1]) {
861 PFJetPt[1] =
scale * DiJetpfjet_->pt();
862 PFJetPx[1] =
scale * DiJetpfjet_->px();
863 PFJetPy[1] =
scale * DiJetpfjet_->py();
864 PFJetEta[1] = DiJetpfjet_->eta();
865 PFJetPhi[1] = DiJetpfjet_->phi();
866 PFJetRapidity[1] = DiJetpfjet_->rapidity();
867 PFJetMass[1] = DiJetpfjet_->mass();
868 PFJetNHEF[1] = DiJetpfjet_->neutralHadronEnergyFraction();
869 PFJetCHEF[1] = DiJetpfjet_->chargedHadronEnergyFraction();
870 PFJetNEMF[1] = DiJetpfjet_->neutralEmEnergyFraction();
871 PFJetCEMF[1] = DiJetpfjet_->chargedEmEnergyFraction();
874 if (
scale * DiJetpfjet_->pt() > dijet_PFJet1_pt_cut_)
877 if (PFJetPt[0] > dijet_PFJet1_pt_cut_ && PFJetPt[1] > dijet_PFJet2_pt_cut_) {
878 dijet_PFJet_pt[
icoll]->Fill(PFJetPt[0]);
879 dijet_PFJet_eta[
icoll]->Fill(PFJetEta[0]);
880 dijet_PFJet_phi[
icoll]->Fill(PFJetPhi[0]);
881 dijet_PFJet_rapidity[
icoll]->Fill(PFJetRapidity[0]);
882 dijet_PFJet_mass[
icoll]->Fill(PFJetMass[0]);
883 dijet_PFJet_pt[
icoll]->Fill(PFJetPt[1]);
884 dijet_PFJet_eta[
icoll]->Fill(PFJetEta[1]);
885 dijet_PFJet_phi[
icoll]->Fill(PFJetPhi[1]);
886 dijet_PFJet_rapidity[
icoll]->Fill(PFJetRapidity[1]);
887 dijet_PFJet_mass[
icoll]->Fill(PFJetMass[1]);
888 dijet_deltaPhiPFJet1PFJet2[
icoll]->Fill(
deltaPhi(PFJetPhi[0], PFJetPhi[1]));
889 dijet_deltaEtaPFJet1PFJet2[
icoll]->Fill(PFJetEta[0] - PFJetEta[1]);
890 dijet_deltaRPFJet1PFJet2[
icoll]->Fill(
deltaR(PFJetEta[0], PFJetPhi[0], PFJetEta[1], PFJetPhi[1]));
891 dijet_invMassPFJet1PFJet2[
icoll]->Fill(
892 sqrt(2 * PFJetPt[0] * PFJetPt[1] * (cosh(PFJetEta[0] - PFJetEta[1]) -
cos(PFJetPhi[0] - PFJetPhi[1]))));
893 dijet_PFchef[
icoll]->Fill(PFJetCHEF[0]);
894 dijet_PFnhef[
icoll]->Fill(PFJetNHEF[0]);
895 dijet_PFcemf[
icoll]->Fill(PFJetCEMF[0]);
896 dijet_PFnemf[
icoll]->Fill(PFJetNEMF[0]);
897 dijet_PFJetMulti[
icoll]->Fill(dijet_countPFJet_);
903 if (MuonPt[0] > dimuon_Muon1_pt_cut_ && MuonPt[1] > dimuon_Muon2_pt_cut_ && MuonCharge[0] * MuonCharge[1] == -1) {
904 dimuon_Muon_pt->Fill(MuonPt[0]);
905 dimuon_Muon_eta->Fill(MuonEta[0]);
906 dimuon_Muon_phi->Fill(MuonPhi[0]);
907 dimuon_Muon_pt->Fill(MuonPt[1]);
908 dimuon_Muon_eta->Fill(MuonEta[1]);
909 dimuon_Muon_phi->Fill(MuonPhi[1]);
910 dimuon_Charge->Fill(MuonCharge[0]);
911 dimuon_Charge->Fill(MuonCharge[1]);
912 dimuon_deltaPhiMuon1Muon2->Fill(
deltaPhi(MuonPhi[0], MuonPhi[1]));
913 dimuon_deltaEtaMuon1Muon2->Fill(MuonEta[0] - MuonEta[1]);
914 dimuon_deltaRMuon1Muon2->Fill(
deltaR(MuonEta[0], MuonPhi[0], MuonEta[1], MuonPhi[1]));
915 dimuon_invMassMuon1Muon2->Fill(
916 sqrt(2 * MuonPt[0] * MuonPt[1] * (cosh(MuonEta[0] - MuonEta[1]) -
cos(MuonPhi[0] - MuonPhi[1]))));
917 dimuon_MuonMulti->Fill(dimuon_countMuon_);
922 if (ElectronPt[0] > dielectron_Electron1_pt_cut_ && ElectronPt[1] > dielectron_Electron2_pt_cut_ &&
923 ElectronCharge[0] * ElectronCharge[1] == -1.) {
924 dielectron_Electron_pt->Fill(ElectronPt[0]);
925 dielectron_Electron_eta->Fill(ElectronEta[0]);
926 dielectron_Electron_phi->Fill(ElectronPhi[0]);
927 dielectron_Electron_pt->Fill(ElectronPt[1]);
928 dielectron_Electron_eta->Fill(ElectronEta[1]);
929 dielectron_Electron_phi->Fill(ElectronPhi[1]);
930 dielectron_Charge->Fill(ElectronCharge[0]);
931 dielectron_Charge->Fill(ElectronCharge[1]);
932 dielectron_deltaPhiElectron1Electron2->Fill(
deltaPhi(ElectronPhi[0], ElectronPhi[1]));
933 dielectron_deltaEtaElectron1Electron2->Fill(ElectronEta[0] - ElectronEta[1]);
934 dielectron_deltaRElectron1Electron2->Fill(
deltaR(ElectronEta[0], ElectronPhi[0], ElectronEta[1], ElectronPhi[1]));
935 dielectron_invMassElectron1Electron2->Fill(
936 sqrt(2 * ElectronPt[0] * ElectronPt[1] *
937 (cosh(ElectronEta[0] - ElectronEta[1]) -
cos(ElectronPhi[0] - ElectronPhi[1]))));
938 dielectron_ElectronMulti->Fill(dielectron_countElectron_);
943 if (PhotonPt[0] > diphoton_Photon1_pt_cut_ && PhotonPt[1] > diphoton_Photon2_pt_cut_) {
944 diphoton_Photon_energy->Fill(PhotonEnergy[0]);
945 diphoton_Photon_pt->Fill(PhotonPt[0]);
946 diphoton_Photon_et->Fill(PhotonEt[0]);
947 diphoton_Photon_eta->Fill(PhotonEta[0]);
948 diphoton_Photon_etasc->Fill(PhotonEtaSc[0]);
949 diphoton_Photon_phi->Fill(PhotonPhi[0]);
950 if (fabs(PhotonEtaSc[0]) < 1.442) {
951 diphoton_Photon_hovere_eb->Fill(PhotonHoverE[0]);
952 diphoton_Photon_sigmaietaieta_eb->Fill(PhotonSigmaIetaIeta[0]);
953 diphoton_Photon_trksumptsolidconedr03_eb->Fill(PhotonTrkSumPtSolidConeDR03[0]);
954 diphoton_Photon_e1x5e5x5_eb->Fill(PhotonE1x5E5x5[0]);
955 diphoton_Photon_e2x5e5x5_eb->Fill(PhotonE2x5E5x5[0]);
957 if (fabs(PhotonEtaSc[0]) > 1.566 && fabs(PhotonEtaSc[0]) < 2.5) {
958 diphoton_Photon_hovere_ee->Fill(PhotonHoverE[0]);
959 diphoton_Photon_sigmaietaieta_ee->Fill(PhotonSigmaIetaIeta[0]);
960 diphoton_Photon_trksumptsolidconedr03_ee->Fill(PhotonTrkSumPtSolidConeDR03[0]);
961 diphoton_Photon_e1x5e5x5_ee->Fill(PhotonE1x5E5x5[0]);
962 diphoton_Photon_e2x5e5x5_ee->Fill(PhotonE2x5E5x5[0]);
964 diphoton_Photon_energy->Fill(PhotonEnergy[1]);
965 diphoton_Photon_pt->Fill(PhotonPt[1]);
966 diphoton_Photon_et->Fill(PhotonEt[1]);
967 diphoton_Photon_eta->Fill(PhotonEta[1]);
968 diphoton_Photon_etasc->Fill(PhotonEtaSc[1]);
969 diphoton_Photon_phi->Fill(PhotonPhi[1]);
970 if (fabs(PhotonEtaSc[1]) < 1.4442) {
971 diphoton_Photon_hovere_eb->Fill(PhotonHoverE[1]);
972 diphoton_Photon_sigmaietaieta_eb->Fill(PhotonSigmaIetaIeta[1]);
973 diphoton_Photon_trksumptsolidconedr03_eb->Fill(PhotonTrkSumPtSolidConeDR03[1]);
974 diphoton_Photon_e1x5e5x5_eb->Fill(PhotonE1x5E5x5[1]);
975 diphoton_Photon_e2x5e5x5_eb->Fill(PhotonE2x5E5x5[1]);
977 if (fabs(PhotonEtaSc[1]) > 1.566 && fabs(PhotonEtaSc[1]) < 2.5) {
978 diphoton_Photon_hovere_ee->Fill(PhotonHoverE[1]);
979 diphoton_Photon_sigmaietaieta_ee->Fill(PhotonSigmaIetaIeta[1]);
980 diphoton_Photon_trksumptsolidconedr03_ee->Fill(PhotonTrkSumPtSolidConeDR03[1]);
981 diphoton_Photon_e1x5e5x5_ee->Fill(PhotonE1x5E5x5[1]);
982 diphoton_Photon_e2x5e5x5_ee->Fill(PhotonE2x5E5x5[1]);
984 diphoton_deltaPhiPhoton1Photon2->Fill(
deltaPhi(PhotonPhi[0], PhotonPhi[1]));
985 diphoton_deltaEtaPhoton1Photon2->Fill(PhotonEta[0] - PhotonEta[1]);
986 diphoton_deltaRPhoton1Photon2->Fill(
deltaR(PhotonEta[0], PhotonPhi[0], PhotonEta[1], PhotonPhi[1]));
987 diphoton_invMassPhoton1Photon2->Fill(
988 sqrt(2 * PhotonPt[0] * PhotonPt[1] * (cosh(PhotonEta[0] - PhotonEta[1]) -
cos(PhotonPhi[0] - PhotonPhi[1]))));
989 diphoton_PhotonMulti->Fill(diphoton_countPhoton_);
995 const PFMET pfmet = pfmetcol->front();
996 if (PFJetPt[0] > monojet_PFJet_pt_cut_ && pfmet.
et() > monojet_PFJet_met_cut_) {
997 monojet_PFJet_pt->Fill(PFJetPt[0]);
998 monojet_PFJet_eta->Fill(PFJetEta[0]);
999 monojet_PFJet_phi->Fill(PFJetPhi[0]);
1000 monojet_PFMet->Fill(pfmet.
et());
1001 monojet_PFMet_phi->Fill(pfmet.
phi());
1002 monojet_PFJetPtOverPFMet->Fill(PFJetPt[0] / pfmet.
et());
1003 monojet_deltaPhiPFJetPFMet->Fill(
deltaPhi(PFJetPhi[0], pfmet.
phi()));
1004 monojet_PFchef->Fill(PFJetCHEF[0]);
1005 monojet_PFnhef->Fill(PFJetNHEF[0]);
1006 monojet_PFcemf->Fill(PFJetCEMF[0]);
1007 monojet_PFnemf->Fill(PFJetNEMF[0]);
1008 monojet_PFJetMulti->Fill(monojet_countPFJet_);
1014 const PFMET pfmet = pfmetcol->front();
1015 if (MuonPt[0] > monomuon_Muon_pt_cut_ && pfmet.
et() > monomuon_Muon_met_cut_) {
1016 monomuon_Muon_pt->Fill(MuonPt[0]);
1017 monomuon_Muon_eta->Fill(MuonEta[0]);
1018 monomuon_Muon_phi->Fill(MuonPhi[0]);
1019 monomuon_Charge->Fill(MuonCharge[0]);
1020 monomuon_PFMet->Fill(pfmet.
et());
1021 monomuon_PFMet_phi->Fill(pfmet.
phi());
1022 monomuon_MuonPtOverPFMet->Fill(MuonPt[0] / pfmet.
et());
1023 monomuon_deltaPhiMuonPFMet->Fill(
deltaPhi(MuonPhi[0], pfmet.
phi()));
1024 monomuon_TransverseMass->Fill(
sqrt(2 * MuonPt[0] * pfmet.
et() * (1 -
cos(
deltaPhi(MuonPhi[0], pfmet.
phi())))));
1025 monomuon_MuonMulti->Fill(monomuon_countMuon_);
1031 const PFMET pfmet = pfmetcol->front();
1032 if (ElectronPt[0] > monoelectron_Electron_pt_cut_ && pfmet.
et() > monoelectron_Electron_met_cut_) {
1033 monoelectron_Electron_pt->Fill(ElectronPt[0]);
1034 monoelectron_Electron_eta->Fill(ElectronEta[0]);
1035 monoelectron_Electron_phi->Fill(ElectronPhi[0]);
1036 monoelectron_Charge->Fill(ElectronCharge[0]);
1037 monoelectron_PFMet->Fill(pfmet.
et());
1038 monoelectron_PFMet_phi->Fill(pfmet.
phi());
1039 monoelectron_ElectronPtOverPFMet->Fill(ElectronPt[0] / pfmet.
et());
1040 monoelectron_deltaPhiElectronPFMet->Fill(
deltaPhi(ElectronPhi[0], pfmet.
phi()));
1041 monoelectron_TransverseMass->Fill(
1043 monoelectron_ElectronMulti->Fill(monoelectron_countElectron_);
1049 const PFMET pfmet = pfmetcol->front();
1050 if (PhotonPt[0] > monophoton_Photon_pt_cut_ && pfmet.
et() > monophoton_Photon_met_cut_) {
1051 monophoton_Photon_energy->Fill(PhotonEnergy[0]);
1052 monophoton_Photon_pt->Fill(PhotonPt[0]);
1053 monophoton_Photon_et->Fill(PhotonEt[0]);
1054 monophoton_Photon_eta->Fill(PhotonEta[0]);
1055 monophoton_Photon_etasc->Fill(PhotonEtaSc[0]);
1056 monophoton_Photon_phi->Fill(PhotonPhi[0]);
1057 monophoton_Photon_hovere->Fill(PhotonHoverE[0]);
1058 monophoton_Photon_sigmaietaieta->Fill(PhotonSigmaIetaIeta[0]);
1059 monophoton_Photon_trksumptsolidconedr03->Fill(PhotonTrkSumPtSolidConeDR03[0]);
1060 monophoton_Photon_e1x5e5x5->Fill(PhotonE1x5E5x5[0]);
1061 monophoton_Photon_e2x5e5x5->Fill(PhotonE2x5E5x5[0]);
1062 monophoton_PFMet->Fill(pfmet.
et());
1063 monophoton_PFMet_phi->Fill(pfmet.
phi());
1064 monophoton_PhotonPtOverPFMet->Fill(PhotonPt[0] / pfmet.
et());
1065 monophoton_deltaPhiPhotonPFMet->Fill(
deltaPhi(PhotonPhi[0], pfmet.
phi()));
1066 monophoton_PhotonMulti->Fill(monophoton_countPhoton_);
virtual void analyzeMonoElectrons(edm::Event const &e)
virtual void analyzeDiJets(edm::Event const &e)
T getParameter(std::string const &) const
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)
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
double pt() const final
transverse momentum
ExoticaDQM(const edm::ParameterSet &ps)
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)
Global3DPoint GlobalPoint
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)
T getUntrackedParameter(std::string const &, T const &) const
virtual GlobalVector getGenParticleTrajectoryAtBeamline(const edm::EventSetup &iSetup, const reco::GenParticle *gen)
int pdgId() const final
PDG identifier.
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)
GlobalVector momentum() const
Abs< T >::type abs(const T &t)
virtual const Point & vertex() const =0
vertex position
FTS const & trackStateAtPCA() const
def gen(fragment, howMuch)
Production test section ####.
constexpr auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
virtual void analyzeMonoPhotons(edm::Event const &e)
Log< level::Info, false > LogInfo
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) ...
Global3DVector GlobalVector
double eta() const final
momentum pseudorapidity