CMS 3D CMS Logo

Functions | Variables
nano_cff Namespace Reference

Functions

def nanoAOD_activateVID (process)
 
def nanoAOD_addDeepInfo (process, addDeepBTag, addDeepFlavour)
 
def nanoAOD_addDeepInfoAK8 (process, addDeepBTag, addDeepBoostedJet, addDeepDoubleX, addDeepDoubleXV2, addParticleNet, jecPayload)
 
def nanoAOD_addDeepMET (process, addDeepMETProducer, ResponseTune_Graph)
 
def nanoAOD_addTauIds (process)
 
def nanoAOD_customizeCommon (process)
 
def nanoAOD_customizeData (process)
 
def nanoAOD_customizeMC (process)
 
def nanoAOD_recalibrateMETs (process, isData)
 
def nanoAOD_runMETfixEE2017 (process, isData)
 

Variables

 _102x_sequence
 
 _80x_sequence
 Era dependent customization. More...
 
 bool
 
 btagSFdir
 
 btagWeightTable
 
 cut
 
 discNames
 
 discShortNames
 
 doc
 
 electronName
 
 electrons
 
 electronSel
 
 extraFlagsTable
 
 Flag_ecalBadCalibFilterV2
 
 jetName
 
 jets
 
 jetSel
 
 l1bits
 
 legacyL1
 
 lheInfo
 
 lheInfoTable
 
 linkedObjects
 
 measurementTypesB
 
 measurementTypesC
 
 measurementTypesUDSG
 
 muonName
 
 muons
 
 muonSel
 
 name
 
 nanoMetadata
 
 nanoSequence
 
 nanoSequenceCommon
 
 nanoSequenceFS
 
 nanoSequenceMC
 
 nanoSequenceOnlyFullSim
 
 operatingPoints
 
 photonName
 
 photons
 
 photonSel
 
 precision
 
 simpleCleanerTable
 
 src
 
 src_ext
 
 storeLHEParticles
 
 storeUnprefireableBit
 
 strings
 
 sysTypes
 
 tag
 
 tauName
 
 taus
 
 tauSel
 
 variables
 
 weightFiles
 

Function Documentation

def nano_cff.nanoAOD_activateVID (   process)

Definition at line 227 of file nano_cff.py.

References vid_id_tools.setupAllVIDIdsInModule(), vid_id_tools.switchOnVIDElectronIdProducer(), and vid_id_tools.switchOnVIDPhotonIdProducer().

Referenced by nanoAOD_customizeCommon().

227 def nanoAOD_activateVID(process):
228  switchOnVIDElectronIdProducer(process,DataFormat.MiniAOD)
229  for modname in electron_id_modules_WorkingPoints_nanoAOD.modules:
230  setupAllVIDIdsInModule(process,modname,setupVIDElectronSelection)
231  process.electronSequence.insert(process.electronSequence.index(process.bitmapVIDForEle),process.egmGsfElectronIDSequence)
232  for modifier in run2_egamma_2017,run2_egamma_2018,run2_miniAOD_80XLegacy,run2_nanoAOD_94XMiniAODv1,run2_nanoAOD_94XMiniAODv2,run2_nanoAOD_94X2016,run2_nanoAOD_102Xv1,run2_nanoAOD_106Xv1:
233  modifier.toModify(process.electronMVAValueMapProducer, srcMiniAOD = "slimmedElectronsUpdated")
234  modifier.toModify(process.egmGsfElectronIDs, physicsObjectSrc = "slimmedElectronsUpdated")
235 
236  switchOnVIDPhotonIdProducer(process,DataFormat.MiniAOD) # do not call this to avoid resetting photon IDs in VID, if called before inside makePuppiesFromMiniAOD
237  for modname in photon_id_modules_WorkingPoints_nanoAOD.modules:
238  setupAllVIDIdsInModule(process,modname,setupVIDPhotonSelection)
239  process.photonSequence.insert(process.photonSequence.index(bitmapVIDForPho),process.egmPhotonIDSequence)
240  for modifier in run2_miniAOD_80XLegacy,run2_nanoAOD_94XMiniAODv1,run2_nanoAOD_94XMiniAODv2,run2_nanoAOD_94X2016 ,run2_nanoAOD_102Xv1:
241  modifier.toModify(process.photonMVAValueMapProducer, srcMiniAOD = "slimmedPhotonsTo106X")
242  modifier.toModify(process.egmPhotonIDs, physicsObjectSrc = "slimmedPhotonsTo106X")
243  return process
244 
def switchOnVIDElectronIdProducer(process, dataFormat, task=None)
Electrons.
Definition: vid_id_tools.py:66
def setupAllVIDIdsInModule(process, id_module_name, setupFunction, patProducer=None, addUserData=True, task=None)
Definition: vid_id_tools.py:49
def nanoAOD_activateVID(process)
Definition: nano_cff.py:227
def switchOnVIDPhotonIdProducer(process, dataFormat, task=None)
Photons.
def nano_cff.nanoAOD_addDeepInfo (   process,
  addDeepBTag,
  addDeepFlavour 
)

Definition at line 151 of file nano_cff.py.

References join(), and edm.print().

Referenced by nanoAOD_customizeCommon().

151 def nanoAOD_addDeepInfo(process,addDeepBTag,addDeepFlavour):
152  _btagDiscriminators=[]
153  if addDeepBTag:
154  print("Updating process to run DeepCSV btag")
155  _btagDiscriminators += ['pfDeepCSVJetTags:probb','pfDeepCSVJetTags:probbb','pfDeepCSVJetTags:probc']
156  if addDeepFlavour:
157  print("Updating process to run DeepFlavour btag")
158  _btagDiscriminators += ['pfDeepFlavourJetTags:probb','pfDeepFlavourJetTags:probbb','pfDeepFlavourJetTags:problepb','pfDeepFlavourJetTags:probc']
159  if len(_btagDiscriminators)==0: return process
160  print("Will recalculate the following discriminators: "+", ".join(_btagDiscriminators))
161  updateJetCollection(
162  process,
163  jetSource = cms.InputTag('slimmedJets'),
164  jetCorrections = ('AK4PFchs', cms.vstring(['L1FastJet', 'L2Relative', 'L3Absolute','L2L3Residual']), 'None'),
165  btagDiscriminators = _btagDiscriminators,
166  postfix = 'WithDeepInfo',
167  )
168  process.load("Configuration.StandardSequences.MagneticField_cff")
169  process.jetCorrFactorsNano.src="selectedUpdatedPatJetsWithDeepInfo"
170  process.updatedJets.jetSource="selectedUpdatedPatJetsWithDeepInfo"
171  return process
172 
def nanoAOD_addDeepInfo(process, addDeepBTag, addDeepFlavour)
Definition: nano_cff.py:151
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def nano_cff.nanoAOD_addDeepInfoAK8 (   process,
  addDeepBTag,
  addDeepBoostedJet,
  addDeepDoubleX,
  addDeepDoubleXV2,
  addParticleNet,
  jecPayload 
)

Definition at line 245 of file nano_cff.py.

References join(), and edm.print().

Referenced by nanoAOD_customizeCommon().

245 def nanoAOD_addDeepInfoAK8(process, addDeepBTag, addDeepBoostedJet, addDeepDoubleX, addDeepDoubleXV2, addParticleNet, jecPayload):
246  _btagDiscriminators=[]
247  if addDeepBTag:
248  print("Updating process to run DeepCSV btag to AK8 jets")
249  _btagDiscriminators += ['pfDeepCSVJetTags:probb','pfDeepCSVJetTags:probbb']
250  if addDeepBoostedJet:
251  print("Updating process to run DeepBoostedJet on datasets before 103X")
252  from RecoBTag.ONNXRuntime.pfDeepBoostedJet_cff import _pfDeepBoostedJetTagsAll as pfDeepBoostedJetTagsAll
253  _btagDiscriminators += pfDeepBoostedJetTagsAll
254  if addParticleNet:
255  print("Updating process to run ParticleNet before it's included in MiniAOD")
256  from RecoBTag.ONNXRuntime.pfParticleNet_cff import _pfParticleNetJetTagsAll as pfParticleNetJetTagsAll
257  _btagDiscriminators += pfParticleNetJetTagsAll
258  if addDeepDoubleX:
259  print("Updating process to run DeepDoubleX on datasets before 104X")
260  _btagDiscriminators += ['pfDeepDoubleBvLJetTags:probHbb', \
261  'pfDeepDoubleCvLJetTags:probHcc', \
262  'pfDeepDoubleCvBJetTags:probHcc', \
263  'pfMassIndependentDeepDoubleBvLJetTags:probHbb', 'pfMassIndependentDeepDoubleCvLJetTags:probHcc', 'pfMassIndependentDeepDoubleCvBJetTags:probHcc']
264  if addDeepDoubleXV2:
265  print("Updating process to run DeepDoubleXv2 on datasets before 11X")
266  _btagDiscriminators += [
267  'pfMassIndependentDeepDoubleBvLV2JetTags:probHbb',
268  'pfMassIndependentDeepDoubleCvLV2JetTags:probHcc',
269  'pfMassIndependentDeepDoubleCvBV2JetTags:probHcc'
270  ]
271  if len(_btagDiscriminators)==0: return process
272  print("Will recalculate the following discriminators on AK8 jets: "+", ".join(_btagDiscriminators))
273  updateJetCollection(
274  process,
275  jetSource = cms.InputTag('slimmedJetsAK8'),
276  pvSource = cms.InputTag('offlineSlimmedPrimaryVertices'),
277  svSource = cms.InputTag('slimmedSecondaryVertices'),
278  rParam = 0.8,
279  jetCorrections = (jecPayload.value(), cms.vstring(['L1FastJet', 'L2Relative', 'L3Absolute', 'L2L3Residual']), 'None'),
280  btagDiscriminators = _btagDiscriminators,
281  postfix='AK8WithDeepInfo',
282  printWarning = False
283  )
284  process.jetCorrFactorsAK8.src="selectedUpdatedPatJetsAK8WithDeepInfo"
285  process.updatedJetsAK8.jetSource="selectedUpdatedPatJetsAK8WithDeepInfo"
286  return process
287 
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def nanoAOD_addDeepInfoAK8(process, addDeepBTag, addDeepBoostedJet, addDeepDoubleX, addDeepDoubleXV2, addParticleNet, jecPayload)
Definition: nano_cff.py:245
def nano_cff.nanoAOD_addDeepMET (   process,
  addDeepMETProducer,
  ResponseTune_Graph 
)

Definition at line 173 of file nano_cff.py.

References edm.print().

Referenced by nanoAOD_recalibrateMETs().

173 def nanoAOD_addDeepMET(process, addDeepMETProducer, ResponseTune_Graph):
174  if addDeepMETProducer:
175  # produce DeepMET on the fly if it is not in MiniAOD
176  print("add DeepMET Producers")
177  process.load('RecoMET.METPUSubtraction.deepMETProducer_cfi')
178  process.deepMETsResolutionTune = process.deepMETProducer.clone()
179  process.deepMETsResponseTune = process.deepMETProducer.clone()
180  #process.deepMETsResponseTune.graph_path = 'RecoMET/METPUSubtraction/data/deepmet/deepmet_resp_v1_2018.pb'
181  process.deepMETsResponseTune.graph_path = ResponseTune_Graph.value()
182  process.metTables += process.deepMetTables
183  return process
184 
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
def nanoAOD_addDeepMET(process, addDeepMETProducer, ResponseTune_Graph)
Definition: nano_cff.py:173
def nano_cff.nanoAOD_addTauIds (   process)

Definition at line 141 of file nano_cff.py.

Referenced by nanoAOD_customizeCommon().

141 def nanoAOD_addTauIds(process):
142  updatedTauName = "slimmedTausUpdated"
143  tauIdEmbedder = tauIdConfig.TauIDEmbedder(process, cms, debug = False, updatedTauName = updatedTauName,
144  toKeep = [ "deepTau2017v2p1" ])
145  tauIdEmbedder.runTauID()
146  process.patTauMVAIDsSeq.insert(process.patTauMVAIDsSeq.index(getattr(process, updatedTauName)),
147  process.rerunMvaIsolationSequence)
148  return process
149 
def nanoAOD_addTauIds(process)
Definition: nano_cff.py:141
def nano_cff.nanoAOD_customizeCommon (   process)

Definition at line 296 of file nano_cff.py.

References puppiForMET_cff.makePuppiesFromMiniAOD(), nanoAOD_activateVID(), nanoAOD_addDeepInfo(), nanoAOD_addDeepInfoAK8(), and nanoAOD_addTauIds().

Referenced by nanoAOD_customizeData(), and nanoAOD_customizeMC().

297  makePuppiesFromMiniAOD(process,True)
298  process.puppiNoLep.useExistingWeights = True
299  process.puppi.useExistingWeights = True
300  run2_nanoAOD_106Xv1.toModify(process.puppiNoLep, useExistingWeights = False)
301  run2_nanoAOD_106Xv1.toModify(process.puppi, useExistingWeights = False)
302  process = nanoAOD_activateVID(process)
303  nanoAOD_addDeepInfo_switch = cms.PSet(
304  nanoAOD_addDeepBTag_switch = cms.untracked.bool(False),
305  nanoAOD_addDeepFlavourTag_switch = cms.untracked.bool(False),
306  )
307  run2_miniAOD_80XLegacy.toModify(nanoAOD_addDeepInfo_switch, nanoAOD_addDeepBTag_switch = cms.untracked.bool(True))
308  for modifier in run2_miniAOD_80XLegacy, run2_nanoAOD_94X2016, run2_nanoAOD_94XMiniAODv1, run2_nanoAOD_94XMiniAODv2:
309  modifier.toModify(nanoAOD_addDeepInfo_switch, nanoAOD_addDeepFlavourTag_switch = cms.untracked.bool(True))
310  process = nanoAOD_addDeepInfo(process,
311  addDeepBTag=nanoAOD_addDeepInfo_switch.nanoAOD_addDeepBTag_switch,
312  addDeepFlavour=nanoAOD_addDeepInfo_switch.nanoAOD_addDeepFlavourTag_switch)
313  nanoAOD_addDeepInfoAK8_switch = cms.PSet(
314  nanoAOD_addDeepBTag_switch = cms.untracked.bool(False),
315  nanoAOD_addDeepBoostedJet_switch = cms.untracked.bool(True),
316  nanoAOD_addDeepDoubleX_switch = cms.untracked.bool(True),
317  nanoAOD_addDeepDoubleXV2_switch = cms.untracked.bool(True),
318  nanoAOD_addParticleNet_switch = cms.untracked.bool(True),
319  jecPayload = cms.untracked.string('AK8PFPuppi')
320  )
321  # Don't run on old mini due to compatibility
322  # 80X contains ak8PFJetsCHS jets instead of puppi
323  run2_miniAOD_80XLegacy.toModify(nanoAOD_addDeepInfoAK8_switch,
324  nanoAOD_addDeepBTag_switch = True,
325  nanoAOD_addDeepBoostedJet_switch = False,
326  nanoAOD_addDeepDoubleX_switch = False,
327  nanoAOD_addDeepDoubleXV2_switch = False,
328  nanoAOD_addParticleNet_switch = False,
329  jecPayload = 'AK8PFchs')
330  # Don't rerun where already present
331  run2_miniAOD_devel.toModify(
332  nanoAOD_addDeepInfoAK8_switch,
333  nanoAOD_addDeepBoostedJet_switch = False,
334  nanoAOD_addDeepDoubleX_switch = False,
335  nanoAOD_addDeepDoubleXV2_switch = False,
336  nanoAOD_addParticleNet_switch = False,
337  )
338  run2_nanoAOD_106Xv1.toModify(
339  nanoAOD_addDeepInfoAK8_switch,
340  nanoAOD_addDeepBoostedJet_switch = False,
341  nanoAOD_addDeepDoubleX_switch = False,
342  )
343  process = nanoAOD_addDeepInfoAK8(process,
344  addDeepBTag=nanoAOD_addDeepInfoAK8_switch.nanoAOD_addDeepBTag_switch,
345  addDeepBoostedJet=nanoAOD_addDeepInfoAK8_switch.nanoAOD_addDeepBoostedJet_switch,
346  addDeepDoubleX=nanoAOD_addDeepInfoAK8_switch.nanoAOD_addDeepDoubleX_switch,
347  addDeepDoubleXV2=nanoAOD_addDeepInfoAK8_switch.nanoAOD_addDeepDoubleXV2_switch,
348  addParticleNet=nanoAOD_addDeepInfoAK8_switch.nanoAOD_addParticleNet_switch,
349  jecPayload=nanoAOD_addDeepInfoAK8_switch.jecPayload)
350  addTauIds_switch = cms.PSet(
351  nanoAOD_addTauIds_switch = cms.untracked.bool(True)
352  )
353  run2_miniAOD_80XLegacy.toModify(addTauIds_switch, nanoAOD_addTauIds_switch = cms.untracked.bool(False))
354  ((run2_miniAOD_devel | run2_tau_ul_2016 | run2_tau_ul_2018) & \
355  (~(run2_nanoAOD_94X2016 | run2_nanoAOD_94XMiniAODv1 | run2_nanoAOD_94XMiniAODv2 | run2_nanoAOD_102Xv1 | run2_nanoAOD_106Xv1))).toModify(addTauIds_switch,
356  nanoAOD_addTauIds_switch = cms.untracked.bool(False))
357  if addTauIds_switch.nanoAOD_addTauIds_switch:
358  process = nanoAOD_addTauIds(process)
359  return process
360 
def nanoAOD_addDeepInfo(process, addDeepBTag, addDeepFlavour)
Definition: nano_cff.py:151
def nanoAOD_activateVID(process)
Definition: nano_cff.py:227
def nanoAOD_customizeCommon(process)
Definition: nano_cff.py:296
def nanoAOD_addTauIds(process)
Definition: nano_cff.py:141
def makePuppiesFromMiniAOD(process, createScheduledSequence=False)
def nanoAOD_addDeepInfoAK8(process, addDeepBTag, addDeepBoostedJet, addDeepDoubleX, addDeepDoubleXV2, addParticleNet, jecPayload)
Definition: nano_cff.py:245
def nano_cff.nanoAOD_customizeData (   process)

Definition at line 361 of file nano_cff.py.

References nanoAOD_customizeCommon(), nanoAOD_recalibrateMETs(), and nanoAOD_runMETfixEE2017().

362  process = nanoAOD_customizeCommon(process)
363  process = nanoAOD_recalibrateMETs(process,isData=True)
364  for modifier in run2_nanoAOD_94XMiniAODv1, run2_nanoAOD_94XMiniAODv2:
365  modifier.toModify(process, lambda p: nanoAOD_runMETfixEE2017(p,isData=True))
366  return process
367 
def nanoAOD_customizeCommon(process)
Definition: nano_cff.py:296
def nanoAOD_recalibrateMETs(process, isData)
Definition: nano_cff.py:187
def nanoAOD_runMETfixEE2017(process, isData)
Definition: nano_cff.py:289
def nanoAOD_customizeData(process)
Definition: nano_cff.py:361
def nano_cff.nanoAOD_customizeMC (   process)

Definition at line 368 of file nano_cff.py.

References nanoAOD_customizeCommon(), nanoAOD_recalibrateMETs(), and nanoAOD_runMETfixEE2017().

368 def nanoAOD_customizeMC(process):
369  process = nanoAOD_customizeCommon(process)
370  process = nanoAOD_recalibrateMETs(process,isData=False)
371  for modifier in run2_nanoAOD_94XMiniAODv1, run2_nanoAOD_94XMiniAODv2:
372  modifier.toModify(process, lambda p: nanoAOD_runMETfixEE2017(p,isData=False))
373  return process
374 
def nanoAOD_customizeMC(process)
Definition: nano_cff.py:368
def nanoAOD_customizeCommon(process)
Definition: nano_cff.py:296
def nanoAOD_recalibrateMETs(process, isData)
Definition: nano_cff.py:187
def nanoAOD_runMETfixEE2017(process, isData)
Definition: nano_cff.py:289
def nano_cff.nanoAOD_recalibrateMETs (   process,
  isData 
)

Definition at line 187 of file nano_cff.py.

References nanoAOD_addDeepMET(), runMETCorrectionsAndUncertainties.runMetCorAndUncFromMiniAOD(), and common_cff.Var().

Referenced by nanoAOD_customizeData(), and nanoAOD_customizeMC().

187 def nanoAOD_recalibrateMETs(process,isData):
188  # add DeepMETs
189  nanoAOD_DeepMET_switch = cms.PSet(
190  nanoAOD_addDeepMET_switch = cms.untracked.bool(True), # decide if DeeMET should be included in Nano
191  nanoAOD_produceDeepMET_switch = cms.untracked.bool(False), # decide if DeepMET should be computed on the fly
192  ResponseTune_Graph = cms.untracked.string('RecoMET/METPUSubtraction/data/deepmet/deepmet_resp_v1_2018.pb')
193  )
194  # compute DeepMETs for the eras before UL-ReminiAOD
195  (~run2_miniAOD_devel).toModify(nanoAOD_DeepMET_switch, nanoAOD_produceDeepMET_switch = cms.untracked.bool(True))
196  for modifier in run2_miniAOD_80XLegacy, run2_nanoAOD_94X2016:
197  modifier.toModify(nanoAOD_DeepMET_switch, ResponseTune_Graph=cms.untracked.string("RecoMET/METPUSubtraction/data/deepmet/deepmet_resp_v1_2016.pb"))
198  if nanoAOD_DeepMET_switch.nanoAOD_addDeepMET_switch:
199  process = nanoAOD_addDeepMET(process,
200  addDeepMETProducer=nanoAOD_DeepMET_switch.nanoAOD_produceDeepMET_switch,
201  ResponseTune_Graph=nanoAOD_DeepMET_switch.ResponseTune_Graph)
202 
203  # if included in Nano, and not computed in the fly, then it should be extracted from minAOD
204  extractDeepMETs = nanoAOD_DeepMET_switch.nanoAOD_addDeepMET_switch and not nanoAOD_DeepMET_switch.nanoAOD_produceDeepMET_switch
205 
206  runMetCorAndUncFromMiniAOD(process,isData=isData, extractDeepMETs=extractDeepMETs)
207  process.nanoSequenceCommon.insert(process.nanoSequenceCommon.index(process.jetSequence),cms.Sequence(process.fullPatMetSequence))
208  process.basicJetsForMetForT1METNano = process.basicJetsForMet.clone(
209  src = process.updatedJetsWithUserData.src,
210  skipEM = False,
211  type1JetPtThreshold = 0.0,
212  calcMuonSubtrRawPtAsValueMap = cms.bool(True),
213  )
214  process.jetSequence.insert(process.jetSequence.index(process.updatedJetsWithUserData),cms.Sequence(process.basicJetsForMetForT1METNano))
215  process.updatedJetsWithUserData.userFloats.muonSubtrRawPt = cms.InputTag("basicJetsForMetForT1METNano:MuonSubtrRawPt")
216  process.corrT1METJetTable.src = process.finalJets.src
217  process.corrT1METJetTable.cut = "pt<15 && abs(eta)<9.9"
218  for table in process.jetTable, process.corrT1METJetTable:
219  table.variables.muonSubtrFactor = Var("1-userFloat('muonSubtrRawPt')/(pt()*jecFactor('Uncorrected'))",float,doc="1-(muon-subtracted raw pt)/(raw pt)",precision=6)
220  process.metTables += process.corrT1METJetTable
221 # makePuppiesFromMiniAOD(process,True) # call this before in the global customizer otherwise it would reset photon IDs in VID
222  runMetCorAndUncFromMiniAOD(process,isData=isData,metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi")
223  process.nanoSequenceCommon.insert(process.nanoSequenceCommon.index(process.jetSequence),cms.Sequence(process.puppiMETSequence+process.fullPatMetSequencePuppi))
224  return process
225 
def Var(expr, valtype, compression=None, doc=None, mcOnly=False, precision=-1)
Definition: common_cff.py:20
def nanoAOD_recalibrateMETs(process, isData)
Definition: nano_cff.py:187
def nanoAOD_addDeepMET(process, addDeepMETProducer, ResponseTune_Graph)
Definition: nano_cff.py:173
def runMetCorAndUncFromMiniAOD(process, metType="PF", jetCollUnskimmed="slimmedJets", photonColl="slimmedPhotons", electronColl="slimmedElectrons", muonColl="slimmedMuons", tauColl="slimmedTaus", pfCandColl="packedPFCandidates", jetFlavor="AK4PFchs", jetCleaning="LepClean", isData=False, manualJetConfig=False, reclusterJets=None, jetSelection="pt>15 && abs(eta)<9.9", recoMetFromPFCs=None, jetCorLabelL3="ak4PFCHSL1FastL2L3Corrector", jetCorLabelRes="ak4PFCHSL1FastL2L3ResidualCorrector", CHS=False, reapplyJEC=True, jecUncFile="", computeMETSignificance=True, fixEE2017=False, fixEE2017Params=None, extractDeepMETs=False, postfix="")
def nano_cff.nanoAOD_runMETfixEE2017 (   process,
  isData 
)

Definition at line 289 of file nano_cff.py.

References runMETCorrectionsAndUncertainties.runMetCorAndUncFromMiniAOD().

Referenced by nanoAOD_customizeData(), and nanoAOD_customizeMC().

289 def nanoAOD_runMETfixEE2017(process,isData):
290  runMetCorAndUncFromMiniAOD(process,isData=isData,
291  fixEE2017 = True,
292  fixEE2017Params = {'userawPt': True, 'ptThreshold':50.0, 'minEtaThreshold':2.65, 'maxEtaThreshold': 3.139},
293  postfix = "FixEE2017")
294  process.nanoSequenceCommon.insert(process.nanoSequenceCommon.index(jetSequence),process.fullPatMetSequenceFixEE2017)
295 
def nanoAOD_runMETfixEE2017(process, isData)
Definition: nano_cff.py:289
def runMetCorAndUncFromMiniAOD(process, metType="PF", jetCollUnskimmed="slimmedJets", photonColl="slimmedPhotons", electronColl="slimmedElectrons", muonColl="slimmedMuons", tauColl="slimmedTaus", pfCandColl="packedPFCandidates", jetFlavor="AK4PFchs", jetCleaning="LepClean", isData=False, manualJetConfig=False, reclusterJets=None, jetSelection="pt>15 && abs(eta)<9.9", recoMetFromPFCs=None, jetCorLabelL3="ak4PFCHSL1FastL2L3Corrector", jetCorLabelRes="ak4PFCHSL1FastL2L3ResidualCorrector", CHS=False, reapplyJEC=True, jecUncFile="", computeMETSignificance=True, fixEE2017=False, fixEE2017Params=None, extractDeepMETs=False, postfix="")

Variable Documentation

nano_cff._102x_sequence
private

Definition at line 386 of file nano_cff.py.

nano_cff._80x_sequence
private

Era dependent customization.

Definition at line 376 of file nano_cff.py.

nano_cff.bool

Definition at line 137 of file nano_cff.py.

nano_cff.btagSFdir

Definition at line 66 of file nano_cff.py.

nano_cff.btagWeightTable

Definition at line 68 of file nano_cff.py.

nano_cff.cut

Definition at line 70 of file nano_cff.py.

nano_cff.discNames

Definition at line 71 of file nano_cff.py.

nano_cff.discShortNames

Definition at line 76 of file nano_cff.py.

nano_cff.doc

Definition at line 51 of file nano_cff.py.

nano_cff.electronName

Definition at line 62 of file nano_cff.py.

nano_cff.electrons

Definition at line 44 of file nano_cff.py.

Referenced by ElectronIDAnalyzer.analyze(), PatElectronAnalyzer.analyze(), ElectronMcSignalValidatorMiniAOD.analyze(), PatBasicAnalyzer.analyze(), TtSemiLepSignalSelMVATrainer.analyze(), HiggsToZZ4LeptonsSkimEff.analyze(), ResolutionCreator.analyze(), SiStripElectronAnalyzer.analyze(), B2GDoubleLeptonHLTValidation.analyze(), B2GSingleLeptonHLTValidation.analyze(), TopSingleLeptonHLTValidation.analyze(), TopDiLeptonHLTValidation.analyze(), ObjMonitor.analyze(), TopMonitor.analyze(), PhotonMonitor.analyze(), MuonMonitor.analyze(), GenPurposeSkimmerData.analyze(), METMonitor.analyze(), HTMonitor.analyze(), ZCounting.analyzeElectrons(), EgammaObjects.analyzeElectrons(), RPixDetClusterizer.buildClusters(), pat::LeptonJetIsolationAngle.calculate(), RPixDetClusterizer.calibrate(), PixelThresholdClusterizer.calibrate(), GsfElectronProducer.clonePreviousElectrons(), HLTTauRefProducer.doElectrons(), pat::DuplicatedElectronRemover.duplicatesToRemove(), EGExtraInfoModifierFromValueMaps< MapType, OutputType >.EGExtraInfoModifierFromValueMaps(), EGFull5x5ShowerShapeModifierFromValueMaps.EGFull5x5ShowerShapeModifierFromValueMaps(), EGRegressionModifierV1.EGRegressionModifierV1(), EGRegressionModifierV2.EGRegressionModifierV2(), pat::DuplicatedPhotonRemover.electronsBySeed(), pat::DuplicatedPhotonRemover.electronsBySuperCluster(), AdHocNTupler.fill(), EwkElecTauHistManager.fillHistograms(), pat::PATLeptonCountFilter.filter(), HiggsToWW2LeptonsSkim.filter(), HiggsToZZ4LeptonsSkim.filter(), ElectronIdFilter.filter(), LeptonSkimming.filter(), pat::PATMHTProducer.getElectrons(), CSCWireHitSim.getIonizationClusters(), DeepTauId.getPredictions(), DeepTauId.getPredictionsV1(), HGCalHitCalibration.HGCalHitCalibration(), HLTPMDocaFilter.hltFilter(), HLTFiltCand.hltFilter(), HLTElectronMuonInvMassFilter.hltFilter(), HLTPMMassFilter.hltFilter(), HLTTauRefProducer.HLTTauRefProducer(), pat::DuplicatedPhotonRemover::EqualBySuperCluster.operator()(), pat::DuplicatedElectronRemover::BestEoverP.operator()(), GsfElectronProducer.produce(), GsfElectronEcalDrivenProducer.produce(), GEDGsfElectronProducer.produce(), GsfElectronCoreEcalDrivenProducer.produce(), LowPtGsfElectronProducer.produce(), GEDGsfElectronCoreProducer.produce(), GsfElectronCoreProducer.produce(), LowPtGsfElectronCoreProducer.produce(), TtDilepEvtSolutionMaker.produce(), StEvtSolutionMaker.produce(), ElectronMatchedCandidateProducer.produce(), TtFullLepKinSolutionProducer.produce(), ElectronIDExternalProducer< algo >.produce(), TtSemiEvtSolutionMaker.produce(), TtSemiLepSignalSelMVAComputer.produce(), pat::DuplicatedElectronCleaner.produce(), pat::PATConversionProducer.produce(), pat::__class__Producer.produce(), edm::GenericSelectorByValueMap< T, C >.produce(), PATObjectCrossLinker.produce(), PFTauPrimaryVertexProducerBase.produce(), pat::PATElectronProducer.produce(), MuonFSRProducer.produce(), HLTJetsCleanedFromLeadingLeptons< JetType >.produce(), BoostedTopProducer.produce(), SelectedElectronFEDListProducer< TEle, TCand >.produce(), ElectronIDSelector< algo >.select(), pf2pat::ElectronIDPFCandidateSelectorDefinition.select(), uniqueElectronFinder(), and CSCGasCollisions.writeSummary().

nano_cff.electronSel

Definition at line 59 of file nano_cff.py.

nano_cff.extraFlagsTable

Definition at line 136 of file nano_cff.py.

nano_cff.Flag_ecalBadCalibFilterV2

Definition at line 137 of file nano_cff.py.

nano_cff.jetName

Definition at line 62 of file nano_cff.py.

nano_cff.jets

Definition at line 42 of file nano_cff.py.

nano_cff.jetSel

Definition at line 57 of file nano_cff.py.

nano_cff.l1bits

Definition at line 110 of file nano_cff.py.

nano_cff.legacyL1

Definition at line 110 of file nano_cff.py.

nano_cff.lheInfo

Definition at line 105 of file nano_cff.py.

nano_cff.lheInfoTable

Definition at line 104 of file nano_cff.py.

nano_cff.linkedObjects

Definition at line 41 of file nano_cff.py.

nano_cff.measurementTypesB

Definition at line 87 of file nano_cff.py.

nano_cff.measurementTypesC

Definition at line 88 of file nano_cff.py.

nano_cff.measurementTypesUDSG

Definition at line 89 of file nano_cff.py.

nano_cff.muonName

Definition at line 62 of file nano_cff.py.

Referenced by main().

nano_cff.muons

Definition at line 43 of file nano_cff.py.

nano_cff.muonSel

Definition at line 58 of file nano_cff.py.

nano_cff.name

Definition at line 50 of file nano_cff.py.

nano_cff.nanoMetadata

Definition at line 35 of file nano_cff.py.

nano_cff.nanoSequence

Definition at line 122 of file nano_cff.py.

nano_cff.nanoSequenceCommon

Definition at line 114 of file nano_cff.py.

nano_cff.nanoSequenceFS

Definition at line 124 of file nano_cff.py.

nano_cff.nanoSequenceMC

Definition at line 131 of file nano_cff.py.

nano_cff.nanoSequenceOnlyFullSim

Definition at line 120 of file nano_cff.py.

nano_cff.operatingPoints

Definition at line 86 of file nano_cff.py.

nano_cff.photonName

Definition at line 63 of file nano_cff.py.

nano_cff.photons

Definition at line 46 of file nano_cff.py.

nano_cff.photonSel

Definition at line 61 of file nano_cff.py.

nano_cff.precision

Definition at line 106 of file nano_cff.py.

nano_cff.simpleCleanerTable

Definition at line 49 of file nano_cff.py.

nano_cff.src

Definition at line 69 of file nano_cff.py.

nano_cff.src_ext

Definition at line 111 of file nano_cff.py.

nano_cff.storeLHEParticles

Definition at line 107 of file nano_cff.py.

nano_cff.storeUnprefireableBit

Definition at line 111 of file nano_cff.py.

nano_cff.strings
nano_cff.sysTypes

Definition at line 90 of file nano_cff.py.

nano_cff.tag

Definition at line 37 of file nano_cff.py.

nano_cff.tauName

Definition at line 63 of file nano_cff.py.

nano_cff.taus

Definition at line 45 of file nano_cff.py.

Referenced by HLTTauDQML1Plotter.analyze(), TopTauAnalyzer.analyze(), PatBasicAnalyzer.analyze(), l1t::L1TStage2CaloAnalyzer.analyze(), ResolutionCreator.analyze(), TauValidationMiniAOD.analyze(), l1t::GtInputDump.analyze(), l1t::L1TGlobalAnalyzer.analyze(), l1t::GtRecordDump.analyze(), L1TTauOffline.analyze(), HPSPFRecoTauAlgorithm.buildOneProng(), HPSPFRecoTauAlgorithm.buildOneProngStrip(), HPSPFRecoTauAlgorithm.buildOneProngTwoStrips(), HPSPFRecoTauAlgorithm.buildThreeProngs(), L1TStage2CaloLayer2Comp.compareTaus(), l1t::GtRecordDump.dumpTestVectors(), L1RCTJetSummaryCard.fillTauBits(), pat::PATLeptonCountFilter.filter(), L1RCT.getRegions(), deep_tau::DeepTauBase.globalEndJob(), HLTPFTauPairLeadTrackDzMatchFilter.hltFilter(), HLTFiltCand.hltFilter(), L1TSummary.L1TSummary(), L1UpgradeTreeProducer.L1UpgradeTreeProducer(), deep_tau::DeepTauBase::Output.Output(), l1t::stage2::TauPacker.pack(), l1t::stage1::TauPacker.pack(), l1t::stage1::IsoTauPacker.pack(), TtDilepEvtSolutionMaker.produce(), PFJetsTauOverlapRemoval.produce(), PFTauL1TJetsMatching.produce(), RecoTauPiZeroUnembedder.produce(), pat::__class__Producer.produce(), l1t::FakeInputProducer.produce(), PATObjectCrossLinker.produce(), RecoTauProducer.produce(), NanoAODBaseCrossCleaner.produce(), L1TStage2Layer2Producer.produce(), l1t::GenToInputProducer.produce(), l1t::BXVectorInputProducer.produce(), TauDiscriminationProducerBase< TauType, TauDiscriminator >.produce(), L1TStage1Layer2Producer.produce(), deep_tau::DeepTauBase.produce(), HepMCValidationHelper.removeIsolatedLeptons(), HLTL1TSeed.seedsL1TriggerObjectMaps(), and TauJetCorrector::ParametrizationTauJet.value().

nano_cff.tauSel

Definition at line 60 of file nano_cff.py.

nano_cff.variables

Definition at line 136 of file nano_cff.py.

nano_cff.weightFiles

Definition at line 81 of file nano_cff.py.