Skip to content

Commit 9aa7268

Browse files
authored
Merge pull request #48980 from mmusich/pvresolution_for_HLT
add HLT vertexing resolution monitoring (by split vertex method)
2 parents 0dac991 + 68d7859 commit 9aa7268

File tree

4 files changed

+81
-6
lines changed

4 files changed

+81
-6
lines changed

DQM/TrackingMonitor/src/PrimaryVertexResolution.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,10 @@ void PrimaryVertexResolution::bookHistograms(DQMStore::IBooker& iBooker, edm::Ru
391391

392392
void PrimaryVertexResolution::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) {
393393
edm::Handle<reco::VertexCollection> hvertices = iEvent.getHandle(vertexSrc_);
394+
if (!hvertices.isValid()) {
395+
return;
396+
}
397+
394398
const reco::VertexCollection& vertices = *hvertices;
395399
if (vertices.empty())
396400
return;

DQMOffline/Configuration/python/DQMOffline_SecondStep_cff.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
from DQMOffline.L1Trigger.L1TriggerDqmOffline_cff import *
1818
from DQM.SiTrackerPhase2.Phase2TrackerDQMHarvesting_cff import *
1919
from DQM.SiPixelHeterogeneous.SiPixelHeterogenousDQMHarvesting_cff import *
20+
from DQMOffline.Trigger.PrimaryVertexMonitoring_Client_cff import *
2021

2122
DQMNone = cms.Sequence()
2223

@@ -129,10 +130,7 @@
129130
DQMOffline_SecondStep_PrePOG *
130131
DQMMessageLoggerClientSeq )
131132

132-
133-
134-
135-
HLTMonitoringClient = cms.Sequence(trackingMonitorClientHLT * trackEfficiencyMonitoringClientHLT * trackingForDisplacedJetMonitorClientHLT)
133+
HLTMonitoringClient = cms.Sequence(trackingMonitorClientHLT * trackEfficiencyMonitoringClientHLT * trackingForDisplacedJetMonitorClientHLT * hltVerticesMonitoringClient)
136134
HLTMonitoringClientPA= cms.Sequence(trackingMonitorClientHLT * PAtrackingMonitorClientHLT)
137135

138136
DQMOffline_SecondStep = cms.Sequence(
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
from DQM.TrackingMonitorClient.primaryVertexResolutionClient_cfi import primaryVertexResolutionClient as _primaryVertexResolutionClient
4+
5+
hltPixelVertexResolutionClient = _primaryVertexResolutionClient.clone(
6+
subDirs = ["HLT/Vertexing/hltPixelVertices/Resolution/*"]
7+
)
8+
9+
hltTrimmedPixelVertexResolutionClient = _primaryVertexResolutionClient.clone(
10+
subDirs = ["HLT/Vertexing/hltTrimmedPixelVertices/Resolution/*"]
11+
)
12+
13+
hltFullVertexResolutionClient = _primaryVertexResolutionClient.clone(
14+
subDirs = ["HLT/Vertexing/hltVerticesPFFilter/Resolution/*"]
15+
)
16+
17+
from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
18+
phase2_tracker.toModify(hltFullVertexResolutionClient,
19+
subDirs = ["HLT/Vertexing/hltFullVertices/Resolution/*"])
20+
21+
hltVerticesMonitoringClient = cms.Sequence(hltPixelVertexResolutionClient+
22+
hltTrimmedPixelVertexResolutionClient+
23+
hltFullVertexResolutionClient)
24+
25+
phase2_tracker.toReplaceWith(hltVerticesMonitoringClient,
26+
cms.Sequence(hltPixelVertexResolutionClient+
27+
hltFullVertexResolutionClient))

DQMOffline/Trigger/python/PrimaryVertexMonitoring_cff.py

Lines changed: 48 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,56 @@
4949
vertexLabel = "hltVerticesL3PFBjets",
5050
useHPforAlignmentPlots = False
5151
)
52+
53+
#### vertexing resolution plots
54+
55+
from DQM.TrackingMonitor.primaryVertexResolution_cfi import primaryVertexResolution as _primaryVertexResolution
56+
57+
hltPixelVertexResolution = _primaryVertexResolution.clone(
58+
vertexSrc = "hltPixelVertices",
59+
rootFolder = "HLT/Vertexing/hltPixelVertices/Resolution"
60+
)
61+
62+
pp_on_PbPb_run3.toModify(hltPixelVertexResolution,
63+
vertexSrc = "hltPixelVerticesPPOnAA")
64+
65+
66+
phase2_tracker.toModify(hltPixelVertexResolution,
67+
vertexSrc = "hltPhase2PixelVertices")
68+
69+
hltTrimmedPixelVertexResolution = _primaryVertexResolution.clone(
70+
vertexSrc = "hltTrimmedPixelVertices",
71+
rootFolder = "HLT/Vertexing/hltTrimmedPixelVertices/Resolution"
72+
)
73+
74+
pp_on_PbPb_run3.toModify(hltTrimmedPixelVertexResolution,
75+
vertexSrc = "hltTrimmedPixelVerticesPPOnAA")
76+
77+
hltVerticesPFFilterResolution = _primaryVertexResolution.clone(
78+
vertexSrc = "hltVerticesPFFilter",
79+
rootFolder = "HLT/Vertexing/hltVerticesPFFilter/Resolution"
80+
)
81+
82+
pp_on_PbPb_run3.toModify(hltVerticesPFFilterResolution,
83+
vertexSrc = "hltVerticesPFFilterPPOnAA")
84+
85+
phase2_tracker.toModify(hltVerticesPFFilterResolution,
86+
rootFolder = "HLT/Vertexing/hltFullVertices/Resolution",
87+
vertexSrc = "hltOfflinePrimaryVertices")
88+
89+
### the sequence
90+
5291
vertexingMonitorHLT = cms.Sequence(
5392
hltPixelVerticesMonitoring +
5493
hltTrimmedPixelVerticesMonitoring +
55-
hltVerticesPFFilterMonitoring
94+
hltVerticesPFFilterMonitoring +
95+
hltPixelVertexResolution +
96+
hltTrimmedPixelVertexResolution +
97+
hltVerticesPFFilterResolution
5698
)
5799

58-
phase2_tracker.toReplaceWith(vertexingMonitorHLT, cms.Sequence(hltPixelVerticesMonitoring + hltVerticesMonitoring))
100+
phase2_tracker.toReplaceWith(vertexingMonitorHLT, cms.Sequence(hltPixelVerticesMonitoring +
101+
hltVerticesMonitoring +
102+
hltPixelVertexResolution +
103+
hltVerticesPFFilterResolution
104+
))

0 commit comments

Comments
 (0)