7 mixedTripletStepClusters = cms.EDProducer(
"TrackClusterRemover",
8 clusterLessSolution = cms.bool(
True),
9 oldClusterRemovalInfo = cms.InputTag(
"pixelPairStepClusters"),
10 trajectories = cms.InputTag(
"pixelPairStepTracks"),
11 overrideTrkQuals = cms.InputTag(
'pixelPairStepSelector',
'pixelPairStep'),
12 TrackQuality = cms.string(
'highPurity'),
13 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
14 pixelClusters = cms.InputTag(
"siPixelClusters"),
15 stripClusters = cms.InputTag(
"siStripClusters"),
17 maxChi2 = cms.double(9.0)
22 mixedTripletStepSeedLayersA = cms.EDProducer(
"SeedingLayersEDProducer",
23 layerList = cms.vstring(
'BPix1+BPix2+BPix3',
24 'BPix1+BPix2+FPix1_pos',
'BPix1+BPix2+FPix1_neg',
25 'BPix1+FPix1_pos+FPix2_pos',
'BPix1+FPix1_neg+FPix2_neg',
26 'BPix2+FPix1_pos+FPix2_pos',
'BPix2+FPix1_neg+FPix2_neg'),
28 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
29 HitProducer = cms.string(
'siPixelRecHits'),
30 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
33 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
34 HitProducer = cms.string(
'siPixelRecHits'),
35 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
38 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
39 useRingSlector = cms.bool(
True),
40 TTRHBuilder = cms.string(
'WithTrackAngle'),
41 minRing = cms.int32(1),
42 maxRing = cms.int32(1),
43 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
49 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
50 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
52 mixedTripletStepSeedsA = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
53 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersA'
54 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
55 mixedTripletStepSeedsA.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
56 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.ptMin = 0.4
57 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
58 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 1.5
60 mixedTripletStepSeedsA.SeedComparitorPSet = cms.PSet(
61 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
62 FilterAtHelixStage = cms.bool(
False),
63 FilterPixelHits = cms.bool(
True),
64 FilterStripHits = cms.bool(
True),
65 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter')
69 mixedTripletStepSeedLayersB = cms.EDProducer(
"SeedingLayersEDProducer",
70 layerList = cms.vstring(
'BPix2+BPix3+TIB1'),
72 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
73 HitProducer = cms.string(
'siPixelRecHits'),
74 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
77 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
78 TTRHBuilder = cms.string(
'WithTrackAngle'),
79 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
85 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
86 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
88 mixedTripletStepSeedsB = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
89 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersB'
90 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
91 mixedTripletStepSeedsB.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
92 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.ptMin = 0.6
93 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originHalfLength = 10.0
94 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originRadius = 1.5
96 mixedTripletStepSeedsB.SeedComparitorPSet = cms.PSet(
97 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
98 FilterAtHelixStage = cms.bool(
False),
99 FilterPixelHits = cms.bool(
True),
100 FilterStripHits = cms.bool(
True),
101 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter')
105 mixedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone()
106 mixedTripletStepSeeds.seedCollections = cms.VInputTag(
107 cms.InputTag(
'mixedTripletStepSeedsA'),
108 cms.InputTag(
'mixedTripletStepSeedsB'),
112 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
113 mixedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
114 ComponentName =
'mixedTripletStepTrajectoryFilter',
115 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
117 minimumNumberOfHits = 3,
125 mixedTripletStepPropagator = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
127 ComponentName =
'mixedTripletStepPropagator',
132 mixedTripletStepPropagatorOpposite = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
134 ComponentName =
'mixedTripletStepPropagatorOpposite',
139 mixedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
140 ComponentName = cms.string(
'mixedTripletStepChi2Est'),
141 nSigma = cms.double(3.0),
142 MaxChi2 = cms.double(16.0)
147 mixedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
148 ComponentName =
'mixedTripletStepTrajectoryBuilder',
149 MeasurementTrackerName =
'',
150 trajectoryFilterName =
'mixedTripletStepTrajectoryFilter',
151 propagatorAlong = cms.string(
'mixedTripletStepPropagator'),
152 propagatorOpposite = cms.string(
'mixedTripletStepPropagatorOpposite'),
154 estimator = cms.string(
'mixedTripletStepChi2Est'),
155 maxDPhiForLooperReconstruction = cms.double(2.0),
156 maxPtForLooperReconstruction = cms.double(0.7)
161 mixedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
162 src = cms.InputTag(
'mixedTripletStepSeeds'),
163 clustersToSkip = cms.InputTag(
'mixedTripletStepClusters'),
165 numHitsForSeedCleaner = cms.int32(50),
168 TrajectoryBuilder =
'mixedTripletStepTrajectoryBuilder',
169 doSeedingRegionRebuilding =
True,
170 useHitsSplitting =
True
175 mixedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
176 ComponentName = cms.string(
'mixedTripletStepTrajectoryCleanerBySharedHits'),
177 fractionShared = cms.double(0.11),
178 allowSharedFirstHit = cms.bool(
True)
180 mixedTripletStepTrackCandidates.TrajectoryCleaner =
'mixedTripletStepTrajectoryCleanerBySharedHits'
185 mixedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
186 AlgorithmName = cms.string(
'iter4'),
187 src =
'mixedTripletStepTrackCandidates',
188 Fitter = cms.string(
'FlexibleKFFittingSmoother')
192 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
193 mixedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
194 src=
'mixedTripletStepTracks',
195 useAnyMVA = cms.bool(
True),
196 GBRForestLabel = cms.string(
'MVASelectorIter4'),
197 trackSelectors= cms.VPSet(
198 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
199 name =
'mixedTripletStepVtxLoose',
201 res_par = ( 0.003, 0.001 ),
203 maxNumberLostLayers = 1,
204 minNumber3DLayers = 2,
205 d0_par1 = ( 1.2, 3.0 ),
206 dz_par1 = ( 1.2, 3.0 ),
207 d0_par2 = ( 1.3, 3.0 ),
208 dz_par2 = ( 1.3, 3.0 )
210 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
211 name =
'mixedTripletStepTrkLoose',
213 res_par = ( 0.003, 0.001 ),
215 maxNumberLostLayers = 1,
216 minNumber3DLayers = 3,
217 d0_par1 = ( 1.1, 4.0 ),
218 dz_par1 = ( 1.1, 4.0 ),
219 d0_par2 = ( 1.1, 4.0 ),
220 dz_par2 = ( 1.1, 4.0 )
222 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
223 name =
'mixedTripletStepVtxTight',
224 preFilterName =
'mixedTripletStepVtxLoose',
226 res_par = ( 0.003, 0.001 ),
228 maxNumberLostLayers = 1,
229 minNumber3DLayers = 3,
230 d0_par1 = ( 1.1, 3.0 ),
231 dz_par1 = ( 1.1, 3.0 ),
232 d0_par2 = ( 1.2, 3.0 ),
233 dz_par2 = ( 1.2, 3.0 )
235 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
236 name =
'mixedTripletStepTrkTight',
237 preFilterName =
'mixedTripletStepTrkLoose',
239 res_par = ( 0.003, 0.001 ),
241 maxNumberLostLayers = 1,
242 minNumber3DLayers = 4,
243 d0_par1 = ( 1.0, 4.0 ),
244 dz_par1 = ( 1.0, 4.0 ),
245 d0_par2 = ( 1.0, 4.0 ),
246 dz_par2 = ( 1.0, 4.0 )
248 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
249 name =
'mixedTripletStepVtx',
250 preFilterName =
'mixedTripletStepVtxTight',
252 res_par = ( 0.003, 0.001 ),
254 maxNumberLostLayers = 1,
255 minNumber3DLayers = 3,
256 max_minMissHitOutOrIn = 1,
257 max_lostHitFraction = 1.0,
258 d0_par1 = ( 1.0, 3.0 ),
259 dz_par1 = ( 1.0, 3.0 ),
260 d0_par2 = ( 1.1, 3.0 ),
261 dz_par2 = ( 1.1, 3.0 )
263 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
264 name =
'mixedTripletStepTrk',
265 preFilterName =
'mixedTripletStepTrkTight',
267 res_par = ( 0.003, 0.001 ),
269 maxNumberLostLayers = 0,
270 minNumber3DLayers = 4,
271 max_minMissHitOutOrIn = 1,
272 max_lostHitFraction = 1.0,
273 d0_par1 = ( 0.8, 4.0 ),
274 dz_par1 = ( 0.8, 4.0 ),
275 d0_par2 = ( 0.8, 4.0 ),
276 dz_par2 = ( 0.8, 4.0 )
281 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
282 mixedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
283 TrackProducers = cms.VInputTag(cms.InputTag(
'mixedTripletStepTracks'),
284 cms.InputTag(
'mixedTripletStepTracks')),
285 hasSelector=cms.vint32(1,1),
286 shareFrac=cms.double(0.11),
287 indivShareFrac=cms.vdouble(0.11,0.11),
288 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepVtx"),
289 cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepTrk")),
290 setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
291 writeOnlyTrkQuals=cms.bool(
True)
295 MixedTripletStep = cms.Sequence(mixedTripletStepClusters*
296 mixedTripletStepSeedLayersA*
297 mixedTripletStepSeedsA*
298 mixedTripletStepSeedLayersB*
299 mixedTripletStepSeedsB*
300 mixedTripletStepSeeds*
301 mixedTripletStepTrackCandidates*
302 mixedTripletStepTracks*
303 mixedTripletStepSelector*