Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 24 additions & 10 deletions NtupleProducer/python/runPerformanceNTuple.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,17 @@ def LazyVar(expr, valtype, doc=None, precision=-1):
from L1Trigger.Phase2L1ParticleFlow.L1NNTauProducer_cff import l1tNNTauProducerPuppi
process.l1tNNTauProducerPuppi = l1tNNTauProducerPuppi.clone()

from L1Trigger.Phase2L1ParticleFlow.l1tMETPFProducer_cfi import l1tMETPFProducer
process.l1tMETPFProducer = l1tMETPFProducer.clone()

process.extraPFStuff = cms.Task(
process.l1tPhase2L1CaloEGammaEmulator,
process.l1tPhase2CaloPFClusterEmulator,
process.l1tPhase2GCTBarrelToCorrelatorLayer1Emulator,
process.l1tSAMuonsGmt,
process.l1tGTTInputProducer,
process.l1tTrackSelectionProducer,
process.l1tMETPFProducer,
process.l1tVertexFinderEmulator,
process.L1TLayer1TaskInputsTask,
process.L1TLayer1Task,
Expand All @@ -70,15 +74,16 @@ def LazyVar(expr, valtype, doc=None, precision=-1):
process.centralGen = cms.EDFilter("CandPtrSelector", src = cms.InputTag("genParticlesForMETAllVisible"), cut = cms.string("abs(eta) < 2.4"))
process.barrelGen = cms.EDFilter("CandPtrSelector", src = cms.InputTag("genParticlesForMETAllVisible"), cut = cms.string("abs(eta) < 1.5"))
process.genMetCentralTrue = process.genMetTrue.clone(src = cms.InputTag("centralGen"))
process.genMetBarrelTrue = process.genMetTrue.clone(src = cms.InputTag("barrelGen"))
process.extraPFStuff.add(
process.genParticlesForMETAllVisible,
process.centralGen,
process.barrelGen,
process.genMetCentralTrue
process.genMetCentralTrue,
process.genMetBarrelTrue
)

def monitorPerf(label, tag, makeResp=True, makeRespSplit=True, makeJets=True, makeMET=True, makeCentralMET=True,
makeInputMultiplicities=False, makeOutputMultiplicities=False, saveCands=False):
def monitorPerf(label, tag, makeResp=True, makeRespSplit=True, makeJets=True, makeMET=True, makeCentralMET=True, makeBarrelMET=True, makeInputMultiplicities=False, makeOutputMultiplicities=False, saveCands=False):
def _add(name, what):
setattr(process, name, what)
process.extraPFStuff.add(what)
Expand Down Expand Up @@ -108,6 +113,10 @@ def _add(name, what):
_add('central'+label, cms.EDFilter("CandPtrSelector", src = cms.InputTag(tag), cut = cms.string("abs(eta) < 2.4")))
_add('met'+label+'Central', pfMet.clone(src = 'central'+label, calculateSignificance = False))
setattr(process.l1pfmetCentralTable.mets, label, cms.InputTag('met'+label+'Central'))
if makeBarrelMET:
_add('barrel'+label, cms.EDFilter("CandPtrSelector", src = cms.InputTag(tag), cut = cms.string("abs(eta) < 1.5")))
_add('met'+label+'Barrel', pfMet.clone(src = 'barrel'+label, calculateSignificance = False))
setattr(process.l1pfmetBarrelTable.mets, label, cms.InputTag('met'+label+'Barrel'))
if makeInputMultiplicities == "CTL1":
D = tag.split(":")[0] # l1ctLayer1[Barrel,HGCal,HF] usually
I = tag.split(":")[1] # Calo, EmCalo, TK, or Mu, usually
Expand Down Expand Up @@ -162,6 +171,7 @@ def _add(name, what):
),
)
process.l1pfmetCentralTable = process.l1pfmetTable.clone(genMet = "genMetCentralTrue", flavour = "Central")
process.l1pfmetBarrelTable = process.l1pfmetTable.clone(genMet = "genMetBarrelTrue", flavour = "Barrel")

monitorPerf("L1Calo", "l1tLayer1:Calo")
monitorPerf("L1TK", "l1tLayer1:TK")
Expand All @@ -173,7 +183,7 @@ def _add(name, what):
process.p = cms.Path(
process.ntuple + #process.content +
process.l1pfjetTable +
process.l1pfmetTable + process.l1pfmetCentralTable
process.l1pfmetTable + process.l1pfmetCentralTable + process.l1pfmetBarrelTable
)
process.p.associate(process.extraPFStuff)
process.TFileService = cms.Service("TFileService", fileName = cms.string("perfTuple.root"))
Expand Down Expand Up @@ -215,18 +225,19 @@ def respOnly():
process.p.remove(process.l1pfjetTable)
process.p.remove(process.l1pfmetTable)
process.p.remove(process.l1pfmetCentralTable)
process.p.remove(process.l1pfmetBarrelTable)
process.end.remove(process.outnano)
def noResp():
process.p.remove(process.ntuple)

def addMult():
for D in ['Barrel','HF','HGCal','HGCalNoTK']:
monitorPerf("L1%sCalo"%D, "l1tLayer1%s:Calo"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sEmCalo"%D,"l1tLayer1%s:EmCalo"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sTK"%D, "l1tLayer1%s:TK"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sMu"%D, "l1tLayer1%s:Mu"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sPF"%D, "l1tLayer1%s:PF"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeOutputMultiplicities="CTL1")
monitorPerf("L1%sPuppi"%D, "l1tLayer1%s:Puppi"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeOutputMultiplicities="CTL1")
monitorPerf("L1%sCalo"%D, "l1tLayer1%s:Calo"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sEmCalo"%D,"l1tLayer1%s:EmCalo"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sTK"%D, "l1tLayer1%s:TK"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sMu"%D, "l1tLayer1%s:Mu"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeInputMultiplicities="CTL1")
monitorPerf("L1%sPF"%D, "l1tLayer1%s:PF"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeOutputMultiplicities="CTL1")
monitorPerf("L1%sPuppi"%D, "l1tLayer1%s:Puppi"%D, makeResp=False, makeRespSplit=False, makeJets=False, makeMET=False, makeCentralMET=False, makeBarrelMET=False, makeOutputMultiplicities="CTL1")


def addCHS():
Expand Down Expand Up @@ -814,3 +825,6 @@ def saveGenCands():
),
)
process.p += process.gencandTable

def addPuppiMET():
process.l1pfmetTable.mets.emuMET = cms.InputTag("l1tMETPFProducer","")