Skip to content

Commit

Permalink
Merge pull request #34900 from mmusich/fixWf8.0comparisons
Browse files Browse the repository at this point in the history
Do not produce NaNs in `SiPixelActionExecutor`
  • Loading branch information
cmsbuild committed Aug 17, 2021
2 parents 93c52a8 + a70edbc commit 18a5f98
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 7 deletions.
15 changes: 9 additions & 6 deletions DQM/SiPixelMonitorClient/src/SiPixelActionExecutor.cc
Expand Up @@ -1875,9 +1875,9 @@ void SiPixelActionExecutor::normaliseAvDigiOcc(DQMStore::IBooker &iBooker, DQMSt
float averageFPIXOcc = totalDigisFPIX / 8.;
for (int i = 1; i != 41; i++) {
if (i < 33)
roccupancyPlot->setBinContent(i, roccupancyPlot->getBinContent(i) / averageBPIXOcc);
roccupancyPlot->setBinContent(i, averageBPIXOcc != 0. ? roccupancyPlot->getBinContent(i) / averageBPIXOcc : 0.);
else
roccupancyPlot->setBinContent(i, roccupancyPlot->getBinContent(i) / averageFPIXOcc);
roccupancyPlot->setBinContent(i, averageFPIXOcc != 0. ? roccupancyPlot->getBinContent(i) / averageFPIXOcc : 0.);
}

iGetter.setCurrentFolder(iBooker.pwd());
Expand All @@ -1903,10 +1903,13 @@ void SiPixelActionExecutor::normaliseAvDigiOccVsLumi(DQMStore::IBooker &iBooker,
float averageBPIXOcc = totalDigisBPIX / 32.;
float averageFPIXOcc = totalDigisFPIX / 8.;
for (int i = 1; i != 41; i++) {
if (i < 33)
avgfedDigiOccvsLumi->setBinContent(lumisec, i, avgfedDigiOccvsLumi->getBinContent(lumisec, i) / averageBPIXOcc);
else
avgfedDigiOccvsLumi->setBinContent(lumisec, i, avgfedDigiOccvsLumi->getBinContent(lumisec, i) / averageFPIXOcc);
if (i < 33) {
avgfedDigiOccvsLumi->setBinContent(
lumisec, i, averageBPIXOcc != 0. ? avgfedDigiOccvsLumi->getBinContent(lumisec, i) / averageBPIXOcc : 0.);
} else {
avgfedDigiOccvsLumi->setBinContent(
lumisec, i, averageFPIXOcc != 0. ? avgfedDigiOccvsLumi->getBinContent(lumisec, i) / averageFPIXOcc : 0.);
}
}

iGetter.setCurrentFolder(iBooker.pwd());
Expand Down
3 changes: 2 additions & 1 deletion DQM/SiPixelMonitorDigi/src/SiPixelDigiSource.cc
Expand Up @@ -137,11 +137,12 @@ void SiPixelDigiSource::globalEndLuminosityBlock(const edm::LuminosityBlock& lb,
averageDigiOccupancy->Fill(
i,
averageOcc); // "modOn" basically mean Online DQM, in this case fill histos with actual value of digi fraction per fed for each ten lumisections
if (avgfedDigiOccvsLumi && thisls % 5 == 0)
if (avgfedDigiOccvsLumi && thisls % 5 == 0) {
avgfedDigiOccvsLumi->setBinContent(
int(thisls / 5),
i + 1,
averageOcc); //fill with the mean over 5 lumisections, previous code was filling this histo only with last event of each 10th lumisection
}
}
}

Expand Down

0 comments on commit 18a5f98

Please sign in to comment.