1 import FWCore.ParameterSet.Config
as cms
2 from Configuration.StandardSequences.Eras
import eras
12 initialStepSeedLayersPreSplitting = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
13 initialStepSeedLayersPreSplitting.FPix.HitProducer =
'siPixelRecHitsPreSplitting'
14 initialStepSeedLayersPreSplitting.BPix.HitProducer =
'siPixelRecHitsPreSplitting'
19 initialStepSeedsPreSplitting = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
20 RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
21 ComponentName = cms.string(
'GlobalRegionProducerFromBeamSpot'),
22 RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
29 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.SeedingLayers =
'initialStepSeedLayersPreSplitting'
32 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
33 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone()
34 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet.clusterShapeCacheSrc =
'siPixelClusterShapeCachePreSplitting'
35 initialStepSeedsPreSplitting.ClusterCheckPSet.PixelClusterCollectionLabel =
'siPixelClustersPreSplitting'
39 initialStepTrajectoryFilterBasePreSplitting = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
40 minimumNumberOfHits = 3,
43 minGoodStripCharge = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutLoose'))
45 import RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
46 initialStepTrajectoryFilterShapePreSplitting = RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
47 initialStepTrajectoryFilterPreSplitting = cms.PSet(
48 ComponentType = cms.string(
'CompositeTrajectoryFilter'),
50 cms.PSet( refToPSet_ = cms.string(
'initialStepTrajectoryFilterBasePreSplitting')),
51 cms.PSet( refToPSet_ = cms.string(
'initialStepTrajectoryFilterShapePreSplitting'))),
54 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
55 initialStepChi2EstPreSplitting = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
56 ComponentName = cms.string(
'initialStepChi2EstPreSplitting'),
57 nSigma = cms.double(3.0),
58 MaxChi2 = cms.double(30.0),
59 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTiny')),
60 pTChargeCutThreshold = cms.double(15.)
64 initialStepTrajectoryBuilderPreSplitting = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
65 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'initialStepTrajectoryFilterPreSplitting')),
66 alwaysUseInvalidHits =
True,
68 estimator = cms.string(
'initialStepChi2Est'),
69 maxDPhiForLooperReconstruction = cms.double(2.0),
70 maxPtForLooperReconstruction = cms.double(0.7)
74 initialStepTrackCandidatesPreSplitting = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
75 src = cms.InputTag(
'initialStepSeedsPreSplitting'),
77 numHitsForSeedCleaner = cms.int32(50),
78 onlyPixelHitsForSeedCleaner = cms.bool(
True),
79 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'initialStepTrajectoryBuilderPreSplitting')),
80 doSeedingRegionRebuilding =
True,
81 useHitsSplitting =
True
83 initialStepTrackCandidatesPreSplitting.MeasurementTrackerEvent =
'MeasurementTrackerEventPreSplitting'
87 initialStepTracksPreSplitting = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
88 src =
'initialStepTrackCandidatesPreSplitting',
89 AlgorithmName = cms.string(
'initialStep'),
90 Fitter = cms.string(
'FlexibleKFFittingSmoother')
92 initialStepTracksPreSplitting.MeasurementTrackerEvent =
'MeasurementTrackerEventPreSplitting'
96 firstStepPrimaryVerticesPreSplitting = RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi.offlinePrimaryVertices.clone()
97 firstStepPrimaryVerticesPreSplitting.TrackLabel = cms.InputTag(
"initialStepTracksPreSplitting")
98 firstStepPrimaryVerticesPreSplitting.vertexCollections = cms.VPSet(
99 [cms.PSet(label=cms.string(
""),
100 algorithm=cms.string(
"AdaptiveVertexFitter"),
101 minNdof=cms.double(0.0),
102 useBeamConstraint = cms.bool(
False),
103 maxDistanceToBeam = cms.double(1.0)
110 initialStepTrackRefsForJetsPreSplitting = initialStepTrackRefsForJets.clone(
111 src =
'initialStepTracksPreSplitting')
112 caloTowerForTrkPreSplitting = caloTowerForTrk.clone()
113 ak4CaloJetsForTrkPreSplitting = ak4CaloJetsForTrk.clone(
114 src =
'caloTowerForTrkPreSplitting',
115 srcPVs =
'firstStepPrimaryVerticesPreSplitting')
116 jetsForCoreTrackingPreSplitting = jetsForCoreTracking.clone(
117 src =
'ak4CaloJetsForTrkPreSplitting')
120 from RecoLocalTracker.SubCollectionProducers.jetCoreClusterSplitter_cfi
import jetCoreClusterSplitter
121 siPixelClusters = jetCoreClusterSplitter.clone(
122 pixelClusters = cms.InputTag(
'siPixelClustersPreSplitting'),
123 vertices =
'firstStepPrimaryVerticesPreSplitting',
124 cores =
'jetsForCoreTrackingPreSplitting'
131 InitialStepPreSplitting = cms.Sequence(initialStepSeedLayersPreSplitting*
132 initialStepSeedsPreSplitting*
133 initialStepTrackCandidatesPreSplitting*
134 initialStepTracksPreSplitting*
135 firstStepPrimaryVerticesPreSplitting*
136 initialStepTrackRefsForJetsPreSplitting*
137 caloTowerForTrkPreSplitting*
138 ak4CaloJetsForTrkPreSplitting*
139 jetsForCoreTrackingPreSplitting*
142 MeasurementTrackerEvent*
143 siPixelClusterShapeCache)
160 eras.trackingLowPU.toReplaceWith(siPixelClusters, _siPixelClusters)
161 eras.trackingLowPU.toReplaceWith(InitialStepPreSplitting, cms.Sequence(
164 MeasurementTrackerEvent +
165 siPixelClusterShapeCache