49 for (
int ibin = 1; ibin <= den->
getNbinsX(); ibin++) {
57 result->setBinContent(ibin, eff);
58 result->setBinError(ibin, bin_err);
90 if (!meBTLTrackEffEtaTot || !meBTLTrackEffPhiTot || !meBTLTrackEffPtTot || !meBTLTrackEffEtaMtd ||
91 !meBTLTrackEffPhiMtd || !meBTLTrackEffPtMtd || !meETLTrackEffEtaTotZneg || !meETLTrackEffPhiTotZneg ||
92 !meETLTrackEffPtTotZneg || !meETLTrackEffEtaMtdZneg || !meETLTrackEffPhiMtdZneg || !meETLTrackEffPtMtdZneg ||
93 !meETLTrackEffEtaTotZpos || !meETLTrackEffPhiTotZpos || !meETLTrackEffPtTotZpos || !meETLTrackEffEtaMtdZpos ||
94 !meETLTrackEffPhiMtdZpos || !meETLTrackEffPtMtdZpos || !meMVATrackEffPtTot || !meMVATrackMatchedEffPtTot ||
95 !meMVATrackMatchedEffPtMtd || !meMVATrackEffEtaTot || !meMVATrackMatchedEffEtaTot ||
96 !meMVATrackMatchedEffEtaMtd) {
97 edm::LogError(
"MtdTracksHarvester") <<
"Monitoring histograms not found!" << std::endl;
104 " Track Efficiency VS Eta;#eta;Efficiency",
106 meBTLTrackEffEtaTot->
getTH1()->GetXaxis()->GetXmin(),
107 meBTLTrackEffEtaTot->
getTH1()->GetXaxis()->GetXmax());
112 "Track Efficiency VS Phi;#phi [rad];Efficiency",
114 meBTLTrackEffPhiTot->
getTH1()->GetXaxis()->GetXmin(),
115 meBTLTrackEffPhiTot->
getTH1()->GetXaxis()->GetXmax());
120 "Track Efficiency VS Pt;Pt [GeV];Efficiency",
122 meBTLTrackEffPtTot->
getTH1()->GetXaxis()->GetXmin(),
123 meBTLTrackEffPtTot->
getTH1()->GetXaxis()->GetXmax());
128 " Track Efficiency VS Eta (-Z);#eta;Efficiency",
130 meETLTrackEffEtaTotZneg->
getTH1()->GetXaxis()->GetXmin(),
131 meETLTrackEffEtaTotZneg->
getTH1()->GetXaxis()->GetXmax());
136 "Track Efficiency VS Phi (-Z);#phi [rad];Efficiency",
138 meETLTrackEffPhiTotZneg->
getTH1()->GetXaxis()->GetXmin(),
139 meETLTrackEffPhiTotZneg->
getTH1()->GetXaxis()->GetXmax());
144 "Track Efficiency VS Pt (-Z);Pt [GeV];Efficiency",
146 meETLTrackEffPtTotZneg->
getTH1()->GetXaxis()->GetXmin(),
147 meETLTrackEffPtTotZneg->
getTH1()->GetXaxis()->GetXmax());
152 " Track Efficiency VS Eta (+Z);#eta;Efficiency",
154 meETLTrackEffEtaTotZpos->
getTH1()->GetXaxis()->GetXmin(),
155 meETLTrackEffEtaTotZpos->
getTH1()->GetXaxis()->GetXmax());
160 "Track Efficiency VS Phi (+Z);#phi [rad];Efficiency",
162 meETLTrackEffPhiTotZpos->
getTH1()->GetXaxis()->GetXmin(),
163 meETLTrackEffPhiTotZpos->
getTH1()->GetXaxis()->GetXmax());
168 "Track Efficiency VS Pt (+Z);Pt [GeV];Efficiency",
170 meETLTrackEffPtTotZpos->
getTH1()->GetXaxis()->GetXmin(),
171 meETLTrackEffPtTotZpos->
getTH1()->GetXaxis()->GetXmax());
176 "Track selected efficiency VS Pt;Pt [GeV];Efficiency",
178 meMVATrackEffPtTot->
getTH1()->GetXaxis()->GetXmin(),
179 meMVATrackEffPtTot->
getTH1()->GetXaxis()->GetXmax());
184 "Track selected efficiency VS Eta;Eta;Efficiency",
186 meMVATrackEffEtaTot->
getTH1()->GetXaxis()->GetXmin(),
187 meMVATrackEffEtaTot->
getTH1()->GetXaxis()->GetXmax());
192 "Track matched to GEN efficiency VS Pt;Pt [GeV];Efficiency",
194 meMVATrackMatchedEffPtTot->
getTH1()->GetXaxis()->GetXmin(),
195 meMVATrackMatchedEffPtTot->
getTH1()->GetXaxis()->GetXmax());
200 "Track matched to GEN efficiency VS Eta;Eta;Efficiency",
202 meMVATrackMatchedEffEtaTot->
getTH1()->GetXaxis()->GetXmin(),
203 meMVATrackMatchedEffEtaTot->
getTH1()->GetXaxis()->GetXmax());
209 for (
int i = 0;
i < 2;
i++) {
226 descriptions.
add(
"MtdTracksPostProcessor",
desc);
MtdTracksHarvester(const edm::ParameterSet &iConfig)
#define DEFINE_FWK_MODULE(type)
MonitorElement * meMVAEtaMatchEff_
Log< level::Error, false > LogError
void computeEfficiency1D(MonitorElement *num, MonitorElement *den, MonitorElement *result)
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
MonitorElement * meMVAPtSelEff_
MonitorElement * meEtlPhiEff_[2]
MonitorElement * meMVAPtMatchEff_
MonitorElement * meEtlPtEff_[2]
const std::string folder_
MonitorElement * meBtlPtEff_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
MonitorElement * meBtlEtaEff_
virtual MonitorElement * get(std::string const &fullpath) const
virtual TH1 * getTH1() const
~MtdTracksHarvester() override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
MonitorElement * meBtlPhiEff_
virtual int getNbinsX() const
get # of bins in X-axis
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
MonitorElement * meMVAEtaSelEff_
MonitorElement * meEtlEtaEff_[2]
Power< A, B >::type pow(const A &a, const B &b)
virtual double getBinContent(int binx) const
get content of bin (1-D)