1 import FWCore.ParameterSet.Config
as cms
2 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff
import tracker_apv_vfp30_2016
as _tracker_apv_vfp30_2016
11 trackerClusterCheckPreSplitting = _trackerClusterCheck.clone(
12 PixelClusterCollectionLabel =
'siPixelClustersPreSplitting' 17 import RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi
18 initialStepSeedLayersPreSplitting = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone(
19 FPix = dict(HitProducer =
'siPixelRecHitsPreSplitting'),
20 BPix = dict(HitProducer =
'siPixelRecHitsPreSplitting')
22 from Configuration.Eras.Modifier_trackingPhase1_cff
import trackingPhase1
23 trackingPhase1.toModify(initialStepSeedLayersPreSplitting,
24 layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
26 from Configuration.ProcessModifiers.splitClustersInPhase2Pixel_cff
import splitClustersInPhase2Pixel
27 splitClustersInPhase2Pixel.toModify(initialStepSeedLayersPreSplitting,
28 layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
32 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpot_cfi
import globalTrackingRegionFromBeamSpot
as _globalTrackingRegionFromBeamSpot
33 initialStepTrackingRegionsPreSplitting = _globalTrackingRegionFromBeamSpot.clone(RegionPSet = dict(
38 trackingPhase1.toModify(initialStepTrackingRegionsPreSplitting, RegionPSet = dict(ptMin = 0.5))
39 splitClustersInPhase2Pixel.toModify(initialStepTrackingRegionsPreSplitting, RegionPSet = dict(ptMin = 0.6,originRadius = 0.03))
42 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi
import hitPairEDProducer
as _hitPairEDProducer
43 initialStepHitDoubletsPreSplitting = _hitPairEDProducer.clone(
44 seedingLayers =
'initialStepSeedLayersPreSplitting',
45 trackingRegions =
'initialStepTrackingRegionsPreSplitting',
46 clusterCheck =
'trackerClusterCheckPreSplitting',
47 maxElement = 50000000,
48 produceIntermediateHitDoublets =
True,
50 from RecoTracker.PixelSeeding.pixelTripletHLTEDProducer_cfi
import pixelTripletHLTEDProducer
as _pixelTripletHLTEDProducer
52 import RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
53 initialStepHitTripletsPreSplitting = _pixelTripletHLTEDProducer.clone(
54 doublets =
'initialStepHitDoubletsPreSplitting',
55 produceSeedingHitSets =
True,
56 SeedComparitorPSet = RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(
57 clusterShapeCacheSrc =
'siPixelClusterShapeCachePreSplitting' 60 from RecoTracker.PixelSeeding.caHitQuadrupletEDProducer_cfi
import caHitQuadrupletEDProducer
as _caHitQuadrupletEDProducer
61 trackingPhase1.toModify(initialStepHitDoubletsPreSplitting, layerPairs = [0,1,2])
62 splitClustersInPhase2Pixel.toModify(initialStepHitDoubletsPreSplitting, layerPairs = [0,1,2])
63 initialStepHitQuadrupletsPreSplitting = _caHitQuadrupletEDProducer.clone(
64 doublets =
'initialStepHitDoubletsPreSplitting',
65 extraHitRPhitolerance = initialStepHitTripletsPreSplitting.extraHitRPhitolerance,
66 SeedComparitorPSet = initialStepHitTripletsPreSplitting.SeedComparitorPSet,
69 value1 = 200, value2 = 50,
71 useBendingCorrection =
True,
73 fitFastCircleChi2Cut =
True,
77 splitClustersInPhase2Pixel.toModify(initialStepHitQuadrupletsPreSplitting,
81 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff
import seedCreatorFromRegionConsecutiveHitsEDProducer
as _seedCreatorFromRegionConsecutiveHitsEDProducer
82 initialStepSeedsPreSplitting = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
83 seedingHitSets =
'initialStepHitTripletsPreSplitting',
85 trackingPhase1.toModify(initialStepSeedsPreSplitting, seedingHitSets =
'initialStepHitQuadrupletsPreSplitting')
86 splitClustersInPhase2Pixel.toModify(initialStepSeedsPreSplitting, seedingHitSets =
'initialStepHitQuadrupletsPreSplitting')
91 _initialStepTrajectoryFilterBasePreSplitting = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
92 minimumNumberOfHits = 4,
95 initialStepTrajectoryFilterBasePreSplitting = _initialStepTrajectoryFilterBasePreSplitting.clone(
97 minGoodStripCharge = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutLoose'))
99 splitClustersInPhase2Pixel.toReplaceWith(initialStepTrajectoryFilterBasePreSplitting, _initialStepTrajectoryFilterBasePreSplitting)
100 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff
import tracker_apv_vfp30_2016
101 _tracker_apv_vfp30_2016.toModify(initialStepTrajectoryFilterBasePreSplitting, maxCCCLostHits = 2)
102 import RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
103 initialStepTrajectoryFilterShapePreSplitting = RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
104 initialStepTrajectoryFilterPreSplitting = cms.PSet(
105 ComponentType = cms.string(
'CompositeTrajectoryFilter'),
107 cms.PSet( refToPSet_ = cms.string(
'initialStepTrajectoryFilterBasePreSplitting')),
108 cms.PSet( refToPSet_ = cms.string(
'initialStepTrajectoryFilterShapePreSplitting'))),
110 splitClustersInPhase2Pixel.toReplaceWith(initialStepTrajectoryFilterPreSplitting, TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
111 minimumNumberOfHits = 3,
115 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
116 initialStepChi2EstPreSplitting = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
117 ComponentName =
'initialStepChi2EstPreSplitting',
120 clusterChargeCut = cms.PSet(refToPSet_ = cms.string(
'SiStripClusterChargeCutLoose')),
122 _tracker_apv_vfp30_2016.toModify(initialStepChi2EstPreSplitting,
123 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutTiny')
125 splitClustersInPhase2Pixel.toModify(initialStepChi2EstPreSplitting,
126 clusterChargeCut = dict(refToPSet_ =
'SiStripClusterChargeCutNone'),
130 initialStepTrajectoryBuilderPreSplitting = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilderIterativeDefault.clone(
131 trajectoryFilter = dict(refToPSet_ =
'initialStepTrajectoryFilterPreSplitting'),
132 alwaysUseInvalidHits =
True,
134 estimator =
'initialStepChi2Est',
138 initialStepTrackCandidatesPreSplitting = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidatesIterativeDefault.clone(
139 src =
'initialStepSeedsPreSplitting',
141 numHitsForSeedCleaner = 50,
142 onlyPixelHitsForSeedCleaner =
True,
143 TrajectoryBuilderPSet = dict(refToPSet_ =
'initialStepTrajectoryBuilderPreSplitting'),
144 doSeedingRegionRebuilding =
True,
145 useHitsSplitting =
True,
146 MeasurementTrackerEvent =
'MeasurementTrackerEventPreSplitting',
150 from RecoTracker.MkFit.mkFitGeometryESProducer_cfi
import mkFitGeometryESProducer
151 import RecoTracker.MkFit.mkFitSiPixelHitConverter_cfi
as _mkFitSiPixelHitConverter_cfi
152 import RecoTracker.MkFit.mkFitSiStripHitConverter_cfi
as _mkFitSiStripHitConverter_cfi
153 import RecoTracker.MkFit.mkFitEventOfHitsProducer_cfi
as _mkFitEventOfHitsProducer_cfi
154 import RecoTracker.MkFit.mkFitSeedConverter_cfi
as _mkFitSeedConverter_cfi
155 import RecoTracker.MkFit.mkFitIterationConfigESProducer_cfi
as _mkFitIterationConfigESProducer_cfi
156 import RecoTracker.MkFit.mkFitProducer_cfi
as _mkFitProducer_cfi
157 import RecoTracker.MkFit.mkFitOutputConverter_cfi
as _mkFitOutputConverter_cfi
158 mkFitSiPixelHitsPreSplitting = _mkFitSiPixelHitConverter_cfi.mkFitSiPixelHitConverter.clone(
159 hits =
'siPixelRecHitsPreSplitting' 161 mkFitSiStripHits = _mkFitSiStripHitConverter_cfi.mkFitSiStripHitConverter.clone()
162 mkFitEventOfHitsPreSplitting = _mkFitEventOfHitsProducer_cfi.mkFitEventOfHitsProducer.clone(
163 pixelHits =
'mkFitSiPixelHitsPreSplitting' 165 initialStepTrackCandidatesMkFitSeedsPreSplitting = _mkFitSeedConverter_cfi.mkFitSeedConverter.clone(
166 seeds =
'initialStepSeedsPreSplitting',
169 initialStepTrackCandidatesMkFitConfigPreSplitting = _mkFitIterationConfigESProducer_cfi.mkFitIterationConfigESProducer.clone(
170 ComponentName =
'initialStepTrackCandidatesMkFitConfigPreSplitting',
171 config =
'RecoTracker/MkFit/data/mkfit-phase1-initialStep.json',
173 initialStepTrackCandidatesMkFitPreSplitting = _mkFitProducer_cfi.mkFitProducer.clone(
174 pixelHits =
'mkFitSiPixelHitsPreSplitting',
175 eventOfHits =
'mkFitEventOfHitsPreSplitting',
176 seeds =
'initialStepTrackCandidatesMkFitSeedsPreSplitting',
177 config = (
'',
'initialStepTrackCandidatesMkFitConfigPreSplitting'),
179 trackingMkFitInitialStepPreSplitting.toReplaceWith(initialStepTrackCandidatesPreSplitting, _mkFitOutputConverter_cfi.mkFitOutputConverter.clone(
180 mkFitPixelHits =
'mkFitSiPixelHitsPreSplitting',
181 mkFitEventOfHits =
'mkFitEventOfHitsPreSplitting',
182 seeds =
'initialStepSeedsPreSplitting',
183 mkFitSeeds =
'initialStepTrackCandidatesMkFitSeedsPreSplitting',
184 tracks =
'initialStepTrackCandidatesMkFitPreSplitting',
188 import RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi
189 initialStepTracksPreSplitting = RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi.TrackProducerIterativeDefault.clone(
190 src =
'initialStepTrackCandidatesPreSplitting',
191 AlgorithmName =
'initialStep',
192 Fitter =
'FlexibleKFFittingSmoother',
193 NavigationSchool =
'',
194 MeasurementTrackerEvent =
'' 196 initialStepTracksPreSplitting.MeasurementTrackerEvent =
'MeasurementTrackerEventPreSplitting' 200 firstStepPrimaryVerticesPreSplitting = _offlinePrimaryVertices.clone(
201 TrackLabel =
'initialStepTracksPreSplitting',
202 vertexCollections = [_offlinePrimaryVertices.vertexCollections[0].
clone()]
204 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff
import pp_on_XeXe_2017
205 from Configuration.ProcessModifiers.pp_on_AA_cff
import pp_on_AA
206 (pp_on_XeXe_2017 | pp_on_AA).toModify(firstStepPrimaryVerticesPreSplitting,
207 TkFilterParameters = dict(
208 trackQuality =
'any',
209 maxNumTracksThreshold = 2**31-1
216 initialStepTrackRefsForJetsPreSplitting = initialStepTrackRefsForJets.clone(
217 src =
'initialStepTracksPreSplitting' 219 caloTowerForTrkPreSplitting = caloTowerForTrk.clone()
220 ak4CaloJetsForTrkPreSplitting = ak4CaloJetsForTrk.clone(
221 src =
'caloTowerForTrkPreSplitting',
222 srcPVs =
'firstStepPrimaryVerticesPreSplitting' 224 jetsForCoreTrackingPreSplitting = jetsForCoreTracking.clone(
225 src =
'ak4CaloJetsForTrkPreSplitting' 229 from RecoLocalTracker.SubCollectionProducers.jetCoreClusterSplitter_cfi
import jetCoreClusterSplitter
230 siPixelClusters = jetCoreClusterSplitter.clone(
231 pixelClusters =
'siPixelClustersPreSplitting',
232 vertices =
'firstStepPrimaryVerticesPreSplitting',
233 cores =
'jetsForCoreTrackingPreSplitting' 240 InitialStepPreSplittingTask = cms.Task(trackerClusterCheckPreSplitting,
241 initialStepSeedLayersPreSplitting,
242 initialStepTrackingRegionsPreSplitting,
243 initialStepHitDoubletsPreSplitting,
244 initialStepHitTripletsPreSplitting,
245 initialStepSeedsPreSplitting,
246 initialStepTrackCandidatesPreSplitting,
247 initialStepTracksPreSplitting,
248 firstStepPrimaryVerticesPreSplitting,
249 initialStepTrackRefsForJetsPreSplitting,
250 caloTowerForTrkPreSplitting,
251 ak4CaloJetsForTrkPreSplitting,
252 jetsForCoreTrackingPreSplitting,
255 MeasurementTrackerEvent,
256 siPixelClusterShapeCache)
257 InitialStepPreSplitting = cms.Sequence(InitialStepPreSplittingTask)
258 _InitialStepPreSplittingTask_trackingPhase1 = InitialStepPreSplittingTask.copy()
259 _InitialStepPreSplittingTask_trackingPhase1.replace(initialStepHitTripletsPreSplitting, cms.Task(initialStepHitTripletsPreSplitting,initialStepHitQuadrupletsPreSplitting))
260 trackingPhase1.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingPhase1.copyAndExclude([initialStepHitTripletsPreSplitting]))
261 _InitialStepPreSplittingTask_trackingPhase2PU140 = InitialStepPreSplittingTask.copy()
262 _InitialStepPreSplittingTask_trackingPhase2PU140.replace(initialStepHitTripletsPreSplitting, cms.Task(initialStepHitTripletsPreSplitting,initialStepHitQuadrupletsPreSplitting))
263 splitClustersInPhase2Pixel.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingPhase2PU140.copyAndExclude([initialStepHitTripletsPreSplitting]))
266 _InitialStepPreSplittingTask_trackingMkFitCommon = InitialStepPreSplittingTask.copy()
267 _InitialStepPreSplittingTask_trackingMkFitCommon.add(mkFitSiStripHits, mkFitGeometryESProducer)
268 trackingMkFitCommon.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingMkFitCommon)
269 _InitialStepPreSplittingTask_trackingMkFit = InitialStepPreSplittingTask.copy()
270 _InitialStepPreSplittingTask_trackingMkFit.add(mkFitSiPixelHitsPreSplitting, mkFitEventOfHitsPreSplitting, initialStepTrackCandidatesMkFitSeedsPreSplitting, initialStepTrackCandidatesMkFitPreSplitting, initialStepTrackCandidatesMkFitConfigPreSplitting)
271 trackingMkFitInitialStepPreSplitting.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_trackingMkFit)
289 from Configuration.Eras.Modifier_trackingLowPU_cff
import trackingLowPU
290 trackingLowPU.toReplaceWith(siPixelClusters, _siPixelClusters)
291 from Configuration.Eras.Modifier_trackingPhase2PU140_cff
import trackingPhase2PU140
292 (trackingPhase2PU140 & ~splitClustersInPhase2Pixel).toReplaceWith(siPixelClusters, _siPixelClusters)
293 _InitialStepPreSplittingTask_LowPU = cms.Task(
296 MeasurementTrackerEvent ,
297 siPixelClusterShapeCache
299 trackingLowPU.toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_LowPU)
300 (trackingPhase2PU140 & ~splitClustersInPhase2Pixel).toReplaceWith(InitialStepPreSplittingTask, _InitialStepPreSplittingTask_LowPU)
301 splitClustersInPhase2Pixel.toModify(siPixelClusters,
302 centralMIPCharge = cms.double(12000),
303 expSizeXAtLorentzAngleIncidence = cms.double(1.5),
304 expSizeXDeltaPerTanAlpha = cms.double(5.2),
305 expSizeYAtNormalIncidence = cms.double(2.3),
306 tanLorentzAngle = cms.double(-0.21),
307 tanLorentzAngleBarrelLayer1 = cms.double(0.0),
308 chargeFractionMin = cms.double(2.0),
309 forceXError = cms.double(25.0),
310 forceYError = cms.double(100.0),
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)