CMS 3D CMS Logo

DQMOffline_Trigger_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # online trigger objects monitoring
5 
6 # HLT path monitoring (per PD)
8 
9 # Lumi
11 
12 # Egamma
14 from DQMOffline.Trigger.EgammaMonitoring_cff import * # tag-n-probe (egammaMonitorHLT + egmHLTDQMSourceExtra)
15 
16 # Muon
18 
19 # Tau
21 
22 # JetMET
25 
26 # BTV
29 
30 # vertexing
32 
33 # tracking
35 from DQMOffline.Trigger.TrackingMonitoringPA_cff import*
36 
37 # hcal
39 
40 # strip
42 
43 # pixel
45 
46 # B2G
48 
49 # BPH
51 
52 # EXO
54 
55 # FSQ
57 
58 # HI
60 
61 # HIG
63 # photon jet
65 
66 # SMP
68 
69 # SUS
71 
72 # TOP
74 
75 # Inclusive VBF
77 
78 ##hotline
79 #from DQMOffline.Trigger.hotlineDQM_cfi import * # ORPHAN
80 
81 ##eventshape
82 #from DQMOffline.Trigger.eventshapeDQM_cfi import * # OBSOLETE
83 
84 ##UCC
85 #from DQMOffline.Trigger.heavyionUCCDQM_cfi import * # OBSOLETE
86 
88 dqmEnvHLT = DQMServices.Components.DQMEnvironment_cfi.dqmEnv.clone()
89 dqmEnvHLT.subSystemFolder = 'HLT'
90 
91 from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
92 dqmInfoHLTMon = DQMEDAnalyzer('DQMEventInfo',
93  subSystemFolder = cms.untracked.string('HLT')
94 )
95 ###################################################################################################
96 #### SEQUENCES TO BE RUN depending on the input DATAFORMAT
97 ## on MiniAOD
98 ## ADD here sequences/modules which rely ONLY on collections stored in the MiniAOD format
99 offlineHLTSourceOnMiniAOD = cms.Sequence(
100 )
101 
102 ## on AOD (w/o the need of the RECO step on-the-fly)
103 ## ADD here sequences/modules which rely ONLY on collections stored in the AOD format
104 offlineHLTSourceOnAOD = cms.Sequence(
105  dqmEnvHLT
106  * hltResults
107  * lumiMonitorHLTsequence
108  * muonFullOfflineDQM
109  * HLTTauDQMOffline
110  * hltInclusiveVBFSource
111  * higPhotonJetHLTOfflineSource # plots are filled, but I'm not sure who is really looking at them and what you can get from them ... good candidates to be moved in offlineHLTSourceOnAODextra
112 # eventshapeDQMSequence * ## OBSOLETE !!!! (looks for HLT_HIQ2Top005_Centrality1030_v, HLT_HIQ2Bottom005_Centrality1030_v, etc)
113 # HeavyIonUCCDQMSequence * ## OBSOLETE !!!! (looks for HLT_HIUCC100_v and HLT_HIUCC020_v)
114 # hotlineDQMSequence * ## ORPHAN !!!!
115  * egammaMonitorHLT
116  * exoticaMonitorHLT
117  * susyMonitorHLT
118  * b2gMonitorHLT
119  * higgsMonitorHLT
120  * smpMonitorHLT
121  * topMonitorHLT
122  * btagMonitorHLT
123  * bphMonitorHLT
124  * hltObjectsMonitor # as online DQM, requested/suggested by TSG coordinators
125  * jetmetMonitorHLT
126 )
127 
128 ## w/ the RECO step on-the-fly (to be added to offlineHLTSourceOnAOD which should run anyhow)
129 offlineHLTSourceWithRECO = cms.Sequence(
130  hltResults
131  * egHLTOffDQMSource ## NEEDED in VALIDATION, not really in MONITORING
132  * egHLTOffDQMSource_HEP17 ## NEEDED in VALIDATION, not really in MONITORING
133  * jetMETHLTOfflineAnalyzer
134  * b2gHLTDQMSourceWithRECO ## ak8PFJetsPuppiSoftDrop collection is not available in AOD, actually it is produced by the miniAOD step
135 )
136 ####################################################################################################
137 # offline DQM to be run on AOD (w/o the need of the RECO step on-the-fly) only in the VALIDATION of the HLT menu based on data
138 # it is needed in order to have the DQM code in the release, w/o the issue of crashing the tier0
139 # as the new modules in the sequence offlineHLTSourceOnAODextra are tested,
140 # these have to be migrated in the main offlineHLTSourceOnAOD sequence
141 offlineHLTSourceOnAODextra = cms.Sequence(
142 ### POG
143  btvHLTDQMSourceExtra
144  * egmHLTDQMSourceExtra # empty in 10_2_0
145  * jmeHLTDQMSourceExtra
146  * muoHLTDQMSourceExtra # empty in 10_2_0
147  * tauHLTDQMSourceExtra # empty in 10_2_0
148  * trkHLTDQMSourceExtra # empty in 10_2_0
149 ### PAG
150  * b2gHLTDQMSourceExtra
151  * bphHLTDQMSourceExtra # empty in 10_2_0
152  * exoHLTDQMSourceExtra
153  * higHLTDQMSourceExtra
154  * smpHLTDQMSourceExtra # empty in 10_2_0
155  * susHLTDQMSourceExtra
156  * topHLTDQMSourceExtra
157  * fsqHLTDQMSourceExtra # empty in 10_2_0
158 # * hinHLTDQMSourceExtra
159 )
160 ####################################################################################################
161 #### SEQUENCES TO BE RUN @Tier0 ####
162 ### Express : not really needed
163 ### HLTMonitor : special collections allow to monitor tracks, strip and pixel clusters, b-tagging discriminator, etc --> OfflineHLTMonitoring
164 ### Physics PDs : monitoring vs offline collection (typically, turnON)
165 
166 ## DQM step on Express
167 offlineHLTSource4ExpressPD = cms.Sequence(
168 )
169 
170 ## DQM step on HLTMonitor
171 ## ADD here only sequences/modules which rely on HLT collections which are stored in the HLTMonitoring stream
172 ## and are not available in the standard RAW format
173 offlineHLTSource4HLTMonitorPD = cms.Sequence(
174  dqmInfoHLTMon *
175  lumiMonitorHLTsequence * # lumi
176  sistripMonitorHLTsequence * # strip
177  sipixelMonitorHLTsequence * # pixel
178  BTVHLTOfflineSource * # BTV
179  trackingMonitorHLT * # tracking
180  trackingMonitorHLTDisplacedJet* # EXO : DisplacedJet Tracking
181  egmTrackingMonitorHLT * # EGM tracking
182  vertexingMonitorHLT # vertexing
183 )
184 
185 # sequences run @tier0 on HLTMonitor PD
186 OfflineHLTMonitoring = cms.Sequence(
187  offlineHLTSource4HLTMonitorPD
188 )
189 
190 # sequences run @tier0 on HLTMonitor PD w/ HI (PbPb, XeXe), pPb, ppRef
191 OfflineHLTMonitoringPA = cms.Sequence(
192  dqmInfoHLTMon *
193  trackingMonitorHLT *
194  PAtrackingMonitorHLT
195 )
196 
197 ## DQM step on physics PDs
198 ## transient collections produced by the RECO step are allowed ;)
199 offlineHLTSource4physicsPD = cms.Sequence(
200  offlineHLTSourceOnAOD
201  * offlineHLTSourceWithRECO
202 )
203 
204 ## DQM step on special physics PDs (HI, FSQ and LowLumi, etc)
205 ## transient collections produced by the RECO step are allowed ;)
206 offlineHLTSource4specialPhysicsPD = cms.Sequence(
207  offlineHLTSourceOnAOD
208  * offlineHLTSourceWithRECO
209  * fsqHLTOfflineSourceSequence
210  * HILowLumiHLTOfflineSourceSequence
211 )
212 
213 ## DQM step on relval
214 offlineHLTSource4relval = cms.Sequence(
215  offlineHLTSourceOnAOD
216  * offlineHLTSourceWithRECO
217  * offlineHLTSource4HLTMonitorPD ## special collections (tracking, strip, pixel, etc)
218  * fsqHLTOfflineSourceSequence ## FSQ
219  * HILowLumiHLTOfflineSourceSequence ## HI
220  * offlineHLTSourceOnAODextra ## EXTRA
221 )
222 ####################################################################################################
223 # offline DQM to be run on AOD (w/o the need of the RECO step on-the-fly) in the VALIDATION of the HLT menu based on data
224 # it is needed in order to have the DQM code in the release, w/o the issue of crashing the tier0
225 # as the new modules in the sequence offlineHLTSourceOnAODextra are tested
226 # these have to be migrated in the main offlineHLTSourceOnAOD sequence
227 offlineValidationHLTSourceOnAOD = cms.Sequence(
228  offlineHLTSourceOnAOD
229  + offlineHLTSourceOnAODextra
230 )
231 ####################################################################################################
232 
233 
234 ## old sequence, it should be dropped asa we are confident it is no longer used
235 offlineHLTSource = cms.Sequence(
236  offlineHLTSource4physicsPD
237 )
238 
239 ### sequence run @tier0 (called by main DQM sequences in DQMOffline/Configuration/python/DQMOffline_cff.py) on all PDs, but HLTMonitor one
240 triggerOfflineDQMSource = cms.Sequence(
241  offlineHLTSource
242 )
243 
244 # this sequence can be used by AlCa for the validation of conditions,
245 # because it is like offlineHLTSource (run @tier0) + offlineHLTSourceOnAODextra (meant to validate new features)
246 offlineValidationHLTSource = cms.Sequence(
247  offlineHLTSource
248  + offlineHLTSourceOnAODextra
249 )