DQM Client Diagnostic.
94 LogVerbatim (
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
95 <<
"[DTNoiseAnalysisTest]: End of LS transition, performing the DQM client operation";
100 (*plot).second->Reset();
105 (*plot).second->Reset();
112 vector<DTChamber*>::const_iterator ch_it =
muonGeom->chambers().begin();
113 vector<DTChamber*>::const_iterator ch_end =
muonGeom->chambers().end();
115 LogTrace (
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
116 <<
"[DTNoiseAnalysisTest]: Fill the summary histos";
118 for (; ch_it != ch_end; ++ch_it) {
125 TH2F * histo_root = histo->
getTH2F();
127 for(
int sl = 1; sl != 4; ++sl) {
129 if(chID.
station() == 4 && sl == 2)
continue;
131 int binYlow = ((sl-1)*4)+1;
133 for(
int layer = 1; layer <= 4; ++layer) {
138 int nWires =
muonGeom->layer(layID)->specificTopology().channels();
139 int firstWire =
muonGeom->layer(layID)->specificTopology().firstChannel();
141 int binY = binYlow+(layer-1);
143 for(
int wire = firstWire; wire != (nWires+firstWire); wire++){
145 double noise = histo_root->GetBinContent(wire, binY);
149 int sector = chID.
sector();
153 }
else if(sector == 14) {
169 int threshBin =
step + 1;
170 int minBin = 26 +
step*5;
171 int nNoisyCh = histo->Integral(minBin,101);
180 LogTrace(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
181 <<
"[DTNoiseAnalysisTest]: fill summaries for synch noise" << endl;
184 for(
int wheel = -2; wheel != 3; ++wheel) {
187 if(histoNoiseSynch != 0) {
188 for(
int sect = 1; sect != 13; ++sect) {
189 TH2F * histo = histoNoiseSynch->
getTH2F();
190 float maxSectRate = 0;
191 for(
int sta = 1; sta != 5; ++sta) {
192 float chRate = histo->GetBinContent(sect, sta)/(float)
nevents;
193 LogTrace(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
194 <<
" Wheel: " << wheel <<
" sect: " << sect
195 <<
" station: " << sta
196 <<
" rate is: " << chRate << endl;
197 if (chRate > maxSectRate)
198 maxSectRate = chRate;
207 LogWarning(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
214 string nEvtsName =
"DT/EventInfo/Counters/nProcessedEventsNoise";
224 LogVerbatim (
"DTDQM|DTMonitorClient|DTnoiseAnalysisTest") <<
"[DTNoiseAnalysisTest] ME: "
225 << nEvtsName <<
" not found!" << endl;
void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * threshChannelsHisto
std::map< int, MonitorElement * > noisyCellHistos
edm::ESHandle< DTGeometry > muonGeom
double getFloatValue(void) const
std::string getMEName(const DTChamberId &chID)
Get the ME name.
void setEntries(double nentries)
set # of entries
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. "my/long/dir/my_histo")
MonitorElement * summarySynchNoiseHisto
MonitorElement * glbSummarySynchNoiseHisto
std::map< int, MonitorElement * > noiseHistos
std::string getSynchNoiseMEName(int wheelId) const
MonitorElement * summaryNoiseHisto
int station() const
Return the station number.
TH2F * getTH2F(void) const
int wheel() const
Return the wheel number.
void Reset(void)
reset ME (ie. contents, errors, etc)