diff --git a/DQM/SiStripMonitorClient/data/index_template_TKMap.html b/DQM/SiStripMonitorClient/data/index_template_TKMap.html index 4ca2a456b623e..a26e122fe2188 100644 --- a/DQM/SiStripMonitorClient/data/index_template_TKMap.html +++ b/DQM/SiStripMonitorClient/data/index_template_TKMap.html @@ -34,6 +34,12 @@

Analysis of run RunNumber

  • Number of clusters on-track per module
  • Number of clusters off-track per module (automatic scale)
  • Mean value for S/N for on-track cluster corrected for the angle +
  • Cluster charge per module +
  • Cluster charge per cm from origin per module +
  • Cluster charge per cm from track per module +
  • Number of valid hits per module +
  • Number of missing hits per module +
  • Number of inactive hits per module
  • Fraction of bad components per module found by the prompt calibration loop
  • Type of bad components per module found by the prompt calibration loop
  • List of bad components found by the prompt calibration loop diff --git a/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html b/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html index 843c8c720b8cc..27350212c5e6c 100644 --- a/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html +++ b/DQM/SiStripMonitorClient/data/index_template_TKMap_cosmics.html @@ -34,6 +34,12 @@

    Analysis of run RunNumber

  • Number of clusters on-track per module
  • Number of clusters off-track per module (automatic scale)
  • Mean value for S/N for on-track cluster corrected for the angle +
  • Cluster charge per module +
  • Cluster charge per cm from origin per module +
  • Cluster charge per cm from track per module +
  • Number of valid hits per module +
  • Number of missing hits per module +
  • Number of inactive hits per module
  • Fraction of bad components per module found by the prompt calibration loop
  • Type of bad components per module found by the prompt calibration loop
  • List of bad components found by the prompt calibration loop diff --git a/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h b/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h index 34a407ebbb0be..3bf231cfdeb45 100644 --- a/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h +++ b/DQM/SiStripMonitorClient/interface/SiStripTrackerMapCreator.h @@ -46,7 +46,7 @@ class SiStripTrackerMapCreator { void setTkMapRangeOffline(); uint16_t getDetectorFlagAndComment(DQMStore* dqm_store, uint32_t det_id, const TrackerTopology* tTopo, std::ostringstream& comment); void printBadModuleList(std::map* badmodmap, const edm::EventSetup& eSetup); - void printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup); + void printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup, std::string& htype); TrackerMap* trackerMap_; diff --git a/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc b/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc index 19012250397dc..a922203e399a3 100644 --- a/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc +++ b/DQM/SiStripMonitorClient/src/SiStripTrackerMapCreator.cc @@ -410,11 +410,11 @@ void SiStripTrackerMapCreator::setTkMapFromHistogram(DQMStore* dqm_store, std::s dqm_store->cd(mechanicalview_dir); } dqm_store->cd(); - if (topModules) printTopModules(topNmodVec, eSetup); + if (topModules) printTopModules(topNmodVec, eSetup, htype); delete topNmodVec; } -void SiStripTrackerMapCreator::printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup){ +void SiStripTrackerMapCreator::printTopModules(std::vector >* topNmodVec, const edm::EventSetup& eSetup, std::string& htype){ //////////////Retrieve tracker topology from geometry //edm::ESHandle tTopoHandle; @@ -426,8 +426,16 @@ void SiStripTrackerMapCreator::printTopModules(std::vectorempty()) return; - std::sort(topNmodVec->rbegin(), topNmodVec->rend()); - if (topNmodVec->size() > numTopModules) topNmodVec->resize(numTopModules); + if (htype == "StoNCorrOnTrack") { + topModLabel += " less than 10"; + std::sort(topNmodVec->begin(), topNmodVec->end()); + while ((topNmodVec->back()).first > 10) + topNmodVec->pop_back(); + } + else{ + std::sort(topNmodVec->rbegin(), topNmodVec->rend()); + if (topNmodVec->size() > numTopModules) topNmodVec->resize(numTopModules); + } edm::LogVerbatim("TopModules") << topModLabel; edm::LogVerbatim("TopModules") << "------------------------------------------------------"; diff --git a/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py b/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py index b5ada538d806e..3c22625a3cf06 100644 --- a/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py +++ b/DQM/SiStripMonitorClient/test/SiStripDQM_OfflineTkMap_Template_cfg_DB.py @@ -112,9 +112,9 @@ cms.PSet(mapName=cms.untracked.string('NumberOfOfffTrackCluster'),TopModules=cms.untracked.bool(True)), cms.PSet(mapName=cms.untracked.string('NumberOfOfffTrackCluster'),mapSuffix=cms.untracked.string("_autoscale"),mapMax=cms.untracked.double(-1.)), cms.PSet(mapName=cms.untracked.string('NumberOfOnTrackCluster')), - cms.PSet(mapName=cms.untracked.string('StoNCorrOnTrack')), + cms.PSet(mapName=cms.untracked.string('StoNCorrOnTrack'),TopModules=cms.untracked.bool(True)), cms.PSet(mapName=cms.untracked.string('NApvShots'),mapMax=cms.untracked.double(-1.),logScale=cms.untracked.bool(True)), - cms.PSet(mapName=cms.untracked.string('NApvShots'),logScale=cms.untracked.bool(True),psuMap=cms.untracked.bool(True),loadLVCabling=cms.untracked.bool(True),TopModules=cms.untracked.bool(True)), + cms.PSet(mapName=cms.untracked.string('NApvShots'),mapMax=cms.untracked.double(-1.),logScale=cms.untracked.bool(True),psuMap=cms.untracked.bool(True),loadLVCabling=cms.untracked.bool(True),TopModules=cms.untracked.bool(True)), # cms.PSet(mapName=cms.untracked.string('MedianChargeApvShots'),mapMax=cms.untracked.double(-1.)), # cms.PSet(mapName=cms.untracked.string('ClusterCharge'),mapMax=cms.untracked.double(-1.)), # cms.PSet(mapName=cms.untracked.string('ChargePerCMfromOrigin')),