CMS 3D CMS Logo

HiRegitMuonDetachedTripletStep_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 hiRegitMuDetachedTripletStepTrackingRegions = 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 DetachedTripletStep
21  Pt_min = 0.9,
22  DeltaR = 2.0, # default = 0.2
23  DeltaZ = 2.0, # this give you the length
24  Rescale_Dz = 4., # max(DeltaZ_Region,Rescale_Dz*vtx->zError())
25  )
26 )
27 
28 
30 
31 # NEW CLUSTERS (remove previously used clusters)
32 from RecoLocalTracker.SubCollectionProducers.trackClusterRemover_cfi import trackClusterRemover as _trackClusterRemover
33 hiRegitMuDetachedTripletStepClusters = _trackClusterRemover.clone(
34  maxChi2 = 9.0,
35  pixelClusters = "siPixelClusters",
36  stripClusters = "siStripClusters",
37  trajectories = "hiRegitMuPixelLessStepTracks",
38  overrideTrkQuals = 'hiRegitMuPixelLessStepSelector:hiRegitMuPixelLessStep',
39  TrackQuality = 'tight',
40  trackClassifier = '',
41  minNumberOfLayersWithMeasBeforeFiltering = 0
42 )
43 
44 
45 # SEEDING LAYERS
46 hiRegitMuDetachedTripletStepSeedLayers = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepSeedLayers.clone(
47  BPix = dict( skipClusters = 'hiRegitMuDetachedTripletStepClusters'),
48  FPix = dict( skipClusters = 'hiRegitMuDetachedTripletStepClusters')
49 )
50 
51 # seeding
52 hiRegitMuDetachedTripletStepHitDoublets = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepHitDoublets.clone(
53  seedingLayers = "hiRegitMuDetachedTripletStepSeedLayers",
54  trackingRegions = "hiRegitMuDetachedTripletStepTrackingRegions",
55  clusterCheck = "hiRegitMuClusterCheck",
56 )
57 
58 hiRegitMuDetachedTripletStepHitTriplets = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepHitTriplets.clone(
59  doublets = "hiRegitMuDetachedTripletStepHitDoublets"
60 )
61 
62 hiRegitMuDetachedTripletStepSeeds = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepSeeds.clone(
63  seedingHitSets = "hiRegitMuDetachedTripletStepHitTriplets"
64 )
66 
67 
68 # building: feed the new-named seeds
69 hiRegitMuDetachedTripletStepTrajectoryFilterBase = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryFilterBase.clone(
70  minPt = 0.8 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = 3,
71 )
72 
73 hiRegitMuDetachedTripletStepTrajectoryFilter = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryFilter.clone(
74  filters = cms.VPSet(
75  cms.PSet( refToPSet_ = cms.string('hiRegitMuDetachedTripletStepTrajectoryFilterBase')),
76  cms.PSet( refToPSet_ = cms.string('detachedTripletStepTrajectoryFilterShape')))
77 )
78 
79 hiRegitMuDetachedTripletStepTrajectoryBuilder = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryBuilder.clone(
80  clustersToSkip = cms.InputTag('hiRegitMuDetachedTripletStepClusters')
81 )
82 
83 hiRegitMuDetachedTripletStepTrackCandidates = RecoTracker.IterativeTracking.DetachedTripletStep_cff._detachedTripletStepTrackCandidatesCkf.clone(
84  src = 'hiRegitMuDetachedTripletStepSeeds',
85  clustersToSkip = 'hiRegitMuDetachedTripletStepClusters'
86 )
87 
88 # fitting: feed new-names
89 hiRegitMuDetachedTripletStepTracks = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTracks.clone(
90  AlgorithmName = 'hiRegitMuDetachedTripletStep',
91  src = 'hiRegitMuDetachedTripletStepTrackCandidates'
92 )
93 
94 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
96 hiRegitMuDetachedTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
97  src = 'hiRegitMuDetachedTripletStepTracks',
98  vertices = "hiSelectedPixelVertex",
99  useAnyMVA = True,
100  GBRForestLabel = 'HIMVASelectorIter7',
101  GBRForestVars = ['chi2perdofperlayer', 'nhits', 'nlayers', 'eta'],
102  trackSelectors = cms.VPSet(
103  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
104  name = 'hiRegitMuDetachedTripletStepLoose',
105  min_nhits = 8
106  ),
107  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
108  name = 'hiRegitMuDetachedTripletStepTight',
109  preFilterName = 'hiRegitMuDetachedTripletStepLoose',
110  min_nhits = 8,
111  useMVA = True,
112  minMVA = -0.2
113  ),
114  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
115  name = 'hiRegitMuDetachedTripletStep',
116  preFilterName = 'hiRegitMuDetachedTripletStepTight',
117  min_nhits = 8,
118  useMVA = True,
119  minMVA = -0.09
120  )
121  ) #end of vpset
122 )
123 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
124 trackingPhase1.toModify(hiRegitMuDetachedTripletStepSelector,
125  useAnyMVA = False,
126  trackSelectors= cms.VPSet(
127  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
128  name = 'hiRegitMuDetachedTripletStepLoose',
129  min_nhits = 8
130  ),
131  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
132  name = 'hiRegitMuDetachedTripletStepTight',
133  preFilterName = 'hiRegitMuDetachedTripletStepLoose',
134  min_nhits = 8,
135  useMVA = False,
136  minMVA = -0.2
137  ),
138  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
139  name = 'hiRegitMuDetachedTripletStep',
140  preFilterName = 'hiRegitMuDetachedTripletStepTight',
141  min_nhits = 8,
142  useMVA = False,
143  minMVA = -0.09
144  )
145  )
146 )
147 
148 hiRegitMuonDetachedTripletStepTask = cms.Task(hiRegitMuDetachedTripletStepClusters,
149  hiRegitMuDetachedTripletStepSeedLayers,
150  hiRegitMuDetachedTripletStepTrackingRegions,
151  hiRegitMuDetachedTripletStepHitDoublets,
152  hiRegitMuDetachedTripletStepHitTriplets,
153  hiRegitMuDetachedTripletStepSeeds,
154  hiRegitMuDetachedTripletStepTrackCandidates,
155  hiRegitMuDetachedTripletStepTracks,
156  hiRegitMuDetachedTripletStepSelector
157  )
158 hiRegitMuonDetachedTripletStep = cms.Sequence(hiRegitMuonDetachedTripletStepTask)
pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI) 3rd ste...