From 4c89858a21a7e17415d89e692a8c3487af0e6f01 Mon Sep 17 00:00:00 2001 From: Alessandro Rossi Date: Wed, 22 Feb 2023 17:46:21 +0100 Subject: [PATCH 1/5] Introduce track refitting in HLT DQM for Pixel Tracks quantities --- .../python/SiPixelPhase1TrackResiduals_cfi.py | 4 ++-- .../SiPixel_OfflineMonitoring_TrackCluster_cff.py | 2 +- .../Trigger/python/SiPixel_OfflineMonitoring_cff.py | 11 +++++++++-- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/DQM/SiPixelPhase1Track/python/SiPixelPhase1TrackResiduals_cfi.py b/DQM/SiPixelPhase1Track/python/SiPixelPhase1TrackResiduals_cfi.py index 5c2703b444ed9..5e06c747606df 100644 --- a/DQM/SiPixelPhase1Track/python/SiPixelPhase1TrackResiduals_cfi.py +++ b/DQM/SiPixelPhase1Track/python/SiPixelPhase1TrackResiduals_cfi.py @@ -134,8 +134,8 @@ from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer SiPixelPhase1TrackResidualsAnalyzer = DQMEDAnalyzer('SiPixelPhase1TrackResiduals', - trajectoryInput = cms.string("generalTracks"), - Tracks = cms.InputTag("generalTracks"), + trajectoryInput = cms.string("refittedForPixelDQM"), + Tracks = cms.InputTag("refittedForPixelDQM"), vertices = cms.InputTag("offlinePrimaryVertices"), histograms = SiPixelPhase1TrackResidualsConf, geometry = SiPixelPhase1Geometry, diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py index 414873fa500db..2b49d0a9a5034 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py @@ -426,7 +426,7 @@ hltSiPixelPhase1TrackClustersAnalyzer = DQMEDAnalyzer('SiPixelPhase1TrackClusters', VertexCut = cms.untracked.bool(False), clusters = cms.InputTag("hltSiPixelClusters"), - tracks = cms.InputTag("hltMergedTracks"), #hltIter2Merged" + tracks = cms.InputTag("hltrefittedForPixelDQM"), clusterShapeCache = cms.InputTag("hltSiPixelClusterShapeCache"), vertices = cms.InputTag(""), histograms = hltSiPixelPhase1TrackClustersConf, diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py index 735a7ba358822..37714b63571ca 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py @@ -2,8 +2,15 @@ from DQMOffline.Trigger.SiPixel_OfflineMonitoring_Cluster_cff import * from DQMOffline.Trigger.SiPixel_OfflineMonitoring_TrackCluster_cff import * +from RecoPixelVertexing.PixelLowPtUtilities.siPixelClusterShapeCache_cfi import * +from DQM.SiPixelMonitorTrack.RefitterForPixelDQM import * + +hltSiPixelClusterShapeCache = siPixelClusterShapeCache.clone(src = 'hltSiPixelClusters') +hltrefittedForPixelDQM = refittedForPixelDQM.clone(src ='hltMergedTracks') sipixelMonitorHLTsequence = cms.Sequence( - hltSiPixelPhase1ClustersAnalyzer - #+ hltSiPixelPhase1TrackClustersAnalyzer + hltSiPixelClusterShapeCache + + hltSiPixelPhase1ClustersAnalyzer + + refittedForPixelDQM + + hltSiPixelPhase1TrackClustersAnalyzer ) From 5f46737627f83921801cf0e5c91931a7d8cd7b69 Mon Sep 17 00:00:00 2001 From: Alessandro Rossi Date: Fri, 24 Feb 2023 11:41:12 +0100 Subject: [PATCH 2/5] Add Pixel Template to HLT Online client --- DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py index 09c6c0a66962d..3e6b28ecb1f54 100644 --- a/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py @@ -46,6 +46,8 @@ ) #SiStrip Local Reco process.load("CalibTracker.SiStripCommon.TkDetMapESProducer_cfi") +#SiPixelTemplate +process.load("CalibTracker.SiPixelESProducers.SiPixelTemplateDBObjectESProducer_cfi") #---- for P5 (online) DB access process.load("DQM.Integration.config.FrontierCondition_GT_cfi") From 0e9baeac73567f9e80cda31ed7822a41dca5de11 Mon Sep 17 00:00:00 2001 From: Alessandro Rossi Date: Fri, 24 Feb 2023 15:11:43 +0100 Subject: [PATCH 3/5] Fix a typo on SiPixel_OfflineMonitor sequence --- DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py index 37714b63571ca..a65f024050edd 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py @@ -11,6 +11,6 @@ sipixelMonitorHLTsequence = cms.Sequence( hltSiPixelClusterShapeCache + hltSiPixelPhase1ClustersAnalyzer - + refittedForPixelDQM + + hltrefittedForPixelDQM + hltSiPixelPhase1TrackClustersAnalyzer ) From 014e9229fe83c2abc1bc8b895975f90f36ff0479 Mon Sep 17 00:00:00 2001 From: Alessandro Rossi Date: Sat, 25 Feb 2023 09:33:26 +0100 Subject: [PATCH 4/5] Modification to protect the process when some collection are not available --- .../python/clients/hlt_dqm_sourceclient-live_cfg.py | 4 ++-- DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py | 4 +++- .../plugins/SiPixelClusterShapeCacheProducer.cc | 7 +++++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py index 3e6b28ecb1f54..cc04e270abfef 100644 --- a/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/hlt_dqm_sourceclient-live_cfg.py @@ -46,8 +46,8 @@ ) #SiStrip Local Reco process.load("CalibTracker.SiStripCommon.TkDetMapESProducer_cfi") -#SiPixelTemplate -process.load("CalibTracker.SiPixelESProducers.SiPixelTemplateDBObjectESProducer_cfi") +#Track refitters +process.load("RecoTracker.TrackProducer.TrackRefitters_cff") #---- for P5 (online) DB access process.load("DQM.Integration.config.FrontierCondition_GT_cfi") diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py index a65f024050edd..35a90dd1fa226 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py @@ -6,7 +6,9 @@ from DQM.SiPixelMonitorTrack.RefitterForPixelDQM import * hltSiPixelClusterShapeCache = siPixelClusterShapeCache.clone(src = 'hltSiPixelClusters') -hltrefittedForPixelDQM = refittedForPixelDQM.clone(src ='hltMergedTracks') +hltrefittedForPixelDQM = refittedForPixelDQM.clone(src ='hltMergedTracks', + TTRHBuilder = cms.string('WithTrackAngle')) # no templates at HLT + sipixelMonitorHLTsequence = cms.Sequence( hltSiPixelClusterShapeCache diff --git a/RecoPixelVertexing/PixelLowPtUtilities/plugins/SiPixelClusterShapeCacheProducer.cc b/RecoPixelVertexing/PixelLowPtUtilities/plugins/SiPixelClusterShapeCacheProducer.cc index dba9894b23c72..6322f9cc868f0 100644 --- a/RecoPixelVertexing/PixelLowPtUtilities/plugins/SiPixelClusterShapeCacheProducer.cc +++ b/RecoPixelVertexing/PixelLowPtUtilities/plugins/SiPixelClusterShapeCacheProducer.cc @@ -61,6 +61,13 @@ void SiPixelClusterShapeCacheProducer::produce(edm::StreamID, edm::Event& iEvent edm::Handle input; iEvent.getByToken(token_, input); + if (!input.isValid()) { + edm::LogError("siPixelClusterShapeCache") << "input pixel cluster collection is not valid!"; + auto output = std::make_unique(); + iEvent.put(std::move(output)); + return; + } + const auto& geom = &iSetup.getData(geomToken_); auto output = std::make_unique(input); From d943f6fc8ea2b91c7fd6dd948ebdc19235bf9a33 Mon Sep 17 00:00:00 2001 From: Alessandro Rossi Date: Tue, 28 Feb 2023 09:33:39 +0100 Subject: [PATCH 5/5] drop cms type specifications --- DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py index 35a90dd1fa226..6c9814bfb2074 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py @@ -7,7 +7,7 @@ hltSiPixelClusterShapeCache = siPixelClusterShapeCache.clone(src = 'hltSiPixelClusters') hltrefittedForPixelDQM = refittedForPixelDQM.clone(src ='hltMergedTracks', - TTRHBuilder = cms.string('WithTrackAngle')) # no templates at HLT + TTRHBuilder = 'WithTrackAngle') # no templates at HLT sipixelMonitorHLTsequence = cms.Sequence(