1 import FWCore.ParameterSet.Config
as cms
9 detachedTripletStepClusters = trackClusterRemover.clone(
10 maxChi2 = cms.double(9.0),
11 trajectories = cms.InputTag(
"pixelPairStepTracks"),
12 pixelClusters = cms.InputTag(
"siPixelClusters"),
13 stripClusters = cms.InputTag(
"siStripClusters"),
14 oldClusterRemovalInfo = cms.InputTag(
"pixelPairStepClusters"),
15 overrideTrkQuals = cms.InputTag(
'pixelPairStepSelector',
'pixelPairStep'),
16 TrackQuality = cms.string(
'highPurity'),
17 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
22 detachedTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
23 detachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
24 detachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
28 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
29 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
31 detachedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
32 detachedTripletStepSeeds.OrderedHitsFactoryPSet.SeedingLayers =
'detachedTripletStepSeedLayers'
33 detachedTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
34 detachedTripletStepSeeds.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
35 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.ptMin = 0.5
36 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
37 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 1.0
39 detachedTripletStepSeeds.SeedComparitorPSet = cms.PSet(
40 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
41 FilterAtHelixStage = cms.bool(
False),
42 FilterPixelHits = cms.bool(
True),
43 FilterStripHits = cms.bool(
False),
44 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter'),
45 ClusterShapeCacheSrc = cms.InputTag(
'siPixelClusterShapeCache')
50 detachedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
51 maxLostHitsFraction = cms.double(1./10.),
52 constantValueForLostHitsFractionFilter = cms.double(0.601),
53 minimumNumberOfHits = 3,
58 detachedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
59 ComponentName = cms.string(
'detachedTripletStepChi2Est'),
60 nSigma = cms.double(3.0),
61 MaxChi2 = cms.double(9.0)
66 detachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
67 MeasurementTrackerName =
'',
68 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryFilter')),
69 clustersToSkip = cms.InputTag(
'detachedTripletStepClusters'),
71 alwaysUseInvalidHits =
False,
72 estimator = cms.string(
'detachedTripletStepChi2Est'),
73 maxDPhiForLooperReconstruction = cms.double(2.0),
74 maxPtForLooperReconstruction = cms.double(0.7)
79 detachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
80 src = cms.InputTag(
'detachedTripletStepSeeds'),
82 numHitsForSeedCleaner = cms.int32(50),
83 onlyPixelHitsForSeedCleaner = cms.bool(
True),
84 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryBuilder')),
85 doSeedingRegionRebuilding =
True,
86 useHitsSplitting =
True
90 detachedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
91 ComponentName = cms.string(
'detachedTripletStepTrajectoryCleanerBySharedHits'),
92 fractionShared = cms.double(0.13),
93 allowSharedFirstHit = cms.bool(
True)
95 detachedTripletStepTrackCandidates.TrajectoryCleaner =
'detachedTripletStepTrajectoryCleanerBySharedHits'
100 detachedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
101 AlgorithmName = cms.string(
'detachedTripletStep'),
102 src =
'detachedTripletStepTrackCandidates',
103 Fitter = cms.string(
'FlexibleKFFittingSmoother')
109 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
110 detachedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
111 src=
'detachedTripletStepTracks',
112 trackSelectors= cms.VPSet(
113 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
114 name =
'detachedTripletStepVtxLoose',
116 res_par = ( 0.003, 0.001 ),
118 maxNumberLostLayers = 3,
119 minNumber3DLayers = 3,
120 d0_par1 = ( 0.9, 3.0 ),
121 dz_par1 = ( 0.9, 3.0 ),
122 d0_par2 = ( 1.0, 3.0 ),
123 dz_par2 = ( 1.0, 3.0 )
125 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
126 name =
'detachedTripletStepTrkLoose',
128 res_par = ( 0.003, 0.001 ),
130 maxNumberLostLayers = 2,
131 minNumber3DLayers = 3,
132 d0_par1 = ( 1.3, 4.0 ),
133 dz_par1 = ( 1.4, 4.0 ),
134 d0_par2 = ( 1.4, 4.0 ),
135 dz_par2 = ( 1.4, 4.0 )
137 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
138 name =
'detachedTripletStepVtxTight',
139 preFilterName =
'detachedTripletStepVtxLoose',
141 res_par = ( 0.003, 0.001 ),
143 maxNumberLostLayers = 1,
144 minNumber3DLayers = 3,
145 d0_par1 = ( 0.95, 3.0 ),
146 dz_par1 = ( 0.9, 3.0 ),
147 d0_par2 = ( 1.0, 3.0 ),
148 dz_par2 = ( 1.0, 3.0 )
150 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
151 name =
'detachedTripletStepTrkTight',
152 preFilterName =
'detachedTripletStepTrkLoose',
154 res_par = ( 0.003, 0.001 ),
156 maxNumberLostLayers = 1,
157 minNumber3DLayers = 4,
158 d0_par1 = ( 1.1, 4.0 ),
159 dz_par1 = ( 1.1, 4.0 ),
160 d0_par2 = ( 1.1, 4.0 ),
161 dz_par2 = ( 1.1, 4.0 )
163 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
164 name =
'detachedTripletStepVtx',
165 preFilterName =
'detachedTripletStepVtxTight',
167 res_par = ( 0.003, 0.001 ),
169 maxNumberLostLayers = 1,
170 minNumber3DLayers = 3,
171 d0_par1 = ( 0.8, 3.0 ),
172 dz_par1 = ( 0.8, 3.0 ),
173 d0_par2 = ( 0.8, 3.0 ),
174 dz_par2 = ( 0.8, 3.0 )
176 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
177 name =
'detachedTripletStepTrk',
178 preFilterName =
'detachedTripletStepTrkTight',
180 res_par = ( 0.003, 0.001 ),
182 maxNumberLostLayers = 0,
183 minNumber3DLayers = 4,
184 d0_par1 = ( 1.0, 4.0 ),
185 dz_par1 = ( 1.0, 4.0 ),
186 d0_par2 = ( 0.9, 4.0 ),
187 dz_par2 = ( 0.9, 4.0 )
194 detachedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
195 TrackProducers = cms.VInputTag(cms.InputTag(
'detachedTripletStepTracks'),
196 cms.InputTag(
'detachedTripletStepTracks')),
197 hasSelector=cms.vint32(1,1),
198 shareFrac = cms.double(0.13),
199 indivShareFrac=cms.vdouble(0.13,0.13),
200 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepVtx"),
201 cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepTrk")),
202 setsToMerge = cms.VPSet(cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
203 writeOnlyTrkQuals=cms.bool(
True)
206 DetachedTripletStep = cms.Sequence(detachedTripletStepClusters*
207 detachedTripletStepSeedLayers*
208 detachedTripletStepSeeds*
209 detachedTripletStepTrackCandidates*
210 detachedTripletStepTracks*
211 detachedTripletStepSelector*