CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
InitialStep_cff.py
Go to the documentation of this file.
2 
3 ### STEP 0 ###
4 
5 # hit building
8 
9 # SEEDING LAYERS
11 initialStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
12 
13 
14 # seeding
16 from RecoTracker.TkTrackingRegions.GlobalTrackingRegionFromBeamSpot_cfi import RegionPsetFomBeamSpotBlock
17 initialStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
18  RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
19  ComponentName = cms.string('GlobalRegionProducerFromBeamSpot'),
20  RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
21  ptMin = 0.6,
22  originRadius = 0.02,
23  nSigmaZ = 4.0
24  )
25  )
26  )
27 initialStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = 'initialStepSeedLayers'
28 
30 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
31 initialStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor
32 
33 # building
35 initialStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
36  minimumNumberOfHits = 3,
37  minPt = 0.2
38  )
39 
40 import TrackingTools.KalmanUpdators.Chi2ChargeMeasurementEstimatorESProducer_cfi
41 initialStepChi2Est = TrackingTools.KalmanUpdators.Chi2ChargeMeasurementEstimatorESProducer_cfi.Chi2ChargeMeasurementEstimator.clone(
42  ComponentName = cms.string('initialStepChi2Est'),
43  nSigma = cms.double(3.0),
44  MaxChi2 = cms.double(30.0),
45  minGoodStripCharge = cms.double(1724),
46  pTChargeCutThreshold = cms.double(15.)
47 )
48 
50 initialStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
51  trajectoryFilter = cms.PSet(refToPSet_ = cms.string('initialStepTrajectoryFilter')),
52  alwaysUseInvalidHits = True,
53  maxCand = 3,
54  estimator = cms.string('initialStepChi2Est'),
55  maxDPhiForLooperReconstruction = cms.double(2.0),
56  maxPtForLooperReconstruction = cms.double(0.7)
57  )
58 
60 initialStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
61  src = cms.InputTag('initialStepSeeds'),
62  ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput
63  numHitsForSeedCleaner = cms.int32(50),
64  onlyPixelHitsForSeedCleaner = cms.bool(True),
65  TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('initialStepTrajectoryBuilder')),
66  doSeedingRegionRebuilding = True,
67  useHitsSplitting = True
68  )
69 
70 # fitting
72 initialStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
73  src = 'initialStepTrackCandidates',
74  AlgorithmName = cms.string('iter0'),
75  Fitter = cms.string('FlexibleKFFittingSmoother')
76  )
77 
78 # Final selection
79 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
80 from RecoTracker.IterativeTracking.DetachedTripletStep_cff import detachedTripletStepSelector
81 initialStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
82  src='initialStepTracks',
83  useAnyMVA = cms.bool(True),
84  GBRForestLabel = cms.string('MVASelectorIter0_13TeV_v0'),
85  trackSelectors= cms.VPSet(
86  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
87  name = 'initialStepLoose',
88  ), #end of pset
89  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
90  name = 'initialStepTight',
91  preFilterName = 'initialStepLoose',
92  ),
93  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
94  name = 'initialStepV1',
95  preFilterName = 'initialStepTight',
96  ),
97  detachedTripletStepSelector.trackSelectors[4].clone(
98  name = 'initialStepV2',
99  preFilterName=cms.string(''),
100  keepAllTracks = cms.bool(False)
101  ),
102  detachedTripletStepSelector.trackSelectors[5].clone(
103  name = 'initialStepV3',
104  preFilterName=cms.string(''),
105  keepAllTracks = cms.bool(False)
106  )
107  ) #end of vpset
108 )#end of clone
109 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
110 initialStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
111  TrackProducers = cms.VInputTag(cms.InputTag('initialStepTracks'),
112  cms.InputTag('initialStepTracks'),
113  cms.InputTag('initialStepTracks')),
114  hasSelector=cms.vint32(1,1,1),
115  shareFrac = cms.double(0.99),
116  indivShareFrac=cms.vdouble(1.0,1.0,1.0),
117  selectedTrackQuals = cms.VInputTag(cms.InputTag("initialStepSelector","initialStepV1"),
118  cms.InputTag("initialStepSelector","initialStepV2"),
119  cms.InputTag("initialStepSelector","initialStepV3")),
120  setsToMerge = cms.VPSet(cms.PSet( tLists=cms.vint32(0,1,2), pQual=cms.bool(True) )),
121  writeOnlyTrkQuals=cms.bool(True)
122  )
123 
124 # Final sequence
125 InitialStep = cms.Sequence(initialStepSeedLayers*
126  initialStepSeeds*
127  initialStepTrackCandidates*
128  initialStepTracks*
129  initialStepSelector*
130  initialStep)
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135