1 import FWCore.ParameterSet.Config
as cms
9 detachedTripletStepClusters = trackClusterRemover.clone(
10 maxChi2 = cms.double(9.0),
11 trajectories = cms.InputTag(
"pixelPairStepTracks"),
12 pixelClusters = cms.InputTag(
"siPixelClusters"),
13 stripClusters = cms.InputTag(
"siStripClusters"),
14 oldClusterRemovalInfo = cms.InputTag(
"pixelPairStepClusters"),
15 overrideTrkQuals = cms.InputTag(
'pixelPairStepSelector',
'QualityMasks'),
16 TrackQuality = cms.string(
'highPurity'),
17 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
22 detachedTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
23 detachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
24 detachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'detachedTripletStepClusters')
28 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
29 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
31 detachedTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
32 detachedTripletStepSeeds.OrderedHitsFactoryPSet.SeedingLayers =
'detachedTripletStepSeedLayers'
33 detachedTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
34 detachedTripletStepSeeds.SeedCreatorPSet.ComponentName =
'SeedFromConsecutiveHitsTripletOnlyCreator'
35 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.ptMin = 0.3
36 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
37 detachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 1.5
39 detachedTripletStepSeeds.SeedComparitorPSet = cms.PSet(
40 ComponentName = cms.string(
'PixelClusterShapeSeedComparitor'),
41 FilterAtHelixStage = cms.bool(
False),
42 FilterPixelHits = cms.bool(
True),
43 FilterStripHits = cms.bool(
False),
44 ClusterShapeHitFilterName = cms.string(
'ClusterShapeHitFilter'),
45 ClusterShapeCacheSrc = cms.InputTag(
'siPixelClusterShapeCache')
50 detachedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
51 maxLostHitsFraction = cms.double(1./10.),
52 constantValueForLostHitsFractionFilter = cms.double(0.701),
53 minimumNumberOfHits = 3,
58 detachedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
59 ComponentName = cms.string(
'detachedTripletStepChi2Est'),
60 nSigma = cms.double(3.0),
61 MaxChi2 = cms.double(9.0),
62 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutNone')),
67 detachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
68 MeasurementTrackerName =
'',
69 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryFilter')),
71 alwaysUseInvalidHits =
False,
72 estimator = cms.string(
'detachedTripletStepChi2Est'),
73 maxDPhiForLooperReconstruction = cms.double(2.0),
74 maxPtForLooperReconstruction = cms.double(0.7)
79 detachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
80 src = cms.InputTag(
'detachedTripletStepSeeds'),
81 clustersToSkip = cms.InputTag(
'detachedTripletStepClusters'),
83 numHitsForSeedCleaner = cms.int32(50),
84 onlyPixelHitsForSeedCleaner = cms.bool(
True),
85 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'detachedTripletStepTrajectoryBuilder')),
86 doSeedingRegionRebuilding =
True,
87 useHitsSplitting =
True
91 detachedTripletStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
92 ComponentName = cms.string(
'detachedTripletStepTrajectoryCleanerBySharedHits'),
93 fractionShared = cms.double(0.19),
94 allowSharedFirstHit = cms.bool(
True)
96 detachedTripletStepTrackCandidates.TrajectoryCleaner =
'detachedTripletStepTrajectoryCleanerBySharedHits'
101 detachedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
102 AlgorithmName = cms.string(
'detachedTripletStep'),
103 src =
'detachedTripletStepTrackCandidates',
104 Fitter = cms.string(
'FlexibleKFFittingSmoother')
110 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
111 detachedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
112 src=
'detachedTripletStepTracks',
113 useAnyMVA = cms.bool(
False),
114 GBRForestLabel = cms.string(
'MVASelectorIter3'),
115 trackSelectors= cms.VPSet(
116 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
117 name =
'detachedTripletStepVtxLoose',
119 res_par = ( 0.003, 0.001 ),
121 d0_par1 = ( 1.2, 3.0 ),
122 dz_par1 = ( 1.2, 3.0 ),
123 d0_par2 = ( 1.3, 3.0 ),
124 dz_par2 = ( 1.3, 3.0 )
126 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
127 name =
'detachedTripletStepTrkLoose',
129 res_par = ( 0.003, 0.001 ),
131 d0_par1 = ( 1.6, 4.0 ),
132 dz_par1 = ( 1.6, 4.0 ),
133 d0_par2 = ( 1.6, 4.0 ),
134 dz_par2 = ( 1.6, 4.0 )
136 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
137 name =
'detachedTripletStepVtxTight',
138 preFilterName =
'detachedTripletStepVtxLoose',
140 res_par = ( 0.003, 0.001 ),
142 maxNumberLostLayers = 1,
143 minNumber3DLayers = 3,
144 d0_par1 = ( 0.95, 3.0 ),
145 dz_par1 = ( 0.9, 3.0 ),
146 d0_par2 = ( 1.0, 3.0 ),
147 dz_par2 = ( 1.0, 3.0 )
149 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
150 name =
'detachedTripletStepTrkTight',
151 preFilterName =
'detachedTripletStepTrkLoose',
153 res_par = ( 0.003, 0.001 ),
155 maxNumberLostLayers = 1,
156 minNumber3DLayers = 3,
157 d0_par1 = ( 1.1, 4.0 ),
158 dz_par1 = ( 1.1, 4.0 ),
159 d0_par2 = ( 1.1, 4.0 ),
160 dz_par2 = ( 1.1, 4.0 )
162 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
163 name =
'detachedTripletStepVtx',
164 preFilterName =
'detachedTripletStepVtxTight',
166 res_par = ( 0.003, 0.001 ),
168 maxNumberLostLayers = 1,
169 minNumber3DLayers = 3,
170 d0_par1 = ( 0.85, 3.0 ),
171 dz_par1 = ( 0.8, 3.0 ),
172 d0_par2 = ( 0.9, 3.0 ),
173 dz_par2 = ( 0.9, 3.0 )
175 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
176 name =
'detachedTripletStepTrk',
177 preFilterName =
'detachedTripletStepTrkTight',
179 res_par = ( 0.003, 0.001 ),
181 maxNumberLostLayers = 1,
182 minNumber3DLayers = 4,
183 d0_par1 = ( 1.0, 4.0 ),
184 dz_par1 = ( 1.0, 4.0 ),
185 d0_par2 = ( 1.0, 4.0 ),
186 dz_par2 = ( 1.0, 4.0 )
189 vertices = cms.InputTag(
"pixelVertices")
194 detachedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
195 TrackProducers = cms.VInputTag(cms.InputTag(
'detachedTripletStepTracks'),
196 cms.InputTag(
'detachedTripletStepTracks')),
197 hasSelector=cms.vint32(1,1),
198 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepVtx"),
199 cms.InputTag(
"detachedTripletStepSelector",
"detachedTripletStepTrk")),
200 setsToMerge = cms.VPSet(cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(
True) )),
201 writeOnlyTrkQuals=cms.bool(
True)
204 DetachedTripletStep = cms.Sequence(detachedTripletStepClusters*
205 detachedTripletStepSeedLayers*
206 detachedTripletStepSeeds*
207 detachedTripletStepTrackCandidates*
208 detachedTripletStepTracks*
209 detachedTripletStepSelector*