7 mixedTripletStepClusters = cms.EDProducer(
"TrackClusterRemover",
8 clusterLessSolution = cms.bool(
True),
9 oldClusterRemovalInfo = cms.InputTag(
"detachedTripletStepClusters"),
10 trajectories = cms.InputTag(
"detachedTripletStepTracks"),
11 overrideTrkQuals = cms.InputTag(
'detachedTripletStep'),
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',
27 'FPix1_pos+FPix2_pos+TEC1_pos',
'FPix1_neg+FPix2_neg+TEC1_neg',
28 'FPix2_pos+TEC2_pos+TEC3_pos',
'FPix2_neg+TEC2_neg+TEC3_neg'),
30 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
31 HitProducer = cms.string(
'siPixelRecHits'),
32 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
35 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
36 HitProducer = cms.string(
'siPixelRecHits'),
37 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
40 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
41 useRingSlector = cms.bool(
True),
42 TTRHBuilder = cms.string(
'WithTrackAngle'),
43 minRing = cms.int32(1),
44 maxRing = cms.int32(1),
45 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
51 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
52 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
54 mixedTripletStepSeedsA = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
55 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersA'
56 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
57 mixedTripletStepSeedsA.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
58 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.ptMin = 0.4
59 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
60 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 1.5
62 mixedTripletStepSeedsA.SeedComparitorPSet = cms.PSet(
63 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
64 FilterAtHelixStage = cms.bool(
False),
65 FilterPixelHits = cms.bool(
True),
66 FilterStripHits = cms.bool(
True),
67 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter')
71 mixedTripletStepSeedLayersB = cms.EDProducer(
"SeedingLayersEDProducer",
72 layerList = cms.vstring(
'BPix2+BPix3+TIB1',
'BPix2+BPix3+TIB2'),
74 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
75 HitProducer = cms.string(
'siPixelRecHits'),
76 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
79 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
80 TTRHBuilder = cms.string(
'WithTrackAngle'),
81 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
87 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
88 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
90 mixedTripletStepSeedsB = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
91 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersB'
92 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
93 mixedTripletStepSeedsB.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
94 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.ptMin = 0.6
95 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originHalfLength = 10.0
96 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originRadius = 1.5
98 mixedTripletStepSeedsB.SeedComparitorPSet = cms.PSet(
99 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
100 FilterAtHelixStage = cms.bool(
False),
101 FilterPixelHits = cms.bool(
True),
102 FilterStripHits = cms.bool(
True),
103 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter')
107 mixedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone()
108 mixedTripletStepSeeds.seedCollections = cms.VInputTag(
109 cms.InputTag(
'mixedTripletStepSeedsA'),
110 cms.InputTag(
'mixedTripletStepSeedsB'),
114 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
115 mixedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
116 ComponentName =
'mixedTripletStepTrajectoryFilter',
117 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
119 minimumNumberOfHits = 3,
126 mixedTripletStepPropagator = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
127 ComponentName =
'mixedTripletStepPropagator',
131 mixedTripletStepPropagatorOpposite = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
132 ComponentName =
'mixedTripletStepPropagatorOpposite',
137 mixedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
138 ComponentName = cms.string(
'mixedTripletStepChi2Est'),
139 nSigma = cms.double(3.0),
140 MaxChi2 = cms.double(16.0)
145 mixedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
146 ComponentName =
'mixedTripletStepTrajectoryBuilder',
147 MeasurementTrackerName =
'',
148 trajectoryFilterName =
'mixedTripletStepTrajectoryFilter',
149 propagatorAlong = cms.string(
'mixedTripletStepPropagator'),
150 propagatorOpposite = cms.string(
'mixedTripletStepPropagatorOpposite'),
152 estimator = cms.string(
'mixedTripletStepChi2Est'),
153 maxDPhiForLooperReconstruction = cms.double(2.0),
154 maxPtForLooperReconstruction = cms.double(0.7)
159 mixedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
160 src = cms.InputTag(
'mixedTripletStepSeeds'),
161 clustersToSkip = cms.InputTag(
'mixedTripletStepClusters'),
163 numHitsForSeedCleaner = cms.int32(50),
166 TrajectoryBuilder =
'mixedTripletStepTrajectoryBuilder',
167 doSeedingRegionRebuilding =
True,
168 useHitsSplitting =
True
173 mixedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
174 ComponentName = cms.string(
'mixedTripletStepTrajectoryCleanerBySharedHits'),
175 fractionShared = cms.double(0.11),
176 allowSharedFirstHit = cms.bool(
True)
178 mixedTripletStepTrackCandidates.TrajectoryCleaner =
'mixedTripletStepTrajectoryCleanerBySharedHits'
183 mixedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
184 AlgorithmName = cms.string(
'iter4'),
185 src =
'mixedTripletStepTrackCandidates',
186 Fitter = cms.string(
'FlexibleKFFittingSmoother')
190 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
191 mixedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
192 src=
'mixedTripletStepTracks',
193 useAnyMVA = cms.bool(
True),
194 GBRForestLabel = cms.string(
'MVASelectorIter4'),
195 trackSelectors= cms.VPSet(
196 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
197 name =
'mixedTripletStepVtxLoose',
199 res_par = ( 0.003, 0.001 ),
201 maxNumberLostLayers = 1,
202 minNumber3DLayers = 2,
203 d0_par1 = ( 1.2, 3.0 ),
204 dz_par1 = ( 1.2, 3.0 ),
205 d0_par2 = ( 1.3, 3.0 ),
206 dz_par2 = ( 1.3, 3.0 )
208 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
209 name =
'mixedTripletStepTrkLoose',
211 res_par = ( 0.003, 0.001 ),
213 maxNumberLostLayers = 1,
214 minNumber3DLayers = 3,
215 d0_par1 = ( 1.1, 4.0 ),
216 dz_par1 = ( 1.1, 4.0 ),
217 d0_par2 = ( 1.1, 4.0 ),
218 dz_par2 = ( 1.1, 4.0 )
220 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
221 name =
'mixedTripletStepVtxTight',
222 preFilterName =
'mixedTripletStepVtxLoose',
224 res_par = ( 0.003, 0.001 ),
226 maxNumberLostLayers = 1,
227 minNumber3DLayers = 3,
228 d0_par1 = ( 1.1, 3.0 ),
229 dz_par1 = ( 1.1, 3.0 ),
230 d0_par2 = ( 1.2, 3.0 ),
231 dz_par2 = ( 1.2, 3.0 )
233 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
234 name =
'mixedTripletStepTrkTight',
235 preFilterName =
'mixedTripletStepTrkLoose',
237 res_par = ( 0.003, 0.001 ),
239 maxNumberLostLayers = 1,
240 minNumber3DLayers = 4,
241 d0_par1 = ( 1.0, 4.0 ),
242 dz_par1 = ( 1.0, 4.0 ),
243 d0_par2 = ( 1.0, 4.0 ),
244 dz_par2 = ( 1.0, 4.0 )
246 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
247 name =
'mixedTripletStepVtx',
248 preFilterName =
'mixedTripletStepVtxTight',
250 res_par = ( 0.003, 0.001 ),
252 maxNumberLostLayers = 1,
253 minNumber3DLayers = 3,
254 max_minMissHitOutOrIn = 1,
255 max_lostHitFraction = 1.0,
256 d0_par1 = ( 1.0, 3.0 ),
257 dz_par1 = ( 1.0, 3.0 ),
258 d0_par2 = ( 1.1, 3.0 ),
259 dz_par2 = ( 1.1, 3.0 )
261 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
262 name =
'mixedTripletStepTrk',
263 preFilterName =
'mixedTripletStepTrkTight',
265 res_par = ( 0.003, 0.001 ),
267 maxNumberLostLayers = 0,
268 minNumber3DLayers = 4,
269 max_minMissHitOutOrIn = 1,
270 max_lostHitFraction = 1.0,
271 d0_par1 = ( 0.8, 4.0 ),
272 dz_par1 = ( 0.8, 4.0 ),
273 d0_par2 = ( 0.8, 4.0 ),
274 dz_par2 = ( 0.8, 4.0 )
279 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
280 mixedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
281 TrackProducers = cms.VInputTag(cms.InputTag(
'mixedTripletStepTracks'),
282 cms.InputTag(
'mixedTripletStepTracks')),
283 hasSelector=cms.vint32(1,1),
284 shareFrac=cms.double(0.11),
285 indivShareFrac=cms.vdouble(0.11,0.11),
286 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepVtx"),
287 cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepTrk")),
288 setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
289 writeOnlyTrkQuals=cms.bool(
True)
293 MixedTripletStep = cms.Sequence(mixedTripletStepClusters*
294 mixedTripletStepSeedLayersA*
295 mixedTripletStepSeedsA*
296 mixedTripletStepSeedLayersB*
297 mixedTripletStepSeedsB*
298 mixedTripletStepSeeds*
299 mixedTripletStepTrackCandidates*
300 mixedTripletStepTracks*
301 mixedTripletStepSelector*