Perform client diagnostic operations.
152 vector<const DTChamber*>::const_iterator ch_it =
muonGeom->
chambers().begin();
153 vector<const DTChamber*>::const_iterator ch_end =
muonGeom->
chambers().end();
155 for (; ch_it != ch_end; ++ch_it) {
161 if (hNHits && hSegmOcc) {
163 TH1F * hNHits_root = hNHits->
getTH1F();
164 TH2F * hSegmOcc_root = hSegmOcc->
getTH2F();
167 int sector = chID.
sector();
168 if(sector == 13) sector=4;
169 if(sector == 14) sector=10;
175 if(summary_histo_root->GetBinContent(sector, chID.
wheel()+3)<1)
190 if(hSegmOcc_root->GetBinContent(sector,chID.
station())==0){
192 if(summary2_histo_root->GetBinContent(sector, chID.
wheel()+3)<2)
197 if((sector == 4 || sector == 10) && chID.
station() == 4) weight = 1./8.;
202 LogVerbatim (
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
203 <<
"[DTSegmentAnalysisTest]: histos not found!!";
212 TH1F * chi2_histo_root = chi2_histo->
getTH1F();
214 double maximum = chi2_histo_root->GetXaxis()->GetXmax();
215 double minimum = chi2_histo_root->GetXaxis()->GetXmin();
216 int nbins = chi2_histo_root->GetXaxis()->GetNbins();
217 int thresholdBin =
int(threshold/((maximum-minimum)/nbins));
219 double badSegments=0;
221 badSegments+=chi2_histo_root->GetBinContent(
bin);
224 if(chi2_histo_root->GetEntries()!=0){
225 double badSegmentsPercentual= badSegments/double(chi2_histo_root->GetEntries());
229 LogVerbatim (
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest")
230 <<
"[DTSegmentAnalysisTest]: Histo: " <<
getMEName(chID,
"h4DChi2") <<
" not found!" << endl;
236 string nEvtsName =
"DT/EventInfo/Counters/nProcessedEventsSegment";
245 LogVerbatim (
"DTDQM|DTMonitorClient|DTOccupancyTest") <<
"[DTOccupancyTest] ME: " 246 << nEvtsName <<
" not found!" << endl;
256 const QReport * theChi2QReport = (*histo).second->getQReport(chi2CriterionName);
258 vector<dqm::me_util::Channel> badChannels = theChi2QReport->
getBadChannels();
259 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin();
260 channel != badChannels.end(); channel++) {
262 LogError (
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest") <<
"Wheel: "<<(*histo).first.first
263 <<
" Sector: "<<(*histo).first.second
264 <<
" Bad stations: "<<(*channel).getBin()
265 <<
" Contents : "<<(*channel).getContents();
276 const QReport * theSegmRecHitQReport = (*histo).second->getQReport(segmRecHitCriterionName);
277 if(theSegmRecHitQReport) {
278 vector<dqm::me_util::Channel> badChannels = theSegmRecHitQReport->
getBadChannels();
279 for (vector<dqm::me_util::Channel>::iterator channel = badChannels.begin();
280 channel != badChannels.end(); channel++) {
282 LogError (
"DTDQM|DTMonitorClient|DTSegmentAnalysisTest") <<
"Wheel: "<<(*histo).first.first
283 <<
" Sector: "<<(*histo).first.second
284 <<
" Bad stations on recHit number: " 285 <<(*channel).getBin()
287 <<(*channel).getContents();
T getUntrackedParameter(std::string const &, T const &) const
const std::vector< const DTChamber * > & chambers() const
Return a vector of all Chamber.
edm::ParameterSet parameters
MonitorElement * get(const std::string &path)
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
std::map< std::pair< int, int >, MonitorElement * > segmRecHitHistos
double getFloatValue(void) const
Abs< T >::type abs(const T &t)
const std::vector< DQMChannel > & getBadChannels(void) const
bin
set the eta bin as selection string.
std::string getMEName(const DTChamberId &chID, std::string histoTag)
Get the ME name.
std::map< std::pair< int, int >, MonitorElement * > chi2Histos
edm::ESHandle< DTGeometry > muonGeom
TH1F * getTH1F(void) const
std::map< int, MonitorElement * > summaryHistos
int station() const
Return the station number.
TH2F * getTH2F(void) const
int wheel() const
Return the wheel number.