1 from __future__
import absolute_import
3 from .HIPixelTripletSeeds_cff
import *
4 from .HIPixel3PrimTracks_cfi
import *
6 hiHighPtTripletStepClusters = cms.EDProducer(
"HITrackClusterRemover",
7 clusterLessSolution = cms.bool(
True),
8 trajectories = cms.InputTag(
"hiLowPtQuadStepTracks"),
9 overrideTrkQuals = cms.InputTag(
"hiLowPtQuadStepSelector",
"hiLowPtQuadStep"),
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)
26 hiHighPtTripletStepSeedLayers = highPtTripletStepSeedLayers.clone()
27 hiHighPtTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'hiHighPtTripletStepClusters')
28 hiHighPtTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'hiHighPtTripletStepClusters')
32 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
33 from RecoPixelVertexing.PixelTriplets.pixelTripletHLTEDProducer_cfi
import pixelTripletHLTEDProducer
as _pixelTripletHLTEDProducer
40 hiHighPtTripletStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet=dict(
42 useMultipleScattering =
False,
43 useFakeVertices =
False,
44 beamSpot =
"offlineBeamSpot",
49 VertexCollection =
"hiSelectedPixelVertex",
51 useFoundVertices =
True,
54 hiHighPtTripletStepTracksHitDoubletsCA = _hitPairEDProducer.clone(
56 seedingLayers =
"hiHighPtTripletStepSeedLayers",
57 trackingRegions =
"hiHighPtTripletStepTrackingRegions",
58 maxElement = 50000000,
59 produceIntermediateHitDoublets =
True,
63 from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi
import caHitTripletEDProducer
as _caHitTripletEDProducer
64 hiHighPtTripletStepTracksHitTripletsCA = _caHitTripletEDProducer.clone(
65 doublets =
"hiHighPtTripletStepTracksHitDoubletsCA",
66 extraHitRPhitolerance = 0.0,
67 SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(),
70 value1 = 100, value2 = 6,
72 useBendingCorrection =
True,
78 hiHighPtTripletStepPixelTracksFilter = hiFilter.clone(
79 nSigmaTipMaxTolerance = 0,
84 hiHighPtTripletStepPixelTracks = cms.EDProducer(
"PixelTrackProducer",
86 passLabel = cms.string(
'Pixel detached tracks with vertex constraint'),
89 SeedingHitSets = cms.InputTag(
"hiHighPtTripletStepTracksHitTripletsCA"),
92 Fitter = cms.InputTag(
"pixelFitterByHelixProjections"),
95 Filter = cms.InputTag(
"hiHighPtTripletStepPixelTracksFilter"),
98 Cleaner = cms.string(
"trackCleaner")
102 import RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi
103 hiHighPtTripletStepSeeds = RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi.pixelTrackSeeds.clone(
104 InputCollection =
'hiHighPtTripletStepPixelTracks'
109 hiHighPtTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
111 minimumNumberOfHits = 3,
112 minPt = cms.double(0.2),
117 hiHighPtTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
118 ComponentName = cms.string(
'hiHighPtTripletStepChi2Est'),
119 nSigma = cms.double(3.0),
120 MaxChi2 = cms.double(9.0)
126 hiHighPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
127 MeasurementTrackerName =
'',
128 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'hiHighPtTripletStepTrajectoryFilter')),
130 estimator = cms.string(
'hiHighPtTripletStepChi2Est'),
131 maxDPhiForLooperReconstruction = cms.double(2.0),
134 maxPtForLooperReconstruction = cms.double(0.7),
135 alwaysUseInvalidHits = cms.bool(
False)
143 hiHighPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
144 src = cms.InputTag(
'hiHighPtTripletStepSeeds'),
146 numHitsForSeedCleaner = cms.int32(50),
147 onlyPixelHitsForSeedCleaner = cms.bool(
True),
148 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'hiHighPtTripletStepTrajectoryBuilder')),
149 TrajectoryBuilder = cms.string(
'hiHighPtTripletStepTrajectoryBuilder'),
150 clustersToSkip = cms.InputTag(
'hiHighPtTripletStepClusters'),
151 doSeedingRegionRebuilding =
True,
152 useHitsSplitting =
True
158 hiHighPtTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
159 src =
'hiHighPtTripletStepTrackCandidates',
160 AlgorithmName = cms.string(
'highPtTripletStep'),
161 Fitter=cms.string(
'FlexibleKFFittingSmoother')
166 hiHighPtTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
167 src=
'hiHighPtTripletStepTracks',
168 useAnyMVA = cms.bool(
True),
169 GBRForestLabel = cms.string(
'HIMVASelectorIter9'),
170 GBRForestVars = cms.vstring([
'chi2perdofperlayer',
'nhits',
'nlayers',
'eta']),
171 trackSelectors= cms.VPSet(
172 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
173 name =
'hiHighPtTripletStepLoose',
174 applyAdaptedPVCuts = cms.bool(
False),
175 useMVA = cms.bool(
False),
177 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
178 name =
'hiHighPtTripletStepTight',
179 preFilterName =
'hiHighPtTripletStepLoose',
180 applyAdaptedPVCuts = cms.bool(
False),
181 useMVA = cms.bool(
True),
182 minMVA = cms.double(-0.2)
184 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
185 name =
'hiHighPtTripletStep',
186 preFilterName =
'hiHighPtTripletStepTight',
187 applyAdaptedPVCuts = cms.bool(
False),
188 useMVA = cms.bool(
True),
189 minMVA = cms.double(-0.09)
193 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
194 trackingPhase1.toModify(hiHighPtTripletStepSelector, useAnyMVA = cms.bool(
False))
195 trackingPhase1.toModify(hiHighPtTripletStepSelector, trackSelectors= cms.VPSet(
196 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
197 name =
'hiHighPtTripletStepLoose',
198 applyAdaptedPVCuts = cms.bool(
False),
199 useMVA = cms.bool(
False),
201 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
202 name =
'hiHighPtTripletStepTight',
203 preFilterName =
'hiHighPtTripletStepLoose',
204 applyAdaptedPVCuts = cms.bool(
False),
205 useMVA = cms.bool(
False),
206 minMVA = cms.double(-0.2)
208 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
209 name =
'hiHighPtTripletStep',
210 preFilterName =
'hiHighPtTripletStepTight',
211 applyAdaptedPVCuts = cms.bool(
False),
212 useMVA = cms.bool(
False),
213 minMVA = cms.double(-0.09)
219 hiHighPtTripletStepQual = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
220 TrackProducers=cms.VInputTag(cms.InputTag(
'hiHighPtTripletStepTracks')),
221 hasSelector=cms.vint32(1),
222 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"hiHighPtTripletStepSelector",
"hiHighPtTripletStep")),
224 makeReKeyedSeeds = cms.untracked.bool(
False),
228 hiHighPtTripletStepTask = cms.Task(hiHighPtTripletStepClusters,
229 hiHighPtTripletStepSeedLayers,
230 hiHighPtTripletStepTrackingRegions,
231 hiHighPtTripletStepTracksHitDoubletsCA,
232 hiHighPtTripletStepTracksHitTripletsCA,
233 pixelFitterByHelixProjections,
234 hiHighPtTripletStepPixelTracksFilter,
235 hiHighPtTripletStepPixelTracks,
236 hiHighPtTripletStepSeeds,
237 hiHighPtTripletStepTrackCandidates,
238 hiHighPtTripletStepTracks,
239 hiHighPtTripletStepSelector,
240 hiHighPtTripletStepQual)
241 hiHighPtTripletStep = cms.Sequence(hiHighPtTripletStepTask)