1 import FWCore.ParameterSet.Config
as cms
9 _convClustersBase = _trackClusterRemover.clone(
10 maxChi2 = cms.double(30.0),
11 trajectories = cms.InputTag(
"tobTecStepTracks"),
12 pixelClusters = cms.InputTag(
"siPixelClusters"),
13 stripClusters = cms.InputTag(
"siStripClusters"),
14 oldClusterRemovalInfo = cms.InputTag(
"tobTecStepClusters"),
15 TrackQuality = cms.string(
'highPurity'),
17 convClusters = _convClustersBase.clone(
18 trackClassifier = cms.InputTag(
'tobTecStep',
"QualityMasks"),
22 from RecoLocalTracker.SubCollectionProducers.phase2trackClusterRemover_cfi
import phase2trackClusterRemover
as _phase2trackClusterRemover
23 from Configuration.Eras.Modifier_trackingPhase2PU140_cff
import trackingPhase2PU140
24 trackingPhase2PU140.toReplaceWith(convClusters, _phase2trackClusterRemover.clone(
26 phase2pixelClusters =
"siPixelClusters",
27 phase2OTClusters =
"siPhase2Clusters",
28 TrackQuality =
'highPurity',
29 minNumberOfLayersWithMeasBeforeFiltering = 0,
30 trajectories = cms.InputTag(
"detachedQuadStepTracks"),
31 oldClusterRemovalInfo = cms.InputTag(
"detachedQuadStepClusters"),
32 overrideTrkQuals = cms.InputTag(
"detachedQuadStepSelector",
"detachedQuadStepTrk"),
36 _convLayerPairsStripOnlyLayers = [
'TIB1+TID1_pos',
105 _convLayerPairsLayerList = _convLayerPairsStripOnlyLayers
106 _convLayerPairsLayerList =[
'BPix1+BPix2',
114 'FPix1_pos+FPix2_pos',
115 'FPix1_neg+FPix2_neg',
119 _convLayerPairsLayerList.extend(_convLayerPairsStripOnlyLayers)
123 convLayerPairs = cms.EDProducer(
"SeedingLayersEDProducer",
124 layerList = cms.vstring(_convLayerPairsLayerList),
126 TTRHBuilder = cms.string(
'WithTrackAngle'),
127 HitProducer = cms.string(
'siPixelRecHits'),
128 skipClusters = cms.InputTag(
'convClusters'),
131 TTRHBuilder = cms.string(
'WithTrackAngle'),
132 HitProducer = cms.string(
'siPixelRecHits'),
133 skipClusters = cms.InputTag(
'convClusters'),
136 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
137 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
138 skipClusters = cms.InputTag(
'convClusters'),
141 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
142 rphiRecHits = cms.InputTag(
"siStripMatchedRecHits",
"rphiRecHit"),
143 skipClusters = cms.InputTag(
'convClusters'),
146 useSimpleRphiHitsCleaner = cms.bool(
False),
147 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
148 useRingSlector = cms.bool(
True),
149 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
150 maxRing = cms.int32(2),
151 minRing = cms.int32(1),
152 skipClusters = cms.InputTag(
'convClusters'),
155 useSimpleRphiHitsCleaner = cms.bool(
False),
156 minRing = cms.int32(1),
157 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
158 useRingSlector = cms.bool(
True),
159 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
160 rphiRecHits = cms.InputTag(
"siStripMatchedRecHits",
"rphiRecHitUnmatched"),
161 maxRing = cms.int32(7),
162 stereoRecHits = cms.InputTag(
"siStripMatchedRecHits",
"stereoRecHitUnmatched"),
163 skipClusters = cms.InputTag(
'convClusters'),
166 matchedRecHits = cms.InputTag(
"siStripMatchedRecHits",
"matchedRecHit"),
167 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
168 skipClusters = cms.InputTag(
'convClusters'),
171 TTRHBuilder = cms.string(
'WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight')),
172 rphiRecHits = cms.InputTag(
"siStripMatchedRecHits",
"rphiRecHit"),
173 skipClusters = cms.InputTag(
'convClusters'),
180 _convLayerPairsLayerListPhaseI = [
'BPix1+BPix2',
192 'FPix1_pos+FPix2_pos',
193 'FPix1_neg+FPix2_neg',
195 'FPix2_pos+FPix3_pos',
196 'FPix2_neg+FPix3_neg',
203 _convLayerPairsLayerListPhaseI.extend(_convLayerPairsStripOnlyLayers)
205 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
206 trackingPhase1.toModify(convLayerPairs, layerList = cms.vstring(_convLayerPairsLayerListPhaseI))
209 trackingPhase2PU140.toReplaceWith(convLayerPairs, cms.EDProducer(
"SeedingLayersEDProducer",
210 layerList = cms.vstring(
'BPix1+BPix2',
221 'FPix1_pos+FPix2_pos',
222 'FPix1_neg+FPix2_neg',
223 'FPix2_pos+FPix3_pos',
224 'FPix2_neg+FPix3_neg' 228 hitErrorRZ = cms.double(0.006),
229 hitErrorRPhi = cms.double(0.0027),
230 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4PixelPairs'),
231 HitProducer = cms.string(
'siPixelRecHits'),
232 useErrorsFromParam = cms.bool(
True),
233 skipClusters = cms.InputTag(
'convClusters'),
236 hitErrorRZ = cms.double(0.0036),
237 hitErrorRPhi = cms.double(0.0051),
238 TTRHBuilder = cms.string(
'TTRHBuilderWithoutAngle4PixelPairs'),
239 HitProducer = cms.string(
'siPixelRecHits'),
240 useErrorsFromParam = cms.bool(
True),
241 skipClusters = cms.InputTag(
'convClusters'),
246 photonConvTrajSeedFromSingleLeg.TrackRefitter = cms.InputTag(
'generalTracks')
247 photonConvTrajSeedFromSingleLeg.primaryVerticesTag = cms.InputTag(
'firstStepPrimaryVertices')
250 from Configuration.Eras.Modifier_trackingLowPU_cff
import trackingLowPU
251 trackingLowPU.toModify(photonConvTrajSeedFromSingleLeg, primaryVerticesTag =
"pixelVertices")
253 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff
import pp_on_XeXe_2017
254 from Configuration.Eras.Modifier_pp_on_AA_2018_cff
import pp_on_AA_2018
255 for e
in [pp_on_XeXe_2017, pp_on_AA_2018]:
256 e.toModify(photonConvTrajSeedFromSingleLeg,
257 RegionFactoryPSet =
dict(RegionPSet =
dict(ptMin = 999999.0,
259 originHalfLength = 0)
267 convCkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
269 minimumNumberOfHits = 3,
274 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
275 convStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
276 ComponentName = cms.string(
'convStepChi2Est'),
277 nSigma = cms.double(3.0),
278 MaxChi2 = cms.double(30.0),
279 MaxDisplacement = cms.double(100),
280 MaxSagitta = cms.double(-1.),
281 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutTight'))
287 _convCkfTrajectoryBuilderBase = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
288 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'convCkfTrajectoryFilter')),
289 minNrOfHitsForRebuild = 3,
292 convCkfTrajectoryBuilder = _convCkfTrajectoryBuilderBase.clone(
293 estimator = cms.string(
'convStepChi2Est')
295 trackingPhase2PU140.toReplaceWith(convCkfTrajectoryBuilder, _convCkfTrajectoryBuilderBase.clone(
301 convTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
302 src = cms.InputTag(
'photonConvTrajSeedFromSingleLeg:convSeedCandidates'),
303 clustersToSkip = cms.InputTag(
'convClusters'),
304 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
'convCkfTrajectoryBuilder'))
306 trackingPhase2PU140.toModify(convTrackCandidates,
307 clustersToSkip =
None,
308 phase2clustersToSkip = cms.InputTag(
"convClusters")
312 convStepFitterSmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.KFFittingSmootherWithOutliersRejectionAndRK.clone(
313 ComponentName =
'convStepFitterSmoother',
315 Smoother = cms.string(
'convStepRKSmoother')
318 convStepRKTrajectorySmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectorySmoother.clone(
319 ComponentName = cms.string(
'convStepRKSmoother'),
320 errorRescaling = 10.0
326 convStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
327 src =
'convTrackCandidates',
328 AlgorithmName = cms.string(
'conversionStep'),
329 Fitter =
'convStepFitterSmoother',
333 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
334 convStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
335 src=
'convStepTracks',
336 trackSelectors= cms.VPSet(
337 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
338 name =
'convStepLoose',
339 applyAdaptedPVCuts =
False,
341 res_par = ( 0.003, 0.001 ),
343 maxNumberLostLayers = 1,
344 minNumber3DLayers = 1,
345 d0_par1 = ( 5., 8.0 ),
346 dz_par1 = ( 5., 8.0 ),
347 d0_par2 = ( 5., 8.0 ),
348 dz_par2 = ( 5., 8.0 )
350 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
351 name =
'convStepTight',
352 preFilterName =
'convStepLoose',
354 res_par = ( 0.003, 0.001 ),
356 maxNumberLostLayers = 1,
357 minNumber3DLayers = 1,
358 d0_par1 = ( 5., 8.0 ),
359 dz_par1 = ( 5., 8.0 ),
360 d0_par2 = ( 5., 8.0 ),
361 dz_par2 = ( 5., 8.0 )
363 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
365 preFilterName =
'convStepTight',
367 res_par = ( 0.003, 0.001 ),
369 maxNumberLostLayers = 1,
370 minNumber3DLayers = 1,
371 d0_par1 = ( 5., 8.0 ),
372 dz_par1 = ( 5., 8.0 ),
373 d0_par2 = ( 5., 8.0 ),
374 dz_par2 = ( 5., 8.0 )
379 ConvStepTask = cms.Task( convClusters
381 , photonConvTrajSeedFromSingleLeg
382 , convTrackCandidates
387 ConvStep = cms.Sequence( ConvStepTask )