CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RecoMuon_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # Standard pp setup
5 
6 ########################################################
7 
8 # Sequence for cosmic reconstruction
9 # Seed generator
11 CosmicMuonSeed.DTRecSegmentLabel = 'dt4DCosmicSegments'
12 # Stand alone muon track producer
14 cosmicMuons.TrajectoryBuilderParameters.DTRecSegmentLabel = 'dt4DCosmicSegments'
15 
16 # Muon Id producer
17 muonsFromCosmics = RecoMuon.MuonIdentification.muons1stStep_cfi.muons1stStep.clone(
18  inputCollectionLabels = ['cosmicMuons'],
19  inputCollectionTypes = ['outer tracks'],
20  fillIsolation = False,
21  fillGlobalTrackQuality = False,
22  fillGlobalTrackRefits = False,
23  TrackAssociatorParameters = dict(DTRecSegment4DCollectionLabel = 'dt4DCosmicSegments'),
24  TrackExtractorPSet = dict(inputTrackCollection = 'cosmicMuons'),
25  TimingFillerParameters = dict(
26  MatchParameters = dict(DTsegments = 'dt4DCosmicSegments'),
27  DTTimingParameters = dict(PruneCut = 9999),
28  CSCTimingParameters = dict(PruneCut = 9999))
29 )
30 
31 #add regional cosmic tracks here
32 muoncosmicreco2legsSTATask = cms.Task(CosmicMuonSeed,cosmicMuons)
33 muoncosmicreco2legsSTA = cms.Sequence(muoncosmicreco2legsSTATask)
34 muoncosmicreco2legsHighLevelTask = cms.Task(muonsFromCosmics)
35 muoncosmicreco2legsHighLevel = cms.Sequence(muoncosmicreco2legsHighLevelTask)
36 
37 # 1 Leg type
38 # Stand alone muon track producer
39 cosmicMuons1Leg = cosmicMuons.clone(
40  MuonSeedCollectionLabel = 'CosmicMuonSeed',
41  TrajectoryBuilderParameters = dict(
42  BuildTraversingMuon = True,
43  Strict1Leg = True,
44  DTRecSegmentLabel = 'dt4DCosmicSegments')
45 )
46 
47 # Muon Id producer
48 muonsFromCosmics1Leg = muons1stStep.clone(
49  inputCollectionLabels = ['cosmicMuons1Leg'],
50  inputCollectionTypes = ['outer tracks'],
51  fillIsolation = False,
52  fillGlobalTrackQuality = False,
53  fillGlobalTrackRefits = False,
54  TrackAssociatorParameters = dict(DTRecSegment4DCollectionLabel = 'dt4DCosmicSegments'),
55  TrackExtractorPSet = dict(inputTrackCollection = 'cosmicMuons1Leg'),
56  TimingFillerParameters = dict(
57  MatchParameters = dict(DTsegments = 'dt4DCosmicSegments'),
58  DTTimingParameters = dict(PruneCut = 9999),
59  CSCTimingParameters = dict(PruneCut = 9999))
60 )
61 
62 muoncosmicreco1legSTATask = cms.Task(CosmicMuonSeed,cosmicMuons1Leg)
63 muoncosmicreco1legSTA = cms.Sequence(muoncosmicreco1legSTATask)
64 muoncosmicreco1legHighLevelTask = cms.Task(muonsFromCosmics1Leg)
65 muoncosmicreco1legHighLevel = cms.Sequence(muoncosmicreco1legHighLevelTask)
66 
67 muoncosmicrecoTask = cms.Task(muoncosmicreco2legsSTATask,muoncosmicreco1legSTATask)
68 muoncosmicreco = cms.Sequence(muoncosmicrecoTask)
69 muoncosmichighlevelrecoTask = cms.Task(muoncosmicreco2legsHighLevelTask,muoncosmicreco1legHighLevelTask,cosmicsMuonIdTask)
70 muoncosmichighlevelreco = cms.Sequence(muoncosmichighlevelrecoTask)
71 
72 #### High level sequence (i.e., post PF reconstruction) ###
76 
77 # clusters are not present in fastsim
78 from Configuration.Eras.Modifier_fastSim_cff import fastSim
79 fastSim.toModify(muonReducedTrackExtras, outputClusters = False)
80 
81 # cluster collections are different in phase 2
82 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
83 phase2_tracker.toModify(muonReducedTrackExtras, outputClusters = False)
84 
85 muonshighlevelrecoTask = cms.Task(muonPFIsolationTask,muons,muonReducedTrackExtras)
86 muonshighlevelreco = cms.Sequence(muonshighlevelrecoTask)
High level sequence (i.e., post PF reconstruction) ###.