2 from HIPixelTripletSeeds_cff
import *
3 from HIPixel3PrimTracks_cfi
import *
5 hiDetachedTripletStepClusters = cms.EDProducer(
"HITrackClusterRemover",
6 clusterLessSolution = cms.bool(
True),
7 trajectories = cms.InputTag(
"hiGlobalPrimTracks"),
8 overrideTrkQuals = cms.InputTag(
'hiInitialStepSelector',
'hiInitialStep'),
9 TrackQuality = cms.string(
'highPurity'),
10 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
11 pixelClusters = cms.InputTag(
"siPixelClusters"),
12 stripClusters = cms.InputTag(
"siStripClusters"),
14 maxChi2 = cms.double(9.0),
18 maxSize = cms.uint32(2),
19 maxChi2 = cms.double(9.0)
28 hiDetachedTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
29 hiDetachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag(
'hiDetachedTripletStepClusters')
30 hiDetachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag(
'hiDetachedTripletStepClusters')
34 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
35 from RecoPixelVertexing.PixelTriplets.pixelTripletHLTEDProducer_cfi
import pixelTripletHLTEDProducer
as _pixelTripletHLTEDProducer
42 hiDetachedTripletStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet=
dict(
44 useMultipleScattering =
False,
45 useFakeVertices =
False,
46 beamSpot =
"offlineBeamSpot",
51 VertexCollection =
"hiSelectedPixelVertex",
53 useFoundVertices =
True,
56 hiDetachedTripletStepTracksHitDoublets = _hitPairEDProducer.clone(
58 seedingLayers =
"hiDetachedTripletStepSeedLayers",
59 trackingRegions =
"hiDetachedTripletStepTrackingRegions",
61 produceIntermediateHitDoublets =
True,
64 hiDetachedTripletStepTracksHitTriplets = _pixelTripletHLTEDProducer.clone(
65 doublets =
"hiDetachedTripletStepTracksHitDoublets",
66 extraHitRPhitolerance = 0.0,
67 extraHitRZtolerance = 0.0,
69 SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(),
70 produceSeedingHitSets =
True,
73 from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi
import caHitTripletEDProducer
as _caHitTripletEDProducer
74 hiDetachedTripletStepTracksHitDoubletsCA = hiDetachedTripletStepTracksHitDoublets.clone()
75 hiDetachedTripletStepTracksHitDoubletsCA.layerPairs = [0,1]
77 hiDetachedTripletStepTracksHitTripletsCA = _caHitTripletEDProducer.clone(
78 doublets =
"hiDetachedTripletStepTracksHitDoubletsCA",
79 extraHitRPhitolerance = hiDetachedTripletStepTracksHitTriplets.extraHitRPhitolerance,
82 value1 = 300 , value2 = 10,
84 useBendingCorrection =
True,
90 hiDetachedTripletStepPixelTracksFilter = hiFilter.clone(
91 nSigmaTipMaxTolerance = 0,
96 hiDetachedTripletStepPixelTracks = cms.EDProducer(
"PixelTrackProducer",
98 passLabel = cms.string(
'Pixel detached tracks with vertex constraint'),
101 SeedingHitSets = cms.InputTag(
"hiDetachedTripletStepTracksHitTriplets"),
104 Fitter = cms.InputTag(
"pixelFitterByHelixProjections"),
107 Filter = cms.InputTag(
"hiDetachedTripletStepPixelTracksFilter"),
110 Cleaner = cms.string(
"trackCleaner")
112 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
113 trackingPhase1.toModify(hiDetachedTripletStepPixelTracks,
114 SeedingHitSets = cms.InputTag(
"hiDetachedTripletStepTracksHitTripletsCA")
118 import RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi
119 hiDetachedTripletStepSeeds = RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi.pixelTrackSeeds.clone(
120 InputCollection =
'hiDetachedTripletStepPixelTracks' 125 hiDetachedTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
127 minimumNumberOfHits = 6,
128 minPt = cms.double(0.3),
129 constantValueForLostHitsFractionFilter = cms.double(0.701)
133 hiDetachedTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
134 ComponentName = cms.string(
'hiDetachedTripletStepChi2Est'),
135 nSigma = cms.double(3.0),
136 MaxChi2 = cms.double(9.0)
142 hiDetachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
143 MeasurementTrackerName =
'',
144 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'hiDetachedTripletStepTrajectoryFilter')),
146 estimator = cms.string(
'hiDetachedTripletStepChi2Est'),
147 maxDPhiForLooperReconstruction = cms.double(0),
148 maxPtForLooperReconstruction = cms.double(0),
149 alwaysUseInvalidHits = cms.bool(
False)
154 hiDetachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
155 src = cms.InputTag(
'hiDetachedTripletStepSeeds'),
157 numHitsForSeedCleaner = cms.int32(50),
158 onlyPixelHitsForSeedCleaner = cms.bool(
True),
159 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'hiDetachedTripletStepTrajectoryBuilder')),
160 TrajectoryBuilder = cms.string(
'hiDetachedTripletStepTrajectoryBuilder'),
161 clustersToSkip = cms.InputTag(
'hiDetachedTripletStepClusters'),
162 doSeedingRegionRebuilding =
True,
163 useHitsSplitting =
True 169 hiDetachedTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
170 src =
'hiDetachedTripletStepTrackCandidates',
171 AlgorithmName = cms.string(
'detachedTripletStep'),
172 Fitter=cms.string(
'FlexibleKFFittingSmoother')
177 hiDetachedTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
178 src=
'hiDetachedTripletStepTracks',
179 useAnyMVA = cms.bool(
True),
180 GBRForestLabel = cms.string(
'HIMVASelectorIter7'),
181 GBRForestVars = cms.vstring([
'chi2perdofperlayer',
'nhits',
'nlayers',
'eta']),
182 trackSelectors= cms.VPSet(
183 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
184 name =
'hiDetachedTripletStepLoose',
185 applyAdaptedPVCuts = cms.bool(
False),
186 useMVA = cms.bool(
False),
188 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
189 name =
'hiDetachedTripletStepTight',
190 preFilterName =
'hiDetachedTripletStepLoose',
191 applyAdaptedPVCuts = cms.bool(
False),
192 useMVA = cms.bool(
True),
193 minMVA = cms.double(-0.2)
195 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
196 name =
'hiDetachedTripletStep',
197 preFilterName =
'hiDetachedTripletStepTight',
198 applyAdaptedPVCuts = cms.bool(
False),
199 useMVA = cms.bool(
True),
200 minMVA = cms.double(-0.09)
204 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
205 trackingPhase1.toModify(hiDetachedTripletStepSelector, useAnyMVA = cms.bool(
False))
206 trackingPhase1.toModify(hiDetachedTripletStepSelector, trackSelectors= cms.VPSet(
207 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
208 name =
'hiDetachedTripletStepLoose',
209 applyAdaptedPVCuts = cms.bool(
False),
210 useMVA = cms.bool(
False),
212 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
213 name =
'hiDetachedTripletStepTight',
214 preFilterName =
'hiDetachedTripletStepLoose',
215 applyAdaptedPVCuts = cms.bool(
False),
216 useMVA = cms.bool(
False),
217 minMVA = cms.double(-0.2)
219 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
220 name =
'hiDetachedTripletStep',
221 preFilterName =
'hiDetachedTripletStepTight',
222 applyAdaptedPVCuts = cms.bool(
False),
223 useMVA = cms.bool(
False),
224 minMVA = cms.double(-0.09)
230 hiDetachedTripletStepQual = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
231 TrackProducers=cms.VInputTag(cms.InputTag(
'hiDetachedTripletStepTracks')),
232 hasSelector=cms.vint32(1),
233 selectedTrackQuals = cms.VInputTag(cms.InputTag(
"hiDetachedTripletStepSelector",
"hiDetachedTripletStep")),
235 makeReKeyedSeeds = cms.untracked.bool(
False),
239 hiDetachedTripletStep = cms.Sequence(hiDetachedTripletStepClusters*
240 hiDetachedTripletStepSeedLayers*
241 hiDetachedTripletStepTrackingRegions*
242 hiDetachedTripletStepTracksHitDoublets*
243 hiDetachedTripletStepTracksHitTriplets*
244 pixelFitterByHelixProjections*
245 hiDetachedTripletStepPixelTracksFilter*
246 hiDetachedTripletStepPixelTracks*
247 hiDetachedTripletStepSeeds*
248 hiDetachedTripletStepTrackCandidates*
249 hiDetachedTripletStepTracks*
250 hiDetachedTripletStepSelector*
251 hiDetachedTripletStepQual)
252 hiDetachedTripletStep_Phase1 = hiDetachedTripletStep.copy()
253 hiDetachedTripletStep_Phase1.replace(hiDetachedTripletStepTracksHitDoublets, hiDetachedTripletStepTracksHitDoubletsCA)
254 hiDetachedTripletStep_Phase1.replace(hiDetachedTripletStepTracksHitTriplets, hiDetachedTripletStepTracksHitTripletsCA)
255 trackingPhase1.toReplaceWith(hiDetachedTripletStep, hiDetachedTripletStep_Phase1)
pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI) 3rd ste...