diff --git a/DQM/SiPixelMonitorDigi/interface/SiPixelDigiSource.h b/DQM/SiPixelMonitorDigi/interface/SiPixelDigiSource.h index ed7bf87e19967..4d0fb4f0d7f15 100644 --- a/DQM/SiPixelMonitorDigi/interface/SiPixelDigiSource.h +++ b/DQM/SiPixelMonitorDigi/interface/SiPixelDigiSource.h @@ -80,9 +80,6 @@ bool ladOn, layOn, phiOn; //forward: bool ringOn, bladeOn, diskOn; - int eventNo; - int lumSec; - int nLumiSecs; std::map thePixelStructure; int nDP1P1M1; diff --git a/DQM/SiPixelMonitorDigi/src/SiPixelDigiSource.cc b/DQM/SiPixelMonitorDigi/src/SiPixelDigiSource.cc index 9071648a25af1..f4b6d129e4782 100644 --- a/DQM/SiPixelMonitorDigi/src/SiPixelDigiSource.cc +++ b/DQM/SiPixelMonitorDigi/src/SiPixelDigiSource.cc @@ -99,30 +99,27 @@ SiPixelDigiSource::~SiPixelDigiSource() void -SiPixelDigiSource::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) +SiPixelDigiSource::beginLuminosityBlock(const edm::LuminosityBlock& lb, edm::EventSetup const&) { + int thisls = lb.id().luminosityBlock(); - if(modOn && nLumiSecs%10==0){ - if(averageDigiOccupancy){ - nBPIXDigis = 0; - nFPIXDigis = 0; - for(int i=0; i!=40; i++) nDigisPerFed[i]=0; - } + if(modOn && thisls % 10 == 0 && averageDigiOccupancy){ + nBPIXDigis = 0; + nFPIXDigis = 0; + for(int i=0; i!=40; i++) nDigisPerFed[i]=0; } - if(!modOn){ - if(averageDigiOccupancy){ - nBPIXDigis = 0; - nFPIXDigis = 0; - for(int i=0; i!=40; i++) nDigisPerFed[i]=0; - } + if(!modOn && averageDigiOccupancy){ + nBPIXDigis = 0; + nFPIXDigis = 0; + for(int i=0; i!=40; i++) nDigisPerFed[i]=0; } - + } void -SiPixelDigiSource::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) +SiPixelDigiSource::endLuminosityBlock(const edm::LuminosityBlock& lb, edm::EventSetup const&) { - nLumiSecs++; + int thisls = lb.id().luminosityBlock(); float averageBPIXFed = float(nBPIXDigis)/32.; float averageFPIXFed = float(nFPIXDigis)/8.; @@ -140,13 +137,13 @@ SiPixelDigiSource::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSet if (!modOn){ averageDigiOccupancy->Fill(i+1,averageOcc); } - if (modOn && nLumiSecs%10==0){ - averageDigiOccupancy->Fill(i+1,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){ - avgfedDigiOccvsLumi->setBinContent(int(nLumiSecs/10), i+1, averageOcc); //fill with the mean over 10 lumisections, previous code was filling this histo only with last event of each 10th lumisection - }//endif meX5 - }//endif modOn - } + if ( modOn ){ + if (thisls % 10 == 0) + averageDigiOccupancy->Fill(i+1,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) + 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 + } + } } } @@ -162,9 +159,6 @@ void SiPixelDigiSource::dqmBeginRun(const edm::Run& r, const edm::EventSetup& iS LogInfo ("PixelDQM") << "2DIM IS " << twoDimOn << " and set to high resolution? " << hiRes << "\n"; if(firstRun){ - eventNo = 0; - lumSec = 0; - nLumiSecs = 0; nBigEvents = 0; nBPIXDigis = 0; nFPIXDigis = 0; @@ -239,8 +233,6 @@ void SiPixelDigiSource::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup.get().get(tTopoHandle); const TrackerTopology *pTT = tTopoHandle.product(); - eventNo++; - // get input data edm::Handle< edm::DetSetVector > input; iEvent.getByToken(srcToken_, input); @@ -703,7 +695,7 @@ void SiPixelDigiSource::bookMEs(DQMStore::IBooker & iBooker, const edm::EventSet averageDigiOccupancy->setLumiFlag(); if(modOn){ char title4[80]; sprintf(title4, "FED Digi Occupancy (NDigis/) vs LumiSections;Lumi Section;FED"); - avgfedDigiOccvsLumi = iBooker.book2D ("avgfedDigiOccvsLumi", title4, 320,0., 3200., 40, -0.5, 39.5); + avgfedDigiOccvsLumi = iBooker.book2D ("avgfedDigiOccvsLumi", title4, 640,0., 3200., 40, -0.5, 39.5); } std::map::iterator struct_iter;