CMS 3D CMS Logo

HiRegitMuonDetachedTripletStep_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 ###################################################################################
4 # pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI)
5 ################################### 3rd step: low-pT and displaced tracks from pixel triplets
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 = "hiSelectedVertex",
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 hiRegitMuDetachedTripletStepClusters = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepClusters.clone(
33  trajectories = cms.InputTag("hiRegitMuPixelLessStepTracks"),
34  overrideTrkQuals = cms.InputTag('hiRegitMuPixelLessStepSelector','hiRegitMuPixelLessStep'),
35  trackClassifier = cms.InputTag(''),
36  TrackQuality = cms.string('tight')
37 )
38 
39 # SEEDING LAYERS
40 hiRegitMuDetachedTripletStepSeedLayers = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepSeedLayers.clone()
41 hiRegitMuDetachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag('hiRegitMuDetachedTripletStepClusters')
42 hiRegitMuDetachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag('hiRegitMuDetachedTripletStepClusters')
43 
44 # seeding
45 hiRegitMuDetachedTripletStepHitDoublets = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepHitDoublets.clone(
46  seedingLayers = "hiRegitMuDetachedTripletStepSeedLayers",
47  trackingRegions = "hiRegitMuDetachedTripletStepTrackingRegions",
48  clusterCheck = "hiRegitMuClusterCheck",
49 )
50 hiRegitMuDetachedTripletStepHitTriplets = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepHitTriplets.clone(
51  doublets = "hiRegitMuDetachedTripletStepHitDoublets"
52 )
53 hiRegitMuDetachedTripletStepSeeds = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepSeeds.clone(
54  seedingHitSets = "hiRegitMuDetachedTripletStepHitTriplets"
55 )
57 
58 
59 # building: feed the new-named seeds
60 hiRegitMuDetachedTripletStepTrajectoryFilterBase = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryFilterBase.clone()
61 hiRegitMuDetachedTripletStepTrajectoryFilterBase.minPt = 0.8 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3),
62 
63 hiRegitMuDetachedTripletStepTrajectoryFilter = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryFilter.clone()
64 hiRegitMuDetachedTripletStepTrajectoryFilter.filters = cms.VPSet(
65  cms.PSet( refToPSet_ = cms.string('hiRegitMuDetachedTripletStepTrajectoryFilterBase')),
66  cms.PSet( refToPSet_ = cms.string('detachedTripletStepTrajectoryFilterShape')))
67 
68 hiRegitMuDetachedTripletStepTrajectoryBuilder = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrajectoryBuilder.clone(
69  clustersToSkip = cms.InputTag('hiRegitMuDetachedTripletStepClusters')
70 )
71 
72 hiRegitMuDetachedTripletStepTrackCandidates = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTrackCandidates.clone(
73  src = cms.InputTag('hiRegitMuDetachedTripletStepSeeds'),
74  TrajectoryBuilder = 'hiRegitMuDetachedTripletStepTrajectoryBuilder',
75  clustersToSkip = cms.InputTag("hiRegitMuDetachedTripletStepClusters")
76  )
77 
78 # fitting: feed new-names
79 hiRegitMuDetachedTripletStepTracks = RecoTracker.IterativeTracking.DetachedTripletStep_cff.detachedTripletStepTracks.clone(
80  AlgorithmName = cms.string('hiRegitMuDetachedTripletStep'),
81  src = 'hiRegitMuDetachedTripletStepTrackCandidates'
82 )
83 
84 
85 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
87 hiRegitMuDetachedTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
88  src ='hiRegitMuDetachedTripletStepTracks',
89  vertices = cms.InputTag("hiSelectedVertex"),
90  useAnyMVA = cms.bool(True),
91  GBRForestLabel = cms.string('HIMVASelectorIter7'),
92  GBRForestVars = cms.vstring(['chi2perdofperlayer', 'nhits', 'nlayers', 'eta']),
93  trackSelectors= cms.VPSet(
94  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
95  name = 'hiRegitMuDetachedTripletStepLoose',
96  min_nhits = cms.uint32(8)
97  ),
98  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
99  name = 'hiRegitMuDetachedTripletStepTight',
100  preFilterName = 'hiRegitMuDetachedTripletStepLoose',
101  min_nhits = cms.uint32(8),
102  useMVA = cms.bool(True),
103  minMVA = cms.double(-0.2)
104  ),
105  RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
106  name = 'hiRegitMuDetachedTripletStep',
107  preFilterName = 'hiRegitMuDetachedTripletStepTight',
108  min_nhits = cms.uint32(8),
109  useMVA = cms.bool(True),
110  minMVA = cms.double(-0.09)
111  )
112  ) #end of vpset
113  )
114 
115 
116 hiRegitMuonDetachedTripletStep = cms.Sequence(hiRegitMuDetachedTripletStepClusters*
117  hiRegitMuDetachedTripletStepSeedLayers*
118  hiRegitMuDetachedTripletStepTrackingRegions*
119  hiRegitMuDetachedTripletStepHitDoublets*
120  hiRegitMuDetachedTripletStepHitTriplets*
121  hiRegitMuDetachedTripletStepSeeds*
122  hiRegitMuDetachedTripletStepTrackCandidates*
123  hiRegitMuDetachedTripletStepTracks*
124  hiRegitMuDetachedTripletStepSelector
125  )
126 
pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI) 3rd ste...