14 folderName_ ( iConfig.getParameter<
std::
string>(
"FolderName") )
19 , photon_variable_binning_ ( iConfig.getParameter<
edm::
ParameterSet>(
"histoPSet").getParameter<
std::vector<double> >(
"photonBinning") )
20 , diphoton_mass_binning_ ( iConfig.getParameter<
edm::
ParameterSet>(
"histoPSet").getParameter<
std::vector<double> >(
"massBinning") )
25 , metSelection_ ( iConfig.getParameter<
std::
string>(
"metSelection") )
26 , jetSelection_ ( iConfig.getParameter<
std::
string>(
"jetSelection") )
27 , eleSelection_ ( iConfig.getParameter<
std::
string>(
"eleSelection") )
28 , photonSelection_ ( iConfig.getParameter<
std::
string>(
"photonSelection") )
29 , njets_ ( iConfig.getParameter<unsigned
int>(
"njets" ) )
30 , nphotons_ ( iConfig.getParameter<unsigned
int>(
"nphotons" ) )
31 , nelectrons_ ( iConfig.getParameter<unsigned
int>(
"nelectrons" ) )
101 me.
numerator = ibooker.
book1D(histname+
"_numerator", histtitle+
" (numerator)", nbins, min, max);
102 me.
denominator = ibooker.
book1D(histname+
"_denominator", histtitle+
" (denominator)", nbins, min, max);
106 unsigned int nbins = binning.size()-1;
107 std::vector<float> fbinning(binning.begin(),binning.end());
109 float* arr = fbinning.data();
110 me.
numerator = ibooker.
book1D(histname+
"_numerator", histtitle+
" (numerator)", nbins, arr);
111 me.
denominator = ibooker.
book1D(histname+
"_denominator", histtitle+
" (denominator)", nbins, arr);
115 me.
numerator = ibooker.
bookProfile(histname+
"_numerator", histtitle+
" (numerator)", nbinsX, xmin, xmax, ymin, ymax);
116 me.
denominator = ibooker.
bookProfile(histname+
"_denominator", histtitle+
" (denominator)", nbinsX, xmin, xmax, ymin, ymax);
120 me.
numerator = ibooker.
book2D(histname+
"_numerator", histtitle+
" (numerator)", nbinsX, xmin, xmax, nbinsY, ymin, ymax);
121 me.
denominator = ibooker.
book2D(histname+
"_denominator", histtitle+
" (denominator)", nbinsX, xmin, xmax, nbinsY, ymin, ymax);
125 unsigned int nbinsX = binningX.size()-1;
126 std::vector<float> fbinningX(binningX.begin(),binningX.end());
127 float* arrX = &fbinningX[0];
128 unsigned int nbinsY = binningY.size()-1;
129 std::vector<float> fbinningY(binningY.begin(),binningY.end());
130 float* arrY = &fbinningY[0];
132 me.
numerator = ibooker.
book2D(histname+
"_numerator", histtitle+
" (numerator)", nbinsX, arrX, nbinsY, arrY);
133 me.
denominator = ibooker.
book2D(histname+
"_denominator", histtitle+
" (denominator)", nbinsX, arrX, nbinsY, arrY);
146 histname =
"photon_pt"; histtitle =
"photon PT";
150 histname =
"photon_pt_variable"; histtitle =
"photon PT";
154 histname =
"photonVsLS"; histtitle =
"photon pt vs LS";
158 histname =
"photon_phi"; histtitle =
"Photon phi";
163 histname =
"photon_eta"; histtitle =
"Photon eta";
167 histname =
"photon_r9"; histtitle =
"Photon r9";
172 histname =
"photon_hoE"; histtitle =
"Photon hoverE";
176 histname =
"photon_etaphi"; histtitle =
"Photon eta-phi";
183 histname =
"diphoton_mass"; histtitle =
"Diphoton mass";
187 histname =
"subphoton_pt"; histtitle =
"subphoton PT";
191 histname =
"subphoton_eta"; histtitle =
"subPhoton eta";
195 histname =
"subphoton_phi"; histtitle =
"subPhoton phi";
199 histname =
"subphoton_r9"; histtitle =
"subPhoton r9";
203 histname =
"subphoton_hoE"; histtitle =
"subPhoton hoverE";
207 histname =
"subphoton_etaphi"; histtitle =
"subPhoton eta-phi";
236 std::vector<reco::PFJet>
jets;
238 if ( jetHandle->size() <
njets_ )
return;
239 for (
auto const & j : *jetHandle ) {
242 if ( jets.size() <
njets_ )
return;
246 std::vector<reco::GsfElectron>
electrons;
248 for (
auto const &
e : *eleHandle ) {
255 std::vector<reco::Photon>
photons;
258 if ( photonHandle->size() <
nphotons_ )
return;
259 for (
auto const &
p : *photonHandle ) {
262 if ( photons.size() <
nphotons_ )
return;
267 if(!(photons.empty()))
296 if(!(photons.empty()))
322 pset.
add<
unsigned int> (
"nbins");
323 pset.
add<
double>(
"xmin" );
324 pset.
add<
double>(
"xmax" );
329 pset.
add<
unsigned int> (
"nbins", 2500 );
330 pset.
add<
double> (
"xmin", 0.);
331 pset.
add<
double> (
"xmax", 2500.);
345 desc.
add<
std::string>(
"photonSelection",
"pt > 145 && eta<1.4442 && hadTowOverEm<0.0597 && full5x5_sigmaIetaIeta()<0.01031 && chargedHadronIso<1.295");
347 desc.
add<
unsigned int>(
"njets", 0);
348 desc.
add<
unsigned int>(
"nelectrons", 0);
349 desc.
add<
unsigned int>(
"nphotons", 0);
352 genericTriggerEventPSet.
add<
bool>(
"andOr");
354 genericTriggerEventPSet.add<std::vector<int> >(
"dcsPartitions",{});
355 genericTriggerEventPSet.add<
bool>(
"andOrDcs",
false);
356 genericTriggerEventPSet.add<
bool>(
"errorReplyDcs",
true);
357 genericTriggerEventPSet.add<
std::string>(
"dbLabel",
"");
358 genericTriggerEventPSet.add<
bool>(
"andOrHlt",
true);
360 genericTriggerEventPSet.add<std::vector<std::string> >(
"hltPaths",{});
361 genericTriggerEventPSet.add<
std::string>(
"hltDBKey",
"");
362 genericTriggerEventPSet.add<
bool>(
"errorReplyHlt",
false);
363 genericTriggerEventPSet.add<
unsigned int>(
"verbosityLevel",1);
372 std::vector<double>
bins = {0.,20.,40.,60.,80.,90.,100.,110.,120.,130.,140.,150.,160.,170.,180.,190.,200.,220.,240.,260.,280.,300.,350.,400.,450.,1000.};
373 histoPSet.add<std::vector<double> >(
"photonBinning",
bins);
374 std::vector<double> massbins = {90.,91.,92.,93.,94.,95.,96.,97.,98.,99.,100.,101.,102.,103.,104.,105.,106.,107.,108.,109.,110.,115.,120.,130.,150.,200.};
375 histoPSet.add<std::vector<double> >(
"massBinning", massbins);
382 descriptions.
add(
"photonMonitoring", desc);
T getParameter(std::string const &) const
MonitorElement * denominator
const MEbinning r9_binning_
MonitorElement * bookProfile(Args &&...args)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
std::unique_ptr< GenericTriggerEventFlag > num_genTriggerEventFlag_
PhotonME subphotonME_variableBinning_
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
StringCutObjectSelector< reco::PFJet, true > jetSelection_
LuminosityBlockNumber_t luminosityBlock() const
PhotonME photonME_variableBinning_
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
StringCutObjectSelector< reco::Photon, true > photonSelection_
MEbinning photon_binning_
static MEbinning getHistoLSPSet(edm::ParameterSet const &pset)
MonitorElement * numerator
static void fillHistoLSPSetDescription(edm::ParameterSetDescription &pset)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
StringCutObjectSelector< reco::MET, true > metSelection_
StringCutObjectSelector< reco::GsfElectron, true > eleSelection_
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
edm::EDGetTokenT< reco::PhotonCollection > photonToken_
Cos< T >::type cos(const T &t)
MonitorElement * book1D(Args &&...args)
std::vector< double > diphoton_mass_binning_
edm::EDGetTokenT< reco::PFMETCollection > metToken_
ParameterDescriptionBase * add(U const &iLabel, T const &value)
static MEbinning getHistoPSet(edm::ParameterSet const &pset)
PhotonMonitor(const edm::ParameterSet &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void setTitle(PhotonME &me, const std::string &titleX, const std::string &titleY)
PhotonME subphotonHoverEME_
~PhotonMonitor() override
void setCurrentFolder(const std::string &fullpath)
MonitorElement * book2D(Args &&...args)
PhotonME subphotonEtaPhiME_
std::vector< Photon > PhotonCollection
collectin of Photon objects
const MEbinning hoe_binning_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
edm::EDGetTokenT< reco::PFJetCollection > jetToken_
std::vector< PFJet > PFJetCollection
collection of PFJet objects
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
static void fillHistoPSetDescription(edm::ParameterSetDescription &pset)
edm::EDGetTokenT< reco::GsfElectronCollection > eleToken_
std::vector< double > photon_variable_binning_
std::unique_ptr< GenericTriggerEventFlag > den_genTriggerEventFlag_
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
const MEbinning eta_binning_
const MEbinning phi_binning_1
void bookME(DQMStore::IBooker &, PhotonME &me, const std::string &histname, const std::string &histtitle, unsigned int nbins, double xmin, double xmax)