CMS 3D CMS Logo

HiRegitMuonMixedTripletStep_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 
6 
8 # Are the following values set to the same in every iteration? If yes,
9 # why not making the change in HITrackingRegionProducer_cfi directly
10 # once for all?
11 hiRegitMuMixedTripletStepTrackingRegionsA = HiTrackingRegionFactoryFromSTAMuonsEDProducer.clone(
12  MuonSrc = "standAloneMuons:UpdatedAtVtx", # this is the same as default, why repeat?
13  MuonTrackingRegionBuilder = dict(
14  vertexCollection = "hiSelectedPixelVertex",
15  UseVertex = True,
16  Phi_fixed = True,
17  Eta_fixed = True,
18  DeltaPhi = 0.3,
19  DeltaEta = 0.2,
20  # Ok, the following ones are specific to MixedTripletStep
21  Pt_min = 1.3,
22  DeltaR = 0.5, # default = 0.2
23  DeltaZ = 0.5, # this give you the length
24  Rescale_Dz = 4., # max(DeltaZ_Region,Rescale_Dz*vtx->zError())
25  )
26 )
27 hiRegitMuMixedTripletStepTrackingRegionsB = hiRegitMuMixedTripletStepTrackingRegionsA.clone(
28  MuonTrackingRegionBuilder = dict(Pt_min = 1.5)
29 )
30 
31 
33 
34 # NEW CLUSTERS (remove previously used clusters)
35 hiRegitMuMixedTripletStepClusters = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepClusters.clone(
36  oldClusterRemovalInfo = "hiRegitMuPixelPairStepClusters",
37  trajectories = "hiRegitMuPixelPairStepTracks",
38  overrideTrkQuals = 'hiRegitMuPixelPairStepSelector:hiRegitMuPixelPairStep',
39  trackClassifier = '',
40  TrackQuality = 'tight'
41 )
42 
43 
44 # SEEDING LAYERS A
45 hiRegitMuMixedTripletStepSeedLayersA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedLayersA.clone(
46  BPix = dict(skipClusters = 'hiRegitMuMixedTripletStepClusters'),
47  FPix = dict(skipClusters = 'hiRegitMuMixedTripletStepClusters'),
48  TEC = dict(skipClusters = 'hiRegitMuMixedTripletStepClusters')
49 )
50 # SEEDS A
51 hiRegitMuMixedTripletStepHitDoubletsA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepHitDoubletsA.clone(
52  seedingLayers = "hiRegitMuMixedTripletStepSeedLayersA",
53  trackingRegions = "hiRegitMuMixedTripletStepTrackingRegionsA",
54  clusterCheck = "hiRegitMuClusterCheck",
55 )
56 hiRegitMuMixedTripletStepHitTripletsA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepHitTripletsA.clone(
57  doublets = "hiRegitMuMixedTripletStepHitDoubletsA"
58 )
59 hiRegitMuMixedTripletStepSeedsA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedsA.clone(
60  seedingHitSets = "hiRegitMuMixedTripletStepHitTripletsA"
61 )
62 
63 # SEEDING LAYERS B
64 hiRegitMuMixedTripletStepSeedLayersB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedLayersB.clone(
65  BPix = dict(skipClusters = 'hiRegitMuMixedTripletStepClusters'),
66  TIB = dict(skipClusters = 'hiRegitMuMixedTripletStepClusters')
67 )
68 
69 hiRegitMuMixedTripletStepHitDoubletsB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepHitDoubletsB.clone(
70  seedingLayers = "hiRegitMuMixedTripletStepSeedLayersB",
71  trackingRegions = "hiRegitMuMixedTripletStepTrackingRegionsB",
72  clusterCheck = "hiRegitMuClusterCheck",
73 )
74 hiRegitMuMixedTripletStepHitTripletsB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepHitTripletsB.clone(
75  doublets = "hiRegitMuMixedTripletStepHitDoubletsB"
76 )
77 hiRegitMuMixedTripletStepSeedsB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedsA.clone(
78  seedingHitSets = "hiRegitMuMixedTripletStepHitTripletsB"
79 )
80 
81 # combine seeds
82 hiRegitMuMixedTripletStepSeeds = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeeds.clone(
83  seedCollections = [
84  'hiRegitMuMixedTripletStepSeedsA',
85  'hiRegitMuMixedTripletStepSeedsB',
86  ]
87 )
88 
89 # track building
90 hiRegitMuMixedTripletStepTrajectoryFilter = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryFilter.clone(
91  minPt = 1.,
92  minimumNumberOfHits = 6,
93  minHitsMinPt = 4
94 )
95 
96  # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3),
97 
98 hiRegitMuMixedTripletStepTrajectoryBuilder = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryBuilder.clone(
99  trajectoryFilter = cms.PSet(
100  refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryFilter')
101  ),
102  minNrOfHitsForRebuild = 6 #change from default 4
103 )
104 
105 hiRegitMuMixedTripletStepTrackCandidates = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrackCandidates.clone(
106  src = 'hiRegitMuMixedTripletStepSeeds',
107  TrajectoryBuilderPSet = cms.PSet(
108  refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryBuilder')
109  ),
110  clustersToSkip = 'hiRegitMuMixedTripletStepClusters',
111  maxNSeeds = 1000000
112 )
113 
114 # fitting: feed new-names
115 hiRegitMuMixedTripletStepTracks = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTracks.clone(
116  AlgorithmName = 'hiRegitMuMixedTripletStep',
117  src = 'hiRegitMuMixedTripletStepTrackCandidates',
118 )
119 
120 # TRACK SELECTION AND QUALITY FLAG SETTING.
121 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
123 hiRegitMuMixedTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
124  src = 'hiRegitMuMixedTripletStepTracks',
125  vertices = "hiSelectedPixelVertex",
126  useAnyMVA = True,
127  GBRForestLabel = 'HIMVASelectorIter7',
128  GBRForestVars = ['chi2perdofperlayer', 'nhits', 'nlayers', 'eta'],
129  trackSelectors = cms.VPSet(
130  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
131  name = 'hiRegitMuMixedTripletStepLoose',
132  min_nhits = 8
133  ),
134  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
135  name = 'hiRegitMuMixedTripletStepTight',
136  preFilterName = 'hiRegitMuMixedTripletStepLoose',
137  min_nhits = 8,
138  useMVA = True,
139  minMVA = -0.2
140  ),
141  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
142  name = 'hiRegitMuMixedTripletStep',
143  preFilterName = 'hiRegitMuMixedTripletStepTight',
144  min_nhits = 8,
145  useMVA = True,
146  minMVA = -0.09
147  )
148  ) #end of vpset
149 ) #end of clone
150 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
151 trackingPhase1.toModify(hiRegitMuMixedTripletStepSelector,
152  useAnyMVA = False,
153  trackSelectors= cms.VPSet(
154  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
155  name = 'hiRegitMuMixedTripletStepLoose',
156  min_nhits = 8
157  ),
158  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
159  name = 'hiRegitMuMixedTripletStepTight',
160  preFilterName = 'hiRegitMuMixedTripletStepLoose',
161  min_nhits = 8,
162  useMVA = False,
163  minMVA = -0.2
164  ),
165  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
166  name = 'hiRegitMuMixedTripletStep',
167  preFilterName = 'hiRegitMuMixedTripletStepTight',
168  min_nhits = 8,
169  useMVA = False,
170  minMVA = -0.09
171  )
172  ) #end of vpset
173 )
174 
175 hiRegitMuonMixedTripletStepTask = cms.Task(hiRegitMuMixedTripletStepClusters,
176  hiRegitMuMixedTripletStepSeedLayersA,
177  hiRegitMuMixedTripletStepTrackingRegionsA,
178  hiRegitMuMixedTripletStepHitDoubletsA,
179  hiRegitMuMixedTripletStepHitTripletsA,
180  hiRegitMuMixedTripletStepSeedsA,
181  hiRegitMuMixedTripletStepSeedLayersB,
182  hiRegitMuMixedTripletStepTrackingRegionsB,
183  hiRegitMuMixedTripletStepHitDoubletsB,
184  hiRegitMuMixedTripletStepHitTripletsB,
185  hiRegitMuMixedTripletStepSeedsB,
186  hiRegitMuMixedTripletStepSeeds,
187  hiRegitMuMixedTripletStepTrackCandidates,
188  hiRegitMuMixedTripletStepTracks,
189  hiRegitMuMixedTripletStepSelector)
190 hiRegitMuonMixedTripletStep = cms.Sequence(hiRegitMuonMixedTripletStepTask)
hiMultiTrackSelector_cfi
MixedTripletStep_cff
HITrackingRegionProducer_cfi
pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI) 3rd ste...