4 lowPtTripletStepClusters = cms.EDProducer(
"TrackClusterRemover",
5 clusterLessSolution= cms.bool(
True),
6 trajectories = cms.InputTag(
"lowPtQuadStepTracks"),
7 overrideTrkQuals = cms.InputTag(
'lowPtQuadStepSelector',
'lowPtQuadStep'),
8 TrackQuality = cms.string(
'highPurity'),
9 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
10 pixelClusters = cms.InputTag(
"siPixelClusters"),
11 stripClusters = cms.InputTag(
"siStripClusters"),
13 maxChi2 = cms.double(9.0)
19 lowPtTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone(
20 layerList = cms.vstring(
'BPix1+BPix2+BPix3',
'BPix2+BPix3+BPix4',
21 'BPix1+BPix3+BPix4',
'BPix1+BPix2+BPix4',
22 'BPix2+BPix3+FPix1_pos',
'BPix2+BPix3+FPix1_neg',
23 'BPix1+BPix2+FPix1_pos',
'BPix1+BPix2+FPix1_neg',
24 'BPix1+BPix3+FPix1_pos',
'BPix1+BPix3+FPix1_neg',
25 'BPix2+FPix1_pos+FPix2_pos',
'BPix2+FPix1_neg+FPix2_neg',
26 'BPix1+FPix1_pos+FPix2_pos',
'BPix1+FPix1_neg+FPix2_neg',
27 'BPix1+BPix2+FPix2_pos',
'BPix1+BPix2+FPix2_neg',
28 'FPix1_pos+FPix2_pos+FPix3_pos',
'FPix1_neg+FPix2_neg+FPix3_neg',
29 'BPix1+FPix2_pos+FPix3_pos',
'BPix1+FPix2_neg+FPix3_neg',
30 'BPix1+FPix1_pos+FPix3_pos',
'BPix1+FPix1_neg+FPix3_neg')
32 lowPtTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'lowPtTripletStepClusters')
33 lowPtTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'lowPtTripletStepClusters')
38 lowPtTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
39 RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
40 ComponentName = cms.string(
'GlobalRegionProducerFromBeamSpot'),
41 RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
48 lowPtTripletStepSeeds.OrderedHitsFactoryPSet.SeedingLayers =
'lowPtTripletStepSeedLayers'
51 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
52 lowPtTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor
53 lowPtTripletStepSeeds.ClusterCheckPSet.doClusterCheck = cms.bool(
False)
54 lowPtTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = cms.uint32(0)
58 lowPtTripletStepStandardTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
59 minimumNumberOfHits = 3,
65 lowPtTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CompositeTrajectoryFilter_block.clone(
66 filters = [cms.PSet(refToPSet_ = cms.string(
'lowPtTripletStepStandardTrajectoryFilter')),
67 cms.PSet(reftoPSet_ = cms.string(
'ClusterShapeTrajectoryFilter'))]
71 lowPtTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
72 ComponentName = cms.string(
'lowPtTripletStepChi2Est'),
73 nSigma = cms.double(3.0),
74 MaxChi2 = cms.double(9.0)
79 lowPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
80 MeasurementTrackerName =
'',
81 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'lowPtTripletStepTrajectoryFilter')),
82 clustersToSkip = cms.InputTag(
'lowPtTripletStepClusters'),
84 estimator = cms.string(
'lowPtTripletStepChi2Est'),
85 maxDPhiForLooperReconstruction = cms.double(2.0),
88 maxPtForLooperReconstruction = cms.double(0.7)
93 lowPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
94 src = cms.InputTag(
'lowPtTripletStepSeeds'),
96 numHitsForSeedCleaner = cms.int32(50),
97 onlyPixelHitsForSeedCleaner = cms.bool(
True),
98 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'lowPtTripletStepTrajectoryBuilder')),
99 doSeedingRegionRebuilding =
True,
100 useHitsSplitting =
True
105 lowPtTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
106 src =
'lowPtTripletStepTrackCandidates',
107 AlgorithmName = cms.string(
'iter3'),
108 Fitter = cms.string(
'FlexibleKFFittingSmoother'),
109 TTRHBuilder=cms.string(
'WithTrackAngle')
113 lowPtTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
114 ComponentName = cms.string(
'lowPtTripletStepTrajectoryCleanerBySharedHits'),
115 fractionShared = cms.double(0.09),
116 allowSharedFirstHit = cms.bool(
True)
118 lowPtTripletStepTrackCandidates.TrajectoryCleaner =
'lowPtTripletStepTrajectoryCleanerBySharedHits'
121 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
122 lowPtTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
123 src=
'lowPtTripletStepTracks',
124 trackSelectors= cms.VPSet(
125 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
126 name =
'lowPtTripletStepLoose',
128 res_par = ( 0.003, 0.002 ),
130 maxNumberLostLayers = 2,
131 minNumber3DLayers = 3,
132 d0_par1 = ( 0.8, 4.0 ),
133 dz_par1 = ( 0.7, 4.0 ),
134 d0_par2 = ( 0.5, 4.0 ),
135 dz_par2 = ( 0.5, 4.0 )
137 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
138 name =
'lowPtTripletStepTight',
139 preFilterName =
'lowPtTripletStepLoose',
141 res_par = ( 0.003, 0.002 ),
143 maxNumberLostLayers = 2,
144 minNumber3DLayers = 3,
145 d0_par1 = ( 0.7, 4.0 ),
146 dz_par1 = ( 0.6, 4.0 ),
147 d0_par2 = ( 0.4, 4.0 ),
148 dz_par2 = ( 0.4, 4.0 )
150 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
151 name =
'lowPtTripletStep',
152 preFilterName =
'lowPtTripletStepTight',
154 res_par = ( 0.003, 0.001 ),
156 maxNumberLostLayers = 2,
157 minNumber3DLayers = 3,
158 d0_par1 = ( 0.6, 4.0 ),
159 dz_par1 = ( 0.45, 4.0 ),
160 d0_par2 = ( 0.3, 4.0 ),
161 dz_par2 = ( 0.4, 4.0 )
167 LowPtTripletStep = cms.Sequence(lowPtTripletStepClusters*
168 lowPtTripletStepSeedLayers*
169 lowPtTripletStepSeeds*
170 lowPtTripletStepTrackCandidates*
171 lowPtTripletStepTracks*
172 lowPtTripletStepSelector)