CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
LargeD0_TibTidTecStep_cff.py
Go to the documentation of this file.
2 
3 #
4 # Very large impact parameter tracking: Iteration 4 using TIB + TEC ring 1-2 seeding
5 #
6 
7 #HIT REMOVAL
8 trkfilter4 = cms.EDProducer("QualityFilter",
9  TrackQuality = cms.string('highPurity'),
10 # Reject hits found in standard iterations
11  recTracks = cms.InputTag("tobtecStep")
12 # Reject hits found in all previous iterations
13 # recTracks = cms.InputTag("largeD0step3")
14 )
15 
16 largeD0step4Clusters = cms.EDProducer("TrackClusterRemover",
17  trajectories = cms.InputTag("trkfilter4"),
18 
19 # To run this step eliminating hits from standard iterations.
20  oldClusterRemovalInfo = cms.InputTag("fifthClusters"),
21  pixelClusters = cms.InputTag("fifthClusters"),
22  stripClusters = cms.InputTag("fifthClusters"),
23 
24 # To run this step, eliminating hits from all previous iterations ...
25 # oldClusterRemovalInfo = cms.InputTag("largeD0step3Clusters"),
26 # pixelClusters = cms.InputTag("largeD0step3Clusters"),
27 # stripClusters = cms.InputTag("largeD0step3Clusters"),
28 
29 # To run it, not eliminating any hits.
30 # trajectories = cms.InputTag("zeroStepFilter"),
31 # pixelClusters = cms.InputTag("siPixelClusters"),
32 # stripClusters = cms.InputTag("siStripClusters"),
33 
34  Common = cms.PSet(
35  maxChi2 = cms.double(30.0)
36 # To run it not eliminating any hits, you also need ...
37 # maxChi2 = cms.double(0.0)
38  )
39 )
40 
41 # Propagator taking into account momentum uncertainty in multiple
42 # scattering calculation.
43 #from TrackingTools.MaterialEffects.Propagators_PtMin09_cff import *
44 
45 #TRACKER HITS
48 largeD0step4PixelRecHits = RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi.siPixelRecHits.clone(
49  src = 'largeD0step4Clusters',
50 )
51 largeD0step4StripRecHits = RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi.siStripMatchedRecHits.clone(
52  ClusterProducer = 'largeD0step4Clusters',
53 )
54 #SEEDING LAYERS
55 import RecoTracker.TkSeedingLayers.PixelLessLayerPairs_cfi
56 largeD0step4LayerPairs = RecoTracker.TkSeedingLayers.PixelLessLayerPairs_cfi.PixelLessLayerPairs.clone()
57 largeD0step4LayerPairs.TIB.matchedRecHits = 'largeD0step4StripRecHits:matchedRecHit'
58 largeD0step4LayerPairs.TID.matchedRecHits = 'largeD0step4StripRecHits:matchedRecHit'
59 largeD0step4LayerPairs.TEC.matchedRecHits = 'largeD0step4StripRecHits:matchedRecHit'
60 
61 #SEEDS
63 largeD0step4Seeds = RecoTracker.TkSeedGenerator.GlobalPixelLessSeeds_cff.globalPixelLessSeeds.clone()
64 largeD0step4Seeds.OrderedHitsFactoryPSet.SeedingLayers = 'largeD0step4LayerPairs'
65 largeD0step4Seeds.RegionFactoryPSet.RegionPSet.ptMin = 0.6
66 largeD0step4Seeds.RegionFactoryPSet.RegionPSet.originRadius = 5.0
67 largeD0step4Seeds.RegionFactoryPSet.RegionPSet.originHalfLength = 15.0
68 #largeD0step4Seeds.SeedCreatorPSet.propagator = cms.string('PropagatorWithMaterialPtMin09')
69 
70 #TRAJECTORY MEASUREMENT
72 largeD0step4MeasurementTracker = RecoTracker.MeasurementDet.MeasurementTrackerESProducer_cfi.MeasurementTracker.clone(
73  ComponentName = 'largeD0step4MeasurementTracker',
74  pixelClusterProducer = 'largeD0step4Clusters',
75  stripClusterProducer = 'largeD0step4Clusters',
76 )
77 #TRAJECTORY FILTERS (for inwards and outwards track building steps)
78 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
79 
80 largeD0step4CkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
81  ComponentName = 'largeD0step4CkfTrajectoryFilter',
82 )
83 largeD0step4CkfTrajectoryFilter.filterPset.maxLostHits = 0
84 #largeD0step4CkfTrajectoryFilter.filterPset.maxConsecLostHits = 2
85 largeD0step4CkfTrajectoryFilter.filterPset.minimumNumberOfHits = 7
86 largeD0step4CkfTrajectoryFilter.filterPset.minPt = 0.6
87 largeD0step4CkfTrajectoryFilter.filterPset.minHitsMinPt = 3
88 
89 largeD0step4CkfInOutTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
90  ComponentName = 'largeD0step4CkfInOutTrajectoryFilter',
91 )
92 largeD0step4CkfInOutTrajectoryFilter.filterPset.maxLostHits = 0
93 #largeD0step4CkfInOutTrajectoryFilter.filterPset.maxConsecLostHits = 2
94 largeD0step4CkfInOutTrajectoryFilter.filterPset.minimumNumberOfHits = 7
95 largeD0step4CkfInOutTrajectoryFilter.filterPset.minPt = 0.6
96 largeD0step4CkfInOutTrajectoryFilter.filterPset.minHitsMinPt = 3
97 
98 #TRAJECTORY BUILDER
100 largeD0step4CkfTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
101  ComponentName = 'largeD0step4CkfTrajectoryBuilder',
102  MeasurementTrackerName = 'largeD0step4MeasurementTracker',
103  trajectoryFilterName = 'largeD0step4CkfTrajectoryFilter',
104  inOutTrajectoryFilterName = 'largeD0step4CkfInOutTrajectoryFilter',
105  useSameTrajFilter = False,
106  minNrOfHitsForRebuild = 7,
107  #lar maxCand = 5,
108  #lar lostHitPenalty = 100.,
109  #lar alwaysUseInvalidHits = False,
110  #lar propagatorAlong = cms.string('PropagatorWithMaterialPtMin09'),
111  #lar propagatorOpposite = cms.string('PropagatorWithMaterialOppositePtMin09'),
112 )
113 #TRACK CANDIDATES
115 largeD0step4TrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
116  src = 'largeD0step4Seeds',
117  TrajectoryBuilder = 'largeD0step4CkfTrajectoryBuilder',
118  doSeedingRegionRebuilding = True,
119  useHitsSplitting = True,
120  cleanTrajectoryAfterInOut = True,
121 )
122 #
123 # TRACK FITTING AND SMOOTHING
124 #
125 
127 largeD0step4FittingSmootherWithOutlierRejection = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKFittingSmoother.clone(
128  ComponentName = 'largeD0step4FittingSmootherWithOutlierRejection',
129  EstimateCut = 20,
130  MinNumberOfHits = 7,
131  Fitter = cms.string('largeD0step4RKFitter'),
132  Smoother = cms.string('largeD0step4RKSmoother'),
133 )
134 # Also necessary to specify minimum number of hits after final track fit
135 largeD0step4RKTrajectoryFitter = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectoryFitter.clone(
136  ComponentName = cms.string('largeD0step4RKFitter'),
137  minHits = 7,
138 )
139 largeD0step4RKTrajectorySmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectorySmoother.clone(
140  ComponentName = cms.string('largeD0step4RKSmoother'),
141  minHits = 7,
142 )
143 #TRACKS
145 largeD0step4WithMaterialTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
146  src = 'largeD0step4TrackCandidates',
147  clusterRemovalInfo = 'largeD0step4Clusters',
148  AlgorithmName = cms.string('iter4LargeD0'),
149  Fitter = 'largeD0step4FittingSmootherWithOutlierRejection',
150 )
151 # TRACK QUALITY DEFINITION
152 import RecoTracker.FinalTrackSelectors.selectLoose_cfi
153 import RecoTracker.FinalTrackSelectors.selectTight_cfi
154 import RecoTracker.FinalTrackSelectors.selectHighPurity_cfi
155 
156 largeD0step4Loose = RecoTracker.FinalTrackSelectors.selectLoose_cfi.selectLoose.clone(
157  src = 'largeD0step4WithMaterialTracks',
158  keepAllTracks = False,
159  copyExtras = False,
160  copyTrajectories = True,
161  applyAdaptedPVCuts = False,
162  chi2n_par = 99.,
163  minNumberLayers = 5,
164  minNumber3DLayers = 0,
165 )
166 largeD0step4Tight = RecoTracker.FinalTrackSelectors.selectTight_cfi.selectTight.clone(
167  src = 'largeD0step4Loose',
168  keepAllTracks = True,
169  copyExtras = False,
170  copyTrajectories = True,
171  applyAdaptedPVCuts = False,
172  chi2n_par = 99.,
173  minNumberLayers = 8,
174  minNumber3DLayers = 2,
175 )
176 largeD0step4Trk = RecoTracker.FinalTrackSelectors.selectHighPurity_cfi.selectHighPurity.clone(
177  src = 'largeD0step4Tight',
178  keepAllTracks = True,
179  copyExtras = False,
180  copyTrajectories = True,
181  applyAdaptedPVCuts = False,
182  chi2n_par = 99.,
183  minNumberLayers = 8,
184  minNumber3DLayers = 3,
185 )
186 largeD0step4 = cms.Sequence(trkfilter4*
187  largeD0step4Clusters*
188  largeD0step4PixelRecHits*largeD0step4StripRecHits*
189  largeD0step4LayerPairs*
190  largeD0step4Seeds*
191  largeD0step4TrackCandidates*
192  largeD0step4WithMaterialTracks*
193  largeD0step4Loose*
194  largeD0step4Tight*
195  largeD0step4Trk)
196 
197 
198 
199 
200 
201 
202 
203