CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HLTFastRecoForMuon_cff.py
Go to the documentation of this file.
2 
5 
6 # RecoMuon flux ##########################################################
7 # L2 seeds from L1 input
8 # module hltL2MuonSeeds = L2MuonSeeds from "RecoMuon/L2MuonSeedGenerator/data/L2MuonSeeds.cfi"
9 # replace hltL2MuonSeeds.GMTReadoutCollection = l1extraParticles
10 # replace hltL2MuonSeeds.InputObjects = l1extraParticles
11 # L3 regional reconstruction
13 #import FastSimulation.Muons.L3Muons_cfi
14 #hltL3Muonstemp = FastSimulation.Muons.L3Muons_cfi.L3Muons.clone()
15 #hltL3Muonstemp.L3TrajBuilderParameters.TrackTransformer.TrackerRecHitBuilder = 'WithoutRefit'
16 #hltL3Muonstemp.L3TrajBuilderParameters.TrackerRecHitBuilder = 'WithoutRefit'
17 #hltL3Muonstemp.TrackLoaderParameters.beamSpot = cms.InputTag("offlineBeamSpot")
18 
19 # L3 regional seeding, candidating, tracking
20 #--the two below have to be picked up from confDB:
21 # from FastSimulation.Muons.TSGFromL2_cfi import *
22 # from FastSimulation.Muons.HLTL3TkMuons_cfi import *
23 #from FastSimulation.Muons.TrackCandidateFromL2_cfi import *
24 #from FastSimulation.Muons.TSGFromL2_cfi import *
25 #hltL3TrajectorySeed = FastSimulation.Muons.TSGFromL2_cfi.hltL3TrajectorySeed.clone()
26 
27 import FastSimulation.Muons.TSGFromL2_cfi as TSG
28 #from FastSimulation.Muons.TSGFromL2_cfi import OIStatePropagators as OIProp
29 from FastSimulation.Muons.TSGFromL2_cfi import OIHitPropagators as OIHProp
30 ## Make three individual seeders
31 ## OIState can be taken directly from configuration
32 #hltL3TrajSeedOIState = TSG.l3seeds("OIState")
33 #hltL3TrajSeedOIState.ServiceParameters.Propagators = cms.untracked.vstring()
34 #OIProp(hltL3TrajSeedOIState,hltL3TrajSeedOIState.TkSeedGenerator)
35 hltL3TrajSeedOIHit = TSG.l3seeds("OIHitCascade")
36 hltL3TrajSeedOIHit.ServiceParameters.Propagators = cms.untracked.vstring()
37 OIHProp(hltL3TrajSeedOIHit,hltL3TrajSeedOIHit.TkSeedGenerator.iterativeTSG)
38 hltL3TrajSeedIOHit = TSG.l3seeds("IOHitCascade")
39 
40 ## Make one TrackCand for each seeder
42 hltL3TrackCandidateFromL2OIState = FastSimulation.Muons.TrackCandidateFromL2_cfi.hltL3TrackCandidateFromL2.clone()
43 hltL3TrackCandidateFromL2OIState.SeedProducer = "hltL3TrajSeedOIState"
44 hltL3TrackCandidateFromL2OIHit = FastSimulation.Muons.TrackCandidateFromL2_cfi.hltL3TrackCandidateFromL2.clone()
45 hltL3TrackCandidateFromL2OIHit.SeedProducer = "hltL3TrajSeedOIHit"
46 hltL3TrackCandidateFromL2IOHit = FastSimulation.Muons.TrackCandidateFromL2_cfi.hltL3TrackCandidateFromL2.clone()
47 hltL3TrackCandidateFromL2IOHit.SeedProducer = "hltL3TrajSeedIOHit"
48 hltL3TrackCandidateFromL2NoVtx = FastSimulation.Muons.TrackCandidateFromL2_cfi.hltL3TrackCandidateFromL2.clone()
49 hltL3TrackCandidateFromL2NoVtx.SeedProducer = "hltL3TrajectorySeedNoVtx"
50 
51 
52 # (Not-so) Regional Tracking - needed because the TrackCandidateProducer needs the seeds
53 
54 
55 # Paths that need a regional pixel seed (which accesses Pixel RecHits in its usual implementation)
56 hltJpsiTkPixelSeedFromL3Candidate = FastSimulation.HighLevelTrigger.DummyModule_cfi.dummyModule.clone()
57 hltCkfTrackCandidatesJpsiTk = cms.Sequence(globalPixelTracking)
58 # Take all pixel tracks (pTMin>1GeV, nHits>=8)
59 hltCtfWithMaterialTracksJpsiTk = cms.EDProducer("FastTrackMerger",
60  SaveTracksOnly = cms.untracked.bool(True),
61  TrackProducers = cms.VInputTag(cms.InputTag("globalPixelWithMaterialTracks"),
62  cms.InputTag("globalPixelTrackCandidates")),
63  ptMin = cms.untracked.double(1.0),
64  minHits = cms.untracked.uint32(8)
65 )
66 
67 # CKFTrackCandidateMaker
69 
70 hltMuCkfTrackCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
71 hltMuCkfTrackCandidates.SeedProducer = cms.InputTag("hltMuTrackSeeds")
72 hltMuCkfTrackCandidates.TrackProducers = []
73 hltMuCkfTrackCandidates.SeedCleaning = True
74 hltMuCkfTrackCandidates.SplitHits = False
75 
76 hltMuTrackJpsiCkfTrackCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
77 hltMuTrackJpsiCkfTrackCandidates.SeedProducer = cms.InputTag("hltMuTrackJpsiTrackSeeds")
78 hltMuTrackJpsiCkfTrackCandidates.TrackProducers = []
79 hltMuTrackJpsiCkfTrackCandidates.SeedCleaning = True
80 hltMuTrackJpsiCkfTrackCandidates.SplitHits = False
81 
82 hltMuTrackJpsiEffCkfTrackCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
83 hltMuTrackJpsiEffCkfTrackCandidates.SeedProducer = cms.InputTag("hltMuTrackJpsiTrackSeeds")
84 hltMuTrackJpsiEffCkfTrackCandidates.TrackProducers = []
85 hltMuTrackJpsiEffCkfTrackCandidates.SeedCleaning = True
86 hltMuTrackJpsiEffCkfTrackCandidates.SplitHits = False
87 
88 hltMuTrackCkfTrackCandidatesOnia = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
89 hltMuTrackCkfTrackCandidatesOnia.SeedProducer = cms.InputTag("hltMuTrackTrackSeedsOnia")
90 hltMuTrackCkfTrackCandidatesOnia.TrackProducers = []
91 hltMuTrackCkfTrackCandidatesOnia.SeedCleaning = True
92 hltMuTrackCkfTrackCandidatesOnia.SplitHits = False
93 
94 # CTF track fit with material
96 
97 hltMuCtfTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
98 hltMuCtfTracks.src = 'hltMuCkfTrackCandidates'
99 hltMuCtfTracks.TTRHBuilder = 'WithoutRefit'
100 hltMuCtfTracks.Fitter = 'KFFittingSmoother'
101 hltMuCtfTracks.Propagator = 'PropagatorWithMaterial'
102 
103 hltMuTrackJpsiCtfTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
104 hltMuTrackJpsiCtfTracks.src = 'hltMuTrackJpsiCkfTrackCandidates'
105 hltMuTrackJpsiCtfTracks.TTRHBuilder = 'WithoutRefit'
106 hltMuTrackJpsiCtfTracks.Fitter = 'KFFittingSmoother'
107 hltMuTrackJpsiCtfTracks.Propagator = 'PropagatorWithMaterial'
108 
109 hltMuTrackJpsiEffCtfTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
110 hltMuTrackJpsiEffCtfTracks.src = 'hltMuTrackJpsiEffCkfTrackCandidates'
111 hltMuTrackJpsiEffCtfTracks.TTRHBuilder = 'WithoutRefit'
112 hltMuTrackJpsiEffCtfTracks.Fitter = 'KFFittingSmoother'
113 hltMuTrackJpsiEffCtfTracks.Propagator = 'PropagatorWithMaterial'
114 
115 hltMuTrackCtfTracksOnia = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
116 hltMuTrackCtfTracksOnia.src = 'hltMuTrackCkfTrackCandidatesOnia'
117 hltMuTrackCtfTracksOnia.TTRHBuilder = 'WithoutRefit'
118 hltMuTrackCtfTracksOnia.Fitter = 'KFFittingSmoother'
119 hltMuTrackCtfTracksOnia.Propagator = 'PropagatorWithMaterial'
120 
121 #hltMuTrackSeedsSequence = cms.Sequence(globalPixelTracking+
122 # cms.SequencePlaceholder("hltMuTrackSeeds"))
123 #
124 #HLTMuTrackingSequence = cms.Sequence(hltMuCkfTrackCandidates+
125 # hltMuCtfTracks+
126 # cms.SequencePlaceholder("hltMuTracking"))
127 
128 
129 # L3 muon isolation sequence
131 HLTRegionalCKFTracksForL3Isolation = cms.Sequence( hltPixelTracks)
132 
Make one TrackCand for each seeder.