CMS 3D CMS Logo

muonValidation_cff.py
Go to the documentation of this file.
1 #
2 # Production configuration for FullSim: muon track validation using MuonAssociatorByHits
3 #
4 import FWCore.ParameterSet.Config as cms
5 
10 import Validation.RecoMuon.MuonTrackValidator_cfi
11 
14 
16 
17 # quickTrackAssociatorByHits on probeTracks used as monitor wrt MuonAssociatorByHits
18 
19 trkMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
20 trkMuonTrackVTrackAssoc.associatormap = 'tpToTkmuTrackAssociation'
21 trkMuonTrackVTrackAssoc.associators = ('trackAssociatorByHits',)
22 #trkMuonTrackVTrackAssoc.label = ('generalTracks',)
23 trkMuonTrackVTrackAssoc.label = ('probeTracks',)
24 trkMuonTrackVTrackAssoc.muonHistoParameters = trkMuonHistoParameters
25 
26 # MuonAssociatorByHits used for all track collections
27 
28 trkProbeTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
29 trkProbeTrackVMuonAssoc.associatormap = 'tpToTkMuonAssociation'
30 #trkProbeTrackVMuonAssoc.label = ('generalTracks',)
31 trkProbeTrackVMuonAssoc.label = ('probeTracks',)
32 trkProbeTrackVMuonAssoc.muonHistoParameters = trkMuonHistoParameters
33 
34 staSeedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
35 staSeedTrackVMuonAssoc.associatormap = 'tpToStaSeedAssociation'
36 staSeedTrackVMuonAssoc.label = ('seedsOfSTAmuons',)
37 staSeedTrackVMuonAssoc.muonHistoParameters = staSeedMuonHistoParameters
38 
39 staMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
40 staMuonTrackVMuonAssoc.associatormap = 'tpToStaMuonAssociation'
41 staMuonTrackVMuonAssoc.label = ('standAloneMuons',)
42 staMuonTrackVMuonAssoc.muonHistoParameters = staMuonHistoParameters
43 
44 staUpdMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
45 staUpdMuonTrackVMuonAssoc.associatormap = 'tpToStaUpdMuonAssociation'
46 staUpdMuonTrackVMuonAssoc.label = ('standAloneMuons:UpdatedAtVtx',)
47 staUpdMuonTrackVMuonAssoc.muonHistoParameters = staUpdMuonHistoParameters
48 
49 glbMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
50 glbMuonTrackVMuonAssoc.associatormap = 'tpToGlbMuonAssociation'
51 glbMuonTrackVMuonAssoc.label = ('globalMuons',)
52 glbMuonTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
53 
54 staRefitMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
55 staRefitMuonTrackVMuonAssoc.associatormap = 'tpToStaRefitMuonAssociation'
56 staRefitMuonTrackVMuonAssoc.label = ('refittedStandAloneMuons',)
57 staRefitMuonTrackVMuonAssoc.muonHistoParameters = staMuonHistoParameters
58 
59 staRefitUpdMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
60 staRefitUpdMuonTrackVMuonAssoc.associatormap = 'tpToStaRefitUpdMuonAssociation'
61 staRefitUpdMuonTrackVMuonAssoc.label = ('refittedStandAloneMuons:UpdatedAtVtx',)
62 staRefitUpdMuonTrackVMuonAssoc.muonHistoParameters = staUpdMuonHistoParameters
63 
64 displacedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
65 displacedTrackVMuonAssoc.associatormap = 'tpToDisplacedTrkMuonAssociation'
66 displacedTrackVMuonAssoc.label = ('displacedTracks',)
67 displacedTrackVMuonAssoc.muonTPSelector = displacedMuonTPSet
68 displacedTrackVMuonAssoc.muonHistoParameters = displacedTrkMuonHistoParameters
69 
70 displacedStaSeedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
71 displacedStaSeedTrackVMuonAssoc.associatormap = 'tpToDisplacedStaSeedAssociation'
72 displacedStaSeedTrackVMuonAssoc.label = ('seedsOfDisplacedSTAmuons',)
73 displacedStaSeedTrackVMuonAssoc.muonTPSelector = displacedMuonTPSet
74 displacedStaSeedTrackVMuonAssoc.muonHistoParameters = displacedStaSeedMuonHistoParameters
75 
76 displacedStaMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
77 displacedStaMuonTrackVMuonAssoc.associatormap = 'tpToDisplacedStaMuonAssociation'
78 displacedStaMuonTrackVMuonAssoc.label = ('displacedStandAloneMuons',)
79 displacedStaMuonTrackVMuonAssoc.muonTPSelector = displacedMuonTPSet
80 displacedStaMuonTrackVMuonAssoc.muonHistoParameters = displacedStaMuonHistoParameters
81 
82 displacedGlbMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
83 displacedGlbMuonTrackVMuonAssoc.associatormap = 'tpToDisplacedGlbMuonAssociation'
84 displacedGlbMuonTrackVMuonAssoc.label = ('displacedGlobalMuons',)
85 displacedGlbMuonTrackVMuonAssoc.muonTPSelector = displacedMuonTPSet
86 displacedGlbMuonTrackVMuonAssoc.muonHistoParameters = displacedGlbMuonHistoParameters
87 
88 tevMuonFirstTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
89 tevMuonFirstTrackVMuonAssoc.associatormap = 'tpToTevFirstMuonAssociation'
90 tevMuonFirstTrackVMuonAssoc.label = ('tevMuons:firstHit',)
91 tevMuonFirstTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
92 
93 tevMuonPickyTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
94 tevMuonPickyTrackVMuonAssoc.associatormap = 'tpToTevPickyMuonAssociation'
95 tevMuonPickyTrackVMuonAssoc.label = ('tevMuons:picky',)
96 tevMuonPickyTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
97 
98 tevMuonDytTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
99 tevMuonDytTrackVMuonAssoc.associatormap = 'tpToTevDytMuonAssociation'
100 tevMuonDytTrackVMuonAssoc.label = ('tevMuons:dyt',)
101 tevMuonDytTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
102 
103 tunepMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
104 tunepMuonTrackVMuonAssoc.associatormap = 'tpToTunePMuonAssociation'
105 tunepMuonTrackVMuonAssoc.label = ('tunepMuonTracks',)
106 tunepMuonTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
107 
108 pfMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
109 pfMuonTrackVMuonAssoc.associatormap = 'tpToPFMuonAssociation'
110 pfMuonTrackVMuonAssoc.label = ('pfMuonTracks',)
111 pfMuonTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
112 
113 recomuMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
114 recomuMuonTrackVMuonAssoc.associatormap = 'tpTorecoMuonMuonAssociation'
115 recomuMuonTrackVMuonAssoc.label = ('recoMuonTracks',)
116 recomuMuonTrackVMuonAssoc.muonHistoParameters = glbMuonHistoParameters
117 
118 gemMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
119 gemMuonTrackVMuonAssoc.associatormap = 'tpToGEMMuonMuonAssociation'
120 gemMuonTrackVMuonAssoc.label = ('extractGemMuons',)
121 gemMuonTrackVMuonAssoc.muonHistoParameters = gemMuonHistoParameters
122 
123 me0MuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
124 me0MuonTrackVMuonAssoc.associatormap = 'tpToME0MuonMuonAssociation'
125 me0MuonTrackVMuonAssoc.label = ('extractMe0Muons',)
126 me0MuonTrackVMuonAssoc.muonTPSelector = me0MuonTPSet
127 me0MuonTrackVMuonAssoc.muonHistoParameters = me0MuonHistoParameters
128 
129 # cosmics 2-leg reco
130 trkCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
131 trkCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToTkCosmicSelMuonAssociation'
132 trkCosmicMuonTrackVSelMuonAssoc.label = ('ctfWithMaterialTracksP5LHCNavigation',)
133 trkCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
134 trkCosmicMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
135 trkCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
136 trkCosmicMuonTrackVSelMuonAssoc.muonHistoParameters = trkCosmicMuonHistoParameters
137 
138 staCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
139 staCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToStaCosmicSelMuonAssociation'
140 staCosmicMuonTrackVSelMuonAssoc.label = ('cosmicMuons',)
141 staCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
142 staCosmicMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
143 staCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
144 staCosmicMuonTrackVSelMuonAssoc.muonHistoParameters = staCosmicMuonHistoParameters
145 
146 glbCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
147 glbCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToGlbCosmicSelMuonAssociation'
148 glbCosmicMuonTrackVSelMuonAssoc.label = ('globalCosmicMuons',)
149 glbCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
150 glbCosmicMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
151 glbCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
152 glbCosmicMuonTrackVSelMuonAssoc.muonHistoParameters = glbCosmicMuonHistoParameters
153 
154 # cosmics 1-leg reco
155 trkCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
156 trkCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToTkCosmic1LegSelMuonAssociation'
157 trkCosmic1LegMuonTrackVSelMuonAssoc.label = ('ctfWithMaterialTracksP5',)
158 trkCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
159 trkCosmic1LegMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
160 trkCosmic1LegMuonTrackVSelMuonAssoc.muonHistoParameters = trkCosmic1LegMuonHistoParameters
161 
162 staCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
163 staCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToStaCosmic1LegSelMuonAssociation'
164 staCosmic1LegMuonTrackVSelMuonAssoc.label = ('cosmicMuons1Leg',)
165 staCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
166 staCosmic1LegMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
167 staCosmic1LegMuonTrackVSelMuonAssoc.muonHistoParameters = staCosmic1LegMuonHistoParameters
168 
169 glbCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
170 glbCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToGlbCosmic1LegSelMuonAssociation'
171 glbCosmic1LegMuonTrackVSelMuonAssoc.label = ('globalCosmicMuons1Leg',)
172 glbCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
173 glbCosmic1LegMuonTrackVSelMuonAssoc.muonTPSelector = cosmicMuonTPSet
174 glbCosmic1LegMuonTrackVSelMuonAssoc.muonHistoParameters = glbCosmic1LegMuonHistoParameters
175 
176 
179 muonValidation_seq = cms.Sequence(
180  probeTracks_seq + tpToTkMuonAssociation + trkProbeTrackVMuonAssoc
181  +trackAssociatorByHits + tpToTkmuTrackAssociation + trkMuonTrackVTrackAssoc
182  +seedsOfSTAmuons_seq + tpToStaSeedAssociation + staSeedTrackVMuonAssoc
183  +tpToStaMuonAssociation + staMuonTrackVMuonAssoc
184  +tpToStaUpdMuonAssociation + staUpdMuonTrackVMuonAssoc
185  +tpToGlbMuonAssociation + glbMuonTrackVMuonAssoc
186  +pfMuonTracks_seq + tpToPFMuonAssociation + pfMuonTrackVMuonAssoc
187  +recoMuonTracks_seq + tpTorecoMuonMuonAssociation + recomuMuonTrackVMuonAssoc
188 )
189 
190 muonValidationTEV_seq = cms.Sequence(
191  tpToTevFirstMuonAssociation + tevMuonFirstTrackVMuonAssoc
192  +tpToTevPickyMuonAssociation + tevMuonPickyTrackVMuonAssoc
193  +tpToTevDytMuonAssociation + tevMuonDytTrackVMuonAssoc
194  +tunepMuonTracks_seq + tpToTunePMuonAssociation + tunepMuonTrackVMuonAssoc
195 )
196 
197 muonValidationRefit_seq = cms.Sequence(
198  tpToStaRefitMuonAssociation + staRefitMuonTrackVMuonAssoc
199  +tpToStaRefitUpdMuonAssociation + staRefitUpdMuonTrackVMuonAssoc
200 )
201 
202 muonValidationDisplaced_seq = cms.Sequence(
203  seedsOfDisplacedSTAmuons_seq + tpToDisplacedStaSeedAssociation + displacedStaSeedTrackVMuonAssoc
204  +tpToDisplacedStaMuonAssociation + displacedStaMuonTrackVMuonAssoc
205  +tpToDisplacedTrkMuonAssociation + displacedTrackVMuonAssoc
206  +tpToDisplacedGlbMuonAssociation + displacedGlbMuonTrackVMuonAssoc
207 )
208 
209 muonValidationCosmic_seq = cms.Sequence(
210  tpToTkCosmicSelMuonAssociation + trkCosmicMuonTrackVSelMuonAssoc
211  +tpToTkCosmic1LegSelMuonAssociation + trkCosmic1LegMuonTrackVSelMuonAssoc
212  +tpToStaCosmicSelMuonAssociation + staCosmicMuonTrackVSelMuonAssoc
213  +tpToStaCosmic1LegSelMuonAssociation + staCosmic1LegMuonTrackVSelMuonAssoc
214  +tpToGlbCosmicSelMuonAssociation + glbCosmicMuonTrackVSelMuonAssoc
215  +tpToGlbCosmic1LegSelMuonAssociation + glbCosmic1LegMuonTrackVSelMuonAssoc
216 )
217 
218 recoMuonValidation_reduced_seq = cms.Sequence(
219  probeTracks_seq + tpToTkMuonAssociation + trkProbeTrackVMuonAssoc
220  +tpToStaUpdMuonAssociation + staUpdMuonTrackVMuonAssoc
221  +tpToGlbMuonAssociation + glbMuonTrackVMuonAssoc
222  +tunepMuonTracks_seq + tpToTunePMuonAssociation + tunepMuonTrackVMuonAssoc
223  +pfMuonTracks_seq + tpToPFMuonAssociation + pfMuonTrackVMuonAssoc
224  +recoMuonTracks_seq + tpTorecoMuonMuonAssociation + recomuMuonTrackVMuonAssoc
225  +tpToDisplacedStaMuonAssociation + displacedStaMuonTrackVMuonAssoc
226  +tpToDisplacedTrkMuonAssociation + displacedTrackVMuonAssoc
227  +tpToDisplacedGlbMuonAssociation + displacedGlbMuonTrackVMuonAssoc
228 )
229 
230 gemMuonValidation = cms.Sequence(extractGemMuonsTracks_seq + tpToGEMMuonMuonAssociation + gemMuonTrackVMuonAssoc)
231 me0MuonValidation = cms.Sequence(extractMe0MuonsTracks_seq + tpToME0MuonMuonAssociation + me0MuonTrackVMuonAssoc)
232 
233 
236 recoMuonValidation = cms.Sequence(
237  muonValidation_seq + muonValidationTEV_seq + muonValidationRefit_seq + muonValidationDisplaced_seq + muonValidationRMV_seq
238  )
239 
240 # no displaced muons in fastsim
241 from Configuration.Eras.Modifier_fastSim_cff import fastSim
242 fastSim.toReplaceWith(recoMuonValidation, cms.Sequence(muonValidation_seq + muonValidationTEV_seq + muonValidationRefit_seq + muonValidationRMV_seq))
243 
244 # sequence for cosmic muons
245 recoCosmicMuonValidation = cms.Sequence(
246  muonValidationCosmic_seq
247  )
248 
249 # sequences for muon upgrades
250 #
251 _run3_muonValidation = recoMuonValidation.copy() #For full validation
252 #_run3_muonValidation = recoMuonValidation_reduced_seq.copy()
253 _run3_muonValidation += gemMuonValidation
254 
255 #_phase2_muonValidation = recoMuonValidation.copy() #For full validation
256 _phase2_muonValidation = recoMuonValidation_reduced_seq.copy()
257 _phase2_muonValidation += gemMuonValidation
258 _phase2_muonValidation += me0MuonValidation
259 
260 #_phase2_ge0_muonValidation = recoMuonValidation.copy() #For full validation
261 _phase2_ge0_muonValidation = recoMuonValidation_reduced_seq.copy()
262 _phase2_ge0_muonValidation += gemMuonValidation
263 
264 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
265 run3_GEM.toReplaceWith( recoMuonValidation, _run3_muonValidation )
266 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
267 phase2_muon.toReplaceWith( recoMuonValidation, _phase2_muonValidation )
268 from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
269 phase2_GE0.toReplaceWith( recoMuonValidation, _phase2_ge0_muonValidation )
track_selectors_cff
LhcParametersDefinerForTP_cfi
RecoMuonValidator_cff
histoParameters_cff
selectors_cff
CosmicParametersDefinerForTP_cfi
associators_cff