CMS 3D CMS Logo

TobTecStep_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 import RecoTracker.IterativeTracking.iterativeTkConfig as _cfg
3 from Configuration.Eras.Modifier_fastSim_cff import fastSim
4 
5 #for dnn classifier
6 from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
7 from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary
8 
9 
12 
13 tobTecStepClusters = _cfg.clusterRemoverForIter('TobTecStep')
14 for _eraName, _postfix, _era in _cfg.nonDefaultEras():
15  _era.toReplaceWith(tobTecStepClusters, _cfg.clusterRemoverForIter('TobTecStep', _eraName, _postfix))
16 
17 # TRIPLET SEEDING LAYERS
19 tobTecStepSeedLayersTripl = cms.EDProducer('SeedingLayersEDProducer',
20  layerList = cms.vstring(
21  #TOB
22  'TOB1+TOB2+MTOB3','TOB1+TOB2+MTOB4',
23  #TOB+MTEC
24  'TOB1+TOB2+MTEC1_pos','TOB1+TOB2+MTEC1_neg',
25  ),
26  TOB = cms.PSet(
27  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')),
28  matchedRecHits = cms.InputTag('siStripMatchedRecHits','matchedRecHit'),
29  skipClusters = cms.InputTag('tobTecStepClusters')
30  ),
31  MTOB = cms.PSet(
32  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')),
33  skipClusters = cms.InputTag('tobTecStepClusters'),
34  rphiRecHits = cms.InputTag('siStripMatchedRecHits','rphiRecHit')
35  ),
36  MTEC = cms.PSet(
37  rphiRecHits = cms.InputTag('siStripMatchedRecHits','rphiRecHit'),
38  skipClusters = cms.InputTag('tobTecStepClusters'),
39  useRingSlector = cms.bool(True),
40  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')),
41  minRing = cms.int32(6),
42  maxRing = cms.int32(7)
43  )
44 )
45 
46 # Triplet TrackingRegion
47 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi import globalTrackingRegionFromBeamSpotFixedZ as _globalTrackingRegionFromBeamSpotFixedZ
48 tobTecStepTrackingRegionsTripl = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict(
49  ptMin = 0.55,
50  originHalfLength = 20.0,
51  originRadius = 3.5
52 ))
53 
54 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
55 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
56 from RecoTracker.IterativeTracking.MixedTripletStep_cff import _mixedTripletStepTrackingRegionsCommon_pp_on_HI
57 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(tobTecStepTrackingRegionsTripl,
58  _mixedTripletStepTrackingRegionsCommon_pp_on_HI.clone(RegionPSet=dict(
59  ptMinScaling4BigEvts = False,
60  fixedError = 5.0,
61  ptMin = 2.0,
62  originRadius = 3.5
63  ) )
64 )
65 
66 # Triplet seeding
67 from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import ClusterShapeHitFilterESProducer as _ClusterShapeHitFilterESProducer
68 tobTecStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
69  ComponentName = 'tobTecStepClusterShapeHitFilter',
70  doStripShapeCut = cms.bool(False),
71  clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight')
72 )
73 
74 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
75 tobTecStepHitDoubletsTripl = _hitPairEDProducer.clone(
76  seedingLayers = 'tobTecStepSeedLayersTripl',
77  trackingRegions = 'tobTecStepTrackingRegionsTripl',
78  maxElement = 50000000,
79  produceIntermediateHitDoublets = True,
80 )
81 from RecoTracker.TkSeedGenerator.multiHitFromChi2EDProducer_cfi import multiHitFromChi2EDProducer as _multiHitFromChi2EDProducer
82 tobTecStepHitTripletsTripl = _multiHitFromChi2EDProducer.clone(
83  doublets = 'tobTecStepHitDoubletsTripl',
84  extraPhiKDBox = 0.01,
85 )
86 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
87 from RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeSeedFilter_cfi import StripSubClusterShapeSeedFilter as _StripSubClusterShapeSeedFilter
88 _tobTecStepSeedComparitorPSet = dict(
89  ComponentName = 'CombinedSeedComparitor',
90  mode = cms.string('and'),
91  comparitors = cms.VPSet(
92  cms.PSet(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
93  ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
94  FilterAtHelixStage = cms.bool(True),
95  FilterPixelHits = cms.bool(False),
96  FilterStripHits = cms.bool(True),
97  ClusterShapeHitFilterName = cms.string('tobTecStepClusterShapeHitFilter'),
98  ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache') # not really needed here since FilterPixelHits=False
99  ),
100  _StripSubClusterShapeSeedFilter.clone()
101  )
102 )
103 tobTecStepSeedsTripl = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(#empirically better than 'SeedFromConsecutiveHitsTripletOnlyCreator'
104  seedingHitSets = 'tobTecStepHitTripletsTripl',
105  SeedComparitorPSet = _tobTecStepSeedComparitorPSet,
106 )
107 #fastsim
108 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
109 from FastSimulation.Tracking.SeedingMigration import _hitSetProducerToFactoryPSet
110 _fastSim_tobTecStepSeedsTripl = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
111  trackingRegions = 'tobTecStepTrackingRegionsTripl',
112  hitMasks = cms.InputTag('tobTecStepMasks'),
113  seedFinderSelector = dict(MultiHitGeneratorFactory = _hitSetProducerToFactoryPSet(tobTecStepHitTripletsTripl).clone(
114  SeedComparitorPSet = cms.PSet(ComponentName = cms.string('none')),
115  refitHits = False),
116  layerList = tobTecStepSeedLayersTripl.layerList.value()
117  )
118 )
119 fastSim.toReplaceWith(tobTecStepSeedsTripl,_fastSim_tobTecStepSeedsTripl)
120 
121 # PAIR SEEDING LAYERS
122 tobTecStepSeedLayersPair = cms.EDProducer('SeedingLayersEDProducer',
123  layerList = cms.vstring('TOB1+TEC1_pos','TOB1+TEC1_neg',
124  'TEC1_pos+TEC2_pos','TEC1_neg+TEC2_neg',
125  'TEC2_pos+TEC3_pos','TEC2_neg+TEC3_neg',
126  'TEC3_pos+TEC4_pos','TEC3_neg+TEC4_neg',
127  'TEC4_pos+TEC5_pos','TEC4_neg+TEC5_neg',
128  'TEC5_pos+TEC6_pos','TEC5_neg+TEC6_neg',
129  'TEC6_pos+TEC7_pos','TEC6_neg+TEC7_neg'),
130  TOB = cms.PSet(
131  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')),
132  matchedRecHits = cms.InputTag('siStripMatchedRecHits','matchedRecHit'),
133  skipClusters = cms.InputTag('tobTecStepClusters')
134  ),
135  TEC = cms.PSet(
136  matchedRecHits = cms.InputTag('siStripMatchedRecHits','matchedRecHit'),
137  skipClusters = cms.InputTag('tobTecStepClusters'),
138  useRingSlector = cms.bool(True),
139  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')),
140  minRing = cms.int32(5),
141  maxRing = cms.int32(5)
142  )
143 )
144 # Pair TrackingRegion
145 tobTecStepTrackingRegionsPair = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict(
146  ptMin = 0.6,
147  originHalfLength = 30.0,
148  originRadius = 6.0,
149 ))
150 
151 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(tobTecStepTrackingRegionsPair,
152  _mixedTripletStepTrackingRegionsCommon_pp_on_HI.clone(RegionPSet = dict(
153  ptMinScaling4BigEvts = False,
154  fixedError = 7.5,
155  ptMin = 2.0,
156  originRadius = 6.0
157  ) )
158 )
159 
160 
161 # Pair seeds
162 tobTecStepHitDoubletsPair = _hitPairEDProducer.clone(
163  seedingLayers = 'tobTecStepSeedLayersPair',
164  trackingRegions = 'tobTecStepTrackingRegionsPair',
165  produceSeedingHitSets = True,
166  maxElementTotal = 12000000,
167 )
168 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsEDProducer
169 tobTecStepSeedsPair = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
170  seedingHitSets = 'tobTecStepHitDoubletsPair',
171  SeedComparitorPSet = _tobTecStepSeedComparitorPSet,
172 )
173 #fastsim
174 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
175 fastSim.toReplaceWith(tobTecStepSeedsPair,
176  FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
177  trackingRegions = 'tobTecStepTrackingRegionsPair',
178  hitMasks = cms.InputTag('tobTecStepMasks'),
179  seedFinderSelector = dict(layerList = tobTecStepSeedLayersPair.layerList.value())
180  )
181 )
182 
183 
184 # Combined seeds
186 tobTecStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone(
187  seedCollections = ['tobTecStepSeedsTripl', 'tobTecStepSeedsPair']
188 )
189 # LowPU
190 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
191 trackingLowPU.toModify(tobTecStepHitDoubletsPair, seedingLayers = 'tobTecStepSeedLayers')
192 trackingLowPU.toReplaceWith(tobTecStepSeeds, _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
193  seedingHitSets = 'tobTecStepHitDoubletsPair',
194 ))
195 
196 
197 # QUALITY CUTS DURING TRACK BUILDING (for inwardss and outwards track building steps)
199 _tobTecStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
200  maxLostHits = 0,
201  minimumNumberOfHits = 5,
202  minPt = 0.1,
203  minHitsMinPt = 3
204 )
205 tobTecStepTrajectoryFilter = _tobTecStepTrajectoryFilterBase.clone(
206  seedPairPenalty = 1,
207 )
208 trackingLowPU.toReplaceWith(tobTecStepTrajectoryFilter, _tobTecStepTrajectoryFilterBase.clone(
209  minimumNumberOfHits = 6,
210 ))
211 
212 (pp_on_XeXe_2017 | pp_on_AA).toModify(tobTecStepTrajectoryFilter, minPt=2.0)
213 
214 tobTecStepInOutTrajectoryFilter = tobTecStepTrajectoryFilter.clone(
215  minimumNumberOfHits = 4,
216 )
217 
218 
219 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
220 tobTecStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
221  ComponentName = 'tobTecStepChi2Est',
222  nSigma = 3.0,
223  MaxChi2 = 16.0,
224  clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight'))
225 )
226 trackingLowPU.toModify(tobTecStepChi2Est,
227  clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')
228 )
229 
230 # TRACK BUILDING
232 tobTecStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
233  MeasurementTrackerName = '',
234  trajectoryFilter = cms.PSet(refToPSet_ = cms.string('tobTecStepTrajectoryFilter')),
235  inOutTrajectoryFilter = cms.PSet(refToPSet_ = cms.string('tobTecStepInOutTrajectoryFilter')),
236  useSameTrajFilter = False,
237  minNrOfHitsForRebuild = 4,
238  alwaysUseInvalidHits = False,
239  maxCand = 2,
240  estimator = 'tobTecStepChi2Est',
241  #startSeedHitsInRebuild = True
242  maxDPhiForLooperReconstruction = cms.double(2.0),
243  maxPtForLooperReconstruction = cms.double(0.7)
244 )
245 # Important note for LowPU: in RunI_TobTecStep the
246 # inOutTrajectoryFilter parameter is spelled as
247 # inOutTrajectoryFilterName, and I suspect it has no effect there. I
248 # chose to 'fix' the behaviour here, so the era is not fully
249 # equivalent to the customize. To restore the customize behaviour,
250 # uncomment the following lines
251 #trackingLowPU.toModify(tobTecStepTrajectoryBuilder,
252 # inOutTrajectoryFilter = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.inOutTrajectoryFilter.clone(),
253 # inOutTrajectoryFilterName = cms.PSet(refToPSet_ = cms.string('tobTecStepInOutTrajectoryFilter'))
254 #)
255 
256 # MAKING OF TRACK CANDIDATES
258 tobTecStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
259  src = 'tobTecStepSeeds',
260  clustersToSkip = cms.InputTag('tobTecStepClusters'),
261 
262  numHitsForSeedCleaner = cms.int32(50),
263  onlyPixelHitsForSeedCleaner = cms.bool(False),
264 
265  TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('tobTecStepTrajectoryBuilder')),
266  doSeedingRegionRebuilding = True,
267  useHitsSplitting = True,
268  cleanTrajectoryAfterInOut = True,
269  TrajectoryCleaner = 'tobTecStepTrajectoryCleanerBySharedHits'
270 )
271 import FastSimulation.Tracking.TrackCandidateProducer_cfi
272 fastSim.toReplaceWith(tobTecStepTrackCandidates,
273  FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
274  MinNumberOfCrossedLayers = 3,
275  src = 'tobTecStepSeeds',
276  hitMasks = cms.InputTag('tobTecStepMasks')
277  )
278 )
279 
280 
281 from TrackingTools.TrajectoryCleaning.TrajectoryCleanerBySharedHits_cfi import trajectoryCleanerBySharedHits
282 tobTecStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
283  ComponentName = 'tobTecStepTrajectoryCleanerBySharedHits',
284  fractionShared = 0.09,
285  allowSharedFirstHit = True
286 )
287 trackingLowPU.toModify(tobTecStepTrajectoryCleanerBySharedHits, fractionShared = 0.19)
288 
289 # TRACK FITTING AND SMOOTHING OPTIONS
291 tobTecStepFitterSmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.KFFittingSmootherWithOutliersRejectionAndRK.clone(
292  ComponentName = 'tobTecStepFitterSmoother',
293  EstimateCut = 30,
294  MinNumberOfHits = 7,
295  Fitter = 'tobTecStepRKFitter',
296  Smoother = 'tobTecStepRKSmoother'
297 )
298 trackingLowPU.toModify(tobTecStepFitterSmoother, MinNumberOfHits = 8)
299 
300 tobTecStepFitterSmootherForLoopers = tobTecStepFitterSmoother.clone(
301  ComponentName = 'tobTecStepFitterSmootherForLoopers',
302  Fitter = 'tobTecStepRKFitterForLoopers',
303  Smoother = 'tobTecStepRKSmootherForLoopers'
304 )
305 
306 # Also necessary to specify minimum number of hits after final track fit
307 tobTecStepRKTrajectoryFitter = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectoryFitter.clone(
308  ComponentName = 'tobTecStepRKFitter',
309  minHits = 7
310 )
311 trackingLowPU.toModify(tobTecStepRKTrajectoryFitter, minHits = 8)
312 
313 tobTecStepRKTrajectoryFitterForLoopers = tobTecStepRKTrajectoryFitter.clone(
314  ComponentName = 'tobTecStepRKFitterForLoopers',
315  Propagator = 'PropagatorWithMaterialForLoopers',
316 )
317 
318 tobTecStepRKTrajectorySmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectorySmoother.clone(
319  ComponentName = 'tobTecStepRKSmoother',
320  errorRescaling = 10.0,
321  minHits = 7
322 )
323 trackingLowPU.toModify(tobTecStepRKTrajectorySmoother, minHits = 8)
324 
325 tobTecStepRKTrajectorySmootherForLoopers = tobTecStepRKTrajectorySmoother.clone(
326  ComponentName = 'tobTecStepRKSmootherForLoopers',
327  Propagator = 'PropagatorWithMaterialForLoopers',
328 )
329 
331 tobTecFlexibleKFFittingSmoother = TrackingTools.TrackFitters.FlexibleKFFittingSmoother_cfi.FlexibleKFFittingSmoother.clone(
332  ComponentName = 'tobTecFlexibleKFFittingSmoother',
333  standardFitter = 'tobTecStepFitterSmoother',
334  looperFitter = 'tobTecStepFitterSmootherForLoopers',
335 )
336 
337 
338 # TRACK FITTING
340 tobTecStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
341  src = 'tobTecStepTrackCandidates',
342  AlgorithmName = 'tobTecStep',
343  #Fitter = 'tobTecStepFitterSmoother',
344  Fitter = 'tobTecFlexibleKFFittingSmoother',
345 )
346 fastSim.toModify(tobTecStepTracks, TTRHBuilder = 'WithoutRefit')
347 
348 
349 # TRACK SELECTION AND QUALITY FLAG SETTING.
352 tobTecStepClassifier1 = TrackMVAClassifierDetached.clone(
353  src = 'tobTecStepTracks',
354  mva = dict(GBRForestLabel = 'MVASelectorIter6_13TeV'),
355  qualityCuts = [-0.6,-0.45,-0.3]
356 )
357 fastSim.toModify(tobTecStepClassifier1, vertices = 'firstStepPrimaryVerticesBeforeMixing')
358 
359 tobTecStepClassifier2 = TrackMVAClassifierPrompt.clone(
360  src = 'tobTecStepTracks',
361  mva = dict(GBRForestLabel = 'MVASelectorIter0_13TeV'),
362  qualityCuts = [0.0,0.0,0.0]
363 )
364 fastSim.toModify(tobTecStepClassifier2,vertices = 'firstStepPrimaryVerticesBeforeMixing')
365 
367 tobTecStep = ClassifierMerger.clone(
368  inputClassifiers = ['tobTecStepClassifier1','tobTecStepClassifier2']
369 )
370 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
371 trackingPhase1.toReplaceWith(tobTecStep, tobTecStepClassifier1.clone(
372  mva = dict(GBRForestLabel = 'MVASelectorTobTecStep_Phase1'),
373  qualityCuts = [-0.6,-0.45,-0.3]
374 ))
375 
378 trackdnn.toReplaceWith(tobTecStep, TrackTfClassifier.clone(
379  src = 'tobTecStepTracks',
380  qualityCuts = qualityCutDictionary["TobTecStep"]
381 ))
382 (trackdnn & fastSim).toModify(tobTecStep,vertices = 'firstStepPrimaryVerticesBeforeMixing')
383 
384 pp_on_AA.toModify(tobTecStep, qualityCuts = [-0.6,-0.3,0.7])
385 
386 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
387 trackingLowPU.toReplaceWith(tobTecStep, RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
388  src = 'tobTecStepTracks',
389  useAnyMVA = cms.bool(False),
390  GBRForestLabel = cms.string('MVASelectorIter6'),
391  trackSelectors = [
392  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
393  name = 'tobTecStepLoose',
394  chi2n_par = 0.4,
395  res_par = ( 0.003, 0.001 ),
396  minNumberLayers = 5,
397  maxNumberLostLayers = 1,
398  minNumber3DLayers = 2,
399  d0_par1 = ( 2.0, 4.0 ),
400  dz_par1 = ( 1.8, 4.0 ),
401  d0_par2 = ( 2.0, 4.0 ),
402  dz_par2 = ( 1.8, 4.0 )
403  ),
404  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
405  name = 'tobTecStepTight',
406  preFilterName = 'tobTecStepLoose',
407  chi2n_par = 0.3,
408  res_par = ( 0.003, 0.001 ),
409  minNumberLayers = 5,
410  maxNumberLostLayers = 0,
411  minNumber3DLayers = 2,
412  d0_par1 = ( 1.5, 4.0 ),
413  dz_par1 = ( 1.4, 4.0 ),
414  d0_par2 = ( 1.5, 4.0 ),
415  dz_par2 = ( 1.4, 4.0 )
416  ),
417  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
418  name = 'QualityMasks',
419  preFilterName = 'tobTecStepTight',
420  chi2n_par = 0.2,
421  res_par = ( 0.003, 0.001 ),
422  minNumberLayers = 5,
423  maxNumberLostLayers = 0,
424  minNumber3DLayers = 2,
425  d0_par1 = ( 1.4, 4.0 ),
426  dz_par1 = ( 1.3, 4.0 ),
427  d0_par2 = ( 1.4, 4.0 ),
428  dz_par2 = ( 1.3, 4.0 )
429  ),
430  ] #end of vpset
431 )) #end of clone
432 
433 
434 
435 TobTecStepTask = cms.Task(tobTecStepClusters,
436  tobTecStepSeedLayersTripl,
437  tobTecStepTrackingRegionsTripl,
438  tobTecStepHitDoubletsTripl,
439  tobTecStepHitTripletsTripl,
440  tobTecStepSeedsTripl,
441  tobTecStepSeedLayersPair,
442  tobTecStepTrackingRegionsPair,
443  tobTecStepHitDoubletsPair,
444  tobTecStepSeedsPair,
445  tobTecStepSeeds,
446  tobTecStepTrackCandidates,
447  tobTecStepTracks,
448  tobTecStepClassifier1,tobTecStepClassifier2,
449  tobTecStep)
450 TobTecStep = cms.Sequence(TobTecStepTask)
451 
452 
453 
456 tobTecStepSeedLayers = cms.EDProducer('SeedingLayersEDProducer',
457  layerList = cms.vstring('TOB1+TOB2',
458  'TOB1+TEC1_pos', 'TOB1+TEC1_neg',
459  'TEC1_pos+TEC2_pos', 'TEC2_pos+TEC3_pos',
460  'TEC3_pos+TEC4_pos', 'TEC4_pos+TEC5_pos',
461  'TEC5_pos+TEC6_pos', 'TEC6_pos+TEC7_pos',
462  'TEC1_neg+TEC2_neg', 'TEC2_neg+TEC3_neg',
463  'TEC3_neg+TEC4_neg', 'TEC4_neg+TEC5_neg',
464  'TEC5_neg+TEC6_neg', 'TEC6_neg+TEC7_neg'),
465  TOB = cms.PSet(
466  matchedRecHits = cms.InputTag('siStripMatchedRecHits','matchedRecHit'),
467  skipClusters = cms.InputTag('tobTecStepClusters'),
468  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTiny'))
469  ),
470  TEC = cms.PSet(
471  matchedRecHits = cms.InputTag('siStripMatchedRecHits','matchedRecHit'),
472  skipClusters = cms.InputTag('tobTecStepClusters'),
473  # untracked bool useSimpleRphiHitsCleaner = false
474  useRingSlector = cms.bool(True),
475  TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTiny')),
476  minRing = cms.int32(5),
477  maxRing = cms.int32(5)
478  )
479 )
480 
481 trackingLowPU.toReplaceWith(TobTecStepTask,
482  cms.Task(
483  tobTecStepClusters,
484  tobTecStepSeedLayers,
485  tobTecStepTrackingRegionsPair,
486  tobTecStepHitDoubletsPair,
487  tobTecStepSeeds,
488  tobTecStepTrackCandidates,
489  tobTecStepTracks,
490  tobTecStep
491  )
492 )
493 
494 #fastsim
495 import FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi
496 tobTecStepMasks = FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi.maskProducerFromClusterRemover(tobTecStepClusters)
497 fastSim.toReplaceWith(TobTecStepTask,
498  cms.Task(tobTecStepMasks
499  ,tobTecStepTrackingRegionsTripl
500  ,tobTecStepSeedsTripl
501  ,tobTecStepTrackingRegionsPair
502  ,tobTecStepSeedsPair
503  ,tobTecStepSeeds
504  ,tobTecStepTrackCandidates
505  ,tobTecStepTracks
506  ,tobTecStepClassifier1,tobTecStepClassifier2
507  ,tobTecStep
508  )
509 )
TrajectoryFilter_cff
GroupedCkfTrajectoryBuilder_cfi
FlexibleKFFittingSmoother_cfi
MixedTripletStep_cff
ClusterShapeHitFilterESProducer_cfi
SeedingMigration._hitSetProducerToFactoryPSet
def _hitSetProducerToFactoryPSet(producer)
Definition: SeedingMigration.py:10
GlobalCombinedSeeds_cfi
SiStripClusterChargeCut_cfi
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
TrackMVAClassifierDetached_cfi
ClassifierMerger_cfi
TrackTfClassifier_cfi
TrackProducer_cfi
TrackMVAClassifierPrompt_cfi
RungeKuttaFitters_cff
TrajectoryCleanerBySharedHits_cfi
CkfTrackCandidates_cfi
trackSelectionTf_cfi