1 import FWCore.ParameterSet.Config
as cms
2 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff
import tracker_apv_vfp30_2016
as _tracker_apv_vfp30_2016
3 import RecoTracker.IterativeTracking.iterativeTkConfig
as _cfg
4 from Configuration.Eras.Modifier_fastSim_cff
import fastSim
7 from Configuration.ProcessModifiers.trackdnn_cff
import trackdnn
8 from RecoTracker.IterativeTracking.dnnQualityCuts
import qualityCutDictionary
11 from Configuration.ProcessModifiers.trackingNoLoopers_cff
import trackingNoLoopers
14 pixelPairStepClusters = _cfg.clusterRemoverForIter(
'PixelPairStep')
15 for _eraName, _postfix, _era
in _cfg.nonDefaultEras():
16 _era.toReplaceWith(pixelPairStepClusters, _cfg.clusterRemoverForIter(
'PixelPairStep', _eraName, _postfix))
21 pixelPairStepSeedLayers = _mod.seedingLayersEDProducer.clone(
22 layerList = [
'BPix1+BPix2',
'BPix1+BPix3',
'BPix2+BPix3',
23 'BPix1+FPix1_pos',
'BPix1+FPix1_neg',
24 'BPix2+FPix1_pos',
'BPix2+FPix1_neg',
25 'FPix1_pos+FPix2_pos',
'FPix1_neg+FPix2_neg'],
27 TTRHBuilder = cms.string(
'WithTrackAngle'),
28 HitProducer = cms.string(
'siPixelRecHits'),
29 skipClusters = cms.InputTag(
'pixelPairStepClusters')
32 TTRHBuilder = cms.string(
'WithTrackAngle'),
33 HitProducer = cms.string(
'siPixelRecHits'),
34 skipClusters = cms.InputTag(
'pixelPairStepClusters')
39 _layerListForPhase1 = [
40 'BPix1+BPix2',
'BPix1+BPix3',
'BPix2+BPix3',
41 'BPix1+FPix1_pos',
'BPix1+FPix1_neg',
42 'BPix2+FPix1_pos',
'BPix2+FPix1_neg',
44 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
45 trackingPhase1.toModify(pixelPairStepSeedLayers, layerList = _layerListForPhase1)
49 _layerListForPhase2 = [
50 'BPix1+BPix2',
'BPix1+BPix3',
'BPix2+BPix3',
51 'BPix1+FPix1_pos',
'BPix1+FPix1_neg',
52 'BPix2+FPix1_pos',
'BPix2+FPix1_neg'
55 from Configuration.Eras.Modifier_trackingPhase2PU140_cff
import trackingPhase2PU140
56 trackingPhase2PU140.toModify(pixelPairStepSeedLayers,
57 layerList = _layerListForPhase2,
59 useErrorsFromParam = cms.bool(
True),
60 hitErrorRPhi = cms.double(0.0016),
61 hitErrorRZ = cms.double(0.0035),
62 TTRHBuilder =
'TTRHBuilderWithoutAngle4PixelPairs',
65 useErrorsFromParam = cms.bool(
True),
66 hitErrorRPhi = cms.double(0.0030),
67 hitErrorRZ = cms.double(0.0020),
68 TTRHBuilder =
'TTRHBuilderWithoutAngle4PixelPairs',
74 pixelPairStepTrackingRegions = _globalTrackingRegionWithVertices.clone(
79 useMultipleScattering =
True)
81 from Configuration.Eras.Modifier_trackingLowPU_cff
import trackingLowPU
82 trackingLowPU.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(useMultipleScattering=
False))
83 _region_Phase1 = dict(
84 useMultipleScattering =
False,
87 trackingPhase1.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1)
88 trackingPhase2PU140.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1)
89 from Configuration.Eras.Modifier_highBetaStar_2018_cff
import highBetaStar_2018
90 highBetaStar_2018.toModify(pixelPairStepTrackingRegions,RegionPSet = dict(
95 fastSim.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(VertexCollection =
'firstStepPrimaryVerticesBeforeMixing'))
98 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
99 pixelPairStepHitDoublets = _hitPairEDProducer.clone(
100 seedingLayers =
'pixelPairStepSeedLayers',
101 trackingRegions =
'pixelPairStepTrackingRegions',
102 produceSeedingHitSets =
True,
103 maxElementTotal = 12000000,
105 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff
import seedCreatorFromRegionConsecutiveHitsEDProducer
as _seedCreatorFromRegionConsecutiveHitsEDProducer
106 pixelPairStepSeeds = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
107 seedingHitSets =
'pixelPairStepHitDoublets',
108 SeedComparitorPSet = dict(
109 ComponentName =
'PixelClusterShapeSeedComparitor',
110 FilterAtHelixStage = cms.bool(
True),
111 FilterPixelHits = cms.bool(
True),
112 FilterStripHits = cms.bool(
False),
113 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter'),
114 ClusterShapeCacheSrc = cms.InputTag(
'siPixelClusterShapeCache'),
119 pixelPairStepSeedsA = pixelPairStepSeeds.clone()
123 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
124 fastSim.toReplaceWith(pixelPairStepSeeds,
125 FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
126 trackingRegions =
'pixelPairStepTrackingRegions',
127 hitMasks = cms.InputTag(
'pixelPairStepMasks'),
128 seedFinderSelector = dict(layerList = pixelPairStepSeedLayers.layerList.value())
133 from RecoTracker.TkTrackingRegions.pixelInactiveAreaTrackingRegionsAndSeedingLayers_cfi
import pixelInactiveAreaTrackingRegionsAndSeedingLayers
as _pixelInactiveAreaTrackingRegionsAndSeedingLayers
134 pixelPairStepTrackingRegionsSeedLayersB = _pixelInactiveAreaTrackingRegionsAndSeedingLayers.clone(
146 'BPix1+FPix2_pos' ,
'BPix1+FPix2_neg',
147 'BPix1+FPix3_pos' ,
'BPix1+FPix3_neg',
149 'BPix2+FPix2_pos' ,
'BPix2+FPix2_neg',
150 'BPix3+FPix1_pos' ,
'BPix3+FPix1_neg',
151 'FPix1_pos+FPix2_pos',
'FPix1_neg+FPix2_neg',
152 'FPix1_pos+FPix3_pos',
'FPix1_neg+FPix3_neg',
153 'FPix2_pos+FPix3_pos',
'FPix2_neg+FPix3_neg',
156 TTRHBuilder = cms.string(
'WithTrackAngle'),
157 HitProducer = cms.string(
'siPixelRecHits'),
158 skipClusters = cms.InputTag(
'pixelPairStepClusters')
161 TTRHBuilder = cms.string(
'WithTrackAngle'),
162 HitProducer = cms.string(
'siPixelRecHits'),
163 skipClusters = cms.InputTag(
'pixelPairStepClusters')
167 originRadius = 0.015,
168 operationMode =
'VerticesFixed',
172 ignoreSingleFPixPanelModules =
True,
174 highBetaStar_2018.toModify(pixelPairStepTrackingRegionsSeedLayersB,RegionPSet = dict(
179 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff
import pp_on_XeXe_2017
180 from Configuration.ProcessModifiers.pp_on_AA_cff
import pp_on_AA
181 (pp_on_XeXe_2017 | pp_on_AA).toModify(pixelPairStepTrackingRegionsSeedLayersB, layerList = [
182 'BPix1+BPix2',
'BPix1+BPix3',
'BPix1+BPix4',
'BPix2+BPix3',
'BPix2+BPix4',
'BPix3+BPix4',
183 'BPix1+FPix1_pos' ,
'BPix1+FPix1_neg',
184 'BPix1+FPix2_pos' ,
'BPix1+FPix2_neg',
185 'BPix1+FPix3_pos' ,
'BPix1+FPix3_neg',
186 'BPix2+FPix1_pos' ,
'BPix2+FPix1_neg',
187 'BPix2+FPix2_pos' ,
'BPix2+FPix2_neg',
188 'BPix3+FPix1_pos' ,
'BPix3+FPix1_neg',
189 'FPix1_pos+FPix2_pos',
'FPix1_neg+FPix2_neg',
190 'FPix1_pos+FPix3_pos',
'FPix1_neg+FPix3_neg',
191 'FPix2_pos+FPix3_pos',
'FPix2_neg+FPix3_neg'
194 pixelPairStepHitDoubletsB = pixelPairStepHitDoublets.clone(
196 trackingRegions =
'',
197 trackingRegionsSeedingLayers =
'pixelPairStepTrackingRegionsSeedLayersB',
199 pixelPairStepSeedsB = pixelPairStepSeedsA.clone(seedingHitSets =
'pixelPairStepHitDoubletsB')
204 _pixelPairStepSeedsMerged = _globalCombinedSeeds.clone(
205 seedCollections = [
'pixelPairStepSeedsA',
'pixelPairStepSeedsB'],
207 (trackingPhase1 & ~fastSim).toReplaceWith(pixelPairStepSeeds, _pixelPairStepSeedsMerged)
210 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(pixelPairStepSeeds, pixelPairStepSeedsB)
214 _pixelPairStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
215 minimumNumberOfHits = 3,
218 pixelPairStepTrajectoryFilterBase = _pixelPairStepTrajectoryFilterBase.clone(
221 minGoodStripCharge = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutLoose'))
223 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff
import tracker_apv_vfp30_2016
224 _tracker_apv_vfp30_2016.toModify(pixelPairStepTrajectoryFilterBase, maxCCCLostHits = 2)
225 trackingLowPU.toReplaceWith(pixelPairStepTrajectoryFilterBase, _pixelPairStepTrajectoryFilterBase)
226 trackingPhase1.toModify(pixelPairStepTrajectoryFilterBase, minimumNumberOfHits = 4)
227 trackingPhase2PU140.toReplaceWith(pixelPairStepTrajectoryFilterBase, _pixelPairStepTrajectoryFilterBase.clone(
228 minimumNumberOfHits = 4,
229 maxLostHitsFraction = 1./10.,
230 constantValueForLostHitsFractionFilter = 0.701,
232 highBetaStar_2018.toModify(pixelPairStepTrajectoryFilterBase, minPt = 0.05)
234 import RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
235 pixelPairStepTrajectoryFilterShape = RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
236 pixelPairStepTrajectoryFilter = cms.PSet(
237 ComponentType = cms.string(
'CompositeTrajectoryFilter'),
239 cms.PSet( refToPSet_ = cms.string(
'pixelPairStepTrajectoryFilterBase')),
244 trackingPhase2PU140.toModify(pixelPairStepTrajectoryFilter,
245 filters = pixelPairStepTrajectoryFilter.filters + [cms.PSet(refToPSet_ = cms.string(
'ClusterShapeTrajectoryFilter'))]
250 pixelPairStepTrajectoryFilterInOut = pixelPairStepTrajectoryFilterBase.clone(
251 minimumNumberOfHits = 4,
253 strictSeedExtension =
False,
254 pixelSeedExtension =
False,
259 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
260 pixelPairStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
261 ComponentName =
'pixelPairStepChi2Est',
264 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutLoose')),
265 pTChargeCutThreshold = 15.
267 _tracker_apv_vfp30_2016.toModify(pixelPairStepChi2Est,
268 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny')
270 trackingLowPU.toModify(pixelPairStepChi2Est,
271 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny'),
273 highBetaStar_2018.toModify(pixelPairStepChi2Est,MaxChi2 = 30)
277 pixelPairStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
278 MeasurementTrackerName =
'',
279 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'pixelPairStepTrajectoryFilter')),
281 estimator =
'pixelPairStepChi2Est',
282 maxDPhiForLooperReconstruction = cms.double(2.0),
283 maxPtForLooperReconstruction = cms.double(0.7)
285 trackingNoLoopers.toModify(pixelPairStepTrajectoryBuilder,
286 maxPtForLooperReconstruction = 0.0)
287 trackingLowPU.toModify(pixelPairStepTrajectoryBuilder, maxCand = 2)
288 _seedExtension = dict(
289 inOutTrajectoryFilter = dict(refToPSet_ =
'pixelPairStepTrajectoryFilterInOut'),
290 useSameTrajFilter =
False,
292 trackingPhase1.toModify(pixelPairStepTrajectoryBuilder, **_seedExtension)
293 trackingPhase2PU140.toModify(pixelPairStepTrajectoryBuilder, **_seedExtension)
301 _pixelPairStepTrackCandidatesCkf = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
302 src =
'pixelPairStepSeeds',
303 clustersToSkip = cms.InputTag(
'pixelPairStepClusters'),
304 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'pixelPairStepTrajectoryBuilder')),
306 numHitsForSeedCleaner = cms.int32(50),
307 onlyPixelHitsForSeedCleaner = cms.bool(
True),
310 pixelPairStepTrackCandidates = _pixelPairStepTrackCandidatesCkf.clone()
313 import RecoTracker.MkFit.mkFitSeedConverter_cfi
as _mkFitSeedConverter_cfi
314 import RecoTracker.MkFit.mkFitIterationConfigESProducer_cfi
as _mkFitIterationConfigESProducer_cfi
315 import RecoTracker.MkFit.mkFitProducer_cfi
as _mkFitProducer_cfi
316 import RecoTracker.MkFit.mkFitOutputConverter_cfi
as _mkFitOutputConverter_cfi
317 pixelPairStepTrackCandidatesMkFitSeeds = _mkFitSeedConverter_cfi.mkFitSeedConverter.clone(
318 seeds =
'pixelPairStepSeeds',
320 pixelPairStepTrackCandidatesMkFitConfig = _mkFitIterationConfigESProducer_cfi.mkFitIterationConfigESProducer.clone(
321 ComponentName =
'pixelPairStepTrackCandidatesMkFitConfig',
322 config =
'RecoTracker/MkFit/data/mkfit-phase1-pixelPairStep.json',
324 pixelPairStepTrackCandidatesMkFit = _mkFitProducer_cfi.mkFitProducer.clone(
325 seeds =
'pixelPairStepTrackCandidatesMkFitSeeds',
326 config = (
'',
'pixelPairStepTrackCandidatesMkFitConfig'),
327 clustersToSkip =
'pixelPairStepClusters',
329 trackingMkFitPixelPairStep.toReplaceWith(pixelPairStepTrackCandidates, _mkFitOutputConverter_cfi.mkFitOutputConverter.clone(
330 seeds =
'pixelPairStepSeeds',
331 mkFitSeeds =
'pixelPairStepTrackCandidatesMkFitSeeds',
332 tracks =
'pixelPairStepTrackCandidatesMkFit',
335 trackingPhase2PU140.toModify(pixelPairStepTrackCandidates,
336 clustersToSkip =
None,
337 phase2clustersToSkip = cms.InputTag(
'pixelPairStepClusters'),
338 TrajectoryCleaner =
'pixelPairStepTrajectoryCleanerBySharedHits'
340 import FastSimulation.Tracking.TrackCandidateProducer_cfi
341 fastSim.toReplaceWith(pixelPairStepTrackCandidates,
342 FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
343 src =
'pixelPairStepSeeds',
344 MinNumberOfCrossedLayers = 2,
345 hitMasks = cms.InputTag(
'pixelPairStepMasks')
350 pixelPairStepTrajectoryCleanerBySharedHits = _trajectoryCleanerBySharedHits.clone(
351 ComponentName =
'pixelPairStepTrajectoryCleanerBySharedHits',
352 fractionShared = 0.095,
353 allowSharedFirstHit =
True
355 trackingPhase2PU140.toModify(pixelPairStepTrajectoryCleanerBySharedHits, fractionShared = 0.09)
359 pixelPairStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
360 AlgorithmName =
'pixelPairStep',
361 src =
'pixelPairStepTrackCandidates',
362 Fitter =
'FlexibleKFFittingSmoother'
364 fastSim.toModify(pixelPairStepTracks, TTRHBuilder =
'WithoutRefit')
368 pixelPairStep = TrackMVAClassifierPrompt.clone(
369 src =
'pixelPairStepTracks',
370 mva = dict(GBRForestLabel =
'MVASelectorIter2_13TeV'),
371 qualityCuts = [-0.2,0.0,0.3]
373 trackingPhase1.toModify(pixelPairStep, mva=dict(GBRForestLabel =
'MVASelectorPixelPairStep_Phase1'))
378 trackdnn.toReplaceWith(pixelPairStep, trackTfClassifier.clone(
379 src=
'pixelPairStepTracks',
380 qualityCuts=qualityCutDictionary.PixelPairStep.value()
383 highBetaStar_2018.toModify(pixelPairStep,qualityCuts = [-0.95,0.0,0.3])
384 pp_on_AA.toModify(pixelPairStep, qualityCuts = [-0.2, 0.0, 0.98])
385 fastSim.toModify(pixelPairStep, vertices =
'firstStepPrimaryVerticesBeforeMixing')
389 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
390 pixelPairStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
391 src =
'pixelPairStepTracks',
392 useAnyMVA = cms.bool(
True),
393 GBRForestLabel = cms.string(
'MVASelectorIter2'),
394 trackSelectors = cms.VPSet(
395 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
396 name =
'pixelPairStepLoose',
398 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
399 name =
'pixelPairStepTight',
400 preFilterName =
'pixelPairStepLoose',
402 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
403 name =
'QualityMasks',
404 preFilterName =
'pixelPairStepTight',
407 vertices =
'pixelVertices'
409 trackingPhase2PU140.toModify(pixelPairStepSelector,
411 GBRForestLabel =
None,
412 trackSelectors = cms.VPSet(
413 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
414 name =
'pixelPairStepLoose',
416 res_par = ( 0.003, 0.002 ),
418 maxNumberLostLayers = 2,
419 minNumber3DLayers = 3,
420 d0_par1 = ( 0.4, 4.0 ),
421 dz_par1 = ( 0.4, 4.0 ),
422 d0_par2 = ( 0.6, 4.0 ),
423 dz_par2 = ( 0.45, 4.0 )
425 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
426 name =
'pixelPairStepTight',
427 preFilterName =
'pixelPairStepLoose',
429 res_par = ( 0.003, 0.002 ),
431 maxNumberLostLayers = 2,
432 minNumber3DLayers = 3,
433 d0_par1 = ( 0.35, 4.0 ),
434 dz_par1 = ( 0.35, 4.0 ),
435 d0_par2 = ( 0.5, 4.0 ),
436 dz_par2 = ( 0.4, 4.0 )
438 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
439 name =
'pixelPairStep',
440 preFilterName =
'pixelPairStepTight',
444 res_par = ( 0.003, 0.001 ),
446 maxNumberLostLayers = 2,
447 minNumber3DLayers = 4,
448 d0_par1 = ( 0.3, 4.0 ),
449 dz_par1 = ( 0.3, 4.0 ),
450 d0_par2 = ( 0.45, 4.0 ),
451 dz_par2 = ( 0.35, 4.0 )
454 vertices =
'firstStepPrimaryVertices'
457 from Configuration.ProcessModifiers.vectorHits_cff
import vectorHits
458 vectorHits.toModify(pixelPairStepSelector.trackSelectors[2], minNumberLayers = 3, minNumber3DLayers = 3)
461 PixelPairStepTask = cms.Task(pixelPairStepClusters,
462 pixelPairStepSeedLayers,
463 pixelPairStepTrackingRegions,
464 pixelPairStepHitDoublets,
466 pixelPairStepTrackCandidates,
469 PixelPairStep = cms.Sequence(PixelPairStepTask)
471 _PixelPairStepTask_trackingMkFit = PixelPairStepTask.copy()
472 _PixelPairStepTask_trackingMkFit.add(pixelPairStepTrackCandidatesMkFitSeeds, pixelPairStepTrackCandidatesMkFit, pixelPairStepTrackCandidatesMkFit)
473 trackingMkFitPixelPairStep.toReplaceWith(PixelPairStepTask, _PixelPairStepTask_trackingMkFit)
475 _PixelPairStepTask_LowPU_Phase2PU140 = PixelPairStepTask.copy()
476 _PixelPairStepTask_LowPU_Phase2PU140.replace(pixelPairStep, pixelPairStepSelector)
477 trackingLowPU.toReplaceWith(PixelPairStepTask, _PixelPairStepTask_LowPU_Phase2PU140)
478 trackingPhase2PU140.toReplaceWith(PixelPairStepTask, _PixelPairStepTask_LowPU_Phase2PU140)
480 _PixelPairStepTask_Phase1 = PixelPairStepTask.copy()
481 _PixelPairStepTask_pp_on_AA = PixelPairStepTask.copy()
482 _PixelPairStepTask_Phase1.replace(pixelPairStepSeeds,cms.Task(
483 pixelPairStepSeedsA ,
484 pixelPairStepTrackingRegionsSeedLayersB,pixelPairStepHitDoubletsB,pixelPairStepSeedsB,
486 trackingPhase1.toReplaceWith(PixelPairStepTask, _PixelPairStepTask_Phase1)
488 _PixelPairStepTask_pp_on_AA.replace(pixelPairStepHitDoublets, cms.Task(pixelPairStepTrackingRegionsSeedLayersB,pixelPairStepHitDoubletsB))
489 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(PixelPairStepTask, _PixelPairStepTask_pp_on_AA)
492 import FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi
493 pixelPairStepMasks = FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi.maskProducerFromClusterRemover(pixelPairStepClusters)
494 fastSim.toReplaceWith(PixelPairStepTask,
495 cms.Task(pixelPairStepMasks
496 ,pixelPairStepTrackingRegions
498 ,pixelPairStepTrackCandidates