1 import FWCore.ParameterSet.Config
as cms
2 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
15 chargeCut2069Clusters = cms.EDProducer(
'ClusterChargeMasker',
16 oldClusterRemovalInfo = cms.InputTag(
''),
17 pixelClusters = cms.InputTag(
'siPixelClusters'),
18 stripClusters = cms.InputTag(
'siStripClusters'),
19 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight'))
22 mixedTripletStepClusters = _cfg.clusterRemoverForIter(
'MixedTripletStep')
23 chargeCut2069Clusters.oldClusterRemovalInfo = mixedTripletStepClusters.oldClusterRemovalInfo.value()
24 mixedTripletStepClusters.oldClusterRemovalInfo =
'chargeCut2069Clusters'
25 for _eraName, _postfix, _era
in _cfg.nonDefaultEras():
26 _era.toReplaceWith(mixedTripletStepClusters, _cfg.clusterRemoverForIter(
'MixedTripletStep', _eraName, _postfix))
27 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
28 trackingPhase1.toModify(chargeCut2069Clusters, oldClusterRemovalInfo = mixedTripletStepClusters.oldClusterRemovalInfo.value())
29 trackingPhase1.toModify(mixedTripletStepClusters, oldClusterRemovalInfo=
'chargeCut2069Clusters')
34 mixedTripletStepSeedLayersA = cms.EDProducer(
'SeedingLayersEDProducer',
35 layerList = cms.vstring(
'BPix2+FPix1_pos+FPix2_pos',
'BPix2+FPix1_neg+FPix2_neg'),
41 TTRHBuilder = cms.string(
'WithTrackAngle'),
42 HitProducer = cms.string(
'siPixelRecHits'),
43 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
46 TTRHBuilder = cms.string(
'WithTrackAngle'),
47 HitProducer = cms.string(
'siPixelRecHits'),
48 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
51 matchedRecHits = cms.InputTag(
'siStripMatchedRecHits',
'matchedRecHit'),
52 useRingSlector = cms.bool(
True),
53 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
54 minRing = cms.int32(1),
55 maxRing = cms.int32(1),
56 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
59 from Configuration.Eras.Modifier_trackingLowPU_cff
import trackingLowPU
60 trackingLowPU.toModify(mixedTripletStepSeedLayersA,
63 'BPix1+BPix2+FPix1_pos',
'BPix1+BPix2+FPix1_neg',
64 'BPix1+FPix1_pos+FPix2_pos',
'BPix1+FPix1_neg+FPix2_neg',
65 'BPix2+FPix1_pos+FPix2_pos',
'BPix2+FPix1_neg+FPix2_neg',
66 'FPix1_pos+FPix2_pos+TEC1_pos',
'FPix1_neg+FPix2_neg+TEC1_neg',
67 'FPix2_pos+TEC2_pos+TEC3_pos',
'FPix2_neg+TEC2_neg+TEC3_neg'
69 TEC = dict(clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny')),
71 from Configuration.Eras.Modifier_highBetaStar_2018_cff
import highBetaStar_2018
72 highBetaStar_2018.toModify(mixedTripletStepSeedLayersA,
75 'BPix1+FPix1_pos+FPix2_pos',
'BPix1+FPix1_neg+FPix2_neg',
76 'BPix2+FPix1_pos+FPix2_pos',
'BPix2+FPix1_neg+FPix2_neg',
77 'BPix1+BPix2+FPix1_pos',
'BPix1+BPix2+FPix1_neg',
78 'BPix1+BPix2+FPix2_pos',
'BPix1+BPix2+FPix2_neg'
84 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi
import globalTrackingRegionFromBeamSpotFixedZ
as _globalTrackingRegionFromBeamSpotFixedZ
85 _mixedTripletStepTrackingRegionsCommon = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict(
87 originHalfLength = 15.0,
90 trackingLowPU.toModify(_mixedTripletStepTrackingRegionsCommon, RegionPSet = dict(originHalfLength = 10.0))
91 highBetaStar_2018.toModify(_mixedTripletStepTrackingRegionsCommon,RegionPSet = dict(
96 mixedTripletStepTrackingRegionsA = _mixedTripletStepTrackingRegionsCommon.clone()
98 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff
import pp_on_XeXe_2017
99 from Configuration.ProcessModifiers.pp_on_AA_cff
import pp_on_AA
101 _mixedTripletStepTrackingRegionsCommon_pp_on_HI = _globalTrackingRegionWithVertices.clone(
106 originRScaling4BigEvts =
True,
107 ptMinScaling4BigEvts =
True,
110 scalingStartNPix = 20000,
111 scalingEndNPix = 35000
114 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(mixedTripletStepTrackingRegionsA,_mixedTripletStepTrackingRegionsCommon_pp_on_HI)
119 mixedTripletStepClusterShapeHitFilter = _ClusterShapeHitFilterESProducer.clone(
120 ComponentName =
'mixedTripletStepClusterShapeHitFilter',
121 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTight')
123 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
124 mixedTripletStepHitDoubletsA = _hitPairEDProducer.clone(
125 seedingLayers =
'mixedTripletStepSeedLayersA',
126 trackingRegions =
'mixedTripletStepTrackingRegionsA',
127 maxElement = 50000000,
128 produceIntermediateHitDoublets =
True,
130 from RecoPixelVertexing.PixelTriplets.pixelTripletLargeTipEDProducer_cfi
import pixelTripletLargeTipEDProducer
as _pixelTripletLargeTipEDProducer
132 mixedTripletStepHitTripletsA = _pixelTripletLargeTipEDProducer.clone(
133 doublets =
'mixedTripletStepHitDoubletsA',
134 produceSeedingHitSets =
True,
136 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff
import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
137 _mixedTripletStepSeedsACommon = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
138 seedingHitSets =
'mixedTripletStepHitTripletsA',
139 SeedComparitorPSet = dict(
140 ComponentName =
'PixelClusterShapeSeedComparitor',
141 FilterAtHelixStage = cms.bool(
False),
142 FilterPixelHits = cms.bool(
True),
143 FilterStripHits = cms.bool(
True),
144 ClusterShapeHitFilterName = cms.string(
'mixedTripletStepClusterShapeHitFilter'),
145 ClusterShapeCacheSrc = cms.InputTag(
'siPixelClusterShapeCache')
148 trackingLowPU.toModify(_mixedTripletStepSeedsACommon,
149 SeedComparitorPSet = dict(ClusterShapeHitFilterName =
'ClusterShapeHitFilter')
151 mixedTripletStepSeedsA = _mixedTripletStepSeedsACommon.clone()
153 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
154 from FastSimulation.Tracking.SeedingMigration
import _hitSetProducerToFactoryPSet
155 _fastSim_mixedTripletStepSeedsA = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
156 trackingRegions =
'mixedTripletStepTrackingRegionsA',
157 hitMasks = cms.InputTag(
'mixedTripletStepMasks'),
159 layerList = mixedTripletStepSeedLayersA.layerList.value())
161 fastSim.toReplaceWith(mixedTripletStepSeedsA,_fastSim_mixedTripletStepSeedsA)
165 mixedTripletStepSeedLayersB = cms.EDProducer(
'SeedingLayersEDProducer',
166 layerList = cms.vstring(
'BPix2+BPix3+TIB1'),
168 TTRHBuilder = cms.string(
'WithTrackAngle'),
169 HitProducer = cms.string(
'siPixelRecHits'),
170 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
173 matchedRecHits = cms.InputTag(
'siStripMatchedRecHits',
'matchedRecHit'),
174 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
175 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
178 trackingLowPU.toModify(mixedTripletStepSeedLayersB,
179 layerList = [
'BPix2+BPix3+TIB1',
'BPix2+BPix3+TIB2'],
180 TIB = dict(clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny')),
182 trackingPhase1.toModify(mixedTripletStepSeedLayersB, layerList = [
'BPix3+BPix4+TIB1'])
185 mixedTripletStepTrackingRegionsB = _mixedTripletStepTrackingRegionsCommon.clone(RegionPSet = dict(ptMin=0.6, originHalfLength=10.0))
186 (pp_on_XeXe_2017 | pp_on_AA).toReplaceWith(mixedTripletStepTrackingRegionsB,
187 _mixedTripletStepTrackingRegionsCommon_pp_on_HI.clone(RegionPSet=dict(
192 highBetaStar_2018.toReplaceWith(mixedTripletStepTrackingRegionsB, _mixedTripletStepTrackingRegionsCommon.clone())
195 mixedTripletStepHitDoubletsB = mixedTripletStepHitDoubletsA.clone(
196 seedingLayers =
'mixedTripletStepSeedLayersB',
197 trackingRegions =
'mixedTripletStepTrackingRegionsB',
199 mixedTripletStepHitTripletsB = mixedTripletStepHitTripletsA.clone(doublets =
'mixedTripletStepHitDoubletsB')
200 mixedTripletStepSeedsB = _mixedTripletStepSeedsACommon.clone(seedingHitSets =
'mixedTripletStepHitTripletsB')
202 _fastSim_mixedTripletStepSeedsB = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
203 trackingRegions =
'mixedTripletStepTrackingRegionsB',
204 hitMasks = cms.InputTag(
'mixedTripletStepMasks'),
206 layerList = mixedTripletStepSeedLayersB.layerList.value())
208 fastSim.toReplaceWith(mixedTripletStepSeedsB,_fastSim_mixedTripletStepSeedsB)
212 mixedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone(
213 seedCollections = [
'mixedTripletStepSeedsA',
214 'mixedTripletStepSeedsB']
218 _mixedTripletStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
220 minimumNumberOfHits = 3,
223 highBetaStar_2018.toModify(_mixedTripletStepTrajectoryFilterBase,minPt = 0.05)
225 mixedTripletStepTrajectoryFilter = _mixedTripletStepTrajectoryFilterBase.clone(
226 constantValueForLostHitsFractionFilter = 1.4,
228 trackingLowPU.toReplaceWith(mixedTripletStepTrajectoryFilter, _mixedTripletStepTrajectoryFilterBase.clone(
232 (pp_on_XeXe_2017 | pp_on_AA).toModify(mixedTripletStepTrajectoryFilter, minPt=0.4)
237 mixedTripletStepPropagator = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
239 ComponentName =
'mixedTripletStepPropagator',
242 for e
in [pp_on_XeXe_2017, pp_on_AA]:
243 e.toModify(mixedTripletStepPropagator, ptMin=0.4)
244 highBetaStar_2018.toModify(mixedTripletStepPropagator,ptMin = 0.05)
247 mixedTripletStepPropagatorOpposite = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
249 ComponentName =
'mixedTripletStepPropagatorOpposite',
252 for e
in [pp_on_XeXe_2017, pp_on_AA]:
253 e.toModify(mixedTripletStepPropagatorOpposite, ptMin=0.4)
254 highBetaStar_2018.toModify(mixedTripletStepPropagatorOpposite,ptMin = 0.05)
256 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
257 mixedTripletStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
258 ComponentName =
'mixedTripletStepChi2Est',
261 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight'))
263 trackingLowPU.toModify(mixedTripletStepChi2Est,
264 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny')
269 mixedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
270 MeasurementTrackerName =
'',
271 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'mixedTripletStepTrajectoryFilter')),
272 propagatorAlong =
'mixedTripletStepPropagator',
273 propagatorOpposite =
'mixedTripletStepPropagatorOpposite',
275 estimator =
'mixedTripletStepChi2Est',
276 maxDPhiForLooperReconstruction = cms.double(2.0),
277 maxPtForLooperReconstruction = cms.double(0.7)
282 mixedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
283 src =
'mixedTripletStepSeeds',
284 clustersToSkip = cms.InputTag(
'mixedTripletStepClusters'),
286 numHitsForSeedCleaner = cms.int32(50),
289 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'mixedTripletStepTrajectoryBuilder')),
290 doSeedingRegionRebuilding =
True,
291 useHitsSplitting =
True,
292 TrajectoryCleaner =
'mixedTripletStepTrajectoryCleanerBySharedHits'
294 import FastSimulation.Tracking.TrackCandidateProducer_cfi
295 fastSim.toReplaceWith(mixedTripletStepTrackCandidates,
296 FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
297 src =
'mixedTripletStepSeeds',
298 MinNumberOfCrossedLayers = 3,
299 hitMasks = cms.InputTag(
'mixedTripletStepMasks'),
305 mixedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
306 ComponentName =
'mixedTripletStepTrajectoryCleanerBySharedHits',
307 fractionShared = 0.11,
308 allowSharedFirstHit =
True
310 trackingLowPU.toModify(mixedTripletStepTrajectoryCleanerBySharedHits, fractionShared = 0.19)
315 mixedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
316 AlgorithmName =
'mixedTripletStep',
317 src =
'mixedTripletStepTrackCandidates',
318 Fitter =
'FlexibleKFFittingSmoother'
320 fastSim.toModify(mixedTripletStepTracks, TTRHBuilder =
'WithoutRefit')
325 mixedTripletStepClassifier1 = TrackMVAClassifierDetached.clone(
326 src =
'mixedTripletStepTracks',
327 mva = dict(GBRForestLabel =
'MVASelectorIter4_13TeV'),
328 qualityCuts = [-0.5,0.0,0.5]
330 fastSim.toModify(mixedTripletStepClassifier1, vertices =
'firstStepPrimaryVerticesBeforeMixing')
332 mixedTripletStepClassifier2 = TrackMVAClassifierPrompt.clone(
333 src =
'mixedTripletStepTracks',
334 mva = dict(GBRForestLabel =
'MVASelectorIter0_13TeV'),
335 qualityCuts = [-0.2,-0.2,-0.2]
337 fastSim.toModify(mixedTripletStepClassifier2,vertices =
'firstStepPrimaryVerticesBeforeMixing')
340 mixedTripletStep = ClassifierMerger.clone(
341 inputClassifiers=[
'mixedTripletStepClassifier1',
'mixedTripletStepClassifier2']
343 trackingPhase1.toReplaceWith(mixedTripletStep, mixedTripletStepClassifier1.clone(
344 mva = dict(GBRForestLabel =
'MVASelectorMixedTripletStep_Phase1'),
345 qualityCuts = [-0.5,0.0,0.5]
350 trackdnn.toReplaceWith(mixedTripletStep, TrackTfClassifier.clone(
351 src =
'mixedTripletStepTracks',
352 qualityCuts = qualityCutDictionary[
'MixedTripletStep']
354 (trackdnn & fastSim).toModify(mixedTripletStep,vertices =
'firstStepPrimaryVerticesBeforeMixing')
356 highBetaStar_2018.toModify(mixedTripletStep,qualityCuts = [-0.7,0.0,0.5])
357 pp_on_AA.toModify(mixedTripletStep, qualityCuts = [-0.5,0.0,0.9])
360 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
361 mixedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
362 src =
'mixedTripletStepTracks',
363 useAnyMVA = cms.bool(
False),
364 GBRForestLabel = cms.string(
'MVASelectorIter4'),
366 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
367 name =
'mixedTripletStepVtxLoose',
369 res_par = ( 0.003, 0.001 ),
371 maxNumberLostLayers = 1,
372 minNumber3DLayers = 2,
373 d0_par1 = ( 1.2, 3.0 ),
374 dz_par1 = ( 1.2, 3.0 ),
375 d0_par2 = ( 1.3, 3.0 ),
376 dz_par2 = ( 1.3, 3.0 )
378 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
379 name =
'mixedTripletStepTrkLoose',
381 res_par = ( 0.003, 0.001 ),
383 maxNumberLostLayers = 1,
384 minNumber3DLayers = 3,
385 d0_par1 = ( 1.2, 4.0 ),
386 dz_par1 = ( 1.2, 4.0 ),
387 d0_par2 = ( 1.2, 4.0 ),
388 dz_par2 = ( 1.2, 4.0 )
390 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
391 name =
'mixedTripletStepVtxTight',
392 preFilterName =
'mixedTripletStepVtxLoose',
394 res_par = ( 0.003, 0.001 ),
396 maxNumberLostLayers = 1,
397 minNumber3DLayers = 3,
398 d0_par1 = ( 1.1, 3.0 ),
399 dz_par1 = ( 1.1, 3.0 ),
400 d0_par2 = ( 1.2, 3.0 ),
401 dz_par2 = ( 1.2, 3.0 )
403 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
404 name =
'mixedTripletStepTrkTight',
405 preFilterName =
'mixedTripletStepTrkLoose',
407 res_par = ( 0.003, 0.001 ),
409 maxNumberLostLayers = 1,
410 minNumber3DLayers = 4,
411 d0_par1 = ( 1.1, 4.0 ),
412 dz_par1 = ( 1.1, 4.0 ),
413 d0_par2 = ( 1.1, 4.0 ),
414 dz_par2 = ( 1.1, 4.0 )
416 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
417 name =
'mixedTripletStepVtx',
418 preFilterName =
'mixedTripletStepVtxTight',
420 res_par = ( 0.003, 0.001 ),
422 maxNumberLostLayers = 1,
423 minNumber3DLayers = 3,
424 d0_par1 = ( 1.1, 3.0 ),
425 dz_par1 = ( 1.1, 3.0 ),
426 d0_par2 = ( 1.2, 3.0 ),
427 dz_par2 = ( 1.2, 3.0 )
429 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
430 name =
'mixedTripletStepTrk',
431 preFilterName =
'mixedTripletStepTrkTight',
433 res_par = ( 0.003, 0.001 ),
435 maxNumberLostLayers = 0,
436 minNumber3DLayers = 4,
437 d0_par1 = ( 0.9, 4.0 ),
438 dz_par1 = ( 0.9, 4.0 ),
439 d0_par2 = ( 0.9, 4.0 ),
440 dz_par2 = ( 0.9, 4.0 )
446 from RecoTracker.FinalTrackSelectors.trackAlgoPriorityOrder_cfi
import trackAlgoPriorityOrder
448 _trackListMergerBase = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
449 TrackProducers = [
'mixedTripletStepTracks',
450 'mixedTripletStepTracks'],
452 selectedTrackQuals = [
'mixedTripletStepSelector:mixedTripletStepVtx',
453 'mixedTripletStepSelector:mixedTripletStepTrk'],
454 setsToMerge = [cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )],
455 writeOnlyTrkQuals =
True
457 trackingLowPU.toReplaceWith(mixedTripletStep, _trackListMergerBase)
461 MixedTripletStepTask = cms.Task(chargeCut2069Clusters,mixedTripletStepClusters,
462 mixedTripletStepSeedLayersA,
463 mixedTripletStepTrackingRegionsA,
464 mixedTripletStepHitDoubletsA,
465 mixedTripletStepHitTripletsA,
466 mixedTripletStepSeedsA,
467 mixedTripletStepSeedLayersB,
468 mixedTripletStepTrackingRegionsB,
469 mixedTripletStepHitDoubletsB,
470 mixedTripletStepHitTripletsB,
471 mixedTripletStepSeedsB,
472 mixedTripletStepSeeds,
473 mixedTripletStepTrackCandidates,
474 mixedTripletStepTracks,
475 mixedTripletStepClassifier1,mixedTripletStepClassifier2,
477 MixedTripletStep = cms.Sequence(MixedTripletStepTask)
478 _MixedTripletStepTask_LowPU = MixedTripletStepTask.copyAndExclude([chargeCut2069Clusters, mixedTripletStepClassifier1])
479 _MixedTripletStepTask_LowPU.replace(mixedTripletStepClassifier2, mixedTripletStepSelector)
480 trackingLowPU.toReplaceWith(MixedTripletStepTask, _MixedTripletStepTask_LowPU)
483 import FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi
484 mixedTripletStepMasks = FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi.maskProducerFromClusterRemover(mixedTripletStepClusters)
485 mixedTripletStepMasks.oldHitRemovalInfo = cms.InputTag(
'pixelPairStepMasks')
487 fastSim.toReplaceWith(MixedTripletStepTask,
488 cms.Task(mixedTripletStepMasks
489 ,mixedTripletStepTrackingRegionsA
490 ,mixedTripletStepSeedsA
491 ,mixedTripletStepTrackingRegionsB
492 ,mixedTripletStepSeedsB
493 ,mixedTripletStepSeeds
494 ,mixedTripletStepTrackCandidates
495 ,mixedTripletStepTracks
496 ,mixedTripletStepClassifier1,mixedTripletStepClassifier2