40 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest") <<
"[DTSegmentAnalysisTest]: Constructor";
58 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest") <<
"DTSegmentAnalysisTest: analyzed " <<
nLSs <<
" LS";
62 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest") <<
"[DTSegmentAnalysisTest]: BeginRun";
68 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
86 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
87 <<
"[DTSegmentAnalysisTest]: End of LS " <<
nLumiSegs
88 <<
". Client called in online mode , perform DQM client operation";
96 LogTrace(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
97 <<
"[DTSegmentAnalysisTest]: endJob. Client called in offline mode , perform DQM client operation";
106 vector<const DTChamber*>::const_iterator ch_it =
muonGeom->
chambers().begin();
107 vector<const DTChamber*>::const_iterator ch_end =
muonGeom->
chambers().end();
109 for (; ch_it != ch_end; ++ch_it) {
115 if (hNHits && hSegmOcc) {
116 TH1F* hNHits_root = hNHits->
getTH1F();
117 TH2F* hSegmOcc_root = hSegmOcc->
getTH2F();
120 int sector = chID.
sector();
129 if (summary_histo_root->GetBinContent(sector, chID.
wheel() + 3) < 1)
137 abs(12 - hNHits_root->GetMaximumBin()));
140 abs(8 - hNHits_root->GetMaximumBin()));
145 if (hSegmOcc_root->GetBinContent(sector, chID.
station()) == 0) {
147 if (summary2_histo_root->GetBinContent(sector, chID.
wheel() + 3) < 2)
152 if ((sector == 4 || sector == 10) && chID.
station() == 4)
157 LogVerbatim(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
158 <<
"[DTSegmentAnalysisTest]: histos not found!!";
167 TH1F* chi2_histo_root = chi2_histo->
getTH1F();
169 double maximum = chi2_histo_root->GetXaxis()->GetXmax();
170 double minimum = chi2_histo_root->GetXaxis()->GetXmin();
171 int nbins = chi2_histo_root->GetXaxis()->GetNbins();
174 double badSegments = 0;
176 badSegments += chi2_histo_root->GetBinContent(
bin);
179 if (chi2_histo_root->GetEntries() != 0) {
180 double badSegmentsPercentual = badSegments / double(chi2_histo_root->GetEntries());
184 LogVerbatim(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
185 <<
"[DTSegmentAnalysisTest]: Histo: " <<
getMEName(chID,
"h4DChi2") <<
" not found!" << endl;
191 string nEvtsName =
"DT/EventInfo/Counters/nProcessedEventsSegment";
200 LogVerbatim(
"DTDQM|DTMonitorClient|DTOccupancyTest")
201 <<
"[DTOccupancyTest] ME: " << nEvtsName <<
" not found!" << endl;
208 const QReport* theChi2QReport = (*histo).second->getQReport(chi2CriterionName);
209 if (theChi2QReport) {
210 vector<dqm::me_util::Channel> badChannels = theChi2QReport->
getBadChannels();
211 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin(); channel != badChannels.end();
213 LogError(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
214 <<
"Wheel: " << (*histo).first.first <<
" Sector: " << (*histo).first.second
215 <<
" Bad stations: " << (*channel).getBin() <<
" Contents : " << (*channel).getContents();
220 string segmRecHitCriterionName =
225 const QReport* theSegmRecHitQReport = (*histo).second->getQReport(segmRecHitCriterionName);
226 if (theSegmRecHitQReport) {
227 vector<dqm::me_util::Channel> badChannels = theSegmRecHitQReport->
getBadChannels();
228 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin(); channel != badChannels.end();
230 LogError(
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
231 <<
"Wheel: " << (*histo).first.first <<
" Sector: " << (*histo).first.second
232 <<
" Bad stations on recHit number: " << (*channel).getBin()
233 <<
" Contents : " << (*channel).getContents();
261 for (
int wh = -2; wh <= 2; wh++) {
276 for (
int sect = 1; sect <= 14; sect++) {
279 string chi2HistoName =
"chi2BadSegmPercentual_W" +
wheel.str() +
"_Sec" + sector.str();
281 chi2Histos[make_pair(wh, sect)] = ibooker.
book1D(chi2HistoName.c_str(), chi2HistoName.c_str(), 4, 1, 5);
282 chi2Histos[make_pair(wh, sect)]->setBinLabel(1,
"MB1");
283 chi2Histos[make_pair(wh, sect)]->setBinLabel(2,
"MB2");
284 chi2Histos[make_pair(wh, sect)]->setBinLabel(3,
"MB3");
285 chi2Histos[make_pair(wh, sect)]->setBinLabel(4,
"MB4");
287 string segmHistoName =
"residualsOnSegmRecHitNumber_W" +
wheel.str() +
"_Sec" + sector.str();
288 segmRecHitHistos[make_pair(wh, sect)] = ibooker.
book1D(segmHistoName.c_str(), segmHistoName.c_str(), 4, 1, 5);