CMS 3D CMS Logo

InitialStep_cff.py
Go to the documentation of this file.
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
3 from Configuration.Eras.Modifier_fastSim_cff import fastSim
4 
5 # for dnn classifier
6 from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
7 from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary
8 
9 # for no-loopers
10 from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers
11 
12 
13 
14 # hit building
17 
18 # SEEDING LAYERS
20 import RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi
21 initialStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
22 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
23 trackingPhase1.toModify(initialStepSeedLayers,
24  layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
25 )
26 trackingPhase2PU140.toModify(initialStepSeedLayers,
27  layerList = RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi.PixelLayerQuadruplets.layerList.value()
28 )
29 
30 # TrackingRegion
31 from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpot_cfi import globalTrackingRegionFromBeamSpot as _globalTrackingRegionFromBeamSpot
32 initialStepTrackingRegions = _globalTrackingRegionFromBeamSpot.clone(RegionPSet = dict(
33  ptMin = 0.6,
34  originRadius = 0.02,
35  nSigmaZ = 4.0
36 ))
37 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
38 trackingPhase1.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.5))
39 from Configuration.Eras.Modifier_highBetaStar_cff import highBetaStar
40 highBetaStar.toModify(initialStepTrackingRegions,RegionPSet = dict(
41  ptMin = 0.05,
42  originRadius = 0.2
43 ))
44 trackingPhase2PU140.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.6,originRadius = 0.03))
45 
46 # seeding
47 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
48 initialStepHitDoublets = _hitPairEDProducer.clone(
49  seedingLayers = 'initialStepSeedLayers',
50  trackingRegions = 'initialStepTrackingRegions',
51  maxElement = 50000000,
52  produceIntermediateHitDoublets = True,
53 )
54 from RecoTracker.PixelSeeding.pixelTripletHLTEDProducer_cfi import pixelTripletHLTEDProducer as _pixelTripletHLTEDProducer
56 import RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
57 initialStepHitTriplets = _pixelTripletHLTEDProducer.clone(
58  doublets = 'initialStepHitDoublets',
59  produceSeedingHitSets = True,
60  SeedComparitorPSet = RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone()
61 )
62 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsEDProducer_cff import seedCreatorFromRegionConsecutiveHitsEDProducer as _seedCreatorFromRegionConsecutiveHitsEDProducer
63 initialStepSeeds = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
64  seedingHitSets = 'initialStepHitTriplets',
65 )
66 from RecoTracker.PixelSeeding.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
67 _initialStepCAHitQuadruplets = _caHitQuadrupletEDProducer.clone(
68  doublets = 'initialStepHitDoublets',
69  extraHitRPhitolerance = initialStepHitTriplets.extraHitRPhitolerance,
70  SeedComparitorPSet = initialStepHitTriplets.SeedComparitorPSet,
71  maxChi2 = dict(
72  pt1 = 0.7, pt2 = 2,
73  value1 = 200, value2 = 50,
74  ),
75  useBendingCorrection = True,
76  fitFastCircle = True,
77  fitFastCircleChi2Cut = True,
78  CAThetaCut = 0.0012,
79  CAPhiCut = 0.2,
80 )
81 highBetaStar.toModify(_initialStepCAHitQuadruplets,
82  CAThetaCut = 0.0024,
83  CAPhiCut = 0.4
84 )
85 initialStepHitQuadruplets = _initialStepCAHitQuadruplets.clone()
86 
87 trackingPhase1.toModify(initialStepHitDoublets, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
88 
89 trackingPhase2PU140.toModify(initialStepHitDoublets, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
90 trackingPhase2PU140.toModify(initialStepHitQuadruplets,
91  CAThetaCut = 0.0010,
92  CAPhiCut = 0.175,
93 )
94 
95 from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
96 _initialStepSeedsConsecutiveHitsTripletOnly = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
97  seedingHitSets = 'initialStepHitTriplets',
98  SeedComparitorPSet = dict(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
99  ComponentName = 'PixelClusterShapeSeedComparitor',
100  FilterAtHelixStage = cms.bool(False),
101  FilterPixelHits = cms.bool(True),
102  FilterStripHits = cms.bool(False),
103  ClusterShapeHitFilterName = cms.string('ClusterShapeHitFilter'),
104  ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache')
105  ),
106 )
107 trackingPhase1.toReplaceWith(initialStepSeeds, _initialStepSeedsConsecutiveHitsTripletOnly.clone(
108  seedingHitSets = 'initialStepHitQuadruplets'
109 ))
110 trackingPhase2PU140.toReplaceWith(initialStepSeeds, _initialStepSeedsConsecutiveHitsTripletOnly.clone(
111  seedingHitSets = 'initialStepHitQuadruplets'
112 ))
113 import FastSimulation.Tracking.TrajectorySeedProducer_cfi
114 from FastSimulation.Tracking.SeedingMigration import _hitSetProducerToFactoryPSet
115 _fastSim_initialStepSeeds = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
116  trackingRegions = 'initialStepTrackingRegions',
117  seedFinderSelector = dict( pixelTripletGeneratorFactory = _hitSetProducerToFactoryPSet(initialStepHitTriplets).clone(SeedComparitorPSet = dict(ComponentName = 'none')),
118  layerList = initialStepSeedLayers.layerList.value()
119  )
120 )
121 #new for phase1
122 trackingPhase1.toModify(_fastSim_initialStepSeeds, seedFinderSelector = dict(
123  pixelTripletGeneratorFactory = None,
124  CAHitQuadrupletGeneratorFactory = _hitSetProducerToFactoryPSet(initialStepHitQuadruplets).clone(SeedComparitorPSet = dict(ComponentName = 'none')),
125  #new parameters required for phase1 seeding
126  BPix = dict(
127  TTRHBuilder = 'WithoutRefit',
128  HitProducer = 'TrackingRecHitProducer',
129  ),
130  FPix = dict(
131  TTRHBuilder = 'WithoutRefit',
132  HitProducer = 'TrackingRecHitProducer',
133  ),
134  layerPairs = initialStepHitDoublets.layerPairs.value()
135  )
136 )
137 
138 fastSim.toReplaceWith(initialStepSeeds,_fastSim_initialStepSeeds)
139 
140 
141 # building
143 _initialStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
144  minimumNumberOfHits = 3,
145  minPt = 0.2,
146 )
147 initialStepTrajectoryFilterBase = _initialStepTrajectoryFilterBase.clone(
148  maxCCCLostHits = 0,
149  minGoodStripCharge = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose'))
150 )
151 from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016
152 _tracker_apv_vfp30_2016.toModify(initialStepTrajectoryFilterBase, maxCCCLostHits = 2)
153 
154 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
155 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
156 (pp_on_XeXe_2017 | pp_on_AA).toModify(initialStepTrajectoryFilterBase, minPt=0.6)
157 highBetaStar.toModify(initialStepTrajectoryFilterBase, minPt = 0.05)
158 
159 initialStepTrajectoryFilterInOut = initialStepTrajectoryFilterBase.clone(
160  minimumNumberOfHits = 4,
161  seedExtension = 1,
162  strictSeedExtension = True, # don't allow inactive
163  pixelSeedExtension = True,
164 )
165 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
166 trackingLowPU.toReplaceWith(initialStepTrajectoryFilterBase, _initialStepTrajectoryFilterBase)
167 trackingPhase2PU140.toReplaceWith(initialStepTrajectoryFilterBase, _initialStepTrajectoryFilterBase)
168 
169 import RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
170 initialStepTrajectoryFilterShape = RecoTracker.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
171 initialStepTrajectoryFilter = cms.PSet(
172  ComponentType = cms.string('CompositeTrajectoryFilter'),
173  filters = cms.VPSet(
174  cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterBase')),
175  # cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterShape'))
176  ),
177 )
178 
179 trackingPhase2PU140.toReplaceWith(initialStepTrajectoryFilter, TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
180  minimumNumberOfHits = 3,
181  minPt = 0.2
182 ))
183 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
184 initialStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
185  ComponentName = 'initialStepChi2Est',
186  nSigma = 3.0,
187  MaxChi2 = 30.0,
188  clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose')),
189  pTChargeCutThreshold = 15.
190 )
191 _tracker_apv_vfp30_2016.toModify(initialStepChi2Est,
192  clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')
193 )
194 trackingPhase2PU140.toModify(initialStepChi2Est,
195  clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutNone'),
196 )
197 
198 
200 initialStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilderIterativeDefault.clone(
201  trajectoryFilter = dict(refToPSet_ = 'initialStepTrajectoryFilter'),
202  alwaysUseInvalidHits = True,
203  maxCand = 3,
204  estimator = 'initialStepChi2Est',
205  maxDPhiForLooperReconstruction = 2.0,
206  maxPtForLooperReconstruction = 0.7,
207 )
208 trackingNoLoopers.toModify(initialStepTrajectoryBuilder,
209  maxPtForLooperReconstruction = 0.0)
210 trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand = 5)
211 trackingPhase1.toModify(initialStepTrajectoryBuilder,
212  minNrOfHitsForRebuild = 1,
213  keepOriginalIfRebuildFails = True,
214 )
215 trackingPhase2PU140.toModify(initialStepTrajectoryBuilder,
216  minNrOfHitsForRebuild = 1,
217  keepOriginalIfRebuildFails = True,
218 )
219 
221 # Give handle for CKF for HI
222 _initialStepTrackCandidatesCkf = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidatesIterativeDefault.clone(
223  src = 'initialStepSeeds',
224 
225  numHitsForSeedCleaner = 50,
226  onlyPixelHitsForSeedCleaner = True,
227  TrajectoryBuilderPSet = dict(refToPSet_ = 'initialStepTrajectoryBuilder'),
228  doSeedingRegionRebuilding = True,
229  useHitsSplitting = True,
230 )
231 initialStepTrackCandidates = _initialStepTrackCandidatesCkf.clone()
232 
233 from Configuration.ProcessModifiers.trackingMkFitInitialStep_cff import trackingMkFitInitialStep
234 from RecoTracker.MkFit.mkFitGeometryESProducer_cfi import mkFitGeometryESProducer
235 import RecoTracker.MkFit.mkFitSiPixelHitConverter_cfi as mkFitSiPixelHitConverter_cfi
236 import RecoTracker.MkFit.mkFitSiStripHitConverter_cfi as mkFitSiStripHitConverter_cfi
237 import RecoTracker.MkFit.mkFitPhase2HitConverter_cfi as mkFitPhase2HitConverter_cfi
238 import RecoTracker.MkFit.mkFitEventOfHitsProducer_cfi as mkFitEventOfHitsProducer_cfi
239 import RecoTracker.MkFit.mkFitSeedConverter_cfi as mkFitSeedConverter_cfi
240 import RecoTracker.MkFit.mkFitIterationConfigESProducer_cfi as mkFitIterationConfigESProducer_cfi
241 import RecoTracker.MkFit.mkFitProducer_cfi as mkFitProducer_cfi
242 import RecoTracker.MkFit.mkFitOutputConverter_cfi as mkFitOutputConverter_cfi
243 mkFitSiPixelHits = mkFitSiPixelHitConverter_cfi.mkFitSiPixelHitConverter.clone() # TODO: figure out better place for this module?
244 mkFitSiPhase2Hits = mkFitPhase2HitConverter_cfi.mkFitPhase2HitConverter.clone()
245 mkFitEventOfHits = mkFitEventOfHitsProducer_cfi.mkFitEventOfHitsProducer.clone() # TODO: figure out better place for this module?
246 initialStepTrackCandidatesMkFitSeeds = mkFitSeedConverter_cfi.mkFitSeedConverter.clone(
247  seeds = 'initialStepSeeds',
248 )
249 initialStepTrackCandidatesMkFitConfig = mkFitIterationConfigESProducer_cfi.mkFitIterationConfigESProducer.clone(
250  ComponentName = 'initialStepTrackCandidatesMkFitConfig',
251  config = 'RecoTracker/MkFit/data/mkfit-phase1-initialStep.json',
252 )
253 initialStepTrackCandidatesMkFit = mkFitProducer_cfi.mkFitProducer.clone(
254  seeds = 'initialStepTrackCandidatesMkFitSeeds',
255  config = ('', 'initialStepTrackCandidatesMkFitConfig'),
256 )
257 trackingMkFitInitialStep.toReplaceWith(initialStepTrackCandidates, mkFitOutputConverter_cfi.mkFitOutputConverter.clone(
258  seeds = 'initialStepSeeds',
259  mkFitSeeds = 'initialStepTrackCandidatesMkFitSeeds',
260  tracks = 'initialStepTrackCandidatesMkFit',
261 ))
262 (pp_on_XeXe_2017 | pp_on_AA).toModify(initialStepTrackCandidatesMkFitConfig, minPt=0.6)
263 
264 import FastSimulation.Tracking.TrackCandidateProducer_cfi
265 fastSim.toReplaceWith(initialStepTrackCandidates,
266  FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
267  src = 'initialStepSeeds',
268  MinNumberOfCrossedLayers = 3
269 ))
270 
271 
272 # fitting
273 import RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi
274 initialStepTracks = RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi.TrackProducerIterativeDefault.clone(
275  src = 'initialStepTrackCandidates',
276  AlgorithmName = 'initialStep',
277  Fitter = 'FlexibleKFFittingSmoother'
278 )
279 fastSim.toModify(initialStepTracks, TTRHBuilder = 'WithoutRefit')
280 
281 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
282 phase2_timing_layer.toModify(initialStepTracks, TrajectoryInEvent = True)
283 
284 #vertices
285 from RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi import offlinePrimaryVertices as _offlinePrimaryVertices
286 firstStepPrimaryVerticesUnsorted = _offlinePrimaryVertices.clone(
287  TrackLabel = 'initialStepTracks',
288  vertexCollections = [_offlinePrimaryVertices.vertexCollections[0].clone()]
289 )
290 (pp_on_XeXe_2017 | pp_on_AA).toModify(firstStepPrimaryVerticesUnsorted,
291  TkFilterParameters = dict(
292  trackQuality = 'any',
293  maxNumTracksThreshold = 2**31-1
294  )
295 )
296 
297 # we need a replacment for the firstStepPrimaryVerticesUnsorted
298 # that includes tracker information of signal and pile up
299 # after mixing there is no such thing as initialStepTracks,
300 # so we replace the input collection for firstStepPrimaryVerticesUnsorted with generalTracks
301 firstStepPrimaryVerticesBeforeMixing = firstStepPrimaryVerticesUnsorted.clone()
302 fastSim.toModify(firstStepPrimaryVerticesUnsorted, TrackLabel = 'generalTracks')
303 
304 
305 from RecoJets.JetProducers.TracksForJets_cff import trackRefsForJets
306 initialStepTrackRefsForJets = trackRefsForJets.clone(
307  src = 'initialStepTracks'
308 )
309 fastSim.toModify(initialStepTrackRefsForJets, src = 'generalTracks')
311 from CommonTools.RecoAlgos.sortedPrimaryVertices_cfi import sortedPrimaryVertices as _sortedPrimaryVertices
312 firstStepPrimaryVertices = _sortedPrimaryVertices.clone(
313  vertices = 'firstStepPrimaryVerticesUnsorted',
314  particles = 'initialStepTrackRefsForJets',
315 )
316 
317 
318 # Final selection
321 
322 initialStepClassifier1 = TrackMVAClassifierPrompt.clone(
323  src = 'initialStepTracks',
324  mva = dict(GBRForestLabel = 'MVASelectorIter0_13TeV'),
325  qualityCuts = [-0.9,-0.8,-0.7]
326 )
327 fastSim.toModify(initialStepClassifier1,vertices = 'firstStepPrimaryVerticesBeforeMixing')
328 
329 from RecoTracker.IterativeTracking.DetachedTripletStep_cff import detachedTripletStepClassifier1
330 from RecoTracker.IterativeTracking.LowPtTripletStep_cff import lowPtTripletStep
331 initialStepClassifier2 = detachedTripletStepClassifier1.clone(
332  src = 'initialStepTracks'
333 )
334 fastSim.toModify(initialStepClassifier2,vertices = 'firstStepPrimaryVerticesBeforeMixing')
335 initialStepClassifier3 = lowPtTripletStep.clone(
336  src = 'initialStepTracks'
337 )
338 fastSim.toModify(initialStepClassifier3,vertices = 'firstStepPrimaryVerticesBeforeMixing')
339 
341 initialStep = ClassifierMerger.clone(
342  inputClassifiers=['initialStepClassifier1','initialStepClassifier2','initialStepClassifier3']
343 )
344 trackingPhase1.toReplaceWith(initialStep, initialStepClassifier1.clone(
345  mva = dict(GBRForestLabel = 'MVASelectorInitialStep_Phase1'),
346  qualityCuts = [-0.95,-0.85,-0.75]
347 ))
348 pp_on_AA.toModify(initialStep,
349  mva = dict(GBRForestLabel = 'HIMVASelectorInitialStep_Phase1'),
350  qualityCuts = [-0.9, -0.5, 0.2],
351 )
352 
356 trackdnn.toReplaceWith(initialStep, trackTfClassifier.clone(
357  src = 'initialStepTracks',
358  qualityCuts = qualityCutDictionary.InitialStep.value()
359 ))
360 
361 (trackdnn & fastSim).toModify(initialStep,vertices = 'firstStepPrimaryVerticesBeforeMixing')
362 
363 (pp_on_AA & trackdnn).toModify(initialStep, qualityCuts = [0.35, 0.69, 0.88] )
364 
365 # For LowPU and Phase2PU140
366 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
367 initialStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
368  src = 'initialStepTracks',
369  useAnyMVA = cms.bool(False),
370  GBRForestLabel = cms.string('MVASelectorIter0'),
371  trackSelectors = [
372  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
373  name = 'initialStepLoose',
374  ), #end of pset
375  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
376  name = 'initialStepTight',
377  preFilterName = 'initialStepLoose',
378  ),
379  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
380  name = 'QualityMasks',
381  preFilterName = 'initialStepTight',
382  ),
383  ] #end of vpset
384 ) #end of clone
385 trackingPhase2PU140.toModify(initialStepSelector,
386  useAnyMVA = None,
387  GBRForestLabel = None,
388  trackSelectors= cms.VPSet(
389  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
390  name = 'initialStepLoose',
391  chi2n_par = 2.0,
392  res_par = ( 0.003, 0.002 ),
393  minNumberLayers = 3,
394  maxNumberLostLayers = 3,
395  minNumber3DLayers = 3,
396  d0_par1 = ( 0.8, 4.0 ),
397  dz_par1 = ( 0.9, 4.0 ),
398  d0_par2 = ( 0.6, 4.0 ),
399  dz_par2 = ( 0.8, 4.0 )
400  ), #end of pset
401  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
402  name = 'initialStepTight',
403  preFilterName = 'initialStepLoose',
404  chi2n_par = 1.4,
405  res_par = ( 0.003, 0.002 ),
406  minNumberLayers = 3,
407  maxNumberLostLayers = 2,
408  minNumber3DLayers = 3,
409  d0_par1 = ( 0.7, 4.0 ),
410  dz_par1 = ( 0.8, 4.0 ),
411  d0_par2 = ( 0.5, 4.0 ),
412  dz_par2 = ( 0.7, 4.0 )
413  ),
414  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
415  name = 'initialStep',
416  preFilterName = 'initialStepTight',
417  min_eta = -4.1,
418  max_eta = 4.1,
419  chi2n_par = 1.2,
420  res_par = ( 0.003, 0.001 ),
421  minNumberLayers = 3,
422  maxNumberLostLayers = 2,
423  minNumber3DLayers = 3,
424  d0_par1 = ( 0.6, 4.0 ),
425  dz_par1 = ( 0.7, 4.0 ),
426  d0_par2 = ( 0.45, 4.0 ),
427  dz_par2 = ( 0.55, 4.0 )
428  ),
429  ), #end of vpset
430 ) #end of clone
431 
432 
433 
434 # Final sequence
435 InitialStepTask = cms.Task(initialStepSeedLayers,
436  initialStepTrackingRegions,
437  initialStepHitDoublets,
438  initialStepHitTriplets,
439  initialStepSeeds,
440  initialStepTrackCandidates,
441  initialStepTracks,
442  firstStepPrimaryVerticesUnsorted,
443  initialStepTrackRefsForJets,
444  firstStepPrimaryVertices,
445  initialStepClassifier1,initialStepClassifier2,initialStepClassifier3,
446  initialStep,caloJetsForTrkTask)
447 InitialStep = cms.Sequence(InitialStepTask)
448 
450 from Configuration.ProcessModifiers.trackingMkFitCommon_cff import trackingMkFitCommon
451 _InitialStepTask_trackingMkFitCommon = InitialStepTask.copy()
452 _InitialStepTask_trackingMkFitCommon_Phase2 = InitialStepTask.copy()
453 _InitialStepTask_trackingMkFitCommon.add(mkFitSiPixelHits, mkFitEventOfHits, mkFitGeometryESProducer)
454 _InitialStepTask_trackingMkFitCommon_Phase2.add(siPhase2RecHits, mkFitSiPixelHits, mkFitSiPhase2Hits, mkFitEventOfHits, mkFitGeometryESProducer)
455 (trackingMkFitCommon & (~trackingPhase2PU140)).toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFitCommon)
456 (trackingMkFitCommon & trackingPhase2PU140).toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFitCommon_Phase2)
457 
458 _InitialStepTask_trackingMkFit = InitialStepTask.copy()
459 _InitialStepTask_trackingMkFit.add(initialStepTrackCandidatesMkFitSeeds, initialStepTrackCandidatesMkFit, initialStepTrackCandidatesMkFitConfig)
460 trackingMkFitInitialStep.toReplaceWith(InitialStepTask, _InitialStepTask_trackingMkFit)
461 
462 _InitialStepTask_LowPU = InitialStepTask.copyAndExclude([firstStepPrimaryVerticesUnsorted, initialStepTrackRefsForJets, caloJetsForTrkTask, firstStepPrimaryVertices, initialStepClassifier1, initialStepClassifier2, initialStepClassifier3])
463 _InitialStepTask_LowPU.replace(initialStep, initialStepSelector)
464 trackingLowPU.toReplaceWith(InitialStepTask, _InitialStepTask_LowPU)
465 
466 _InitialStepTask_Phase1 = InitialStepTask.copyAndExclude([initialStepClassifier2, initialStepClassifier3])
467 _InitialStepTask_Phase1.replace(initialStepHitTriplets, initialStepHitQuadruplets)
468 trackingPhase1.toReplaceWith(InitialStepTask, _InitialStepTask_Phase1)
469 
470 _InitialStepTask_trackingPhase2 = InitialStepTask.copyAndExclude([initialStepClassifier1, initialStepClassifier2, initialStepClassifier3])
471 _InitialStepTask_trackingPhase2.replace(initialStepHitTriplets, initialStepHitQuadruplets)
472 _InitialStepTask_trackingPhase2.replace(initialStep, initialStepSelector)
473 trackingPhase2PU140.toReplaceWith(InitialStepTask, _InitialStepTask_trackingPhase2)
474 (trackingMkFitCommon & trackingPhase2PU140).toModify(mkFitEventOfHits, stripHits=cms.InputTag('mkFitSiPhase2Hits'), useStripStripQualityDB=cms.bool(False))
475 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidatesMkFit, stripHits=cms.InputTag('mkFitSiPhase2Hits'))
476 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidates, mkFitStripHits=cms.InputTag('mkFitSiPhase2Hits'))
477 (trackingMkFitInitialStep & trackingPhase2PU140).toModify(initialStepTrackCandidatesMkFitConfig, config='RecoTracker/MkFit/data/mkfit-phase2-initialStep.json')
478 
479 from Configuration.Eras.Modifier_fastSim_cff import fastSim
480 _InitialStepTask_fastSim = cms.Task(initialStepTrackingRegions
481  ,initialStepSeeds
482  ,initialStepTrackCandidates
483  ,initialStepTracks
484  ,firstStepPrimaryVerticesBeforeMixing
485  ,initialStepClassifier1,initialStepClassifier2,initialStepClassifier3
486  ,initialStep
487  )
488 fastSim.toReplaceWith(InitialStepTask, _InitialStepTask_fastSim)
TRIGGER SELECTION #####.
def _hitSetProducerToFactoryPSet(producer)
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135