CMS 3D CMS Logo

TrackingSourceConfig_Tier0_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 import RecoTracker.IterativeTracking.iterativeTkConfig as _cfg
3 import RecoTracker.IterativeTracking.iterativeTkUtils as _utils
4 import six
5 
6 ### load which are the tracks collection 2 be monitored
8 
9 ### load the different flavour of settings of the TrackingMonitor module
11 
12 
13 ### define one EDAnalyzer per each track collection
14 ### following suggestion 2. in
15 ### https://hypernews.cern.ch/HyperNews/CMS/get/sw-develtools/1908/1.html
16 for tracks in selectedTracks :
17  label = 'TrackerCollisionSelectedTrackMonCommon' + str(tracks)
18  locals()[label] = TrackerCollisionTrackMonCommon.clone()
19  locals()[label].TrackProducer = cms.InputTag(tracks)
20  locals()[label].allTrackProducer = cms.InputTag(allTrackProducer[tracks])
21  locals()[label].FolderName = cms.string(mainfolderName[tracks])
22  locals()[label].PVFolderName = cms.string(vertexfolderName[tracks])
23  locals()[label].TrackPtMin = trackPtMin[tracks]
24  locals()[label].TrackPtBin = trackPtN[tracks]
25  locals()[label].TrackPtMax = trackPtMax[tracks]
26  locals()[label].TrackPBin = trackPtN[tracks]
27  locals()[label].TrackPMin = trackPtMin[tracks]
28  locals()[label].TrackPMax = trackPtMax[tracks]
29  locals()[label].doDCAPlots = doPlotsPCA[tracks]
30  locals()[label].doDCAwrtPVPlots = doPlotsPCA[tracks]
31  locals()[label].doDCAwrt000Plots = doPlotsPCA[tracks]
32  locals()[label].doSIPPlots = doPlotsPCA[tracks]
33  locals()[label].numCut = numCutString[tracks]
34  locals()[label].denCut = denCutString[tracks]
35  locals()[label].doGoodTracksPlots = doGoodTracksPlots [tracks]
36  locals()[label].doTrackerSpecific = doTrackerSpecific [tracks]
37  locals()[label].doHitPropertiesPlots = doHitPropertiesPlots [tracks]
38  locals()[label].doGeneralPropertiesPlots = doGeneralPropertiesPlots [tracks]
39  locals()[label].doBeamSpotPlots = doBeamSpotPlots [tracks]
40  locals()[label].doSeedParameterHistos = doSeedParameterHistos [tracks]
41  locals()[label].doRecHitVsPhiVsEtaPerTrack = doRecHitVsPhiVsEtaPerTrack [tracks]
42  locals()[label].doRecHitVsPtVsEtaPerTrack = doRecHitVsPtVsEtaPerTrack [tracks]
43  locals()[label].doGoodTrackRecHitVsPhiVsEtaPerTrack = doGoodTrackRecHitVsPhiVsEtaPerTrack [tracks]
44  locals()[label].doLayersVsPhiVsEtaPerTrack = doLayersVsPhiVsEtaPerTrack [tracks]
45  locals()[label].doGoodTrackLayersVsPhiVsEtaPerTrack = doGoodTrackLayersVsPhiVsEtaPerTrack [tracks]
46  locals()[label].doPUmonitoring = doPUmonitoring [tracks]
47  locals()[label].doPlotsVsBXlumi = doPlotsVsBXlumi [tracks]
48  locals()[label].doPlotsVsGoodPVtx = doPlotsVsGoodPVtx [tracks]
49  locals()[label].doEffFromHitPatternVsPU = doEffFromHitPatternVsPU [tracks]
50  locals()[label].doEffFromHitPatternVsLUMI = doEffFromHitPatternVsLumi [tracks]
51  if tracks == 'generalTracks':
52  locals()[label].doEffFromHitPatternVsBX = False
53  else:
54  locals()[label].doEffFromHitPatternVsBX = doEffFromHitPatternVsBX[tracks]
55 # locals()[label].doStopSource = doStopSource [tracks]
56  locals()[label].setLabel(label)
57 
58  # ZeroBias
59  label = 'TrackerCollisionSelectedTrackMonMB' + str(tracks)
60  locals()[label] = TrackerCollisionTrackMonMB.clone()
61  locals()[label].TrackProducer = cms.InputTag(tracks)
62  locals()[label].FolderName = cms.string(mainfolderName[tracks])
63  locals()[label].PVFolderName = cms.string(vertexfolderName[tracks])
64  locals()[label].TrackPtMin = trackPtMin[tracks]
65  locals()[label].TrackPtBin = trackPtN[tracks]
66  locals()[label].TrackPtMax = trackPtMax[tracks]
67  locals()[label].TrackPBin = trackPtN[tracks]
68  locals()[label].TrackPMin = trackPtMin[tracks]
69  locals()[label].TrackPMax = trackPtMax[tracks]
70  locals()[label].doDCAPlots = doPlotsPCA[tracks]
71  locals()[label].doDCAwrtPVPlots = doPlotsPCA[tracks]
72  locals()[label].doDCAwrt000Plots = doPlotsPCA[tracks]
73  locals()[label].doSIPPlots = doPlotsPCA[tracks]
74  locals()[label].numCut = numCutString[tracks]
75  locals()[label].denCut = denCutString[tracks]
76  locals()[label].doGoodTracksPlots = doGoodTracksPlots [tracks]
77  locals()[label].doTrackerSpecific = doTrackerSpecific [tracks]
78  locals()[label].doHitPropertiesPlots = doHitPropertiesPlots [tracks]
79  locals()[label].doGeneralPropertiesPlots = doGeneralPropertiesPlots [tracks]
80  locals()[label].doBeamSpotPlots = doBeamSpotPlots [tracks]
81  locals()[label].doSeedParameterHistos = doSeedParameterHistos [tracks]
82  locals()[label].doRecHitVsPhiVsEtaPerTrack = doRecHitVsPhiVsEtaPerTrack [tracks]
83  locals()[label].doRecHitVsPtVsEtaPerTrack = doRecHitVsPtVsEtaPerTrack [tracks]
84  locals()[label].doGoodTrackRecHitVsPhiVsEtaPerTrack = doGoodTrackRecHitVsPhiVsEtaPerTrack [tracks]
85  locals()[label].doLayersVsPhiVsEtaPerTrack = doLayersVsPhiVsEtaPerTrack [tracks]
86  locals()[label].doGoodTrackLayersVsPhiVsEtaPerTrack = doGoodTrackLayersVsPhiVsEtaPerTrack [tracks]
87  locals()[label].doPUmonitoring = doPUmonitoring [tracks]
88  locals()[label].doPlotsVsBXlumi = doPlotsVsBXlumi [tracks]
89  locals()[label].doPlotsVsGoodPVtx = doPlotsVsGoodPVtx [tracks]
90  locals()[label].doPlotsVsLUMI = cms.bool(True)
91  locals()[label].doPlotsVsBX = cms.bool(True)
92  locals()[label].doEffFromHitPatternVsPU = doEffFromHitPatternVsPU [tracks]
93  locals()[label].doEffFromHitPatternVsBX = doEffFromHitPatternVsBX [tracks]
94  locals()[label].doEffFromHitPatternVsLUMI = cms.bool(True)
95  locals()[label].doStopSource = doStopSource [tracks]
96  locals()[label].setLabel(label)
97 
98  # ZeroBias, no hip, no OOT pu (1st collision after abort gap) ###
99  label = 'TrackerCollisionSelectedTrackMonZBnoHIPnoOOT' + str(tracks)
100  locals()[label] = TrackerCollisionTrackMonZBnoHIPnoOOT.clone()
101  locals()[label].TrackProducer = cms.InputTag(tracks)
102  locals()[label].FolderName = cms.string(mainfolderName[tracks]+"/noHIP_noOOT_INpu")
103  locals()[label].PVFolderName = cms.string(vertexfolderName[tracks]+"/noHIP_noOOT_INpu")
104  locals()[label].TrackPtMin = trackPtMin[tracks]
105  locals()[label].TrackPtBin = trackPtN[tracks]
106  locals()[label].TrackPtMax = trackPtMax[tracks]
107  locals()[label].TrackPBin = trackPtN[tracks]
108  locals()[label].TrackPMin = trackPtMin[tracks]
109  locals()[label].TrackPMax = trackPtMax[tracks]
110  locals()[label].doDCAPlots = doPlotsPCA[tracks]
111  locals()[label].doDCAwrtPVPlots = doPlotsPCA[tracks]
112  locals()[label].doDCAwrt000Plots = doPlotsPCA[tracks]
113  locals()[label].doSIPPlots = doPlotsPCA[tracks]
114  locals()[label].numCut = numCutString[tracks]
115  locals()[label].denCut = denCutString[tracks]
116  locals()[label].doGoodTracksPlots = doGoodTracksPlots [tracks]
117  locals()[label].doTrackerSpecific = doTrackerSpecific [tracks]
118  locals()[label].doHitPropertiesPlots = doHitPropertiesPlots [tracks]
119  locals()[label].doGeneralPropertiesPlots = doGeneralPropertiesPlots [tracks]
120  locals()[label].doBeamSpotPlots = doBeamSpotPlots [tracks]
121  locals()[label].doSeedParameterHistos = doSeedParameterHistos [tracks]
122  locals()[label].doRecHitVsPhiVsEtaPerTrack = doRecHitVsPhiVsEtaPerTrack [tracks]
123  locals()[label].doRecHitVsPtVsEtaPerTrack = doRecHitVsPtVsEtaPerTrack [tracks]
124  locals()[label].doGoodTrackRecHitVsPhiVsEtaPerTrack = doGoodTrackRecHitVsPhiVsEtaPerTrack [tracks]
125  locals()[label].doLayersVsPhiVsEtaPerTrack = doLayersVsPhiVsEtaPerTrack [tracks]
126  locals()[label].doGoodTrackLayersVsPhiVsEtaPerTrack = doGoodTrackLayersVsPhiVsEtaPerTrack [tracks]
127  locals()[label].doPUmonitoring = doPUmonitoring [tracks]
128  locals()[label].doPlotsVsBXlumi = doPlotsVsBXlumi [tracks]
129  locals()[label].doPlotsVsGoodPVtx = doPlotsVsGoodPVtx [tracks]
130  locals()[label].doPlotsVsLUMI = cms.bool(True)
131  locals()[label].doPlotsVsBX = cms.bool(True)
132  locals()[label].doEffFromHitPatternVsPU = doEffFromHitPatternVsPU [tracks]
133  locals()[label].doEffFromHitPatternVsBX = doEffFromHitPatternVsBX [tracks]
134  locals()[label].doEffFromHitPatternVsLUMI = False
135  locals()[label].doStopSource = doStopSource [tracks]
136  locals()[label].setLabel(label)
137 
138  # ZeroBias, hip, no OOT pu (1st collision in train) ###
139  label = 'TrackerCollisionSelectedTrackMonZBHIPnoOOT' + str(tracks)
140  locals()[label] = TrackerCollisionTrackMonZBHIPnoOOT.clone()
141  locals()[label].TrackProducer = cms.InputTag(tracks)
142  locals()[label].FolderName = cms.string(mainfolderName[tracks]+"/HIP_noOOT_INpu")
143  locals()[label].PVFolderName = cms.string(vertexfolderName[tracks]+"/HIP_noOOT_INpu")
144  locals()[label].TrackPtMin = trackPtMin[tracks]
145  locals()[label].TrackPtBin = trackPtN[tracks]
146  locals()[label].TrackPtMax = trackPtMax[tracks]
147  locals()[label].TrackPBin = trackPtN[tracks]
148  locals()[label].TrackPMin = trackPtMin[tracks]
149  locals()[label].TrackPMax = trackPtMax[tracks]
150  locals()[label].doDCAPlots = doPlotsPCA[tracks]
151  locals()[label].doDCAwrtPVPlots = doPlotsPCA[tracks]
152  locals()[label].doDCAwrt000Plots = doPlotsPCA[tracks]
153  locals()[label].doSIPPlots = doPlotsPCA[tracks]
154  locals()[label].numCut = numCutString[tracks]
155  locals()[label].denCut = denCutString[tracks]
156  locals()[label].doGoodTracksPlots = doGoodTracksPlots [tracks]
157  locals()[label].doTrackerSpecific = doTrackerSpecific [tracks]
158  locals()[label].doHitPropertiesPlots = doHitPropertiesPlots [tracks]
159  locals()[label].doGeneralPropertiesPlots = doGeneralPropertiesPlots [tracks]
160  locals()[label].doBeamSpotPlots = doBeamSpotPlots [tracks]
161  locals()[label].doSeedParameterHistos = doSeedParameterHistos [tracks]
162  locals()[label].doRecHitVsPhiVsEtaPerTrack = doRecHitVsPhiVsEtaPerTrack [tracks]
163  locals()[label].doRecHitVsPtVsEtaPerTrack = doRecHitVsPtVsEtaPerTrack [tracks]
164  locals()[label].doGoodTrackRecHitVsPhiVsEtaPerTrack = doGoodTrackRecHitVsPhiVsEtaPerTrack [tracks]
165  locals()[label].doLayersVsPhiVsEtaPerTrack = doLayersVsPhiVsEtaPerTrack [tracks]
166  locals()[label].doGoodTrackLayersVsPhiVsEtaPerTrack = doGoodTrackLayersVsPhiVsEtaPerTrack [tracks]
167  locals()[label].doPUmonitoring = doPUmonitoring [tracks]
168  locals()[label].doPlotsVsBXlumi = doPlotsVsBXlumi [tracks]
169  locals()[label].doPlotsVsGoodPVtx = doPlotsVsGoodPVtx [tracks]
170  locals()[label].doPlotsVsLUMI = cms.bool(True)
171  locals()[label].doPlotsVsBX = cms.bool(True)
172  locals()[label].doEffFromHitPatternVsPU = doEffFromHitPatternVsPU [tracks]
173  locals()[label].doEffFromHitPatternVsBX = doEffFromHitPatternVsBX [tracks]
174  locals()[label].doEffFromHitPatternVsLUMI = False
175  locals()[label].doStopSource = doStopSource [tracks]
176  locals()[label].setLabel(label)
177 
178 
179  # ZeroBias, hip, OOT pu (1st collision after train) ###
180  label = 'TrackerCollisionSelectedTrackMonZBHIPOOT' + str(tracks)
181  locals()[label] = TrackerCollisionTrackMonZBHIPOOT.clone()
182  locals()[label].TrackProducer = cms.InputTag(tracks)
183  locals()[label].FolderName = cms.string(mainfolderName[tracks]+"/HIP_OOT_noINpu")
184  locals()[label].PVFolderName = cms.string(vertexfolderName[tracks]+"/HIP_OOT_noINpu")
185  locals()[label].TrackPtMin = trackPtMin[tracks]
186  locals()[label].TrackPtBin = trackPtN[tracks]
187  locals()[label].TrackPtMax = trackPtMax[tracks]
188  locals()[label].TrackPBin = trackPtN[tracks]
189  locals()[label].TrackPMin = trackPtMin[tracks]
190  locals()[label].TrackPMax = trackPtMax[tracks]
191  locals()[label].doDCAPlots = doPlotsPCA[tracks]
192  locals()[label].doDCAwrtPVPlots = doPlotsPCA[tracks]
193  locals()[label].doDCAwrt000Plots = doPlotsPCA[tracks]
194  locals()[label].doSIPPlots = doPlotsPCA[tracks]
195  locals()[label].numCut = numCutString[tracks]
196  locals()[label].denCut = denCutString[tracks]
197  locals()[label].doGoodTracksPlots = doGoodTracksPlots [tracks]
198  locals()[label].doTrackerSpecific = doTrackerSpecific [tracks]
199  locals()[label].doHitPropertiesPlots = doHitPropertiesPlots [tracks]
200  locals()[label].doGeneralPropertiesPlots = doGeneralPropertiesPlots [tracks]
201  locals()[label].doBeamSpotPlots = doBeamSpotPlots [tracks]
202  locals()[label].doSeedParameterHistos = doSeedParameterHistos [tracks]
203  locals()[label].doRecHitVsPhiVsEtaPerTrack = doRecHitVsPhiVsEtaPerTrack [tracks]
204  locals()[label].doRecHitVsPtVsEtaPerTrack = doRecHitVsPtVsEtaPerTrack [tracks]
205  locals()[label].doGoodTrackRecHitVsPhiVsEtaPerTrack = doGoodTrackRecHitVsPhiVsEtaPerTrack [tracks]
206  locals()[label].doLayersVsPhiVsEtaPerTrack = doLayersVsPhiVsEtaPerTrack [tracks]
207  locals()[label].doGoodTrackLayersVsPhiVsEtaPerTrack = doGoodTrackLayersVsPhiVsEtaPerTrack [tracks]
208  locals()[label].doPUmonitoring = doPUmonitoring [tracks]
209  locals()[label].doPlotsVsBXlumi = doPlotsVsBXlumi [tracks]
210  locals()[label].doPlotsVsGoodPVtx = doPlotsVsGoodPVtx [tracks]
211  locals()[label].doPlotsVsLUMI = cms.bool(True)
212  locals()[label].doPlotsVsBX = cms.bool(True)
213  locals()[label].doEffFromHitPatternVsPU = doEffFromHitPatternVsPU [tracks]
214  locals()[label].doEffFromHitPatternVsBX = doEffFromHitPatternVsBX [tracks]
215  locals()[label].doEffFromHitPatternVsLUMI = False
216  locals()[label].doStopSource = doStopSource [tracks]
217  locals()[label].setLabel(label)
218 
219 
220 #-------------------------------------------------
221 # Tracking Monitor
222 #-------------------------------------------------
223 import DQM.TrackingMonitor.TrackingMonitorSeed_cfi
224 
226 # Create first modules for all possible iterations, select later which
227 # ones to actually use based on era
228 def _copyIfExists(mod, pset, name):
229  if hasattr(pset, name):
230  setattr(mod, name, getattr(pset, name))
231 for _step, _pset in six.iteritems(seedMonitoring):
232  _mod = DQM.TrackingMonitor.TrackingMonitorSeed_cfi.TrackMonSeed.clone(
233  doTrackCandHistos = cms.bool(True)
234  )
235  locals()['TrackSeedMon'+str(_step)] = _mod
236  _mod.TrackProducer = cms.InputTag("generalTracks")
237  _mod.FolderName = cms.string("Tracking/TrackParameters/generalTracks")
238  _mod.SeedProducer = _pset.seedInputTag
239  _mod.TCProducer = _pset.trackCandInputTag
240  _mod.AlgoName = cms.string( str(_step) )
241  _mod.TkSeedSizeBin = _pset.trackSeedSizeBin
242  _mod.TkSeedSizeMin = _pset.trackSeedSizeMin
243  _mod.TkSeedSizeMax = _pset.trackSeedSizeMax
244  _mod.ClusterLabels = _pset.clusterLabel
245  if _pset.clusterLabel == cms.vstring('Pix') :
246  _mod.NClusPxBin = _pset.clusterBin
247  _mod.NClusPxMax = _pset.clusterMax
248  elif _pset.clusterLabel == cms.vstring('Strip') or _pset.clusterLabel == cms.vstring('Tot') :
249  _mod.NClusStrBin = _pset.clusterBin
250  _mod.NClusStrMax = _pset.clusterMax
251  if hasattr(_pset, "RegionProducer") or hasattr(_pset, "RegionSeedingLayersProducer"):
252  _mod.doRegionPlots = True
253  _copyIfExists(_mod, _pset, "RegionProducer")
254  _copyIfExists(_mod, _pset, "RegionSeedingLayersProducer")
255  _copyIfExists(_mod, _pset, "RegionSizeBin")
256  _copyIfExists(_mod, _pset, "RegionSizeMax")
257  if hasattr(_pset, "RegionCandidates"):
258  _mod.doRegionCandidatePlots = True
259  _mod.RegionCandidates = _pset.RegionCandidates
260  if hasattr(_pset, "trajCandPerSeedBin"):
261  _mod.SeedCandBin = _pset.trajCandPerSeedBin
262  _mod.SeedCandMax = _pset.trajCandPerSeedMax
263 
264 # DQM Services
265 from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
266 dqmInfoTracking = DQMEDAnalyzer('DQMEventInfo',
267  subSystemFolder = cms.untracked.string('Tracking')
268 )
269 
270 # LogMessageMonitor ####
271 ### load which are the module to monitor
273 
274 ### load the different flavour of settings of the LogMessageMonitor module
276 
277 for module in selectedModules :
278  label = str(module)+'LogMessageMonCommon'
279  locals()[label] = LogMessageMonCommon.clone()
280  locals()[label].pluginsMonName = pluginsMonName[module]
281  locals()[label].modules = modulesLabel[module]
282  locals()[label].categories = categories[module]
283  locals()[label].setLabel(label)
284 
285  label = str(module)+'LogMessageMonMB'
286  locals()[label] = LogMessageMonMB.clone()
287  locals()[label].pluginsMonName = pluginsMonName[module]
288  locals()[label].modules = modulesLabel[module]
289  locals()[label].categories = categories[module]
290  locals()[label].setLabel(label)
291 
292 
293 # dEdx monitor ####
294 ### load which dedx
296 
297 ### load the different flavour of settings of the dEdxAnalyzer module
299 
300 
301 # temporary patch in order to have BXlumi
303 
304 # import v0 monitoring
306 
307 # better clone for now because goodOfflinePrimaryVertices is used also
308 # within the reco sequence, and without cloning framework will throw
309 # "unrunnable schedule" exception for workflows without --runUnscheduled
310 from CommonTools.ParticleFlow.goodOfflinePrimaryVertices_cfi import goodOfflinePrimaryVertices
311 trackingDQMgoodOfflinePrimaryVertices = goodOfflinePrimaryVertices.clone()
312 
313 
314 # import PV resolution
316 # Sequence
317 TrackingDQMSourceTier0 = cms.Sequence(cms.ignore(trackingDQMgoodOfflinePrimaryVertices))
318 # dEdx monitoring
319 TrackingDQMSourceTier0 += dedxHarmonicSequence * dEdxMonCommon * dEdxHitMonCommon
320 # # temporary patch in order to have BXlumi
321 # * lumiProducer
322 # track collections
323 for tracks in selectedTracks :
324  if tracks != 'generalTracks':
325  TrackingDQMSourceTier0 += cms.ignore(sequenceName[tracks])
326  label = 'TrackerCollisionSelectedTrackMonCommon' + str(tracks)
327  TrackingDQMSourceTier0 += cms.ignore(locals()[label])
328 # seeding monitoring
329 for _eraName, _postfix, _era in _cfg.allEras():
330  mvaSel = _utils.getMVASelectors(_postfix)
331  _seq = cms.Sequence()
332  for step in locals()["selectedIterTrackingStep"+_postfix]:
333  if step in mvaSel:
334  locals()["TrackSeedMon"+step].doMVAPlots = True
335  locals()["TrackSeedMon"+step].TrackProducerForMVA = mvaSel[step][0]
336  locals()["TrackSeedMon"+step].MVAProducers = mvaSel[step][1]
337 
338  _seq += locals()["TrackSeedMon"+step]
339  if _eraName == "":
340  locals()["TrackSeedMonSequence"] = _seq
341  else:
342  _era.toReplaceWith(TrackSeedMonSequence, _seq)
343 TrackingDQMSourceTier0 += TrackSeedMonSequence
344 # MessageLog
345 for module in selectedModules :
346  label = str(module)+'LogMessageMonCommon'
347  TrackingDQMSourceTier0 += locals()[label]
348 TrackingDQMSourceTier0 += voMonitoringSequence
349 TrackingDQMSourceTier0 += voWcutMonitoringSequence
350 TrackingDQMSourceTier0 += primaryVertexResolution
351 TrackingDQMSourceTier0 += dqmInfoTracking
352 
353 
354 TrackingDQMSourceTier0Common = cms.Sequence(cms.ignore(trackingDQMgoodOfflinePrimaryVertices))
355 # dEdx monitoring
356 TrackingDQMSourceTier0Common += (dedxHarmonicSequence * dEdxMonCommon * dEdxHitMonCommon)
357 ## monitor track collections
358 for tracks in selectedTracks :
359  if tracks != 'generalTracks':
360  TrackingDQMSourceTier0Common+=cms.ignore(sequenceName[tracks])
361  label = 'TrackerCollisionSelectedTrackMonCommon' + str(tracks)
362  TrackingDQMSourceTier0Common += cms.ignore(locals()[label])
363 # seeding monitoring
364 TrackingDQMSourceTier0Common += TrackSeedMonSequence
365 # MessageLog
366 for module in selectedModules :
367  label = str(module)+'LogMessageMonCommon'
368  TrackingDQMSourceTier0Common += locals()[label]
369 TrackingDQMSourceTier0Common += voMonitoringCommonSequence
370 TrackingDQMSourceTier0Common += voWcutMonitoringCommonSequence
371 TrackingDQMSourceTier0Common += primaryVertexResolution
372 TrackingDQMSourceTier0Common += dqmInfoTracking
373 
374 TrackingDQMSourceTier0MinBias = cms.Sequence(cms.ignore(trackingDQMgoodOfflinePrimaryVertices))
375 # dEdx monitoring
376 TrackingDQMSourceTier0MinBias += dedxHarmonicSequence * dEdxMonCommon * dEdxHitMonCommon
377 # * lumiProducer
378 # monitor track collections
379 for tracks in selectedTracks :
380  if tracks != 'generalTracks':
381  TrackingDQMSourceTier0MinBias += cms.ignore(sequenceName[tracks])
382 
383  for topology in [ 'MB', 'ZBnoHIPnoOOT', 'ZBHIPnoOOT', 'ZBHIPOOT']:
384  label = 'TrackerCollisionSelectedTrackMon' + str(topology) + str(tracks)
385  TrackingDQMSourceTier0MinBias += cms.ignore(locals()[label])
386 # seeding monitoring
387 TrackingDQMSourceTier0MinBias += TrackSeedMonSequence
388 # MessageLog
389 for module in selectedModules :
390  label = str(module)+'LogMessageMonMB'
391  TrackingDQMSourceTier0MinBias += locals()[label]
392 # V0 monitoring
393 TrackingDQMSourceTier0MinBias += voMonitoringMBSequence
394 TrackingDQMSourceTier0MinBias += voMonitoringZBnoHIPnoOOTSequence
395 TrackingDQMSourceTier0MinBias += voMonitoringZBHIPnoOOTSequence
396 TrackingDQMSourceTier0MinBias += voMonitoringZBHIPOOTSequence
397 TrackingDQMSourceTier0MinBias += voWcutMonitoringMBSequence
398 TrackingDQMSourceTier0MinBias += voWcutMonitoringZBnoHIPnoOOTSequence
399 TrackingDQMSourceTier0MinBias += voWcutMonitoringZBHIPnoOOTSequence
400 TrackingDQMSourceTier0MinBias += voWcutMonitoringZBHIPOOTSequence
401 # PV resolution
402 TrackingDQMSourceTier0MinBias += primaryVertexResolution
403 
404 TrackingDQMSourceTier0MinBias += dqmInfoTracking
405 
load which dedx
load the different flavour of settings of the dEdxAnalyzer module
load which are the tracks collection 2 be monitored
load the different flavour of settings of the LogMessageMonitor module
load which are the module to monitor
load the different flavour of settings of the TrackingMonitor module
#define str(s)