CMS 3D CMS Logo

RecoTrackerTopBottom_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
10 from RecoTracker.SpecialSeedGenerators.CombinatorialSeedGeneratorForCosmicsP5_cff import combinatorialcosmicseedfinderP5, combinatorialcosmicseedingtripletsP5, combinatorialcosmicseedingpairsTOBP5, combinatorialcosmicseedingpairsTECposP5, combinatorialcosmicseedingpairsTECnegP5
11 from RecoTracker.SpecialSeedGenerators.SimpleCosmicBONSeeder_cff import simpleCosmicBONSeeds, simpleCosmicBONSeedingLayers
12 from RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cff import globalCombinedSeeds
14 from RecoTracker.CkfPattern.CkfTrackCandidatesP5_cff import GroupedCkfTrajectoryBuilderP5
15 from RecoTracker.CkfPattern.CkfTrackCandidatesP5_cff import ckfTrackCandidatesP5
16 from RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff import ctfWithMaterialTracksCosmics
18 from RecoTracker.SingleTrackPattern.CosmicTrackFinderP5_cff import cosmicCandidateFinderP5
19 from RecoTracker.SingleTrackPattern.CosmicTrackFinderP5_cff import cosmictrackfinderCosmics
20 
21 
22 siPixelRecHitsTop = siPixelRecHits.clone(src = 'siPixelClustersTop')
23 siPixelRecHitsBottom = siPixelRecHits.clone(src = 'siPixelClustersBottom')
24 siStripMatchedRecHitsTop = siStripMatchedRecHits.clone(ClusterProducer = 'siStripClustersTop')
25 siStripMatchedRecHitsBottom = siStripMatchedRecHits.clone(ClusterProducer = 'siStripClustersBottom')
26 
27 from RecoLocalTracker.SubCollectionProducers.TopBottomClusterInfoProducer_cfi import topBottomClusterInfoProducer
28 topBottomClusterInfoProducerTop = topBottomClusterInfoProducer.clone()
29 topBottomClusterInfoProducerBottom = topBottomClusterInfoProducer.clone(
30  stripClustersNew = 'siStripClustersBottom',
31  pixelClustersNew = 'siPixelClustersBottom',
32  stripMonoHitsNew = 'siStripMatchedRecHitsBottom:rphiRecHit',
33  stripStereoHitsNew = 'siStripMatchedRecHitsBottom:stereoRecHit',
34  pixelHitsNew = 'siPixelRecHitsBottom'
35 )
36 
37 trackerlocalrecoTopTask = cms.Task(siPixelClustersTop,
38  siPixelRecHitsTop,
39  siStripClustersTop,
40  siStripMatchedRecHitsTop,
41  topBottomClusterInfoProducerTop)
42 trackerlocalrecoTop = cms.Sequence(trackerlocalrecoTopTask)
43 trackerlocalrecoBottomTask = cms.Task(siPixelClustersBottom,
44  siPixelRecHitsBottom,
45  siStripClustersBottom,
46  siStripMatchedRecHitsBottom,
47  topBottomClusterInfoProducerBottom)
48 trackerlocalrecoBottom = cms.Sequence(trackerlocalrecoBottomTask)
49 
50 
51 combinatorialcosmicseedingtripletsP5Top = combinatorialcosmicseedingtripletsP5.clone(
52  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
53  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
54  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
55  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
56  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
57  rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit')
58 )
59 
60 combinatorialcosmicseedingpairsTOBP5Top = combinatorialcosmicseedingpairsTOBP5.clone(
61  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
62  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
63  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
64  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
65  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
66  rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit')
67 )
68 
69 combinatorialcosmicseedingpairsTECposP5Top = combinatorialcosmicseedingpairsTECposP5.clone(
70  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
71  rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit')
72 )
73 
74 combinatorialcosmicseedingpairsTECnegP5Top = combinatorialcosmicseedingpairsTECnegP5.clone(
75  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
76  rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit')
77 )
78 
79 combinatorialcosmicseedfinderP5Top = combinatorialcosmicseedfinderP5.clone(
80  SeedsFromPositiveY = True,
81  SeedsFromNegativeY = False,
82  ClusterCollectionLabel = 'siStripClustersTop',
83  MaxNumberOfCosmicClusters = 150,
84 )
85 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[0].LayerSrc = "combinatorialcosmicseedingtripletsP5Top"
86 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[1].LayerSrc = "combinatorialcosmicseedingpairsTOBP5Top"
87 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[2].LayerSrc = "combinatorialcosmicseedingpairsTECposP5Top"
88 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[3].LayerSrc = "combinatorialcosmicseedingpairsTECposP5Top"
89 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[4].LayerSrc = "combinatorialcosmicseedingpairsTECnegP5Top"
90 combinatorialcosmicseedfinderP5Top.OrderedHitsFactoryPSets[5].LayerSrc = "combinatorialcosmicseedingpairsTECnegP5Top"
91 
92 simpleCosmicBONSeedingLayersTop = simpleCosmicBONSeedingLayers.clone(
93  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
94  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
95  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit'),
96  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit'),
97  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
98  rphiRecHits = 'siStripMatchedRecHitsTop:rphiRecHit')
99 )
100 
101 simpleCosmicBONSeedsTop = simpleCosmicBONSeeds.clone(
102  PositiveYOnly = True,
103  NegativeYOnly = False,
104  ClusterCheckPSet = dict(
105  ClusterCollectionLabel = 'siStripClustersTop',
106  MaxNumberOfCosmicClusters = 150,
107  ),
108  TripletsSrc = 'simpleCosmicBONSeedingLayersTop',
109 )
110 
111 combinedP5SeedsForCTFTop = globalCombinedSeeds.clone(
112  seedCollections = ['combinatorialcosmicseedfinderP5Top',
113  'simpleCosmicBONSeedsTop']
114 )
115 
116 MeasurementTrackerTop = MeasurementTracker.clone(
117  ComponentName = 'MeasurementTrackerTop'
118 )
119 
120 GroupedCkfTrajectoryBuilderP5Top = GroupedCkfTrajectoryBuilderP5.clone(
121  MeasurementTrackerName = 'MeasurementTrackerTop'
122 )
123 
124 ckfTrackCandidatesP5Top = ckfTrackCandidatesP5.clone(
125  TrajectoryBuilderPSet = dict(refToPSet_ = 'GroupedCkfTrajectoryBuilderP5Top'),
126  NavigationSchool = 'CosmicNavigationSchool',
127  src = 'combinedP5SeedsForCTFTop', #ok for 32X
128  useHitsSplitting = True
129 )
130 
131 ctfWithMaterialTracksP5Top = ctfWithMaterialTracksCosmics.clone(
132  src = 'ckfTrackCandidatesP5Top',
133  Fitter = 'FittingSmootherRKP5',
134  clusterRemovalInfo = 'topBottomClusterInfoProducerTop'
135 )
136 
137 ctftracksP5TopTask = cms.Task(combinatorialcosmicseedingtripletsP5Top,
138  combinatorialcosmicseedingpairsTOBP5Top,
139  combinatorialcosmicseedingpairsTECposP5Top,
140  combinatorialcosmicseedingpairsTECnegP5Top,
141  combinatorialcosmicseedfinderP5Top,
142  simpleCosmicBONSeedingLayersTop,
143  simpleCosmicBONSeedsTop,
144  combinedP5SeedsForCTFTop,
145  ckfTrackCandidatesP5Top,
146  ctfWithMaterialTracksP5Top)
147 ctftracksP5Top = cms.Sequence(ctftracksP5TopTask)
148 
149 
150 combinatorialcosmicseedingtripletsP5Bottom = combinatorialcosmicseedingtripletsP5.clone(
151  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
152  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
153  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
154  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
155  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
156  rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit')
157 )
158 
159 combinatorialcosmicseedingpairsTOBP5Bottom = combinatorialcosmicseedingpairsTOBP5.clone(
160  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
161  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
162  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
163  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
164  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
165  rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit')
166 )
167 
168 combinatorialcosmicseedingpairsTECposP5Bottom = combinatorialcosmicseedingpairsTECposP5.clone(
169  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
170  rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit')
171 )
172 
173 combinatorialcosmicseedingpairsTECnegP5Bottom = combinatorialcosmicseedingpairsTECnegP5.clone(
174  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
175  rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit')
176 )
177 
178 combinatorialcosmicseedfinderP5Bottom = combinatorialcosmicseedfinderP5.clone(
179  SeedsFromPositiveY = False,
180  SeedsFromNegativeY = True,
181  ClusterCollectionLabel = 'siStripClustersBottom',
182  MaxNumberOfCosmicClusters = 150
183 )
184 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[0].PropagationDirection = 'oppositeToMomentum'
185 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[1].PropagationDirection = 'oppositeToMomentum'
186 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[2].PropagationDirection = 'oppositeToMomentum'
187 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[3].PropagationDirection = 'oppositeToMomentum'
188 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[4].PropagationDirection = 'oppositeToMomentum'
189 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[5].PropagationDirection = 'oppositeToMomentum'
190 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[0].LayerSrc = "combinatorialcosmicseedingtripletsP5Bottom"
191 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[1].LayerSrc = "combinatorialcosmicseedingpairsTOBP5Bottom"
192 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[2].LayerSrc = "combinatorialcosmicseedingpairsTECposP5Bottom"
193 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[3].LayerSrc = "combinatorialcosmicseedingpairsTECposP5Bottom"
194 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[4].LayerSrc = "combinatorialcosmicseedingpairsTECnegP5Bottom"
195 combinatorialcosmicseedfinderP5Bottom.OrderedHitsFactoryPSets[5].LayerSrc = "combinatorialcosmicseedingpairsTECnegP5Bottom"
196 
197 simpleCosmicBONSeedingLayersBottom = simpleCosmicBONSeedingLayers.clone(
198  TIB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
199  MTIB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
200  TOB = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit'),
201  MTOB = dict(rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'),
202  TEC = dict(matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
203  rphiRecHits = 'siStripMatchedRecHitsBottom:rphiRecHit')
204 )
205 
206 simpleCosmicBONSeedsBottom = simpleCosmicBONSeeds.clone(
207  PositiveYOnly = False,
208  NegativeYOnly = True,
209  ClusterCheckPSet = dict(
210  ClusterCollectionLabel = 'siStripClustersBottom',
211  MaxNumberOfCosmicClusters = 150
212  ),
213  TripletsSrc = 'simpleCosmicBONSeedingLayersBottom'
214 )
215 
216 combinedP5SeedsForCTFBottom = globalCombinedSeeds.clone(
217  seedCollections = ['combinatorialcosmicseedfinderP5Bottom',
218  'simpleCosmicBONSeedsBottom']
219 )
220 
221 MeasurementTrackerBottom = MeasurementTracker.clone(
222  ComponentName = 'MeasurementTrackerBottom'
223 )
224 
225 GroupedCkfTrajectoryBuilderP5Bottom = GroupedCkfTrajectoryBuilderP5.clone(
226  MeasurementTrackerName = 'MeasurementTrackerBottom'
227 )
228 
229 ckfTrackCandidatesP5Bottom = ckfTrackCandidatesP5.clone(
230  TrajectoryBuilderPSet = dict(refToPSet_ = 'GroupedCkfTrajectoryBuilderP5Bottom'),
231  NavigationSchool = 'CosmicNavigationSchool',
232  src = 'combinedP5SeedsForCTFBottom', #ok for 32X
233  useHitsSplitting = True
234 )
235 
236 ctfWithMaterialTracksP5Bottom = ctfWithMaterialTracksCosmics.clone(
237  src = 'ckfTrackCandidatesP5Bottom',
238  Fitter = 'FittingSmootherRKP5',
239  clusterRemovalInfo = 'topBottomClusterInfoProducerBottom'
240 )
241 
242 ctftracksP5BottomTask = cms.Task(combinatorialcosmicseedingtripletsP5Bottom,
243  combinatorialcosmicseedingpairsTOBP5Bottom,
244  combinatorialcosmicseedingpairsTECposP5Bottom,
245  combinatorialcosmicseedingpairsTECnegP5Bottom,
246  combinatorialcosmicseedfinderP5Bottom,
247  simpleCosmicBONSeedingLayersBottom,
248  simpleCosmicBONSeedsBottom,
249  combinedP5SeedsForCTFBottom,
250  ckfTrackCandidatesP5Bottom,
251  ctfWithMaterialTracksP5Bottom)
252 ctftracksP5Bottom = cms.Sequence(ctftracksP5BottomTask)
253 
254 #COSMIC TOP
255 cosmicseedfinderP5Top = cosmicseedfinderP5.clone(
256  stereorecHits = 'siStripMatchedRecHitsTop:stereoRecHit',
257  matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
258  rphirecHits = 'siStripMatchedRecHitsTop:rphiRecHit',
259  ClusterCollectionLabel = 'siStripClustersTop',
260  PositiveYOnly = True,
261  NegativeYOnly = False,
262  MaxNumberOfCosmicClusters = 150
263 )
264 
265 cosmicCandidateFinderP5Top = cosmicCandidateFinderP5.clone(
266  cosmicSeeds = 'cosmicseedfinderP5Top',
267  stereorecHits = 'siStripMatchedRecHitsTop:stereoRecHit',
268  HitProducer = 'siStripRecHitsTop',
269  pixelRecHits = 'siPixelRecHitsTop',
270  matchedRecHits = 'siStripMatchedRecHitsTop:matchedRecHit',
271  rphirecHits = 'siStripMatchedRecHitsTop:rphiRecHit'
272 )
273 
274 cosmictrackfinderP5Top = cosmictrackfinderCosmics.clone(
275  src = 'cosmicCandidateFinderP5Top',
276  clusterRemovalInfo = 'topBottomClusterInfoProducerTop'
277 )
278 
279 cosmictracksP5TopTask = cms.Task(cosmicseedfinderP5Top,
280  cosmicCandidateFinderP5Top,
281  cosmictrackfinderP5Top)
282 cosmictracksP5Top = cms.Sequence(cosmictracksP5TopTask)
283 
284 #COSMIC BOTTOM
285 cosmicseedfinderP5Bottom = cosmicseedfinderP5.clone(
286  stereorecHits = 'siStripMatchedRecHitsBottom:stereoRecHit',
287  matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
288  rphirecHits = 'siStripMatchedRecHitsBottom:rphiRecHit',
289  ClusterCollectionLabel = 'siStripClustersBottom',
290  PositiveYOnly = False,
291  NegativeYOnly = True,
292  MaxNumberOfCosmicClusters = 150
293 )
294 
295 cosmicCandidateFinderP5Bottom = cosmicCandidateFinderP5.clone(
296  cosmicSeeds = 'cosmicseedfinderP5Bottom',
297  stereorecHits = 'siStripMatchedRecHitsBottom:stereoRecHit',
298  HitProducer = 'siStripRecHitsBottom',
299  pixelRecHits = 'siPixelRecHitsBottom',
300  matchedRecHits = 'siStripMatchedRecHitsBottom:matchedRecHit',
301  rphirecHits = 'siStripMatchedRecHitsBottom:rphiRecHit'
302 )
303 
304 cosmictrackfinderP5Bottom = cosmictrackfinderCosmics.clone(
305  src = 'cosmicCandidateFinderP5Bottom',
306  clusterRemovalInfo = 'topBottomClusterInfoProducerBottom'
307 )
308 
309 cosmictracksP5BottomTask = cms.Task(cosmicseedfinderP5Bottom,
310  cosmicCandidateFinderP5Bottom,
311  cosmictrackfinderP5Bottom)
312 cosmictracksP5Bottom = cms.Sequence(cosmictracksP5BottomTask)
313 
314 #TOP SEQUENCE
315 # (SK) keep rstracks commented out in case of resurrection
316 tracksP5TopTask = cms.Task(ctftracksP5TopTask, cosmictracksP5TopTask)
317 tracksP5Top = cms.Sequence(tracksP5TopTask)
318 #BOTTOM SEQUENCE
319 # (SK) keep rstracks commented out in case of resurrection
320 tracksP5BottomTask = cms.Task(ctftracksP5BottomTask, cosmictracksP5BottomTask)
321 tracksP5Bottom = cms.Sequence(tracksP5BottomTask)
SiStripRecHitMatcher_cfi
SiStripClusterizer_cfi
GlobalCombinedSeeds_cff
SiStripZeroSuppression_cfi
SiPixelRecHits_cfi
SimpleCosmicBONSeeder_cff
ClusterSelectorTopBottom_cfi
CombinatorialSeedGeneratorForCosmicsP5_cff
MeasurementTrackerESProducer_cff
CkfTrackCandidatesP5_cff
SiStripRecHitConverter_cfi
CTFFinalFitWithMaterialP5_cff
CosmicTrackFinderP5_cff
CosmicSeedP5Pairs_cff
StripCPEfromTrackAngle_cfi