1 import FWCore.ParameterSet.Config
as cms
5 hiLowPtTripletStepClusters = cms.EDProducer(
"HITrackClusterRemover",
6 clusterLessSolution= cms.bool(
True),
7 oldClusterRemovalInfo = cms.InputTag(
"hiDetachedTripletStepClusters"),
8 trajectories = cms.InputTag(
"hiDetachedTripletStepTracks"),
9 overrideTrkQuals = cms.InputTag(
"hiDetachedTripletStepSelector",
"hiDetachedTripletStep"),
10 TrackQuality = cms.string(
'highPurity'),
11 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
12 pixelClusters = cms.InputTag(
"siPixelClusters"),
13 stripClusters = cms.InputTag(
"siStripClusters"),
15 maxChi2 = cms.double(9.0)
19 maxSize = cms.uint32(2),
20 maxChi2 = cms.double(9.0)
27 hiLowPtTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
28 hiLowPtTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'hiLowPtTripletStepClusters')
29 hiLowPtTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'hiLowPtTripletStepClusters')
33 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
34 from RecoPixelVertexing.PixelTriplets.pixelTripletHLTEDProducer_cfi
import pixelTripletHLTEDProducer
as _pixelTripletHLTEDProducer
36 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
42 hiLowPtTripletStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet=dict(
44 useMultipleScattering =
False,
45 useFakeVertices =
False,
46 beamSpot =
"offlineBeamSpot",
47 useFixedError =
False,
51 VertexCollection =
"hiSelectedPixelVertex",
53 useFoundVertices =
True,
56 hiLowPtTripletStepTracksHitDoublets = _hitPairEDProducer.clone(
58 seedingLayers =
"hiLowPtTripletStepSeedLayers",
59 trackingRegions =
"hiLowPtTripletStepTrackingRegions",
60 maxElement = 50000000,
61 produceIntermediateHitDoublets =
True,
63 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
64 hiLowPtTripletStepTracksHitTriplets = _pixelTripletHLTEDProducer.clone(
65 doublets =
"hiLowPtTripletStepTracksHitDoublets",
67 SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(),
68 produceSeedingHitSets =
True,
71 from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi
import caHitTripletEDProducer
as _caHitTripletEDProducer
72 hiLowPtTripletStepTracksHitDoubletsCA = hiLowPtTripletStepTracksHitDoublets.clone()
73 hiLowPtTripletStepTracksHitDoubletsCA.layerPairs = [0,1]
75 hiLowPtTripletStepTracksHitTripletsCA = _caHitTripletEDProducer.clone(
76 doublets =
"hiLowPtTripletStepTracksHitDoubletsCA",
77 extraHitRPhitolerance = hiLowPtTripletStepTracksHitTriplets.extraHitRPhitolerance,
78 SeedComparitorPSet = hiLowPtTripletStepTracksHitTriplets.SeedComparitorPSet,
81 value1 = 70 , value2 = 8,
83 useBendingCorrection =
True,
88 hiLowPtTripletStepPixelTracksFilter = hiFilter.clone(
89 nSigmaLipMaxTolerance = 4.0,
90 nSigmaTipMaxTolerance = 4.0,
94 hiLowPtTripletStepPixelTracks = cms.EDProducer(
"PixelTrackProducer",
96 passLabel = cms.string(
'Pixel primary tracks with vertex constraint'),
99 SeedingHitSets = cms.InputTag(
"hiLowPtTripletStepTracksHitTriplets"),
102 Fitter = cms.InputTag(
"pixelFitterByHelixProjections"),
105 Filter = cms.InputTag(
"hiLowPtTripletStepPixelTracksFilter"),
108 Cleaner = cms.string(
"trackCleaner")
110 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
111 trackingPhase1.toModify(hiLowPtTripletStepPixelTracks,
112 SeedingHitSets = cms.InputTag(
"hiLowPtTripletStepTracksHitTripletsCA")
116 import RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi
117 hiLowPtTripletStepSeeds = RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi.pixelTrackSeeds.clone(
118 InputCollection =
'hiLowPtTripletStepPixelTracks'
124 hiLowPtTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
126 minimumNumberOfHits = 6,
131 hiLowPtTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
132 ComponentName = cms.string(
'hiLowPtTripletStepChi2Est'),
133 nSigma = cms.double(3.0),
134 MaxChi2 = cms.double(9.0)
139 hiLowPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
140 MeasurementTrackerName =
'',
141 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'hiLowPtTripletStepTrajectoryFilter')),
143 estimator = cms.string(
'hiLowPtTripletStepChi2Est'),
144 maxDPhiForLooperReconstruction = cms.double(2.0),
147 maxPtForLooperReconstruction = cms.double(0.7)
152 hiLowPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
153 src = cms.InputTag(
'hiLowPtTripletStepSeeds'),
155 numHitsForSeedCleaner = cms.int32(50),
156 onlyPixelHitsForSeedCleaner = cms.bool(
True),
157 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'hiLowPtTripletStepTrajectoryBuilder')),
158 clustersToSkip = cms.InputTag(
'hiLowPtTripletStepClusters'),
159 doSeedingRegionRebuilding =
True,
160 useHitsSplitting =
True
165 hiLowPtTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
166 src =
'hiLowPtTripletStepTrackCandidates',
167 AlgorithmName = cms.string(
'lowPtTripletStep'),
168 Fitter=cms.string(
'FlexibleKFFittingSmoother')
175 hiLowPtTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
176 src=
'hiLowPtTripletStepTracks',
177 useAnyMVA = cms.bool(
True),
178 GBRForestLabel = cms.string(
'HIMVASelectorIter5'),
179 GBRForestVars = cms.vstring([
'chi2perdofperlayer',
'dxyperdxyerror',
'dzperdzerror',
'relpterr',
'nhits',
'nlayers',
'eta']),
180 trackSelectors= cms.VPSet(
181 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
182 name =
'hiLowPtTripletStepLoose',
183 useMVA = cms.bool(
False)
185 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
186 name =
'hiLowPtTripletStepTight',
187 preFilterName =
'hiLowPtTripletStepLoose',
188 useMVA = cms.bool(
True),
189 minMVA = cms.double(-0.58)
191 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
192 name =
'hiLowPtTripletStep',
193 preFilterName =
'hiLowPtTripletStepTight',
194 useMVA = cms.bool(
True),
195 minMVA = cms.double(0.35)
199 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
200 trackingPhase1.toModify(hiLowPtTripletStepSelector, useAnyMVA = cms.bool(
False))
201 trackingPhase1.toModify(hiLowPtTripletStepSelector, trackSelectors= cms.VPSet(
202 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
203 name =
'hiLowPtTripletStepLoose',
204 useMVA = cms.bool(
False)
206 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
207 name =
'hiLowPtTripletStepTight',
208 preFilterName =
'hiLowPtTripletStepLoose',
209 useMVA = cms.bool(
False),
210 minMVA = cms.double(-0.58)
212 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
213 name =
'hiLowPtTripletStep',
214 preFilterName =
'hiLowPtTripletStepTight',
215 useMVA = cms.bool(
False),
216 minMVA = cms.double(0.35)
223 hiLowPtTripletStepQual = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
224 TrackProducers = cms.VInputTag(cms.InputTag(
'hiLowPtTripletStepTracks')),
225 hasSelector=cms.vint32(1),
226 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"hiLowPtTripletStepSelector",
"hiLowPtTripletStep")),
228 makeReKeyedSeeds = cms.untracked.bool(
False),
234 hiLowPtTripletStepTask = cms.Task(hiLowPtTripletStepClusters,
235 hiLowPtTripletStepSeedLayers,
236 hiLowPtTripletStepTrackingRegions,
237 hiLowPtTripletStepTracksHitDoublets,
238 hiLowPtTripletStepTracksHitTriplets,
239 pixelFitterByHelixProjections,
240 hiLowPtTripletStepPixelTracksFilter,
241 hiLowPtTripletStepPixelTracks,hiLowPtTripletStepSeeds,
242 hiLowPtTripletStepTrackCandidates,
243 hiLowPtTripletStepTracks,
244 hiLowPtTripletStepSelector,
245 hiLowPtTripletStepQual
247 hiLowPtTripletStep = cms.Sequence(hiLowPtTripletStepTask)
248 hiLowPtTripletStepTask_Phase1 = hiLowPtTripletStepTask.copy()
249 hiLowPtTripletStepTask_Phase1.replace(hiLowPtTripletStepTracksHitDoublets, hiLowPtTripletStepTracksHitDoubletsCA)
250 hiLowPtTripletStepTask_Phase1.replace(hiLowPtTripletStepTracksHitTriplets, hiLowPtTripletStepTracksHitTripletsCA)
251 trackingPhase1.toReplaceWith(hiLowPtTripletStepTask, hiLowPtTripletStepTask_Phase1)