17 const unsigned int R10BINS = 1024;
18 const float R10MIN = -0.5;
19 const float R10MAX = 1023.5;
21 const unsigned int PUMETABINS = 22;
22 const unsigned int PUMNORMALIZE = 22;
24 const unsigned int PUMBINS = 18;
25 const float PUMMIN = -0.5;
26 const float PUMMAX = 17.5;
31 histFolder_(ps.getParameter<std::
string>(
"histFolder")) {}
39 int nonzeroRegionsBxP2{0};
40 int nonzeroRegionsBx0{0};
41 int nonzeroRegionsBxM2{0};
43 float regionsTotalEtBxP2{0.};
44 float regionsTotalEtBx0{0.};
45 float regionsTotalEtBxM2{0.};
47 for (
const auto&
region : *regionCollection) {
51 regionsTotalEtBx0 +=
region.et();
52 }
else if (
region.bx() == 2) {
54 regionsTotalEtBxP2 +=
region.et();
55 }
else if (
region.bx() == -2) {
57 regionsTotalEtBxM2 +=
region.et();
78 for (
const auto&
region : *regionCollection) {
86 else if (
region.bx() == -2)
94 for (
size_t ieta = 0; ieta < PUMETABINS; ++ieta) {
96 regionsAvgEtBx0_ = ibooker.
book1D(
"regionsAvgEt",
"Average Rank;Average Rank;Counts", R10BINS, R10MIN, R10MAX);
98 ibooker.
book1D(
"regionsAvgNonZeroEt",
"Average Rank >0;Average Rank Regions>0;Counts", R10BINS, R10MIN, R10MAX);
101 "PUM Bin rank distribution;PU bin;Rank",
112 for (
size_t ieta = 0; ieta < PUMETABINS; ++ieta) {
114 regionsAvgEtBxP2_ = ibooker.
book1D(
"regionsAvgEt",
"Average Rank;Average Rank;Counts", R10BINS, R10MIN, R10MAX);
116 ibooker.
book1D(
"regionsAvgNonZeroEt",
"Average Rank >0;Average Rank Regions>0;Counts", R10BINS, R10MIN, R10MAX);
118 ibooker.
book1D(
"nonZeroRegions",
"Nonzero regions;Number Regions >0;Counts", 397, -0.5, 396.5);
120 "PUM Bin rank distribution;PU bin;Rank",
131 for (
size_t ieta = 0; ieta < PUMETABINS; ++ieta) {
133 regionsAvgEtBxM2_ = ibooker.
book1D(
"regionsAvgEt",
"Average Rank;Average Rank;Counts", R10BINS, R10MIN, R10MAX);
135 ibooker.
book1D(
"regionsAvgNonZeroEt",
"Average Rank >0;Average Rank Regions>0;Counts", R10BINS, R10MIN, R10MAX);
137 ibooker.
book1D(
"nonZeroRegions",
"Nonzero regions;Number Regions >0;Counts", 397, -0.5, 396.5);
139 "PUM Bin rank distribution;PU bin;Rank",
150 ibooker.
book2D(
"regionBxPopulation",
151 "Event counts per region per bunch crossing;Region index (18*eta+phi);BX index;Counts",
159 "Et per region per bunch crossing;Region index (18*eta+phi);BX index;Counts*et",
MonitorElement * regionsTotalEtBxP2_
MonitorElement * regionsAvgNonZeroEtBxM2_
MonitorElement * regionsAvgEtBxM2_
L1TPUM(const edm::ParameterSet &ps)
edm::EDGetTokenT< L1CaloRegionCollection > regionSource_
virtual void setCurrentFolder(std::string const &fullpath)
MonitorElement * regionsAvgEtBxP2_
std::vector< MonitorElement * > regionsPUMEtaBxP2_
MonitorElement * nonZeroRegionsBxM2_
MonitorElement * regionBxPopulation_
MonitorElement * nonZeroRegionsBx0_
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
void analyze(const edm::Event &e, const edm::EventSetup &c) override
MonitorElement * nonZeroRegionsBxP2_
MonitorElement * regionsAvgNonZeroEtBxP2_
std::vector< MonitorElement * > regionsPUMEtaBxM2_
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
std::vector< MonitorElement * > regionsPUMEtaBx0_
void bookHistograms(DQMStore::IBooker &ibooker, const edm::Run &, const edm::EventSetup &) override
MonitorElement * regionsAvgEtBx0_
MonitorElement * regionsTotalEtBx0_
MonitorElement * regionsAvgNonZeroEtBx0_
std::vector< L1CaloRegion > L1CaloRegionCollection
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
MonitorElement * regionsTotalEtBxM2_
MonitorElement * regionBxEtSum_
int etaBin(const l1t::HGCalMulticluster *cl)