9 detachedTripletStepClusters = cms.EDProducer(
"TrackClusterRemover",
10 clusterLessSolution = cms.bool(
True),
11 oldClusterRemovalInfo = cms.InputTag(
"pixelPairStepClusters"),
12 trajectories = cms.InputTag(
"pixelPairStepTracks"),
13 overrideTrkQuals = cms.InputTag(
'pixelPairStepSelector',
'pixelPairStep'),
14 TrackQuality = cms.string(
'highPurity'),
15 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
16 pixelClusters = cms.InputTag(
"siPixelClusters"),
17 stripClusters = cms.InputTag(
"siStripClusters"),
19 maxChi2 = cms.double(9.0)
25 detachedTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
26 detachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
27 detachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
31 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
32 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
34 detachedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
35 detachedTripletStepSeeds.OrderedHitsFactoryPSet.SeedingLayers =
'detachedTripletStepSeedLayers'
36 detachedTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
37 detachedTripletStepSeeds.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
38 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.ptMin = 0.5
39 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
40 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 1.0
42 detachedTripletStepSeeds.SeedComparitorPSet = cms.PSet(
43 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
44 FilterAtHelixStage = cms.bool(
False),
45 FilterPixelHits = cms.bool(
True),
46 FilterStripHits = cms.bool(
False),
47 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter'),
48 ClusterShapeCacheSrc = cms.InputTag(
'siPixelClusterShapeCache')
53 detachedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
54 maxLostHitsFraction = cms.double(1./10.),
55 constantValueForLostHitsFractionFilter = cms.double(0.601),
56 minimumNumberOfHits = 3,
61 detachedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
62 ComponentName = cms.string(
'detachedTripletStepChi2Est'),
63 nSigma = cms.double(3.0),
64 MaxChi2 = cms.double(9.0)
69 detachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
70 MeasurementTrackerName =
'',
71 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryFilter')),
72 clustersToSkip = cms.InputTag(
'detachedTripletStepClusters'),
74 alwaysUseInvalidHits =
False,
75 estimator = cms.string(
'detachedTripletStepChi2Est'),
76 maxDPhiForLooperReconstruction = cms.double(2.0),
77 maxPtForLooperReconstruction = cms.double(0.7)
82 detachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
83 src = cms.InputTag(
'detachedTripletStepSeeds'),
85 numHitsForSeedCleaner = cms.int32(50),
86 onlyPixelHitsForSeedCleaner = cms.bool(
True),
87 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryBuilder')),
88 doSeedingRegionRebuilding =
True,
89 useHitsSplitting =
True
93 detachedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
94 ComponentName = cms.string(
'detachedTripletStepTrajectoryCleanerBySharedHits'),
95 fractionShared = cms.double(0.13),
96 allowSharedFirstHit = cms.bool(
True)
98 detachedTripletStepTrackCandidates.TrajectoryCleaner =
'detachedTripletStepTrajectoryCleanerBySharedHits'
103 detachedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
104 AlgorithmName = cms.string(
'iter3'),
105 src =
'detachedTripletStepTrackCandidates',
106 Fitter = cms.string(
'FlexibleKFFittingSmoother')
112 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
113 detachedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
114 src=
'detachedTripletStepTracks',
115 trackSelectors= cms.VPSet(
116 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
117 name =
'detachedTripletStepVtxLoose',
119 res_par = ( 0.003, 0.001 ),
121 maxNumberLostLayers = 3,
122 minNumber3DLayers = 3,
123 d0_par1 = ( 0.9, 3.0 ),
124 dz_par1 = ( 0.9, 3.0 ),
125 d0_par2 = ( 1.0, 3.0 ),
126 dz_par2 = ( 1.0, 3.0 )
128 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
129 name =
'detachedTripletStepTrkLoose',
131 res_par = ( 0.003, 0.001 ),
133 maxNumberLostLayers = 2,
134 minNumber3DLayers = 3,
135 d0_par1 = ( 1.3, 4.0 ),
136 dz_par1 = ( 1.4, 4.0 ),
137 d0_par2 = ( 1.4, 4.0 ),
138 dz_par2 = ( 1.4, 4.0 )
140 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
141 name =
'detachedTripletStepVtxTight',
142 preFilterName =
'detachedTripletStepVtxLoose',
144 res_par = ( 0.003, 0.001 ),
146 maxNumberLostLayers = 1,
147 minNumber3DLayers = 3,
148 d0_par1 = ( 0.95, 3.0 ),
149 dz_par1 = ( 0.9, 3.0 ),
150 d0_par2 = ( 1.0, 3.0 ),
151 dz_par2 = ( 1.0, 3.0 )
153 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
154 name =
'detachedTripletStepTrkTight',
155 preFilterName =
'detachedTripletStepTrkLoose',
157 res_par = ( 0.003, 0.001 ),
159 maxNumberLostLayers = 1,
160 minNumber3DLayers = 4,
161 d0_par1 = ( 1.1, 4.0 ),
162 dz_par1 = ( 1.1, 4.0 ),
163 d0_par2 = ( 1.1, 4.0 ),
164 dz_par2 = ( 1.1, 4.0 )
166 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
167 name =
'detachedTripletStepVtx',
168 preFilterName =
'detachedTripletStepVtxTight',
170 res_par = ( 0.003, 0.001 ),
172 maxNumberLostLayers = 1,
173 minNumber3DLayers = 3,
174 d0_par1 = ( 0.8, 3.0 ),
175 dz_par1 = ( 0.8, 3.0 ),
176 d0_par2 = ( 0.8, 3.0 ),
177 dz_par2 = ( 0.8, 3.0 )
179 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
180 name =
'detachedTripletStepTrk',
181 preFilterName =
'detachedTripletStepTrkTight',
183 res_par = ( 0.003, 0.001 ),
185 maxNumberLostLayers = 0,
186 minNumber3DLayers = 4,
187 d0_par1 = ( 1.0, 4.0 ),
188 dz_par1 = ( 1.0, 4.0 ),
189 d0_par2 = ( 0.9, 4.0 ),
190 dz_par2 = ( 0.9, 4.0 )
196 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
197 detachedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
198 TrackProducers = cms.VInputTag(cms.InputTag(
'detachedTripletStepTracks'),
199 cms.InputTag(
'detachedTripletStepTracks')),
200 hasSelector=cms.vint32(1,1),
201 shareFrac = cms.double(0.13),
202 indivShareFrac=cms.vdouble(0.13,0.13),
203 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepVtx"),
204 cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepTrk")),
205 setsToMerge = cms.VPSet(cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
206 writeOnlyTrkQuals=cms.bool(
True)
209 DetachedTripletStep = cms.Sequence(detachedTripletStepClusters*
210 detachedTripletStepSeedLayers*
211 detachedTripletStepSeeds*
212 detachedTripletStepTrackCandidates*
213 detachedTripletStepTracks*
214 detachedTripletStepSelector*