|
| SiPixelPhase1Summary (const edm::ParameterSet &conf) |
|
| ~SiPixelPhase1Summary () override |
|
void | accumulate (edm::Event const &ev, edm::EventSetup const &es) final |
|
void | beginJob () override |
|
void | beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &) final |
|
void | beginRun (edm::Run const &run, edm::EventSetup const &) override |
|
virtual void | dqmAnalyze (DQMStore::IBooker &, DQMStore::IGetter &, edm::Event const &, edm::EventSetup const &) |
|
| DQMEDHarvester () |
|
| DQMEDHarvester (edm::ParameterSet const &iConfig) |
|
virtual void | dqmEndRun (DQMStore::IBooker &, DQMStore::IGetter &, edm::Run const &, edm::EventSetup const &) |
|
void | endJob () final |
|
void | endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final |
|
void | endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &es) final |
|
void | endRun (edm::Run const &, edm::EventSetup const &) override |
|
void | endRunProduce (edm::Run &run, edm::EventSetup const &es) final |
|
| ~DQMEDHarvester () override=default |
|
| EDProducer ()=default |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
bool | hasAbilityToProduceInBeginLumis () const final |
|
bool | hasAbilityToProduceInBeginRuns () const final |
|
bool | hasAbilityToProduceInEndLumis () const final |
|
bool | hasAbilityToProduceInEndRuns () const final |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const |
|
bool | wantsStreamRuns () const |
|
| ~EDProducerBase () override |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
|
std::vector< bool > const & | recordProvenanceList () const |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
TypeLabelList const & | typeLabelList () const |
| used by the fwk to register the list of products of this module More...
|
|
| ~ProducerBase () noexcept(false) override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
void | beginRun (edm::Run const &run, edm::EventSetup const &eSetup) override |
|
void | dqmEndJob (DQMStore::IBooker &iBooker, DQMStore::IGetter &iGetter) override |
|
void | dqmEndLuminosityBlock (DQMStore::IBooker &iBooker, DQMStore::IGetter &iGetter, edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &c) override |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces () |
| declare what type of product will make and with which optional label More...
|
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces () |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces () |
|
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<BranchType B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<Transition B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
ProducesCollector | producesCollector () |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
Description: Summary map generation for the Phase 1 pixel
Usage: <usage>
Definition at line 40 of file SiPixelPhase1Summary.h.
Definition at line 112 of file SiPixelPhase1Summary.cc.
115 std::vector<std::string> xAxisLabels_ = {
"BMO",
127 std::vector<std::string> yAxisLabels_ = {
133 iBooker.setCurrentFolder(
"PixelPhase1/Summary");
136 auto name = mapInfo.first;
137 summaryMap_[
name] = iBooker.book2D(
"pixel" +
name +
"Summary",
"Pixel " +
name +
" Summary", 12, 0, 12, 4, 0, 4);
140 deadROCSummary = iBooker.book2D(
"deadROCSummary",
"Percentage of dead ROCs per layer/ring", 2, 0, 2, 4, 0, 4);
141 std::vector<std::string> xAxisLabelsReduced_ = {
"Barrel",
"Forward"};
143 for (
unsigned int i = 0;
i < xAxisLabelsReduced_.size();
i++) {
148 iBooker.setCurrentFolder(
"PixelPhase1/Tracks/PXBarrel");
150 float mean_range = 100.;
151 float rms_range = 200.;
156 residuals_[
"residual_mean_x_Inner_PXLayer_" + layer] =
157 iBooker.book1D(
"residual_mean_x_Inner_PXLayer_" + layer,
158 "Mean Track Residuals X Inner Modules for Layer " + layer +
";mean(x_rec-x_pred)[#mum]",
162 residuals_[
"residual_mean_x_Outer_PXLayer_" + layer] =
163 iBooker.book1D(
"residual_mean_x_Outer_PXLayer_" + layer,
164 "Mean Track Residuals X Outer Modules for Layer " + layer +
";mean(x_rec-x_pred)[#mum]",
168 residuals_[
"residual_mean_y_Inner_PXLayer_" + layer] =
169 iBooker.book1D(
"residual_mean_y_Inner_PXLayer_" + layer,
170 "Mean Track Residuals Y Inner Modules for Layer " + layer +
";mean(y_rec-y_pred)[#mum]",
174 residuals_[
"residual_mean_y_Outer_PXLayer_" + layer] =
175 iBooker.book1D(
"residual_mean_y_Outer_PXLayer_" + layer,
176 "Mean Track Residuals Y Outer Modules for Layer " + layer +
";mean(y_rec-y_pred)[#mum]",
181 residuals_[
"residual_rms_x_Inner_PXLayer_" + layer] =
182 iBooker.book1D(
"residual_rms_x_Inner_PXLayer_" + layer,
183 "RMS of Track Residuals X Inner Modules for Layer " + layer +
";rms(x_rec-x_pred)[#mum]",
187 residuals_[
"residual_rms_x_Outer_PXLayer_" + layer] =
188 iBooker.book1D(
"residual_rms_x_Outer_PXLayer_" + layer,
189 "RMS of Track Residuals X Outer Modules for Layer " + layer +
";rms(x_rec-x_pred)[#mum]",
193 residuals_[
"residual_rms_y_Inner_PXLayer_" + layer] =
194 iBooker.book1D(
"residual_rms_y_Inner_PXLayer_" + layer,
195 "RMS of Track Residuals Y Inner Modules for Layer " + layer +
";rms(y_rec-y_pred)[#mum]",
199 residuals_[
"residual_rms_y_Outer_PXLayer_" + layer] =
200 iBooker.book1D(
"residual_rms_y_Outer_PXLayer_" + layer,
201 "RMS of Track Residuals Y Outer Modules for Layer " + layer +
";rms(y_rec-y_pred)[#mum]",
208 iBooker.setCurrentFolder(
"PixelPhase1/Tracks/PXForward");
209 residuals_[
"residual_mean_x_Inner"] = iBooker.book1D(
210 "residual_mean_x_Inner",
"Mean Track Residuals X Inner Modules;mean(x_rec-x_pred)[#mum]", 100, -100., 100.);
211 residuals_[
"residual_mean_x_Outer"] = iBooker.book1D(
212 "residual_mean_x_Outer",
"Mean Track Residuals X Outer Modules;mean(x_rec-x_pred)[#mum]", 100, -100., 100.);
213 residuals_[
"residual_mean_y_Inner"] = iBooker.book1D(
214 "residual_mean_y_Inner",
"Mean Track Residuals Y Inner Modules;mean(y_rec-y_pred)[#mum]", 100, -100., 100.);
215 residuals_[
"residual_mean_y_Outer"] = iBooker.book1D(
216 "residual_mean_y_Outer",
"Mean Track Residuals Y Outer Modules;mean(y_rec-y_pred)[#mum]", 100, -100., 100.);
218 residuals_[
"residual_rms_x_Inner"] = iBooker.book1D(
219 "residual_rms_x_Inner",
"RMS of Track Residuals X Inner Modules;rms(x_rec-x_pred)[#mum]", 100, 0., 200.);
220 residuals_[
"residual_rms_x_Outer"] = iBooker.book1D(
221 "residual_rms_x_Outer",
"RMS of Track Residuals X Outer Modules;rms(x_rec-x_pred)[#mum]", 100, 0., 200.);
222 residuals_[
"residual_rms_y_Inner"] = iBooker.book1D(
223 "residual_rms_y_Inner",
"RMS of Track Residuals Y Inner Modules;rms(y_rec-y_pred)[#mum]", 100, 0., 200.);
224 residuals_[
"residual_rms_y_Outer"] = iBooker.book1D(
225 "residual_rms_y_Outer",
"RMS of Track Residuals Y Outer Modules;rms(y_rec-y_pred)[#mum]", 100, 0., 200.);
228 iBooker.setCurrentFolder(
"PixelPhase1/Tracks/PXForward");
229 residuals_[
"residual_mean_x_pos"] = iBooker.book1D(
230 "residual_mean_x_pos",
"Mean Track Residuals X pos. Side;mean(x_rec-x_pred)[#mum]", 100, -100., 100.);
231 residuals_[
"residual_mean_x_neg"] = iBooker.book1D(
232 "residual_mean_x_neg",
"Mean Track Residuals X neg. Side;mean(x_rec-x_pred)[#mum]", 100, -100., 100.);
233 residuals_[
"residual_mean_y_pos"] = iBooker.book1D(
234 "residual_mean_y_pos",
"Mean Track Residuals Y pos. Side;mean(y_rec-y_pred)[#mum]", 100, -100., 100.);
235 residuals_[
"residual_mean_y_neg"] = iBooker.book1D(
236 "residual_mean_y_neg",
"Mean Track Residuals Y neg. Side;mean(y_rec-y_pred)[#mum]", 100, -100., 100.);
239 iBooker.book1D(
"residual_rms_x_pos",
"RMS of Track Residuals X pos. Side;rms(x_rec-x_pred)[#mum]", 100, 0., 200.);
241 iBooker.book1D(
"residual_rms_x_neg",
"RMS of Track Residuals X neg. Side;rms(x_rec-x_pred)[#mum]", 100, 0., 200.);
243 iBooker.book1D(
"residual_rms_y_pos",
"RMS of Track Residuals Y pos. Side;rms(y_rec-y_pred)[#mum]", 100, 0., 200.);
245 iBooker.book1D(
"residual_rms_y_neg",
"RMS of Track Residuals Y neg. Side;rms(y_rec-y_pred)[#mum]", 100, 0., 200.);
248 iBooker.setCurrentFolder(
"PixelPhase1/EventInfo");
252 summaryMap_[
"Grand"] = iBooker.book2D(
"reportSummaryMap",
"Pixel Summary Map", 2, 0, 2, 4, 0, 4);
253 summaryMap_[
"Grand"]->setAxisTitle(
"Subdetector", 1);
254 for (
unsigned int i = 0;
i < xAxisLabelsReduced_.size();
i++) {
255 summaryMap_[
"Grand"]->setBinLabel(
i + 1, xAxisLabelsReduced_[
i]);
256 for (
unsigned int j = 0;
j < 4;
j++) {
262 summaryMap_[
"Grand"] = iBooker.book2D(
"reportSummaryMap",
"Pixel Summary Map", 12, 0, 12, 4, 0, 4);
269 if (summaryMapEntry.first ==
"Grand")
271 auto summaryMap = summaryMapEntry.second;
272 for (
unsigned int i = 0;
i < xAxisLabels_.size();
i++) {
275 for (
unsigned int i = 0;
i < yAxisLabels_.size();
i++) {
276 summaryMap->setBinLabel(
i + 1, yAxisLabels_[
i], 2);
278 summaryMap->setAxisTitle(
"Subdetector", 1);
279 summaryMap->setAxisTitle(
"Layer/disk", 2);
280 for (
int i = 0;
i < summaryMap->getTH1()->GetXaxis()->GetNbins();
i++) {
281 for (
int j = 0;
j < summaryMap->getTH1()->GetYaxis()->GetNbins();
j++) {
282 summaryMap->Fill(
i,
j, -1.);
289 iBooker.setCurrentFolder(
"PixelPhase1/");
References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookFloat(), dqm::implementation::NavigatorBase::cd(), deadROCSummary, dqm::impl::MonitorElement::Fill(), mps_fire::i, dqmiolumiharvest::j, Skims_PA_cff::name, reportSummary, residuals_, runOnEndLumi_, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, summaryMap_, and summaryPlotName_.
Referenced by dqmEndJob(), and dqmEndLuminosityBlock().
Definition at line 295 of file SiPixelPhase1Summary.cc.
297 iBooker.setCurrentFolder(
"PixelPhase1/");
298 std::vector<string> binAxisLabels = {
"Layer 1",
"Layer 2",
"Layer 3",
"Layer 4",
"Ring 1",
"Ring 2"};
301 std::vector<string> varName = {
"Layer_1",
"Layer_2",
"Layer_3",
"Layer_4",
"Ring_1",
"Ring_2"};
302 std::vector<int>
yMax = {1536, 3584, 5632, 8192, 4224, 6528};
303 for (
unsigned int i = 0;
i < histoOrder.size();
i++) {
304 string varNameStr =
"deadRocTrend" + varName[
i];
305 string varTitle = binAxisLabels[
i] +
" dead ROC trend";
306 deadROCTrends_[histoOrder[
i]] = iBooker.bookProfile(varNameStr, varTitle, 500, 0., 5000, 0.,
yMax[
i],
"");
307 varNameStr =
"ineffRocTrend" + varName[
i];
308 varTitle = binAxisLabels[
i] +
" inefficient ROC trend";
309 ineffROCTrends_[histoOrder[
i]] = iBooker.bookProfile(varNameStr, varTitle, 500, 0., 5000, 0.,
yMax[
i],
"");
314 deadROCTrends_[
offline] = iBooker.bookProfile(
"deadRocTotal",
"N dead ROCs", 6, 0., 6, 0., 8192,
"");
315 ineffROCTrends_[
offline] = iBooker.bookProfile(
"ineffRocTotal",
"N inefficient ROCs", 6, 0., 6, 0., 8192,
"");
318 for (
unsigned int i = 1;
i <= binAxisLabels.size();
i++) {
References dqm::implementation::IBooker::bookProfile(), deadROCTrends_, mps_fire::i, ineffROCTrends_, layer1, layer2, layer3, layer4, offline, ring1, ring2, runOnEndLumi_, dqm::implementation::NavigatorBase::setCurrentFolder(), and multiplicitycorr_cfi::yMax.
Referenced by dqmEndJob(), and dqmEndLuminosityBlock().
Definition at line 328 of file SiPixelPhase1Summary.cc.
331 auto name = mapInfo.first;
332 std::ostringstream histNameStream;
335 for (
int i = 0;
i < 12;
i++) {
336 for (
int j = 0;
j < 4;
j++) {
339 bool minus =
i < 2 || (
i > 3 &&
i < 8);
340 int iOver2 = floor(
i / 2.);
341 bool outer = (
i > 3) ? iOver2 % 2 == 0 :
i % 2 == 0;
343 histNameStream.str(
"");
344 histNameStream <<
topFolderName_.c_str() <<
"PX" << ((
i > 3) ?
"Forward" :
"Barrel") <<
"/"
345 << ((
i > 3) ?
"HalfCylinder" :
"Shell") <<
"_" << (
minus ?
"m" :
"p") << ((
outer) ?
"O" :
"I")
346 <<
"/" << ((
i > 3) ? ((
i % 2 == 0) ?
"PXRing_1/" :
"PXRing_2/") :
"")
348 << ((
i > 3) ? ((
minus) ?
"-" :
"+") :
"") << (
j + 1);
349 histName = histNameStream.str();
353 edm::LogWarning(
"SiPixelPhase1Summary") <<
"ME " << histName <<
" is not available !!";
358 edm::LogWarning(
"SiPixelPhase1Summary") <<
"Summary map " <<
name <<
" is not available !!";
361 if (!(
me->getQReports()).
empty())
371 std::vector<int> nRocsPerTrend = {1536, 3584, 5632, 8192, 4224, 6528};
372 for (
unsigned int i = 0;
i < trendOrder.size();
i++) {
373 int xBin =
i < 4 ? 1 : 2;
374 int yBin =
i % 4 + 1;
378 nROCs = tempProfile->GetBinContent(tempProfile->FindLastBinAbove());
381 nROCs = tempProfile->GetBinContent(
i + 1);
393 iGetter.get(
"PixelPhase1/Tracks/PXBarrel/residual_x_per_SignedModule_per_SignedLadder_PXLayer_" + layer);
395 iGetter.get(
"PixelPhase1/Tracks/PXBarrel/residual_y_per_SignedModule_per_SignedLadder_PXLayer_" + layer);
401 if (i <= me_x->getNbinsY() / 2) {
402 bool iAmInner = (
i % 2 == 0);
404 for (
int j : {1, 2, 3, 4, 6, 7, 8, 9}) {
413 for (
int j : {1, 2, 3, 4, 6, 7, 8, 9}) {
423 bool iAmInner = (
i % 2 == 1);
425 for (
int j : {1, 2, 3, 4, 6, 7, 8, 9}) {
434 for (
int j : {1, 2, 3, 4, 6, 7, 8, 9}) {
450 iGetter.get(
"PixelPhase1/Tracks/PXForward/residual_x_per_PXDisk_per_SignedBladePanel_PXRing_" +
ring);
452 iGetter.get(
"PixelPhase1/Tracks/PXForward/residual_y_per_PXDisk_per_SignedBladePanel_PXRing_" +
ring);
453 bool posSide =
false;
469 bool iAmInner = (
i % 2 == 0);
498 float sumOfNonNegBins = 0.;
502 for (
int i = 0;
i < 12;
i++) {
504 edm::LogWarning(
"SiPixelPhase1Summary") <<
"Grand summary does not exist!";
507 for (
int j = 0;
j < 4;
j++) {
513 auto name = mapInfo.first;
521 if (
summaryMap_[
"Grand"]->getBinContent(
i + 1,
j + 1) > -0.1)
522 sumOfNonNegBins +=
summaryMap_[
"Grand"]->getBinContent(
i + 1,
j + 1);
531 for (
int i = 0;
i < 2;
i++) {
533 edm::LogWarning(
"SiPixelPhase1Summary") <<
"Grand summary does not exist!";
536 for (
int j = 0;
j < 4;
j++) {
546 sumOfNonNegBins +=
summaryMap_[
"Grand"]->getBinContent(
i + 1,
j + 1);
References deadROCSummary, deadRocThresholds_, deadROCTrends_, vertexPlots::e4, relativeConstraints::empty, dqm::impl::MonitorElement::Fill(), dqm::implementation::IGetter::get(), dqm::impl::MonitorElement::getBinContent(), dqm::impl::MonitorElement::getBinEntries(), dqm::impl::MonitorElement::getBinError(), dqm::impl::MonitorElement::getNbinsX(), dqm::impl::MonitorElement::getNbinsY(), mps_fire::i, dqmiolumiharvest::j, layer1, layer2, layer3, layer4, hlt_dqm_clientPB-live_cfg::me, reco_skim_cfg_mod::minHits, reco::HaloData::minus, Skims_PA_cff::name, offline, SurfaceOrientation::outer, reportSummary, residuals_, relativeConstraints::ring, ring1, ring2, runOnEndLumi_, dqm::impl::MonitorElement::setBinContent(), AlCaHLTBitMon_QueryRunRegistry::string, summaryMap_, summaryPlotName_, topFolderName_, photonAnalyzer_cfi::xBin, and photonAnalyzer_cfi::yBin.
Referenced by dqmEndJob(), and dqmEndLuminosityBlock().
Definition at line 555 of file SiPixelPhase1Summary.cc.
557 if (lumiSec % 10 != 0)
561 MonitorElement* nClustersAll = iGetter.get(
"PixelPhase1/Phase1_MechanicalView/num_clusters_per_Lumisection_PXAll");
562 if (nClustersAll ==
nullptr) {
563 edm::LogWarning(
"SiPixelPhase1Summary") <<
"All pixel cluster trend plot not available!!";
566 if (nClustersAll->
getTH1()->GetBinContent(lumiSec) < 100)
574 std::vector<int> nFilledROCs(trendOrder.size(), 0);
575 std::vector<int> hiEffROCs(trendOrder.size(), 0);
576 std::vector<int> nRocsPerTrend = {1536, 3584, 5632, 8192, 4224, 6528};
577 std::vector<string> trendNames = {};
579 for (
auto it : {1, 2, 3, 4}) {
580 histName =
"PXBarrel/digi_occupancy_per_SignedModuleCoord_per_SignedLadderCoord_PXLayer_" + std::to_string(it);
581 trendNames.push_back(histName);
583 for (
auto it : {1, 2}) {
584 histName =
"PXForward/digi_occupancy_per_SignedDiskCoord_per_SignedBladePanelCoord_PXRing_" + std::to_string(it);
585 trendNames.push_back(histName);
588 for (
unsigned int trendIt = 0; trendIt < trendOrder.size(); trendIt++) {
590 histName =
"PixelPhase1/Phase1_MechanicalView/" + trendNames[trendIt];
592 if (tempLayerME ==
nullptr)
594 float lowEffValue = 0.25 * (tempLayerME->
getTH1()->Integral() / nRocsPerTrend[trendIt]);
595 for (
int i = 1;
i <= tempLayerME->
getTH1()->GetXaxis()->GetNbins();
i++) {
596 for (
int j = 1;
j <= tempLayerME->
getTH1()->GetYaxis()->GetNbins();
j++) {
598 nFilledROCs[trendIt]++;
600 hiEffROCs[trendIt]++;
604 tempLayerME->
Reset();
609 for (
unsigned int i = 0;
i < trendOrder.size();
i++) {
614 for (
unsigned int i = 0;
i < trendOrder.size();
i++) {
615 deadROCTrends_[trendOrder[
i]]->Fill(lumiSec - 1, nRocsPerTrend[
i] - nFilledROCs[
i]);
623 for (
auto it : {1, 2, 3, 4}) {
624 histName =
"PixelPhase1/Phase1_MechanicalView/PXBarrel/clusterposition_zphi_PXLayer_" + std::to_string(it);
626 if (toReset !=
nullptr) {
630 for (
auto it : {
"-3",
"-2",
"-1",
"+1",
"+2",
"+3"}) {
631 histName =
"PixelPhase1/Phase1_MechanicalView/PXForward/clusterposition_xy_PXDisk_" +
std::string(it);
633 if (toReset !=
nullptr) {
References dqm::implementation::NavigatorBase::cd(), deadROCTrends_, dqm::implementation::IGetter::get(), dqm::impl::MonitorElement::getBinContent(), dqm::legacy::MonitorElement::getTH1(), mps_fire::i, ineffROCTrends_, dqmiolumiharvest::j, layer1, layer2, layer3, layer4, offline, dqm::impl::MonitorElement::Reset(), ring1, ring2, runOnEndLumi_, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by dqmEndJob(), and dqmEndLuminosityBlock().