CMS 3D CMS Logo

TrackingMonitoring_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
4 trackingMonHLT = DQM.TrackingMonitor.TrackerCollisionTrackingMonitor_cfi.TrackerCollisionTrackMon.clone(
5  beamSpot = "hltOnlineBeamSpot",
6  primaryVertex = "hltPixelVertices",
7  doAllPlots = False,
8  doLumiAnalysis = False,
9  #doProfilesVsLS = True,
10  doDCAPlots = True,
11  pvNDOF = 1,
12  doProfilesVsLS = True,
13  #doPlotsVsGoodPVtx = True,
14  doEffFromHitPatternVsPU = True,
15  doEffFromHitPatternVsBX = True,
16  doEffFromHitPatternVsLUMI = True,
17  doPlotsVsGoodPVtx = True,
18  doPlotsVsLUMI = True,
19  doPlotsVsBX = True
20 )
21 pixelTracksMonitoringHLT = trackingMonHLT.clone(
22  FolderName = 'HLT/Tracking/pixelTracks',
23  TrackProducer = 'hltPixelTracks',
24  allTrackProducer = 'hltPixelTracks',
25  doEffFromHitPatternVsPU = False,
26  doEffFromHitPatternVsBX = False,
27  doEffFromHitPatternVsLUMI = False
28 )
29 
30 from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3
31 pp_on_PbPb_run3.toModify(pixelTracksMonitoringHLT,
32  primaryVertex = 'hltPixelVerticesPPOnAA',
33  TrackProducer = 'hltPixelTracksPPOnAA',
34  allTrackProducer = 'hltPixelTracksPPOnAA')
35 
36 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
37 phase2_tracker.toModify(pixelTracksMonitoringHLT,
38  primaryVertex = 'hltPhase2PixelVertices',
39  TrackProducer = 'hltPhase2PixelTracks',
40  allTrackProducer = 'hltPhase2PixelTracks')
41 
42 iter0TracksMonitoringHLT = trackingMonHLT.clone(
43  FolderName = 'HLT/Tracking/iter0',
44  TrackProducer = 'hltIter0PFlowCtfWithMaterialTracks',
45  allTrackProducer = 'hltIter0PFlowCtfWithMaterialTracks',
46  doEffFromHitPatternVsPU = True,
47  doEffFromHitPatternVsBX = False,
48  doEffFromHitPatternVsLUMI = False
49 )
50 iter0HPTracksMonitoringHLT = trackingMonHLT.clone(
51  FolderName = 'HLT/Tracking/iter0HP',
52  TrackProducer = 'hltIter0PFlowTrackSelectionHighPurity',
53  allTrackProducer = 'hltIter0PFlowTrackSelectionHighPurity',
54  doEffFromHitPatternVsPU = True,
55  doEffFromHitPatternVsBX = False,
56  doEffFromHitPatternVsLUMI = False
57 )
58 iter1TracksMonitoringHLT = trackingMonHLT.clone(
59  FolderName = 'HLT/Tracking/iter1',
60  TrackProducer = 'hltIter1PFlowCtfWithMaterialTracks',
61  allTrackProducer = 'hltIter1PFlowCtfWithMaterialTracks',
62  doEffFromHitPatternVsPU = True,
63  doEffFromHitPatternVsBX = False,
64  doEffFromHitPatternVsLUMI = False
65 )
66 iter1HPTracksMonitoringHLT = trackingMonHLT.clone(
67  FolderName = 'HLT/Tracking/iter1HP',
68  TrackProducer = 'hltIter1PFlowTrackSelectionHighPurity',
69  allTrackProducer = 'hltIter1PFlowTrackSelectionHighPurity',
70  doEffFromHitPatternVsPU = True,
71  doEffFromHitPatternVsBX = False,
72  doEffFromHitPatternVsLUMI = False
73 )
74 iter2TracksMonitoringHLT = trackingMonHLT.clone(
75  FolderName = 'HLT/Tracking/iter2',
76  TrackProducer = 'hltIter2PFlowCtfWithMaterialTracks',
77  allTrackProducer = 'hltIter2PFlowCtfWithMaterialTracks',
78  doEffFromHitPatternVsPU = True,
79  doEffFromHitPatternVsBX = False,
80  doEffFromHitPatternVsLUMI = False
81 )
82 iter2HPTracksMonitoringHLT = trackingMonHLT.clone(
83  FolderName = 'HLT/Tracking/iter2HP',
84  TrackProducer = 'hltIter2PFlowTrackSelectionHighPurity',
85  allTrackProducer = 'hltIter2PFlowTrackSelectionHighPurity',
86  doEffFromHitPatternVsPU = True,
87  doEffFromHitPatternVsBX = False,
88  doEffFromHitPatternVsLUMI = False
89 )
90 iter2MergedTracksMonitoringHLT = trackingMonHLT.clone(
91  FolderName = 'HLT/Tracking/iter2Merged',
92  TrackProducer = 'hltIter2Merged',
93  allTrackProducer = 'hltIter2Merged',
94  doEffFromHitPatternVsPU = True,
95  doEffFromHitPatternVsBX = False,
96  doEffFromHitPatternVsLUMI = False
97 )
98 iterHLTTracksMonitoringHLT = trackingMonHLT.clone(
99  FolderName = 'HLT/Tracking/tracks',
100  TrackProducer = 'hltMergedTracks',
101  allTrackProducer = 'hltMergedTracks',
102  doEffFromHitPatternVsPU = True,
103  doEffFromHitPatternVsBX = True,
104  doEffFromHitPatternVsLUMI = True,
105  doDCAPlots = True,
106  doPVPlots = cms.bool(True),
107  doBSPlots = cms.bool(True),
108  doSIPPlots = cms.bool(True)
109 )
110 
111 pp_on_PbPb_run3.toModify(iterHLTTracksMonitoringHLT,
112  primaryVertex = 'hltPixelVerticesPPOnAA',
113  TrackProducer = 'hltMergedTracksPPOnAA',
114  allTrackProducer = 'hltMergedTracksPPOnAA')
115 
116 phase2_tracker.toModify(iterHLTTracksMonitoringHLT,
117  primaryVertex = 'hltPhase2PixelVertices',
118  TrackProducer = 'generalTracks::HLT',
119  allTrackProducer = 'generalTracks::HLT')
120 
121 iter3TracksMonitoringHLT = trackingMonHLT.clone(
122  FolderName = 'HLT/Tracking/iter3Merged',
123  TrackProducer = 'hltIter3Merged',
124  allTrackProducer = 'hltIter3Merged'
125 )
126 iter4TracksMonitoringHLT = trackingMonHLT.clone(
127  FolderName = 'HLT/Tracking/iter4Merged',
128  TrackProducer = 'hltIter4Merged',
129  allTrackProducer = 'hltIter4Merged'
130 )
131 trackingMonitorHLT = cms.Sequence(
132  pixelTracksMonitoringHLT
133  + iter0HPTracksMonitoringHLT
134 # + iter1HPTracksMonitoringHLT
135 # + iter2HPTracksMonitoringHLT
136  + iter2MergedTracksMonitoringHLT
137  + iterHLTTracksMonitoringHLT
138 )
139 
140 trackingMonitorHLTall = cms.Sequence(
141  pixelTracksMonitoringHLT
142  + iter0TracksMonitoringHLT
143  + iter0HPTracksMonitoringHLT
144  + iter1TracksMonitoringHLT
145  + iter1HPTracksMonitoringHLT
146  + iter2TracksMonitoringHLT
147  + iter2HPTracksMonitoringHLT
148  + iter2MergedTracksMonitoringHLT
149  + iterHLTTracksMonitoringHLT
150 # + iter3TracksMonitoringHLT
151 # + iter4TracksMonitoringHLT
152 )
153 
154 doubletRecoveryHPTracksMonitoringHLT = trackingMonHLT.clone(
155  FolderName = 'HLT/Tracking/doubletRecoveryTracks',
156  TrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurity',
157  allTrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurity',
158  doEffFromHitPatternVsPU = True,
159  doEffFromHitPatternVsBX = False,
160  doEffFromHitPatternVsLUMI = False
161 )
162 
163 pp_on_PbPb_run3.toModify(doubletRecoveryHPTracksMonitoringHLT,
164  primaryVertex = 'hltPixelVerticesPPOnAA',
165  TrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurityPPOnAA',
166  allTrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurityPPOnAA')
167 
168 
174 egmTrackingMonHLT = trackingMonHLT.clone(
175  primaryVertex = "hltPixelVertices",
176  doEffFromHitPatternVsPU = False,
177  doEffFromHitPatternVsBX = False,
178  doEffFromHitPatternVsLUMI = False
179 )
180 gsfTracksMonitoringHLT = egmTrackingMonHLT.clone(
181  FolderName = 'HLT/EGM/Tracking/GSF',
182  TrackProducer = 'hltEgammaGsfTracks',
183  allTrackProducer = 'hltEgammaGsfTracks'
184 )
185 
186 from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
187 phase2_common.toModify(gsfTracksMonitoringHLT,
188  primaryVertex = 'hltPhase2PixelVertices',
189  TrackProducer = 'hltEgammaGsfTracksL1Seeded',
190  allTrackProducer = 'hltEgammaGsfTracksL1Seeded')
191 
192 pixelTracksForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
193  FolderName = 'HLT/EGM/Tracking/pixelTracks',
194  TrackProducer = 'hltPixelTracksElectrons',
195  allTrackProducer = 'hltPixelTracksElectrons'
196 )
197 iter0ForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
198  FolderName = 'HLT/EGM/Tracking/iter0',
199  TrackProducer = 'hltIter0ElectronsCtfWithMaterialTracks',
200  allTrackProducer = 'hltIter0ElectronsCtfWithMaterialTracks'
201 )
202 iter0HPForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
203  FolderName = 'HLT/EGM/Tracking/iter0HP',
204  TrackProducer = 'hltIter0ElectronsTrackSelectionHighPurity',
205  allTrackProducer = 'hltIter0ElectronsTrackSelectionHighPurity'
206 )
207 iter1ForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
208  FolderName = 'HLT/EGM/Tracking/iter1',
209  TrackProducer = 'hltIter1ElectronsCtfWithMaterialTracks',
210  allTrackProducer = 'hltIter1ElectronsCtfWithMaterialTracks'
211 )
212 iter1HPForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
213  FolderName = 'HLT/EGM/Tracking/iter1HP',
214  TrackProducer = 'hltIter1ElectronsTrackSelectionHighPurity',
215  allTrackProducer = 'hltIter1ElectronsTrackSelectionHighPurity'
216 )
217 iter1MergedForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
218  FolderName = 'HLT/EGM/Tracking/iter1Merged',
219  TrackProducer = 'hltIter1MergedForElectrons',
220  allTrackProducer = 'hltIter1MergedForElectrons'
221 )
222 iter2ForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
223  FolderName = 'HLT/EGM/Tracking/iter2',
224  TrackProducer = 'hltIter2ElectronsCtfWithMaterialTracks',
225  allTrackProducer = 'hltIter2ElectronsCtfWithMaterialTracks'
226 )
227 iter2HPForElectronsTracksMonitoringHLT = egmTrackingMonHLT.clone(
228  FolderName = 'HLT/EGM/Tracking/iter2HP',
229  TrackProducer = 'hltIter2ElectronsTrackSelectionHighPurity',
230  allTrackProducer = 'hltIter2ElectronsTrackSelectionHighPurity'
231 )
232 iterHLTTracksForElectronsMonitoringHLT = egmTrackingMonHLT.clone(
233  FolderName = 'HLT/EGM/Tracking/iter2Merged',
234  TrackProducer = 'hltIter2MergedForElectrons',
235  allTrackProducer = 'hltIter2MergedForElectrons'
236 )
237 
238 egmTrackingMonitorHLT = cms.Sequence(
239  gsfTracksMonitoringHLT
240  + pixelTracksForElectronsTracksMonitoringHLT
241  + iter0HPForElectronsTracksMonitoringHLT
242 # + iter1HPForElectronsTracksMonitoringHLT
243 # + iter2HPForElectronsTracksMonitoringHLT
244  + iterHLTTracksForElectronsMonitoringHLT
245 )
246 
247 trkHLTDQMSourceExtra = cms.Sequence(
248 )
249 
250 from Configuration.Eras.Modifier_run3_common_cff import run3_common
251 run3_common.toReplaceWith(trackingMonitorHLT, cms.Sequence(pixelTracksMonitoringHLT + iterHLTTracksMonitoringHLT + doubletRecoveryHPTracksMonitoringHLT )) # + iter0HPTracksMonitoringHLT ))
252 phase2_tracker.toReplaceWith(trackingMonitorHLT, cms.Sequence(pixelTracksMonitoringHLT + iterHLTTracksMonitoringHLT))
253 
254 run3_common.toReplaceWith(trackingMonitorHLTall, cms.Sequence(pixelTracksMonitoringHLT + iter0TracksMonitoringHLT + iterHLTTracksMonitoringHLT))
255 run3_common.toReplaceWith(egmTrackingMonitorHLT, cms.Sequence(gsfTracksMonitoringHLT))