CMS 3D CMS Logo

muonValidation_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
5 # Configurations for MuonTrackValidators
6 import Validation.RecoMuon.MuonTrackValidator_cfi
9 
10 trkMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
11 trkMuonTrackVTrackAssoc.associatormap = 'tpToTkmuTrackAssociation'
12 trkMuonTrackVTrackAssoc.associators = ('trackAssociatorByHits',)
13 #trkMuonTrackVTrackAssoc.label = ('generalTracks',)
14 trkMuonTrackVTrackAssoc.label = ('probeTracks',)
15 trkMuonTrackVTrackAssoc.usetracker = True
16 trkMuonTrackVTrackAssoc.usemuon = False
17 
18 trkCosmicMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
19 trkCosmicMuonTrackVTrackAssoc.associatormap = 'tpToTkCosmicTrackAssociation'
20 trkCosmicMuonTrackVTrackAssoc.associators = ('trackAssociatorByHits',)
21 trkCosmicMuonTrackVTrackAssoc.label = ('ctfWithMaterialTracksP5LHCNavigation',)
22 trkCosmicMuonTrackVTrackAssoc.usetracker = True
23 trkCosmicMuonTrackVTrackAssoc.usemuon = False
24 
25 staMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
26 staMuonTrackVTrackAssoc.associatormap = 'tpToStaTrackAssociation'
27 staMuonTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
28 staMuonTrackVTrackAssoc.label = ('standAloneMuons',)
29 staMuonTrackVTrackAssoc.usetracker = False
30 staMuonTrackVTrackAssoc.usemuon = True
31 
32 staUpdMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
33 staUpdMuonTrackVTrackAssoc.associatormap = 'tpToStaUpdTrackAssociation'
34 staUpdMuonTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
35 staUpdMuonTrackVTrackAssoc.label = ('standAloneMuons:UpdatedAtVtx',)
36 staUpdMuonTrackVTrackAssoc.usetracker = False
37 staUpdMuonTrackVTrackAssoc.usemuon = True
38 
39 glbMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
40 glbMuonTrackVTrackAssoc.associatormap = 'tpToGlbTrackAssociation'
41 glbMuonTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
42 glbMuonTrackVTrackAssoc.label = ('globalMuons',)
43 glbMuonTrackVTrackAssoc.usetracker = True
44 glbMuonTrackVTrackAssoc.usemuon = True
45 
46 tevMuonFirstTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
47 tevMuonFirstTrackVTrackAssoc.associatormap = 'tpToTevFirstTrackAssociation'
48 tevMuonFirstTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
49 tevMuonFirstTrackVTrackAssoc.label = ('tevMuons:firstHit',)
50 tevMuonFirstTrackVTrackAssoc.usetracker = True
51 tevMuonFirstTrackVTrackAssoc.usemuon = True
52 
53 tevMuonPickyTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
54 tevMuonPickyTrackVTrackAssoc.associatormap = 'tpToTevPickyTrackAssociation'
55 tevMuonPickyTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
56 tevMuonPickyTrackVTrackAssoc.label = ('tevMuons:picky',)
57 tevMuonPickyTrackVTrackAssoc.usetracker = True
58 tevMuonPickyTrackVTrackAssoc.usemuon = True
59 
60 tevMuonDytTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
61 tevMuonDytTrackVTrackAssoc.associatormap = 'tpToTevDytTrackAssociation'
62 tevMuonDytTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
63 tevMuonDytTrackVTrackAssoc.label = ('tevMuons:dyt',)
64 tevMuonDytTrackVTrackAssoc.usetracker = True
65 tevMuonDytTrackVTrackAssoc.usemuon = True
66 
67 staCosmicMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
68 staCosmicMuonTrackVTrackAssoc.associatormap = 'tpToStaCosmicTrackAssociation'
69 staCosmicMuonTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
70 staCosmicMuonTrackVTrackAssoc.label = ('cosmicMuons',)
71 staCosmicMuonTrackVTrackAssoc.usetracker = False
72 staCosmicMuonTrackVTrackAssoc.usemuon = True
73 
74 glbCosmicMuonTrackVTrackAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
75 glbCosmicMuonTrackVTrackAssoc.associatormap = 'tpToGlbCosmicTrackAssociation'
76 glbCosmicMuonTrackVTrackAssoc.associators = ('trackAssociatorByDeltaR',)
77 glbCosmicMuonTrackVTrackAssoc.label = ('globalCosmicMuons',)
78 glbCosmicMuonTrackVTrackAssoc.usetracker = True
79 glbCosmicMuonTrackVTrackAssoc.usemuon = True
80 
81 trkProbeTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
82 #trkMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
83 trkProbeTrackVMuonAssoc.associatormap = 'tpToTkMuonAssociation'
84 trkProbeTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
85 ##trkMuonTrackVMuonAssoc.label = ('generalTracks',)
86 trkProbeTrackVMuonAssoc.label = ('probeTracks',)
87 trkProbeTrackVMuonAssoc.usetracker = True
88 trkProbeTrackVMuonAssoc.usemuon = False
89 
90 staSeedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
91 staSeedTrackVMuonAssoc.associatormap = 'tpToStaSeedAssociation'
92 staSeedTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
93 staSeedTrackVMuonAssoc.label = ('seedsOfSTAmuons',)
94 staSeedTrackVMuonAssoc.usetracker = False
95 staSeedTrackVMuonAssoc.usemuon = True
96 
97 staMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
98 staMuonTrackVMuonAssoc.associatormap = 'tpToStaMuonAssociation'
99 staMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
100 staMuonTrackVMuonAssoc.label = ('standAloneMuons',)
101 staMuonTrackVMuonAssoc.usetracker = False
102 staMuonTrackVMuonAssoc.usemuon = True
103 
104 staUpdMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
105 staUpdMuonTrackVMuonAssoc.associatormap = 'tpToStaUpdMuonAssociation'
106 staUpdMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
107 staUpdMuonTrackVMuonAssoc.label = ('standAloneMuons:UpdatedAtVtx',)
108 staUpdMuonTrackVMuonAssoc.usetracker = False
109 staUpdMuonTrackVMuonAssoc.usemuon = True
110 
111 glbMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
112 glbMuonTrackVMuonAssoc.associatormap = 'tpToGlbMuonAssociation'
113 glbMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
114 glbMuonTrackVMuonAssoc.label = ('extractedGlobalMuons',)
115 glbMuonTrackVMuonAssoc.usetracker = True
116 glbMuonTrackVMuonAssoc.usemuon = True
117 
118 staRefitMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
119 staRefitMuonTrackVMuonAssoc.associatormap = 'tpToStaRefitMuonAssociation'
120 staRefitMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
121 staRefitMuonTrackVMuonAssoc.label = ('refittedStandAloneMuons',)
122 staRefitMuonTrackVMuonAssoc.usetracker = False
123 staRefitMuonTrackVMuonAssoc.usemuon = True
124 
125 staRefitUpdMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
126 staRefitUpdMuonTrackVMuonAssoc.associatormap = 'tpToStaRefitUpdMuonAssociation'
127 staRefitUpdMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
128 staRefitUpdMuonTrackVMuonAssoc.label = ('refittedStandAloneMuons:UpdatedAtVtx',)
129 staRefitUpdMuonTrackVMuonAssoc.usetracker = False
130 staRefitUpdMuonTrackVMuonAssoc.usemuon = True
131 
132 displacedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
133 displacedTrackVMuonAssoc.associatormap = 'tpToDisplacedTrkMuonAssociation'
134 displacedTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
135 displacedTrackVMuonAssoc.label = ('displacedTracks',)
136 displacedTrackVMuonAssoc.usetracker = True
137 displacedTrackVMuonAssoc.usemuon = False
138 displacedTrackVMuonAssoc.tipTP = cms.double(85.)
139 displacedTrackVMuonAssoc.lipTP = cms.double(210.)
140 
141 displacedStaSeedTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
142 displacedStaSeedTrackVMuonAssoc.associatormap = 'tpToDisplacedStaSeedAssociation'
143 displacedStaSeedTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
144 displacedStaSeedTrackVMuonAssoc.label = ('seedsOfDisplacedSTAmuons',)
145 displacedStaSeedTrackVMuonAssoc.usetracker = False
146 displacedStaSeedTrackVMuonAssoc.usemuon = True
147 displacedStaSeedTrackVMuonAssoc.tipTP = cms.double(85.)
148 displacedStaSeedTrackVMuonAssoc.lipTP = cms.double(210.)
149 
150 displacedStaMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
151 displacedStaMuonTrackVMuonAssoc.associatormap = 'tpToDisplacedStaMuonAssociation'
152 displacedStaMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
153 displacedStaMuonTrackVMuonAssoc.label = ('displacedStandAloneMuons',)
154 displacedStaMuonTrackVMuonAssoc.usetracker = False
155 displacedStaMuonTrackVMuonAssoc.usemuon = True
156 displacedStaMuonTrackVMuonAssoc.tipTP = cms.double(85.)
157 displacedStaMuonTrackVMuonAssoc.lipTP = cms.double(210.)
158 
159 displacedGlbMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
160 displacedGlbMuonTrackVMuonAssoc.associatormap = 'tpToDisplacedGlbMuonAssociation'
161 displacedGlbMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
162 displacedGlbMuonTrackVMuonAssoc.label = ('displacedGlobalMuons',)
163 displacedGlbMuonTrackVMuonAssoc.usetracker = True
164 displacedGlbMuonTrackVMuonAssoc.usemuon = True
165 displacedGlbMuonTrackVMuonAssoc.tipTP = cms.double(85.)
166 displacedGlbMuonTrackVMuonAssoc.lipTP = cms.double(210.)
167 
168 tevMuonFirstTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
169 tevMuonFirstTrackVMuonAssoc.associatormap = 'tpToTevFirstMuonAssociation'
170 tevMuonFirstTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
171 tevMuonFirstTrackVMuonAssoc.label = ('tevMuons:firstHit',)
172 tevMuonFirstTrackVMuonAssoc.usetracker = True
173 tevMuonFirstTrackVMuonAssoc.usemuon = True
174 
175 tevMuonPickyTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
176 tevMuonPickyTrackVMuonAssoc.associatormap = 'tpToTevPickyMuonAssociation'
177 tevMuonPickyTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
178 tevMuonPickyTrackVMuonAssoc.label = ('tevMuons:picky',)
179 tevMuonPickyTrackVMuonAssoc.usetracker = True
180 tevMuonPickyTrackVMuonAssoc.usemuon = True
181 
182 tevMuonDytTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
183 tevMuonDytTrackVMuonAssoc.associatormap = 'tpToTevDytMuonAssociation'
184 tevMuonDytTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
185 tevMuonDytTrackVMuonAssoc.label = ('tevMuons:dyt',)
186 tevMuonDytTrackVMuonAssoc.usetracker = True
187 tevMuonDytTrackVMuonAssoc.usemuon = True
188 
189 gemMuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
190 gemMuonTrackVMuonAssoc.associatormap = 'tpToGEMMuonMuonAssociation'
191 gemMuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
192 gemMuonTrackVMuonAssoc.label = ('extractGemMuons',)
193 gemMuonTrackVMuonAssoc.minRapidityTP = -2.4
194 gemMuonTrackVMuonAssoc.maxRapidityTP = +2.4
195 gemMuonTrackVMuonAssoc.usetracker = True
196 gemMuonTrackVMuonAssoc.usemuon = False
197 gemMuonTrackVMuonAssoc.min = -2.4
198 gemMuonTrackVMuonAssoc.max = +2.4
199 gemMuonTrackVMuonAssoc.nint = 48
200 
201 me0MuonTrackVMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
202 me0MuonTrackVMuonAssoc.associatormap = 'tpToME0MuonMuonAssociation'
203 me0MuonTrackVMuonAssoc.associators = ('MuonAssociationByHits',)
204 me0MuonTrackVMuonAssoc.label = ('extractMe0Muons',)
205 me0MuonTrackVMuonAssoc.minRapidityTP = -2.8
206 me0MuonTrackVMuonAssoc.maxRapidityTP = +2.8
207 me0MuonTrackVMuonAssoc.usetracker = True
208 me0MuonTrackVMuonAssoc.usemuon = False
209 me0MuonTrackVMuonAssoc.min = -2.8
210 me0MuonTrackVMuonAssoc.max = +2.8
211 me0MuonTrackVMuonAssoc.nint = 56
212 
213 # cosmics 2-leg reco
214 trkCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
215 trkCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToTkCosmicSelMuonAssociation'
216 trkCosmicMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
217 trkCosmicMuonTrackVSelMuonAssoc.label = ('ctfWithMaterialTracksP5LHCNavigation',)
218 trkCosmicMuonTrackVSelMuonAssoc.usetracker = True
219 trkCosmicMuonTrackVSelMuonAssoc.usemuon = False
220 trkCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
221 trkCosmicMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
222 trkCosmicMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
223 trkCosmicMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
224 trkCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
225 
226 staCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
227 staCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToStaCosmicSelMuonAssociation'
228 staCosmicMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
229 staCosmicMuonTrackVSelMuonAssoc.label = ('cosmicMuons',)
230 staCosmicMuonTrackVSelMuonAssoc.usetracker = False
231 staCosmicMuonTrackVSelMuonAssoc.usemuon = True
232 staCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
233 staCosmicMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
234 staCosmicMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
235 staCosmicMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
236 staCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
237 
238 glbCosmicMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
239 glbCosmicMuonTrackVSelMuonAssoc.associatormap = 'tpToGlbCosmicSelMuonAssociation'
240 glbCosmicMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
241 glbCosmicMuonTrackVSelMuonAssoc.label = ('globalCosmicMuons',)
242 glbCosmicMuonTrackVSelMuonAssoc.usetracker = True
243 glbCosmicMuonTrackVSelMuonAssoc.usemuon = True
244 glbCosmicMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
245 glbCosmicMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
246 glbCosmicMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
247 glbCosmicMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
248 glbCosmicMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
249 
250 # cosmics 1-leg reco
251 trkCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
252 trkCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToTkCosmic1LegSelMuonAssociation'
253 trkCosmic1LegMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
254 trkCosmic1LegMuonTrackVSelMuonAssoc.label = ('ctfWithMaterialTracksP5',)
255 trkCosmic1LegMuonTrackVSelMuonAssoc.usetracker = True
256 trkCosmic1LegMuonTrackVSelMuonAssoc.usemuon = False
257 trkCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
258 trkCosmic1LegMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
259 trkCosmic1LegMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
260 trkCosmic1LegMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
261 trkCosmic1LegMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
262 
263 staCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
264 staCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToStaCosmic1LegSelMuonAssociation'
265 staCosmic1LegMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
266 staCosmic1LegMuonTrackVSelMuonAssoc.label = ('cosmicMuons1Leg',)
267 staCosmic1LegMuonTrackVSelMuonAssoc.usetracker = False
268 staCosmic1LegMuonTrackVSelMuonAssoc.usemuon = True
269 staCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
270 staCosmic1LegMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
271 staCosmic1LegMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
272 staCosmic1LegMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
273 staCosmic1LegMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
274 
275 glbCosmic1LegMuonTrackVSelMuonAssoc = Validation.RecoMuon.MuonTrackValidator_cfi.muonTrackValidator.clone()
276 glbCosmic1LegMuonTrackVSelMuonAssoc.associatormap = 'tpToGlbCosmic1LegSelMuonAssociation'
277 glbCosmic1LegMuonTrackVSelMuonAssoc.associators = ('MuonAssociationByHits',)
278 glbCosmic1LegMuonTrackVSelMuonAssoc.label = ('globalCosmicMuons1Leg',)
279 glbCosmic1LegMuonTrackVSelMuonAssoc.usetracker = True
280 glbCosmic1LegMuonTrackVSelMuonAssoc.usemuon = True
281 glbCosmic1LegMuonTrackVSelMuonAssoc.parametersDefiner = cms.string('CosmicParametersDefinerForTP')
282 glbCosmic1LegMuonTrackVSelMuonAssoc.ptMinTP = cms.double(1.)
283 glbCosmic1LegMuonTrackVSelMuonAssoc.tipTP = cms.double(80.)
284 glbCosmic1LegMuonTrackVSelMuonAssoc.lipTP = cms.double(212.)
285 glbCosmic1LegMuonTrackVSelMuonAssoc.BiDirectional_RecoToSim_association = False
286 
287 # Configurations for RecoMuonValidators
290 
291 #import SimGeneral.MixingModule.mixNoPU_cfi
293 from SimMuon.MCTruth.MuonAssociatorByHits_cfi import muonAssociatorByHitsCommonParameters
294 
295 #tracker
296 muonAssociatorByHitsNoSimHitsHelperTrk = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
297 muonAssociatorByHitsNoSimHitsHelperTrk.UseTracker = True
298 muonAssociatorByHitsNoSimHitsHelperTrk.UseMuon = False
299 recoMuonVMuAssoc_trk = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
300 recoMuonVMuAssoc_trk.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_Trk'
301 recoMuonVMuAssoc_trk.simLabel = 'mix:MergedTrackTruth'
302 recoMuonVMuAssoc_trk.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperTrk'
303 recoMuonVMuAssoc_trk.trackType = 'inner'
304 recoMuonVMuAssoc_trk.selection = "isTrackerMuon"
305 
306 #tracker and PF
307 muonAssociatorByHitsNoSimHitsHelperTrkPF = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
308 muonAssociatorByHitsNoSimHitsHelperTrkPF.UseTracker = True
309 muonAssociatorByHitsNoSimHitsHelperTrkPF.UseMuon = False
310 recoMuonVMuAssoc_trkPF = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
311 recoMuonVMuAssoc_trkPF.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_TrkPF'
312 recoMuonVMuAssoc_trkPF.usePFMuon = True
313 recoMuonVMuAssoc_trkPF.simLabel = 'mix:MergedTrackTruth'
314 recoMuonVMuAssoc_trkPF.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperTrkPF'
315 recoMuonVMuAssoc_trkPF.trackType = 'inner'
316 recoMuonVMuAssoc_trkPF.selection = "isTrackerMuon & isPFMuon"
317 
318 #standalone
319 muonAssociatorByHitsNoSimHitsHelperStandalone = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
320 muonAssociatorByHitsNoSimHitsHelperStandalone.UseTracker = False
321 muonAssociatorByHitsNoSimHitsHelperStandalone.UseMuon = True
322 recoMuonVMuAssoc_sta = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
323 recoMuonVMuAssoc_sta.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_Sta'
324 recoMuonVMuAssoc_sta.simLabel = 'mix:MergedTrackTruth'
325 recoMuonVMuAssoc_sta.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperStandalone'
326 recoMuonVMuAssoc_sta.trackType = 'outer'
327 recoMuonVMuAssoc_sta.selection = "isStandAloneMuon"
328 
329 #seed of StandAlone
330 muonAssociatorByHitsNoSimHitsHelperSeedStandalone = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
331 muonAssociatorByHitsNoSimHitsHelperSeedStandalone.UseTracker = False
332 muonAssociatorByHitsNoSimHitsHelperSeedStandalone.UseMuon = True
333 recoMuonVMuAssoc_seedSta = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
334 recoMuonVMuAssoc_seedSta.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_SeedSta'
335 recoMuonVMuAssoc_seedSta.simLabel = 'mix:MergedTrackTruth'
336 recoMuonVMuAssoc_seedSta.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperStandalone'
337 recoMuonVMuAssoc_seedSta.trackType = 'outer'
338 recoMuonVMuAssoc_seedSta.selection = ""
339 
340 #standalone and PF
341 muonAssociatorByHitsNoSimHitsHelperStandalonePF = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
342 muonAssociatorByHitsNoSimHitsHelperStandalonePF.UseTracker = False
343 muonAssociatorByHitsNoSimHitsHelperStandalonePF.UseMuon = True
344 recoMuonVMuAssoc_staPF = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
345 recoMuonVMuAssoc_staPF.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_StaPF'
346 recoMuonVMuAssoc_staPF.usePFMuon = True
347 recoMuonVMuAssoc_staPF.simLabel = 'mix:MergedTrackTruth'
348 recoMuonVMuAssoc_staPF.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperStandalonePF'
349 recoMuonVMuAssoc_staPF.trackType = 'outer'
350 recoMuonVMuAssoc_staPF.selection = "isStandAloneMuon & isPFMuon"
351 
352 #global
353 muonAssociatorByHitsNoSimHitsHelperGlobal = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
354 muonAssociatorByHitsNoSimHitsHelperGlobal.UseTracker = True
355 muonAssociatorByHitsNoSimHitsHelperGlobal.UseMuon = True
356 recoMuonVMuAssoc_glb = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
357 recoMuonVMuAssoc_glb.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_Glb'
358 recoMuonVMuAssoc_glb.simLabel = 'mix:MergedTrackTruth'
359 recoMuonVMuAssoc_glb.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperGlobal'
360 recoMuonVMuAssoc_glb.trackType = 'global'
361 recoMuonVMuAssoc_glb.selection = "isGlobalMuon"
362 
363 #global and PF
364 muonAssociatorByHitsNoSimHitsHelperGlobalPF = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
365 muonAssociatorByHitsNoSimHitsHelperGlobalPF.UseTracker = True
366 muonAssociatorByHitsNoSimHitsHelperGlobalPF.UseMuon = True
367 recoMuonVMuAssoc_glbPF = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
368 recoMuonVMuAssoc_glbPF.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_GlbPF'
369 recoMuonVMuAssoc_glbPF.usePFMuon = True
370 recoMuonVMuAssoc_glbPF.simLabel = 'mix:MergedTrackTruth'
371 recoMuonVMuAssoc_glbPF.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperGlobalPF'
372 recoMuonVMuAssoc_glbPF.trackType = 'global'
373 recoMuonVMuAssoc_glbPF.selection = "isGlobalMuon & isPFMuon"
374 
375 #tight
376 muonAssociatorByHitsNoSimHitsHelperTight = SimMuon.MCTruth.muonAssociatorByHitsNoSimHitsHelper_cfi.muonAssociatorByHitsNoSimHitsHelper.clone()
377 muonAssociatorByHitsNoSimHitsHelperTight.UseTracker = True
378 muonAssociatorByHitsNoSimHitsHelperTight.UseMuon = True
379 recoMuonVMuAssoc_tgt = Validation.RecoMuon.RecoMuonValidator_cfi.recoMuonValidator.clone()
380 recoMuonVMuAssoc_tgt.subDir = 'Muons/RecoMuonV/RecoMuon_MuonAssoc_Tgt'
381 recoMuonVMuAssoc_tgt.simLabel = 'mix:MergedTrackTruth'
382 recoMuonVMuAssoc_tgt.muAssocLabel = 'muonAssociatorByHitsNoSimHitsHelperTight'
383 recoMuonVMuAssoc_tgt.trackType = 'global'
384 recoMuonVMuAssoc_tgt.selection = 'isGlobalMuon'
385 recoMuonVMuAssoc_tgt.wantTightMuon = True
386 recoMuonVMuAssoc_tgt.beamSpot = 'offlineBeamSpot'
387 recoMuonVMuAssoc_tgt.primaryVertex = 'offlinePrimaryVertices'
388 
389 # Muon validation sequences
390 muonValidation_seq = cms.Sequence(
391  probeTracks_seq + tpToTkMuonAssociation + trkProbeTrackVMuonAssoc
392  +trackAssociatorByHits + tpToTkmuTrackAssociation + trkMuonTrackVTrackAssoc
393  +seedsOfSTAmuons_seq + tpToStaSeedAssociation + staSeedTrackVMuonAssoc
394  +tpToStaMuonAssociation + staMuonTrackVMuonAssoc
395  +tpToStaUpdMuonAssociation + staUpdMuonTrackVMuonAssoc
396  +extractedMuonTracks_seq + tpToGlbMuonAssociation + glbMuonTrackVMuonAssoc
397  +muonAssociatorByHitsNoSimHitsHelperTrk +recoMuonVMuAssoc_trk
398  +muonAssociatorByHitsNoSimHitsHelperStandalone +recoMuonVMuAssoc_sta
399  +muonAssociatorByHitsNoSimHitsHelperGlobal +recoMuonVMuAssoc_glb
400  +muonAssociatorByHitsNoSimHitsHelperTight +recoMuonVMuAssoc_tgt
401 )
402 
403 muonValidation_reduced_seq = cms.Sequence(
404  probeTracks_seq + tpToTkMuonAssociation + trkProbeTrackVMuonAssoc
405 # +trackAssociatorByHits + tpToTkmuTrackAssociation + trkMuonTrackVTrackAssoc
406 # +seedsOfSTAmuons_seq + tpToStaSeedAssociation + staSeedTrackVMuonAssoc
407 # +tpToStaMuonAssociation + staMuonTrackVMuonAssoc
408  +tpToStaUpdMuonAssociation + staUpdMuonTrackVMuonAssoc
409  +extractedMuonTracks_seq + tpToGlbMuonAssociation + glbMuonTrackVMuonAssoc
410 # +muonAssociatorByHitsNoSimHitsHelperTrk +recoMuonVMuAssoc_trk
411 # +muonAssociatorByHitsNoSimHitsHelperStandalone +recoMuonVMuAssoc_sta
412 # +muonAssociatorByHitsNoSimHitsHelperGlobal +recoMuonVMuAssoc_glb
413 # +muonAssociatorByHitsNoSimHitsHelperTight +recoMuonVMuAssoc_tgt
414 # +seedsOfDisplacedSTAmuons_seq + tpToDisplacedStaSeedAssociation + displacedStaSeedTrackVMuonAssoc
415  +tpToDisplacedStaMuonAssociation + displacedStaMuonTrackVMuonAssoc
416  +tpToDisplacedTrkMuonAssociation + displacedTrackVMuonAssoc
417  +tpToDisplacedGlbMuonAssociation + displacedGlbMuonTrackVMuonAssoc
418 )
419 
420 muonValidationTEV_seq = cms.Sequence(
421  tpToTevFirstMuonAssociation + tevMuonFirstTrackVMuonAssoc
422  +tpToTevPickyMuonAssociation + tevMuonPickyTrackVMuonAssoc
423  +tpToTevDytMuonAssociation + tevMuonDytTrackVMuonAssoc
424 )
425 
426 muonValidationRefit_seq = cms.Sequence(
427  tpToStaRefitMuonAssociation + staRefitMuonTrackVMuonAssoc
428  +tpToStaRefitUpdMuonAssociation + staRefitUpdMuonTrackVMuonAssoc
429 )
430 
431 muonValidationDisplaced_seq = cms.Sequence(
432  seedsOfDisplacedSTAmuons_seq + tpToDisplacedStaSeedAssociation + displacedStaSeedTrackVMuonAssoc
433  +tpToDisplacedStaMuonAssociation + displacedStaMuonTrackVMuonAssoc
434  +tpToDisplacedTrkMuonAssociation + displacedTrackVMuonAssoc
435  +tpToDisplacedGlbMuonAssociation + displacedGlbMuonTrackVMuonAssoc
436 )
437 
438 muonValidationCosmic_seq = cms.Sequence(
439  tpToTkCosmicSelMuonAssociation + trkCosmicMuonTrackVSelMuonAssoc
440  +tpToTkCosmic1LegSelMuonAssociation + trkCosmic1LegMuonTrackVSelMuonAssoc
441  +tpToStaCosmicSelMuonAssociation + staCosmicMuonTrackVSelMuonAssoc
442  +tpToStaCosmic1LegSelMuonAssociation + staCosmic1LegMuonTrackVSelMuonAssoc
443  +tpToGlbCosmicSelMuonAssociation + glbCosmicMuonTrackVSelMuonAssoc
444  +tpToGlbCosmic1LegSelMuonAssociation + glbCosmic1LegMuonTrackVSelMuonAssoc
445 )
446 
447 # The full offline muon validation sequence
448 recoMuonValidation = cms.Sequence(
449  muonValidation_seq + muonValidationTEV_seq + muonValidationRefit_seq + muonValidationDisplaced_seq
450 )
451 
452 # no displaces in fastsim
453 from Configuration.Eras.Modifier_fastSim_cff import fastSim
454 if fastSim.isChosen():
455  recoMuonValidation = cms.Sequence(muonValidation_seq + muonValidationTEV_seq + muonValidationRefit_seq)
456 
457 # sequence for cosmic muons
458 recoCosmicMuonValidation = cms.Sequence(
459  muonValidationCosmic_seq
460 )
461 
462 gemMuonValidation = cms.Sequence(extractGemMuonsTracks_seq + tpToGEMMuonMuonAssociation + gemMuonTrackVMuonAssoc)
463 me0MuonValidation = cms.Sequence(extractMe0MuonsTracks_seq + tpToME0MuonMuonAssociation + me0MuonTrackVMuonAssoc)
464 
465 _run3_muonValidation = muonValidation_seq.copy() #For full validation
466 #_run3_muonValidation = muonValidation_reduced_seq.copy()
467 _run3_muonValidation += gemMuonValidation
468 
469 #_phase2_muonValidation = _run3_muonValidation.copy()
470 _phase2_muonValidation = muonValidation_reduced_seq.copy()
471 _phase2_muonValidation += me0MuonValidation
472 
473 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
474 run3_GEM.toReplaceWith( muonValidation_seq, _run3_muonValidation ) #For full validation
475 #run3_GEM.toReplaceWith( recoMuonValidation, _run3_muonValidation )
476 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
477 #phase2_muon.toReplaceWith( muonValidation_seq, _phase2_muonValidation ) #For full validation
478 phase2_muon.toReplaceWith( recoMuonValidation, _phase2_muonValidation )