diff --git a/NtupleProducer/python/runPerformanceNTuple.py b/NtupleProducer/python/runPerformanceNTuple.py index e61cbd3..4bb29da 100644 --- a/NtupleProducer/python/runPerformanceNTuple.py +++ b/NtupleProducer/python/runPerformanceNTuple.py @@ -55,6 +55,9 @@ 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, @@ -62,6 +65,7 @@ def LazyVar(expr, valtype, doc=None, precision=-1): process.l1tSAMuonsGmt, process.l1tGTTInputProducer, process.l1tTrackSelectionProducer, + process.l1tMETPFProducer, process.l1tVertexFinderEmulator, process.L1TLayer1TaskInputsTask, process.L1TLayer1Task, @@ -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) @@ -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 @@ -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") @@ -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")) @@ -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(): @@ -814,3 +825,6 @@ def saveGenCands(): ), ) process.p += process.gencandTable + +def addPuppiMET(): + process.l1pfmetTable.mets.emuMET = cms.InputTag("l1tMETPFProducer","")