CMS 3D CMS Logo

muonProducer_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 patMuons = cms.EDProducer("PATMuonProducer",
4  # input
5  muonSource = cms.InputTag("muons"),
6 
7  # use particle flow instead of std reco
8  useParticleFlow = cms.bool( False ),
9  pfMuonSource = cms.InputTag("particleFlow"),
10 
11  # add user data
12  userData = cms.PSet(
13  # add custom classes here
14  userClasses = cms.PSet(
15  src = cms.VInputTag('')
16  ),
17  # add doubles here
18  userFloats = cms.PSet(
19  src = cms.VInputTag('')
20  ),
21  # add ints here
22  userInts = cms.PSet(
23  src = cms.VInputTag('')
24  ),
25  # add candidate ptrs here
26  userCands = cms.PSet(
27  src = cms.VInputTag('')
28  ),
29  # add "inline" functions here
30  userFunctions = cms.vstring(),
31  userFunctionLabels = cms.vstring()
32  ),
33 
34  # embedding objects
35  embedMuonBestTrack = cms.bool(True), ## embed in AOD externally stored muon best track from global pflow
36  embedTunePMuonBestTrack = cms.bool(True), ## embed in AOD externally stored muon best track from muon only
37  forceBestTrackEmbedding = cms.bool(False), ## force embedding separately the best tracks even if they're already embedded e.g. as tracker or global tracks
38  embedTrack = cms.bool(False), ## embed in AOD externally stored tracker track
39  embedCombinedMuon = cms.bool(True), ## embed in AOD externally stored combined muon track
40  embedStandAloneMuon = cms.bool(True), ## embed in AOD externally stored standalone muon track
41  embedPickyMuon = cms.bool(True), ## embed in AOD externally stored TeV-refit picky muon track
42  embedTpfmsMuon = cms.bool(True), ## embed in AOD externally stored TeV-refit TPFMS muon track
43  embedDytMuon = cms.bool(True), ## embed in AOD externally stored TeV-refit DYT muon track
44  embedPFCandidate = cms.bool(True), ## embed in AOD externally stored particle flow candidate
45 
46  # embedding of muon MET corrections for caloMET
47  embedCaloMETMuonCorrs = cms.bool(True),
48  caloMETMuonCorrs = cms.InputTag("muonMETValueMapProducer" , "muCorrData"),
49  # embedding of muon MET corrections for tcMET
50  embedTcMETMuonCorrs = cms.bool(False), # removed from RECO/AOD!
51  tcMETMuonCorrs = cms.InputTag("muonTCMETValueMapProducer", "muCorrData"),
52 
53  # embed IsoDeposits
54  isoDeposits = cms.PSet(
55  #user = cms.VInputTag(
56  # cms.InputTag("muIsoDepositCalByAssociatorTowers","ho"),
57  # cms.InputTag("muIsoDepositJets")
58  # ),
59  ),
60 
61  # user defined isolation variables the variables defined here will be accessible
62  # via pat::Muon::userIsolation(IsolationKeys key) with the key as defined in
63  # DataFormats/PatCandidates/interface/Isolation.h
64  userIsolation = cms.PSet(
65  #user = cms.VPSet(cms.PSet(
66  # src = cms.InputTag("muIsoDepositCalByAssociatorTowers","ho"),
67  # deltaR = cms.double(0.3)
68  # ),
69  # cms.PSet(
70  # src = cms.InputTag("muIsoDepositJets"),
71  # deltaR = cms.double(0.3)
72  # )),
73  ),
74  # Read and store combined inverse beta
75  addInverseBeta = cms.bool(True),
76  sourceMuonTimeExtra = cms.InputTag("muons","combined"), #Use combined info, not only csc or dt
77  # mc matching
78  addGenMatch = cms.bool(True),
79  embedGenMatch = cms.bool(True),
80  genParticleMatch = cms.InputTag("muonMatch"), ## particles source to be used for the matching
81 
82  # efficiencies
83  addEfficiencies = cms.bool(False),
84  efficiencies = cms.PSet(),
85 
86  # resolution configurables
87  addResolutions = cms.bool(False),
88  resolutions = cms.PSet(),
89 
90  # high level selections
91  embedHighLevelSelection = cms.bool(True),
92  beamLineSrc = cms.InputTag("offlineBeamSpot"),
93  pvSrc = cms.InputTag("offlinePrimaryVertices"),
94 
95  # ecal PF energy
96  embedPfEcalEnergy = cms.bool(True),
97  addPuppiIsolation = cms.bool(False),
98 
99  # Compute and store Mini-Isolation.
100  # Implemention and a description of parameters can be found in:
101  # PhysicsTools/PatUtils/src/PFIsolation.cc
102  # only works in miniaod, so set to True in miniAOD_tools.py
103  computeMiniIso = cms.bool(False),
104  effectiveAreaVec = cms.vdouble(0.0566, 0.0562, 0.0363, 0.0119, 0.0064),
105  pfCandsForMiniIso = cms.InputTag("packedPFCandidates"),
106  miniIsoParams = cms.vdouble(0.05, 0.2, 10.0, 0.5, 0.0001, 0.01, 0.01, 0.01, 0.0),
107 
108  computePuppiCombinedIso = cms.bool(False),
109  # Standard Muon Selectors and Jet-related observables
110  # Depends on MiniIsolation, so only works in miniaod
111  # Don't forget to set flags properly in miniAOD_tools.py
112  computeMuonMVA = cms.bool(False),
113  mvaTrainingFile = cms.FileInPath("RecoMuon/MuonIdentification/data/mu_2017_BDTG.weights.xml"),
114  lowPtmvaTrainingFile = cms.FileInPath("RecoMuon/MuonIdentification/data/mu_lowpt_BDTG.weights.xml"),
115  recomputeBasicSelectors = cms.bool(True),
116  mvaUseJec = cms.bool(True),
117  mvaDrMax = cms.double(0.4),
118  mvaJetTag = cms.InputTag("pfCombinedInclusiveSecondaryVertexV2BJetTags"),
119  mvaL1Corrector = cms.InputTag("ak4PFCHSL1FastjetCorrector"),
120  mvaL1L2L3ResCorrector = cms.InputTag("ak4PFCHSL1FastL2L3Corrector"),
121  rho = cms.InputTag("fixedGridRhoFastjetCentralNeutral"),
122 
123  computeSoftMuonMVA = cms.bool(False),
124  softMvaTrainingFile = cms.FileInPath("RecoMuon/MuonIdentification/data/TMVA-muonid-bmm4-B-25.weights.xml"),
125 
126  # MC Info
127  muonSimInfo = cms.InputTag("muonSimClassifier"),
128 
129  # Trigger Info
130  addTriggerMatching = cms.bool(False),
131  triggerObjects = cms.InputTag("slimmedPatTrigger"),
132  triggerResults = cms.InputTag("TriggerResults","","HLT"),
133  hltCollectionFilters = cms.vstring('*')
134 )
135 
136 
137 
138 
139 
140 
141 
142 
143 
144 
145 
146