CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HiRegitMuonMixedTripletStep_cff.py
Go to the documentation of this file.
2 
3 ###################################################################################
4 # pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI)
5 ################################### 4th step: large impact parameter tracking using mixed-triplet seeding
6 
8 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonTrackingRegionBuilder.vertexCollection = cms.InputTag("hiSelectedVertex")
9 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonSrc= cms.InputTag("standAloneMuons","UpdatedAtVtx")
10 
11 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonTrackingRegionBuilder.UseVertex = True
12 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonTrackingRegionBuilder.UseFixedRegion = True
13 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonTrackingRegionBuilder.Phi_fixed = 0.3
14 HiTrackingRegionFactoryFromSTAMuonsBlock.MuonTrackingRegionBuilder.Eta_fixed = 0.2
15 
16 
17 ###################################
19 
20 # NEW CLUSTERS (remove previously used clusters)
21 hiRegitMuMixedTripletStepClusters = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepClusters.clone(
22  oldClusterRemovalInfo = cms.InputTag("hiRegitMuPixelPairStepClusters"),
23  trajectories = cms.InputTag("hiRegitMuPixelPairStepTracks"),
24  overrideTrkQuals = cms.InputTag('hiRegitMuPixelPairStepSelector','hiRegitMuPixelPairStep'),
25  TrackQuality = cms.string('tight')
26 )
27 
28 
29 # SEEDING LAYERS A
30 hiRegitMuMixedTripletStepSeedLayersA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedLayersA.clone()
31 hiRegitMuMixedTripletStepSeedLayersA.BPix.skipClusters = cms.InputTag('hiRegitMuMixedTripletStepClusters')
32 hiRegitMuMixedTripletStepSeedLayersA.FPix.skipClusters = cms.InputTag('hiRegitMuMixedTripletStepClusters')
33 hiRegitMuMixedTripletStepSeedLayersA.TEC.skipClusters = cms.InputTag('hiRegitMuMixedTripletStepClusters')
34 
35 # SEEDS A
36 hiRegitMuMixedTripletStepSeedsA = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedsA.clone()
37 hiRegitMuMixedTripletStepSeedsA.RegionFactoryPSet = HiTrackingRegionFactoryFromSTAMuonsBlock.clone()
38 hiRegitMuMixedTripletStepSeedsA.ClusterCheckPSet.doClusterCheck = False # do not check for max number of clusters pixel or strips
39 hiRegitMuMixedTripletStepSeedsA.RegionFactoryPSet.MuonTrackingRegionBuilder.EscapePt = 1.3
40 hiRegitMuMixedTripletStepSeedsA.RegionFactoryPSet.MuonTrackingRegionBuilder.DeltaR = 0.5 # default = 0.2
41 hiRegitMuMixedTripletStepSeedsA.RegionFactoryPSet.MuonTrackingRegionBuilder.DeltaZ_Region = 0.5 # this give you the length
42 hiRegitMuMixedTripletStepSeedsA.RegionFactoryPSet.MuonTrackingRegionBuilder.Rescale_Dz = 4. # max(DeltaZ_Region,Rescale_Dz*vtx->zError())
43 hiRegitMuMixedTripletStepSeedsA.OrderedHitsFactoryPSet.SeedingLayers = 'hiRegitMuMixedTripletStepSeedLayersA'
44 
45 # SEEDING LAYERS B
46 hiRegitMuMixedTripletStepSeedLayersB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedLayersB.clone()
47 hiRegitMuMixedTripletStepSeedLayersB.BPix.skipClusters = cms.InputTag('hiRegitMuMixedTripletStepClusters')
48 hiRegitMuMixedTripletStepSeedLayersB.TIB.skipClusters = cms.InputTag('hiRegitMuMixedTripletStepClusters')
49 
50 
51 hiRegitMuMixedTripletStepSeedsB = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeedsB.clone()
52 hiRegitMuMixedTripletStepSeedsB.RegionFactoryPSet = HiTrackingRegionFactoryFromSTAMuonsBlock.clone()
53 hiRegitMuMixedTripletStepSeedsB.ClusterCheckPSet.doClusterCheck = False # do not check for max number of clusters pixel or strips
54 hiRegitMuMixedTripletStepSeedsB.RegionFactoryPSet.MuonTrackingRegionBuilder.EscapePt = 1.5
55 hiRegitMuMixedTripletStepSeedsB.RegionFactoryPSet.MuonTrackingRegionBuilder.DeltaR = 0.5 # default = 0.2
56 hiRegitMuMixedTripletStepSeedsB.RegionFactoryPSet.MuonTrackingRegionBuilder.DeltaZ_Region = 0.5 # this give you the length
57 hiRegitMuMixedTripletStepSeedsB.RegionFactoryPSet.MuonTrackingRegionBuilder.Rescale_Dz = 4. # max(DeltaZ_Region,Rescale_Dz*vtx->zError())
58 hiRegitMuMixedTripletStepSeedsB.OrderedHitsFactoryPSet.SeedingLayers = 'hiRegitMuMixedTripletStepSeedLayersB'
59 
60 # combine seeds
61 hiRegitMuMixedTripletStepSeeds = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSeeds.clone(
62  seedCollections = cms.VInputTag(
63  cms.InputTag('hiRegitMuMixedTripletStepSeedsA'),
64  cms.InputTag('hiRegitMuMixedTripletStepSeedsB'),
65  )
66  )
67 
68 # track building
69 hiRegitMuMixedTripletStepTrajectoryFilter = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryFilter.clone()
70 
71 hiRegitMuMixedTripletStepTrajectoryFilter.minPt = 1.
72 hiRegitMuMixedTripletStepTrajectoryFilter.minimumNumberOfHits = 6
73 hiRegitMuMixedTripletStepTrajectoryFilter.minHitsMinPt = 4
74 
75 
76  # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3),
77 
78 hiRegitMuMixedTripletStepTrajectoryBuilder = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryBuilder.clone(
79  trajectoryFilter = cms.PSet(
80  refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryFilter')
81  ),
82  minNrOfHitsForRebuild = 6 #change from default 4
83 )
84 
85 hiRegitMuMixedTripletStepTrackCandidates = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrackCandidates.clone(
86  src = cms.InputTag('hiRegitMuMixedTripletStepSeeds'),
87  TrajectoryBuilderPSet = cms.PSet(
88  refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryBuilder')
89  ),
90  clustersToSkip = cms.InputTag('hiRegitMuMixedTripletStepClusters'),
91  maxNSeeds = cms.uint32(1000000)
92  )
93 
94 # fitting: feed new-names
95 hiRegitMuMixedTripletStepTracks = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTracks.clone(
96  AlgorithmName = cms.string('iter7'),
97  src = 'hiRegitMuMixedTripletStepTrackCandidates',
98 )
99 
100 
101 # TRACK SELECTION AND QUALITY FLAG SETTING.
102 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
103 hiRegitMuMixedTripletStepSelector = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepSelector.clone(
104  src = 'hiRegitMuMixedTripletStepTracks',
105  vertices = cms.InputTag("hiSelectedVertex"),
106  trackSelectors= cms.VPSet(
107  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
108  name = 'hiRegitMuMixedTripletStepLoose',
109  qualityBit = cms.string('loose'),
110  ),
111  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
112  name = 'hiRegitMuMixedTripletStepTight',
113  preFilterName = 'hiRegitMuMixedTripletStepLoose',
114  qualityBit = cms.string('loose'),
115  ),
116  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
117  name = 'hiRegitMuMixedTripletStep',
118  preFilterName = 'hiRegitMuMixedTripletStepTight',
119  qualityBit = cms.string('tight'),
120  )
121  ) #end of vpset
122  ) #end of clone
123 
124 hiRegitMuonMixedTripletStep = cms.Sequence(hiRegitMuMixedTripletStepClusters*
125  hiRegitMuMixedTripletStepSeedLayersA*
126  hiRegitMuMixedTripletStepSeedsA*
127  hiRegitMuMixedTripletStepSeedLayersB*
128  hiRegitMuMixedTripletStepSeedsB*
129  hiRegitMuMixedTripletStepSeeds*
130  hiRegitMuMixedTripletStepTrackCandidates*
131  hiRegitMuMixedTripletStepTracks*
132  hiRegitMuMixedTripletStepSelector)
pp iterative tracking modified for hiOffline reco (the vertex is the one reconstructed in HI) 3rd ste...