File indexing completed on 2024-10-09 23:02:43
0001 import FWCore.ParameterSet.Config as cms
0002 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016 as _tracker_apv_vfp30_2016
0003 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0004
0005
0006 from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
0007 from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary
0008
0009
0010 from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers
0011
0012
0013
0014
0015 from RecoLocalTracker.SiPixelRecHits.PixelCPEESProducers_cff import *
0016 from RecoTracker.TransientTrackingRecHit.TTRHBuilders_cff import *
0017
0018
0019 import RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi
0020 import RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi
0021 initialStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
0022 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
0023 trackingPhase1.toModify(initialStepSeedLayers,
0024 layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
0025 )
0026 trackingPhase2PU140.toModify(initialStepSeedLayers,
0027 layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
0028 )
0029
0030
0031 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpot_cfi import globalTrackingRegionFromBeamSpot as _globalTrackingRegionFromBeamSpot
0032 initialStepTrackingRegions = _globalTrackingRegionFromBeamSpot.clone(RegionPSet = dict(
0033 ptMin = 0.6,
0034 originRadius = 0.02,
0035 nSigmaZ = 4.0
0036 ))
0037 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
0038 trackingPhase1.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.5))
0039 from Configuration.Eras.Modifier_highBetaStar_cff import highBetaStar
0040 highBetaStar.toModify(initialStepTrackingRegions,RegionPSet = dict(
0041 ptMin = 0.05,
0042 originRadius = 0.2
0043 ))
0044 trackingPhase2PU140.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.6,originRadius = 0.03))
0045
0046
0047 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
0048 initialStepHitDoublets = _hitPairEDProducer.clone(
0049 seedingLayers = 'initialStepSeedLayers',
0050 trackingRegions = 'initialStepTrackingRegions',
0051 maxElement = 50000000,
0052 produceIntermediateHitDoublets = True,
0053 )
0054 from RecoTracker.PixelSeeding.pixelTripletHLTEDProducer_cfi import pixelTripletHLTEDProducer as _pixelTripletHLTEDProducer
0055 from RecoTracker.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
0056 import RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
0057 initialStepHitTriplets = _pixelTripletHLTEDProducer.clone(
0058 doublets = 'initialStepHitDoublets',
0059 produceSeedingHitSets = True,
0060 SeedComparitorPSet = RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone()
0061 )
0062 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsEDProducer
0063 initialStepSeeds = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
0064 seedingHitSets = 'initialStepHitTriplets',
0065 )
0066 from RecoTracker.PixelSeeding.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
0067 _initialStepCAHitQuadruplets = _caHitQuadrupletEDProducer.clone(
0068 doublets = 'initialStepHitDoublets',
0069 extraHitRPhitolerance = initialStepHitTriplets.extraHitRPhitolerance,
0070 SeedComparitorPSet = initialStepHitTriplets.SeedComparitorPSet,
0071 maxChi2 = dict(
0072 pt1 = 0.7, pt2 = 2,
0073 value1 = 200, value2 = 50,
0074 ),
0075 useBendingCorrection = True,
0076 fitFastCircle = True,
0077 fitFastCircleChi2Cut = True,
0078 CAThetaCut = 0.0012,
0079 CAPhiCut = 0.2,
0080 )
0081 highBetaStar.toModify(_initialStepCAHitQuadruplets,
0082 CAThetaCut = 0.0024,
0083 CAPhiCut = 0.4
0084 )
0085 initialStepHitQuadruplets = _initialStepCAHitQuadruplets.clone()
0086
0087 trackingPhase1.toModify(initialStepHitDoublets, layerPairs = [0,1,2])
0088
0089 trackingPhase2PU140.toModify(initialStepHitDoublets, layerPairs = [0,1,2])
0090 trackingPhase2PU140.toModify(initialStepHitQuadruplets,
0091 CAThetaCut = 0.0010,
0092 CAPhiCut = 0.175,
0093 )
0094
0095 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
0096 _initialStepSeedsConsecutiveHitsTripletOnly = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
0097 seedingHitSets = 'initialStepHitTriplets',
0098 SeedComparitorPSet = dict(
0099 ComponentName = 'PixelClusterShapeSeedComparitor',
0100 FilterAtHelixStage = cms.bool(False),
0101 FilterPixelHits = cms.bool(True),
0102 FilterStripHits = cms.bool(False),
0103 ClusterShapeHitFilterName = cms.string('ClusterShapeHitFilter'),
0104 ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache')
0105 ),
0106 )
0107 trackingPhase1.toReplaceWith(initialStepSeeds, _initialStepSeedsConsecutiveHitsTripletOnly.clone(
0108 seedingHitSets = 'initialStepHitQuadruplets'
0109 ))
0110 trackingPhase2PU140.toReplaceWith(initialStepSeeds, _initialStepSeedsConsecutiveHitsTripletOnly.clone(
0111 seedingHitSets = 'initialStepHitQuadruplets'
0112 ))
0113 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
0114 from FastSimulation.Tracking.SeedingMigration import _hitSetProducerToFactoryPSet
0115 _fastSim_initialStepSeeds = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
0116 trackingRegions = 'initialStepTrackingRegions',
0117 seedFinderSelector = dict( pixelTripletGeneratorFactory = _hitSetProducerToFactoryPSet(initialStepHitTriplets).clone(SeedComparitorPSet = dict(ComponentName = 'none')),
0118 layerList = initialStepSeedLayers.layerList.value()
0119 )
0120 )
0121
0122 trackingPhase1.toModify(_fastSim_initialStepSeeds, seedFinderSelector = dict(
0123 pixelTripletGeneratorFactory = None,
0124 CAHitQuadrupletGeneratorFactory = _hitSetProducerToFactoryPSet(initialStepHitQuadruplets).clone(SeedComparitorPSet = dict(ComponentName = 'none')),
0125
0126 BPix = dict(
0127 TTRHBuilder = 'WithoutRefit',
0128 HitProducer = 'TrackingRecHitProducer',
0129 ),
0130 FPix = dict(
0131 TTRHBuilder = 'WithoutRefit',
0132 HitProducer = 'TrackingRecHitProducer',
0133 ),
0134 layerPairs = initialStepHitDoublets.layerPairs.value()
0135 )
0136 )
0137
0138 fastSim.toReplaceWith(initialStepSeeds,_fastSim_initialStepSeeds)
0139
0140
0141
0142 import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
0143 _initialStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0144 minimumNumberOfHits = 3,
0145 minPt = 0.2,
0146 )
0147 initialStepTrajectoryFilterBase = _initialStepTrajectoryFilterBase.clone(
0148 maxCCCLostHits = 0,
0149 minGoodStripCharge = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose'))
0150 )
0151 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016
0152 _tracker_apv_vfp30_2016.toModify(initialStepTrajectoryFilterBase, maxCCCLostHits = 2)
0153
0154 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
0155 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0156 (pp_on_XeXe_2017 | pp_on_AA).toModify(initialStepTrajectoryFilterBase, minPt=0.6)
0157 highBetaStar.toModify(initialStepTrajectoryFilterBase, minPt = 0.05)
0158
0159 initialStepTrajectoryFilterInOut = initialStepTrajectoryFilterBase.clone(
0160 minimumNumberOfHits = 4,
0161 seedExtension = 1,
0162 strictSeedExtension = True,
0163 pixelSeedExtension = True,
0164 )
0165 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
0166 trackingLowPU.toReplaceWith(initialStepTrajectoryFilterBase, _initialStepTrajectoryFilterBase)
0167 trackingPhase2PU140.toReplaceWith(initialStepTrajectoryFilterBase, _initialStepTrajectoryFilterBase)
0168
0169 import RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
0170 initialStepTrajectoryFilterShape = RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
0171 initialStepTrajectoryFilter = cms.PSet(
0172 ComponentType = cms.string('CompositeTrajectoryFilter'),
0173 filters = cms.VPSet(
0174 cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterBase')),
0175
0176 ),
0177 )
0178
0179 trackingPhase2PU140.toReplaceWith(initialStepTrajectoryFilter, TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0180 minimumNumberOfHits = 3,
0181 minPt = 0.2
0182 ))
0183 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
0184 initialStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
0185 ComponentName = 'initialStepChi2Est',
0186 nSigma = 3.0,
0187 MaxChi2 = 30.0,
0188 clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose')),
0189 pTChargeCutThreshold = 15.
0190 )
0191 _tracker_apv_vfp30_2016.toModify(initialStepChi2Est,
0192 clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')
0193 )
0194 trackingPhase2PU140.toModify(initialStepChi2Est,
0195 clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutNone'),
0196 )
0197
0198
0199 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
0200 initialStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilderIterativeDefault.clone(
0201 trajectoryFilter = dict(refToPSet_ = 'initialStepTrajectoryFilter'),
0202 alwaysUseInvalidHits = True,
0203 maxCand = 3,
0204 estimator = 'initialStepChi2Est',
0205 maxDPhiForLooperReconstruction = 2.0,
0206 maxPtForLooperReconstruction = 0.7,
0207 )
0208 trackingNoLoopers.toModify(initialStepTrajectoryBuilder,
0209 maxPtForLooperReconstruction = 0.0)
0210 trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand = 5)
0211 trackingPhase1.toModify(initialStepTrajectoryBuilder,
0212 minNrOfHitsForRebuild = 1,
0213 keepOriginalIfRebuildFails = True,
0214 )
0215 trackingPhase2PU140.toModify(initialStepTrajectoryBuilder,
0216 minNrOfHitsForRebuild = 1,
0217 keepOriginalIfRebuildFails = True,
0218 )
0219
0220 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
0221
0222 _initialStepTrackCandidatesCkf = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidatesIterativeDefault.clone(
0223 src = 'initialStepSeeds',
0224
0225 numHitsForSeedCleaner = 50,
0226 onlyPixelHitsForSeedCleaner = True,
0227 TrajectoryBuilderPSet = dict(refToPSet_ = 'initialStepTrajectoryBuilder'),
0228 doSeedingRegionRebuilding = True,
0229 useHitsSplitting = True,
0230 )
0231 initialStepTrackCandidates = _initialStepTrackCandidatesCkf.clone()
0232
0233 from Configuration.ProcessModifiers.trackingMkFitInitialStep_cff import trackingMkFitInitialStep
0234 from RecoTracker.MkFit.mkFitGeometryESProducer_cfi import mkFitGeometryESProducer
0235 import RecoTracker.MkFit.mkFitSiPixelHitConverter_cfi as mkFitSiPixelHitConverter_cfi
0236 import RecoTracker.MkFit.mkFitSiStripHitConverter_cfi as mkFitSiStripHitConverter_cfi
0237 import RecoTracker.MkFit.mkFitPhase2HitConverter_cfi as mkFitPhase2HitConverter_cfi
0238 import RecoTracker.MkFit.mkFitEventOfHitsProducer_cfi as mkFitEventOfHitsProducer_cfi
0239 import RecoTracker.MkFit.mkFitSeedConverter_cfi as mkFitSeedConverter_cfi
0240 import RecoTracker.MkFit.mkFitIterationConfigESProducer_cfi as mkFitIterationConfigESProducer_cfi
0241 import RecoTracker.MkFit.mkFitProducer_cfi as mkFitProducer_cfi
0242 import RecoTracker.MkFit.mkFitOutputConverter_cfi as mkFitOutputConverter_cfi
0243 mkFitSiPixelHits = mkFitSiPixelHitConverter_cfi.mkFitSiPixelHitConverter.clone()
0244 mkFitSiPhase2Hits = mkFitPhase2HitConverter_cfi.mkFitPhase2HitConverter.clone()
0245 mkFitEventOfHits = mkFitEventOfHitsProducer_cfi.mkFitEventOfHitsProducer.clone()
0246 initialStepTrackCandidatesMkFitSeeds = mkFitSeedConverter_cfi.mkFitSeedConverter.clone(
0247 seeds = 'initialStepSeeds',
0248 )
0249 initialStepTrackCandidatesMkFitConfig = mkFitIterationConfigESProducer_cfi.mkFitIterationConfigESProducer.clone(
0250 ComponentName = 'initialStepTrackCandidatesMkFitConfig',
0251 config = 'RecoTracker/MkFit/data/mkfit-phase1-initialStep.json',
0252 )
0253 initialStepTrackCandidatesMkFit = mkFitProducer_cfi.mkFitProducer.clone(
0254 seeds = 'initialStepTrackCandidatesMkFitSeeds',
0255 config = ('', 'initialStepTrackCandidatesMkFitConfig'),
0256 )
0257 trackingMkFitInitialStep.toReplaceWith(initialStepTrackCandidates, mkFitOutputConverter_cfi.mkFitOutputConverter.clone(
0258 seeds = 'initialStepSeeds',
0259 mkFitSeeds = 'initialStepTrackCandidatesMkFitSeeds',
0260 tracks = 'initialStepTrackCandidatesMkFit',
0261 ))
0262 (pp_on_XeXe_2017 | pp_on_AA).toModify(initialStepTrackCandidatesMkFitConfig, minPt=0.6)
0263
0264 import FastSimulation.Tracking.TrackCandidateProducer_cfi
0265 fastSim.toReplaceWith(initialStepTrackCandidates,
0266 FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
0267 src = 'initialStepSeeds',
0268 MinNumberOfCrossedLayers = 3
0269 ))
0270
0271
0272
0273 import RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi
0274 initialStepTracks = RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi.TrackProducerIterativeDefault.clone(
0275 src = 'initialStepTrackCandidates',
0276 AlgorithmName = 'initialStep',
0277 Fitter = 'FlexibleKFFittingSmoother'
0278 )
0279 fastSim.toModify(initialStepTracks, TTRHBuilder = 'WithoutRefit')
0280
0281 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
0282 phase2_timing_layer.toModify(initialStepTracks, TrajectoryInEvent = True)
0283
0284
0285 from RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi import offlinePrimaryVertices as _offlinePrimaryVertices
0286 firstStepPrimaryVerticesUnsorted = _offlinePrimaryVertices.clone(
0287 TrackLabel = 'initialStepTracks',
0288 vertexCollections = [_offlinePrimaryVertices.vertexCollections[0].clone()]
0289 )
0290 (pp_on_XeXe_2017 | pp_on_AA).toModify(firstStepPrimaryVerticesUnsorted,
0291 TkFilterParameters = dict(
0292 trackQuality = 'any',
0293 maxNumTracksThreshold = 2**31-1
0294 )
0295 )
0296
0297
0298
0299
0300
0301 firstStepPrimaryVerticesBeforeMixing = firstStepPrimaryVerticesUnsorted.clone()
0302 fastSim.toModify(firstStepPrimaryVerticesUnsorted, TrackLabel = 'generalTracks')
0303
0304
0305 from RecoJets.JetProducers.TracksForJets_cff import trackRefsForJets
0306 initialStepTrackRefsForJets = trackRefsForJets.clone(
0307 src = 'initialStepTracks'
0308 )
0309 fastSim.toModify(initialStepTrackRefsForJets, src = 'generalTracks')
0310 from RecoJets.JetProducers.caloJetsForTrk_cff import *
0311 from CommonTools.RecoAlgos.sortedPrimaryVertices_cfi import sortedPrimaryVertices as _sortedPrimaryVertices
0312 firstStepPrimaryVertices = _sortedPrimaryVertices.clone(
0313 vertices = 'firstStepPrimaryVerticesUnsorted',
0314 particles = 'initialStepTrackRefsForJets',
0315 )
0316
0317
0318
0319 from RecoTracker.FinalTrackSelectors.TrackMVAClassifierPrompt_cfi import *
0320 from RecoTracker.FinalTrackSelectors.TrackMVAClassifierDetached_cfi import *
0321
0322 initialStepClassifier1 = TrackMVAClassifierPrompt.clone(
0323 src = 'initialStepTracks',
0324 mva = dict(GBRForestLabel = 'MVASelectorIter0_13TeV'),
0325 qualityCuts = [-0.9,-0.8,-0.7]
0326 )
0327 fastSim.toModify(initialStepClassifier1,vertices = 'firstStepPrimaryVerticesBeforeMixing')
0328
0329 from RecoTracker.IterativeTracking.DetachedTripletStep_cff import detachedTripletStepClassifier1
0330 from RecoTracker.IterativeTracking.LowPtTripletStep_cff import lowPtTripletStep
0331 initialStepClassifier2 = detachedTripletStepClassifier1.clone(
0332 src = 'initialStepTracks'
0333 )
0334 fastSim.toModify(initialStepClassifier2,vertices = 'firstStepPrimaryVerticesBeforeMixing')
0335 initialStepClassifier3 = lowPtTripletStep.clone(
0336 src = 'initialStepTracks'
0337 )
0338 fastSim.toModify(initialStepClassifier3,vertices = 'firstStepPrimaryVerticesBeforeMixing')
0339
0340 from RecoTracker.FinalTrackSelectors.ClassifierMerger_cfi import *
0341 initialStep = ClassifierMerger.clone(
0342 inputClassifiers=['initialStepClassifier1','initialStepClassifier2','initialStepClassifier3']
0343 )
0344 trackingPhase1.toReplaceWith(initialStep, initialStepClassifier1.clone(
0345 mva = dict(GBRForestLabel = 'MVASelectorInitialStep_Phase1'),
0346 qualityCuts = [-0.95,-0.85,-0.75]
0347 ))
0348 pp_on_AA.toModify(initialStep,
0349 mva = dict(GBRForestLabel = 'HIMVASelectorInitialStep_Phase1'),
0350 qualityCuts = [-0.9, -0.5, 0.2],
0351 )
0352
0353 from RecoTracker.FinalTrackSelectors.trackTfClassifier_cfi import *
0354 from RecoTracker.FinalTrackSelectors.trackSelectionTf_cfi import *
0355 from RecoTracker.FinalTrackSelectors.trackSelectionTf_CKF_cfi import *
0356 trackdnn.toReplaceWith(initialStep, trackTfClassifier.clone(
0357 src = 'initialStepTracks',
0358 qualityCuts = qualityCutDictionary.InitialStep.value()
0359 ))
0360
0361 (trackdnn & fastSim).toModify(initialStep,vertices = 'firstStepPrimaryVerticesBeforeMixing')
0362
0363 (pp_on_AA & trackdnn).toModify(initialStep, qualityCuts = [0.35, 0.69, 0.88] )
0364
0365
0366 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
0367 initialStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
0368 src = 'initialStepTracks',
0369 useAnyMVA = cms.bool(False),
0370 GBRForestLabel = cms.string('MVASelectorIter0'),
0371 trackSelectors = [
0372 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
0373 name = 'initialStepLoose',
0374 ),
0375 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
0376 name = 'initialStepTight',
0377 preFilterName = 'initialStepLoose',
0378 ),
0379 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
0380 name = 'QualityMasks',
0381 preFilterName = 'initialStepTight',
0382 ),
0383 ]
0384 )
0385 trackingPhase2PU140.toModify(initialStepSelector,
0386 useAnyMVA = None,
0387 GBRForestLabel = None,
0388 trackSelectors= cms.VPSet(
0389 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
0390 name = 'initialStepLoose',
0391 chi2n_par = 2.0,
0392 res_par = ( 0.003, 0.002 ),
0393 minNumberLayers = 3,
0394 maxNumberLostLayers = 3,
0395 minNumber3DLayers = 3,
0396 d0_par1 = ( 0.8, 4.0 ),
0397 dz_par1 = ( 0.9, 4.0 ),
0398 d0_par2 = ( 0.6, 4.0 ),
0399 dz_par2 = ( 0.8, 4.0 )
0400 ),
0401 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
0402 name = 'initialStepTight',
0403 preFilterName = 'initialStepLoose',
0404 chi2n_par = 1.4,
0405 res_par = ( 0.003, 0.002 ),
0406 minNumberLayers = 3,
0407 maxNumberLostLayers = 2,
0408 minNumber3DLayers = 3,
0409 d0_par1 = ( 0.7, 4.0 ),
0410 dz_par1 = ( 0.8, 4.0 ),
0411 d0_par2 = ( 0.5, 4.0 ),
0412 dz_par2 = ( 0.7, 4.0 )
0413 ),
0414 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
0415 name = 'initialStep',
0416 preFilterName = 'initialStepTight',
0417 min_eta = -4.1,
0418 max_eta = 4.1,
0419 chi2n_par = 1.2,
0420 res_par = ( 0.003, 0.001 ),
0421 minNumberLayers = 3,
0422 maxNumberLostLayers = 2,
0423 minNumber3DLayers = 3,
0424 d0_par1 = ( 0.6, 4.0 ),
0425 dz_par1 = ( 0.7, 4.0 ),
0426 d0_par2 = ( 0.45, 4.0 ),
0427 dz_par2 = ( 0.55, 4.0 )
0428 ),
0429 ),
0430 )
0431
0432
0433
0434
0435 InitialStepTask = cms.Task(initialStepSeedLayers,
0436 initialStepTrackingRegions,
0437 initialStepHitDoublets,
0438 initialStepHitTriplets,
0439 initialStepSeeds,
0440 initialStepTrackCandidates,
0441 initialStepTracks,
0442 firstStepPrimaryVerticesUnsorted,
0443 initialStepTrackRefsForJets,
0444 firstStepPrimaryVertices,
0445 initialStepClassifier1,initialStepClassifier2,initialStepClassifier3,
0446 initialStep,caloJetsForTrkTask)
0447 InitialStep = cms.Sequence(InitialStepTask)
0448
0449 from RecoLocalTracker.Phase2TrackerRecHits.Phase2TrackerRecHits_cfi import siPhase2RecHits
0450 from Configuration.ProcessModifiers.trackingMkFitCommon_cff import trackingMkFitCommon
0451 _InitialStepTask_trackingMkFitCommon = InitialStepTask.copy()
0452 _InitialStepTask_trackingMkFitCommon_Phase2 = InitialStepTask.copy()
0453 _InitialStepTask_trackingMkFitCommon.add(mkFitSiPixelHits, mkFitEventOfHits, mkFitGeometryESProducer)
0454 _InitialStepTask_trackingMkFitCommon_Phase2.add(siPhase2RecHits, mkFitSiPixelHits, mkFitSiPhase2Hits, mkFitEventOfHits, mkFitGeometryESProducer)
0455 (trackingMkFitCommon & (~trackingPhase2PU140)).toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFitCommon)
0456 (trackingMkFitCommon & trackingPhase2PU140).toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFitCommon_Phase2)
0457
0458 _InitialStepTask_trackingMkFit = InitialStepTask.copy()
0459 _InitialStepTask_trackingMkFit.add(initialStepTrackCandidatesMkFitSeeds, initialStepTrackCandidatesMkFit, initialStepTrackCandidatesMkFitConfig)
0460 trackingMkFitInitialStep.toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFit)
0461
0462 _InitialStepTask_LowPU = InitialStepTask.copyAndExclude([firstStepPrimaryVerticesUnsorted, initialStepTrackRefsForJets, caloJetsForTrkTask, firstStepPrimaryVertices, initialStepClassifier1, initialStepClassifier2, initialStepClassifier3])
0463 _InitialStepTask_LowPU.replace(initialStep, initialStepSelector)
0464 trackingLowPU.toReplaceWith(InitialStepTask, _InitialStepTask_LowPU)
0465
0466 _InitialStepTask_Phase1 = InitialStepTask.copyAndExclude([initialStepClassifier2, initialStepClassifier3])
0467 _InitialStepTask_Phase1.replace(initialStepHitTriplets, initialStepHitQuadruplets)
0468 trackingPhase1.toReplaceWith(InitialStepTask, _InitialStepTask_Phase1)
0469
0470 _InitialStepTask_trackingPhase2 = InitialStepTask.copyAndExclude([initialStepClassifier1, initialStepClassifier2, initialStepClassifier3])
0471 _InitialStepTask_trackingPhase2.replace(initialStepHitTriplets, initialStepHitQuadruplets)
0472 _InitialStepTask_trackingPhase2.replace(initialStep, initialStepSelector)
0473 trackingPhase2PU140.toReplaceWith(InitialStepTask, _InitialStepTask_trackingPhase2)
0474 (trackingMkFitCommon & trackingPhase2PU140).toModify(mkFitEventOfHits, stripHits=cms.InputTag('mkFitSiPhase2Hits'), useStripStripQualityDB=cms.bool(False))
0475 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidatesMkFit, stripHits=cms.InputTag('mkFitSiPhase2Hits'))
0476 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidates, mkFitStripHits=cms.InputTag('mkFitSiPhase2Hits'))
0477 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidatesMkFitConfig, config='RecoTracker/MkFit/data/mkfit-phase2-initialStep.json')
0478
0479 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0480 _InitialStepTask_fastSim = cms.Task(initialStepTrackingRegions
0481 ,initialStepSeeds
0482 ,initialStepTrackCandidates
0483 ,initialStepTracks
0484 ,firstStepPrimaryVerticesBeforeMixing
0485 ,initialStepClassifier1,initialStepClassifier2,initialStepClassifier3
0486 ,initialStep
0487 )
0488 fastSim.toReplaceWith(InitialStepTask, _InitialStepTask_fastSim)