DQM Client Diagnostic.
92 LogVerbatim (
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
93 <<
"[DTNoiseAnalysisTest]: End of LS transition, performing the DQM client operation";
98 (*plot).second->Reset();
103 (*plot).second->Reset();
110 vector<const DTChamber*>::const_iterator ch_it =
muonGeom->chambers().begin();
111 vector<const DTChamber*>::const_iterator ch_end =
muonGeom->chambers().end();
113 LogTrace (
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
114 <<
"[DTNoiseAnalysisTest]: Fill the summary histos";
116 for (; ch_it != ch_end; ++ch_it) {
123 TH2F * histo_root = histo->
getTH2F();
125 for(
int sl = 1; sl != 4; ++sl) {
127 if(chID.
station() == 4 && sl == 2)
continue;
129 int binYlow = ((sl-1)*4)+1;
131 for(
int layer = 1; layer <= 4; ++layer) {
136 int nWires =
muonGeom->layer(layID)->specificTopology().channels();
137 int firstWire =
muonGeom->layer(layID)->specificTopology().firstChannel();
139 int binY = binYlow+(layer-1);
141 for(
int wire = firstWire; wire != (nWires+firstWire); wire++){
143 double noise = histo_root->GetBinContent(wire, binY);
147 int sector = chID.
sector();
151 }
else if(sector == 14) {
167 int threshBin =
step + 1;
168 int minBin = 26 +
step*5;
169 int nNoisyCh = histo->Integral(minBin,101);
178 LogTrace(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
179 <<
"[DTNoiseAnalysisTest]: fill summaries for synch noise" << endl;
182 for(
int wheel = -2; wheel != 3; ++wheel) {
185 if(histoNoiseSynch != 0) {
186 for(
int sect = 1; sect != 13; ++sect) {
187 TH2F * histo = histoNoiseSynch->
getTH2F();
188 float maxSectRate = 0;
189 for(
int sta = 1; sta != 5; ++sta) {
190 float chRate = histo->GetBinContent(sect, sta)/(float)
nevents;
191 LogTrace(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
192 <<
" Wheel: " << wheel <<
" sect: " << sect
193 <<
" station: " << sta
194 <<
" rate is: " << chRate << endl;
195 if (chRate > maxSectRate)
196 maxSectRate = chRate;
205 LogWarning(
"DTDQM|DTMonitorClient|DTNoiseAnalysisTest")
212 string nEvtsName =
"DT/EventInfo/Counters/nProcessedEventsNoise";
222 LogVerbatim (
"DTDQM|DTMonitorClient|DTnoiseAnalysisTest") <<
"[DTNoiseAnalysisTest] ME: "
223 << 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)