CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
globalValidation_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
50 
51 # filter/producer "pre-" sequence for globalValidation
52 globalPrevalidationTracking = cms.Sequence(
53  simHitTPAssocProducer
54  * tracksValidation
55  * vertexValidation
56 )
57 globalPrevalidation = cms.Sequence(
58  globalPrevalidationTracking
59  * photonPrevalidationSequence
60  * produceDenoms
61  * prebTagSequenceMC
62 )
63 
64 # filter/producer "pre-" sequence for validation_preprod
65 preprodPrevalidation = cms.Sequence(
66  tracksPreValidation
67 )
68 
69 globalValidation = cms.Sequence( trackerHitsValidation
70  + trackerDigisValidation
71  + trackerRecHitsValidation
72  + trackingTruthValid
73  + trackingRecHitsValid
74  + ecalSimHitsValidationSequence
75  + ecalDigisValidationSequence
76  + ecalRecHitsValidationSequence
77  + ecalClustersValidationSequence
78  + hcalSimHitsValidationSequence
79  + hcaldigisValidationSequence
80  + hcalSimHitStudy
81  + validSimHit+muondtdigianalyzer
82  + cscDigiValidation
83  + validationMuonRPCDigis
84  + recoMuonValidation
85  + muIsoVal_seq
86  + muonIdValDQMSeq
87  + mixCollectionValidation
88  + JetValidation
89  + METValidation
90  + egammaValidation
91  + pfJetValidationSequence
92  + pfMETValidationSequence
93  + pfElectronValidationSequence
94  + pfJetResValidationSequence
95  + pfMuonValidationSequence
96  + pfClusterValidationSequence
97  + rpcRecHitValidation_step
98  + cscRecHitValidation
99  + dtLocalRecoValidation_no2D
100  + pfTauRunDQMValidation
101  + bTagPlotsMCbcl
102  + L1Validator
103  + bdHadronTrackValidationSeq
104 )
105 
106 
107 from Configuration.Eras.Modifier_fastSim_cff import fastSim
108 fastSim.toReplaceWith(globalValidation, globalValidation.copyAndExclude([
109  # fastsim has no tracker digis and different tracker rechit and simhit structure => skipp
110  trackerHitsValidation, trackerDigisValidation, trackerRecHitsValidation, trackingRecHitsValid,
111  # the following depends on crossing frame of ecal simhits, which is a bit hard to implement in the fastsim workflow
112  # besides: is this cross frame doing something, or is it a relic from the past?
113  ecalDigisValidationSequence, ecalRecHitsValidationSequence
114 ]))
115 
116 #lite tracking validator to be used in the Validation matrix
117 #lite validation
118 globalValidationLiteTracking = cms.Sequence(globalValidation)
119 
120 #lite pre-validation
121 globalPrevalidationLiteTracking = cms.Sequence(globalPrevalidation)
122 globalPrevalidationLiteTracking.replace(tracksValidation, tracksValidationLite)
123 
126 
127 baseCommonPreValidation = cms.Sequence(cms.SequencePlaceholder("mix"))
128 baseCommonValidation = cms.Sequence()
129 
130 # Tracking-only validation
131 globalPrevalidationTrackingOnly = cms.Sequence(
132  simHitTPAssocProducer
133  + tracksValidationTrackingOnly
134  + vertexValidationTrackingOnly
135 )
136 globalValidationTrackingOnly = cms.Sequence()
137 
138 # Pixel tracking only validation
139 globalPrevalidationPixelTrackingOnly = cms.Sequence(
140  simHitTPAssocProducer
141  + tracksValidationPixelTrackingOnly
142  + vertexValidationPixelTrackingOnly
143 )
144 globalValidationPixelTrackingOnly = cms.Sequence()
145 
146 globalValidationJetMETonly = cms.Sequence(
147  JetValidation
148  + METValidation
149 )
150 
151 globalPrevalidationJetMETOnly = cms.Sequence(
152  jetPreValidSeq
153  + metPreValidSeq
154 )
155 
156 # ECAL local reconstruction
157 globalPrevalidationECAL = cms.Sequence()
158 globalPrevalidationECALOnly = cms.Sequence(
159  baseCommonPreValidation
160  + globalPrevalidationECAL
161 )
162 
163 globalValidationECAL = cms.Sequence(
164  ecalSimHitsValidationSequence
165  + ecalDigisValidationSequence
166  + ecalRecHitsValidationSequence
167  + ecalClustersValidationSequence
168 )
169 globalValidationECALOnly = cms.Sequence(
170  ecalSimHitsValidationSequence
171  + ecalDigisValidationSequence
172  + ecalRecHitsValidationSequence
173  + pfClusterCaloOnlyValidationSequence
174 )
175 
176 # HCAL local reconstruction
177 globalPrevalidationHCAL = cms.Sequence()
178 
179 globalPrevalidationHCALOnly = cms.Sequence(
180  baseCommonPreValidation
181  + globalPrevalidationHCAL
182 )
183 
184 hcalRecHitsOnlyValidationSequence = hcalRecHitsValidationSequence.copyAndExclude([NoiseRatesValidation])
185 
186 globalValidationHCAL = cms.Sequence(
187  hcalSimHitsValidationSequence
188  + hcaldigisValidationSequence
189  + hcalSimHitStudy
190 )
191 
192 globalValidationHCALOnly = cms.Sequence(
193  hcalSimHitsValidationSequence
194  + hcaldigisValidationSequence
195  + hcalSimHitStudy
196  + hcalRecHitsOnlyValidationSequence
197  + pfClusterCaloOnlyValidationSequence
198 )
199 
200 globalValidationHGCal = cms.Sequence(hgcalValidation)
201 globalPrevalidationHGCal = cms.Sequence(hgcalAssociators, ticlSimTrackstersTask)
202 
203 globalValidationMTD = cms.Sequence()
204 
205 globalValidationOuterTracker = cms.Sequence(OuterTrackerSourceV)
206 
207 globalPrevalidationMuons = cms.Sequence(
208  gemSimValid
209  + me0SimValid
210  + validSimHit
211  + muondtdigianalyzer
212  + cscDigiValidation
213  + validationMuonRPCDigis
214  + recoMuonValidation
215  + rpcRecHitValidation_step
216  + cscRecHitValidation
217  + dtLocalRecoValidation_no2D
218  + muonIdValDQMSeq
219 )
220 
221 globalValidationMuons = cms.Sequence()
222 
223 _phase_1_globalValidation = globalValidation.copy()
224 _phase_1_globalValidation += siPixelPhase1OfflineDQM_sourceV
225 
226 _phase_1_globalValidationPixelTrackingOnly = globalValidationPixelTrackingOnly.copy()
227 _phase_1_globalValidationPixelTrackingOnly += siPixelPhase1ValidationPixelTrackingOnly_sourceV
228 
229 from Configuration.Eras.Modifier_phase1Pixel_cff import phase1Pixel
230 (phase1Pixel & ~fastSim).toReplaceWith( globalValidation, _phase_1_globalValidation ) #module siPixelPhase1OfflineDQM_sourceV can't run in FastSim since siPixelClusters of type edmNew::DetSetVector are not produced
231 (phase1Pixel & ~fastSim).toReplaceWith( globalValidationPixelTrackingOnly, _phase_1_globalValidationPixelTrackingOnly ) #module siPixelPhase1OfflineDQM_sourceV can't run in FastSim since siPixelClusters of type edmNew::DetSetVector are not produced
232 
233 _run3_globalValidation = globalValidation.copy()
234 _run3_globalValidation += gemSimValid
235 
236 _phase2_globalValidation = _run3_globalValidation.copy()
237 _phase2_globalValidation += trackerphase2ValidationSource
238 _phase2_globalValidation += me0SimValid
239 
240 _phase2_ge0_globalValidation = _run3_globalValidation.copy()
241 _phase2_ge0_globalValidation += trackerphase2ValidationSource
242 
243 from Configuration.Eras.Modifier_run2_GEM_2017_cff import run2_GEM_2017
244 run2_GEM_2017.toReplaceWith( globalValidation, _run3_globalValidation )
245 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
246 run3_GEM.toReplaceWith( globalValidation, _run3_globalValidation )
247 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
248 phase2_muon.toReplaceWith( globalValidation, _phase2_globalValidation )
249 from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
250 phase2_GE0.toReplaceWith( globalValidation, _phase2_ge0_globalValidation )
251 phase2_GE0.toReplaceWith( globalPrevalidationMuons, globalPrevalidationMuons.copyAndExclude([me0SimValid]) )
252 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
253 pp_on_AA.toReplaceWith(globalValidation, globalValidation.copyAndExclude([pfTauRunDQMValidation]))
254 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
255 phase2_timing_layer.toReplaceWith(globalValidationMTD, cms.Sequence(mtdSimValid+mtdDigiValid+mtdRecoValid))