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 'FPix1_pos+FPix2_pos+TEC2_pos',
'FPix1_neg+FPix2_neg+TEC2_neg',
29 'FPix2_pos+TEC2_pos+TEC3_pos',
'FPix2_neg+TEC2_neg+TEC3_neg'),
31 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
32 HitProducer = cms.string(
'siPixelRecHits'),
33 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
36 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
37 HitProducer = cms.string(
'siPixelRecHits'),
38 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
41 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
42 useRingSlector = cms.bool(
True),
43 TTRHBuilder = cms.string(
'WithTrackAngle'),
44 minRing = cms.int32(1),
45 maxRing = cms.int32(1),
46 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
52 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
53 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
55 mixedTripletStepSeedsA = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
56 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersA'
57 mixedTripletStepSeedsA.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
58 mixedTripletStepSeedsA.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
59 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.ptMin = 0.3
60 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 20.0
61 mixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 1.5
64 mixedTripletStepSeedLayersB = cms.EDProducer(
"SeedingLayersEDProducer",
65 layerList = cms.vstring(
'BPix2+BPix3+TIB1',
'BPix2+BPix3+TIB2'),
67 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4MixedTriplets'),
68 HitProducer = cms.string(
'siPixelRecHits'),
69 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
72 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
73 TTRHBuilder = cms.string(
'WithTrackAngle'),
74 skipClusters = cms.InputTag(
'mixedTripletStepClusters')
80 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
81 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
83 mixedTripletStepSeedsB = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
84 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.SeedingLayers =
'mixedTripletStepSeedLayersB'
85 mixedTripletStepSeedsB.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
86 mixedTripletStepSeedsB.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
87 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.ptMin = 0.4
88 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
89 mixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originRadius = 1.5
91 mixedTripletStepSeedsB.SeedComparitorPSet = cms.PSet(
92 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
93 FilterAtHelixStage = cms.bool(
False),
94 FilterPixelHits = cms.bool(
True),
95 FilterStripHits = cms.bool(
True),
96 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter')
100 mixedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone()
101 mixedTripletStepSeeds.seedCollections = cms.VInputTag(
102 cms.InputTag(
'mixedTripletStepSeedsA'),
103 cms.InputTag(
'mixedTripletStepSeedsB'),
107 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
108 mixedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
109 ComponentName =
'mixedTripletStepTrajectoryFilter',
110 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
112 minimumNumberOfHits = 3,
119 mixedTripletStepPropagator = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
120 ComponentName =
'mixedTripletStepPropagator',
124 mixedTripletStepPropagatorOpposite = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
125 ComponentName =
'mixedTripletStepPropagatorOpposite',
130 mixedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
131 ComponentName = cms.string(
'mixedTripletStepChi2Est'),
132 nSigma = cms.double(3.0),
133 MaxChi2 = cms.double(25.0)
138 mixedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
139 ComponentName =
'mixedTripletStepTrajectoryBuilder',
140 MeasurementTrackerName =
'',
141 trajectoryFilterName =
'mixedTripletStepTrajectoryFilter',
142 propagatorAlong = cms.string(
'mixedTripletStepPropagator'),
143 propagatorOpposite = cms.string(
'mixedTripletStepPropagatorOpposite'),
144 clustersToSkip = cms.InputTag(
'mixedTripletStepClusters'),
146 estimator = cms.string(
'mixedTripletStepChi2Est'),
147 maxDPhiForLooperReconstruction = cms.double(2.0),
148 maxPtForLooperReconstruction = cms.double(0.7)
153 mixedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
154 src = cms.InputTag(
'mixedTripletStepSeeds'),
156 numHitsForSeedCleaner = cms.int32(50),
158 TrajectoryBuilder =
'mixedTripletStepTrajectoryBuilder',
159 doSeedingRegionRebuilding =
True,
160 useHitsSplitting =
True
164 mixedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
165 ComponentName = cms.string(
'mixedTripletStepTrajectoryCleanerBySharedHits'),
166 fractionShared = cms.double(0.11),
167 allowSharedFirstHit = cms.bool(
True)
169 mixedTripletStepTrackCandidates.TrajectoryCleaner =
'mixedTripletStepTrajectoryCleanerBySharedHits'
174 mixedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
175 AlgorithmName = cms.string(
'iter4'),
176 src =
'mixedTripletStepTrackCandidates',
177 Fitter = cms.string(
'FlexibleKFFittingSmoother')
181 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
182 mixedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
183 src=
'mixedTripletStepTracks',
184 trackSelectors= cms.VPSet(
185 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
186 name =
'mixedTripletStepVtxLoose',
188 res_par = ( 0.003, 0.001 ),
190 maxNumberLostLayers = 1,
191 minNumber3DLayers = 3,
192 d0_par1 = ( 1.2, 3.0 ),
193 dz_par1 = ( 1.2, 3.0 ),
194 d0_par2 = ( 1.3, 3.0 ),
195 dz_par2 = ( 1.3, 3.0 )
197 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
198 name =
'mixedTripletStepTrkLoose',
200 res_par = ( 0.003, 0.001 ),
202 maxNumberLostLayers = 1,
203 minNumber3DLayers = 3,
204 d0_par1 = ( 1.0, 4.0 ),
205 dz_par1 = ( 1.1, 4.0 ),
206 d0_par2 = ( 1.1, 4.0 ),
207 dz_par2 = ( 1.1, 4.0 )
209 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
210 name =
'mixedTripletStepVtxTight',
211 preFilterName =
'mixedTripletStepVtxLoose',
213 res_par = ( 0.003, 0.001 ),
215 maxNumberLostLayers = 1,
216 minNumber3DLayers = 3,
217 d0_par1 = ( 1.0, 3.0 ),
218 dz_par1 = ( 1.1, 3.0 ),
219 d0_par2 = ( 1.1, 3.0 ),
220 dz_par2 = ( 1.1, 3.0 )
222 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
223 name =
'mixedTripletStepTrkTight',
224 preFilterName =
'mixedTripletStepTrkLoose',
226 res_par = ( 0.003, 0.001 ),
228 maxNumberLostLayers = 1,
229 minNumber3DLayers = 4,
230 d0_par1 = ( 0.9, 4.0 ),
231 dz_par1 = ( 1.0, 4.0 ),
232 d0_par2 = ( 1.0, 4.0 ),
233 dz_par2 = ( 1.0, 4.0 )
235 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
236 name =
'mixedTripletStepVtx',
237 preFilterName =
'mixedTripletStepVtxTight',
239 res_par = ( 0.003, 0.001 ),
241 maxNumberLostLayers = 1,
242 minNumber3DLayers = 3,
243 max_minMissHitOutOrIn = 1,
244 d0_par1 = ( 0.9, 3.0 ),
245 dz_par1 = ( 1.0, 3.0 ),
246 d0_par2 = ( 1.0, 3.0 ),
247 dz_par2 = ( 1.0, 3.0 )
249 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
250 name =
'mixedTripletStepTrk',
251 preFilterName =
'mixedTripletStepTrkTight',
253 res_par = ( 0.003, 0.001 ),
255 maxNumberLostLayers = 0,
256 minNumber3DLayers = 4,
257 max_minMissHitOutOrIn = 1,
258 d0_par1 = ( 0.8, 4.0 ),
259 dz_par1 = ( 0.8, 4.0 ),
260 d0_par2 = ( 0.8, 4.0 ),
261 dz_par2 = ( 0.8, 4.0 )
266 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
267 mixedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
268 TrackProducers = cms.VInputTag(cms.InputTag(
'mixedTripletStepTracks'),
269 cms.InputTag(
'mixedTripletStepTracks')),
270 hasSelector=cms.vint32(1,1),
271 shareFrac=cms.double(0.11),
272 indivShareFrac=cms.vdouble(0.11,0.11),
273 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepVtx"),
274 cms.InputTag(
"mixedTripletStepSelector",
"mixedTripletStepTrk")),
275 setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
276 writeOnlyTrkQuals=cms.bool(
True)
280 MixedTripletStep = cms.Sequence(mixedTripletStepClusters*
281 mixedTripletStepSeedLayersA*
282 mixedTripletStepSeedsA*
283 mixedTripletStepSeedLayersB*
284 mixedTripletStepSeedsB*
285 mixedTripletStepSeeds*
286 mixedTripletStepTrackCandidates*
287 mixedTripletStepTracks*
288 mixedTripletStepSelector*