From 60f488a5e498313b0625331241f7e19d0a2bc4b5 Mon Sep 17 00:00:00 2001 From: Lauren Hay Date: Mon, 6 Feb 2023 19:25:58 +0100 Subject: [PATCH] Adding Eirini's changes --- .../Eras/python/Era_Run2_2018_cff.py | 3 +- .../Eras/python/Modifier_run2_jme_2018_cff.py | 3 + ...ier_run3_jme_Winter22runsBCDEprompt_cff.py | 3 + .../NanoAOD/python/jetsAK4_CHS_cff.py | 16 ++- .../NanoAOD/python/jetsAK4_Puppi_cff.py | 4 +- PhysicsTools/NanoAOD/python/jetsAK8_cff.py | 16 ++- PhysicsTools/NanoAOD/python/nano_eras_cff.py | 2 + .../interface/PFJetIDSelectionFunctor.h | 131 ++++++++++++------ 8 files changed, 130 insertions(+), 48 deletions(-) create mode 100644 Configuration/Eras/python/Modifier_run2_jme_2018_cff.py create mode 100644 Configuration/Eras/python/Modifier_run3_jme_Winter22runsBCDEprompt_cff.py diff --git a/Configuration/Eras/python/Era_Run2_2018_cff.py b/Configuration/Eras/python/Era_Run2_2018_cff.py index 667256ee83f5b..579c4ead81b78 100644 --- a/Configuration/Eras/python/Era_Run2_2018_cff.py +++ b/Configuration/Eras/python/Era_Run2_2018_cff.py @@ -18,9 +18,10 @@ from Configuration.Eras.Modifier_ctpps_2017_cff import ctpps_2017 from Configuration.Eras.Modifier_ctpps_2018_cff import ctpps_2018 from Configuration.Eras.Modifier_run2_jme_2017_cff import run2_jme_2017 +from Configuration.Eras.Modifier_run2_jme_2018_cff import run2_jme_2018 from Configuration.Eras.Modifier_stage2L1Trigger_2018_cff import stage2L1Trigger_2018 Run2_2018 = cms.ModifierChain(Run2_2017.copyAndExclude([run2_HEPlan1_2017, run2_muon_2017, run2_L1prefiring, run2_HLTconditions_2017, run2_egamma_2017, ctpps_2017, run2_jme_2017]), run2_CSC_2018, run2_HCAL_2018, run2_HB_2018, run2_HE_2018,run2_DT_2018, run2_SiPixel_2018, -run2_HLTconditions_2018, run2_muon_2018, run2_egamma_2018, ctpps_2018, stage2L1Trigger_2018 +run2_HLTconditions_2018, run2_muon_2018, run2_egamma_2018, ctpps_2018, stage2L1Trigger_2018, run2_jme_2018 ) diff --git a/Configuration/Eras/python/Modifier_run2_jme_2018_cff.py b/Configuration/Eras/python/Modifier_run2_jme_2018_cff.py new file mode 100644 index 0000000000000..76990ade55a43 --- /dev/null +++ b/Configuration/Eras/python/Modifier_run2_jme_2018_cff.py @@ -0,0 +1,3 @@ +import FWCore.ParameterSet.Config as cms + +run2_jme_2018 =cms.Modifier() diff --git a/Configuration/Eras/python/Modifier_run3_jme_Winter22runsBCDEprompt_cff.py b/Configuration/Eras/python/Modifier_run3_jme_Winter22runsBCDEprompt_cff.py new file mode 100644 index 0000000000000..6b0076df6e41f --- /dev/null +++ b/Configuration/Eras/python/Modifier_run3_jme_Winter22runsBCDEprompt_cff.py @@ -0,0 +1,3 @@ +import FWCore.ParameterSet.Config as cms + +run3_jme_Winter22runsBCDEprompt =cms.Modifier() diff --git a/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py b/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py index 52679227e5a7d..d3381db4f2dad 100644 --- a/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py +++ b/PhysicsTools/NanoAOD/python/jetsAK4_CHS_cff.py @@ -36,14 +36,14 @@ ) tightJetId = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULCHS'), + version = cms.string('RUN3WINTER22CHS'), quality = cms.string('TIGHT'), ), src = cms.InputTag("updatedJets") ) tightJetIdLepVeto = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULCHS'), + version = cms.string('RUN3WINTER22CHS'), quality = cms.string('TIGHTLEPVETO'), ), src = cms.InputTag("updatedJets") @@ -54,6 +54,18 @@ tightJetIdLepVeto.filterParams, version = "RUN2UL16CHS" ) +(run2_jme_2017 | run2_jme_2018).toModify( + tightJetId.filterParams, version = "RUN2ULCHS" +).toModify( + tightJetIdLepVeto.filterParams, version = "RUN2ULCHS" +) + +run3_jme_Winter22runsBCDEprompt.toModify( + tightJetId.filterParams, version = "RUN3WINTER22CHSrunsBCDEprompt" +).toModify( + tightJetIdLepVeto.filterParams, version = "RUN3WINTER22CHSrunsBCDEprompt" +) + bJetVars = cms.EDProducer("JetRegressionVarProducer", pvsrc = cms.InputTag("offlineSlimmedPrimaryVertices"), src = cms.InputTag("updatedJets"), diff --git a/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py b/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py index b83575526acf3..0ac78ba5cf357 100644 --- a/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py +++ b/PhysicsTools/NanoAOD/python/jetsAK4_Puppi_cff.py @@ -27,14 +27,14 @@ tightJetPuppiId = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULPUPPI'), + version = cms.string('RUN3WINTER22PUPPI'), quality = cms.string('TIGHT'), ), src = cms.InputTag("updatedJetsPuppi") ) tightJetPuppiIdLepVeto = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULPUPPI'), + version = cms.string('RUN3WINTER22PUPPI'), quality = cms.string('TIGHTLEPVETO'), ), src = cms.InputTag("updatedJetsPuppi") diff --git a/PhysicsTools/NanoAOD/python/jetsAK8_cff.py b/PhysicsTools/NanoAOD/python/jetsAK8_cff.py index 8206049eff8e5..68d37ca6498fd 100644 --- a/PhysicsTools/NanoAOD/python/jetsAK8_cff.py +++ b/PhysicsTools/NanoAOD/python/jetsAK8_cff.py @@ -35,14 +35,14 @@ ) tightJetIdAK8 = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULPUPPI'), + version = cms.string('RUN3WINTER22PUPPI'), quality = cms.string('TIGHT'), ), src = cms.InputTag("updatedJetsAK8") ) tightJetIdLepVetoAK8 = cms.EDProducer("PatJetIDValueMapProducer", filterParams=cms.PSet( - version = cms.string('RUN2ULPUPPI'), + version = cms.string('RUN3WINTER22PUPPI'), quality = cms.string('TIGHTLEPVETO'), ), src = cms.InputTag("updatedJetsAK8") @@ -54,6 +54,18 @@ tightJetIdLepVetoAK8.filterParams, version = "RUN2UL16PUPPI" ) +(run2_jme_2017 | run2_jme_2018).toModify( + tightJetIdAK8.filterParams, version = "RUN2ULPUPPI" +).toModify( + tightJetIdLepVetoAK8.filterParams, version = "RUN2ULPUPPI" +) + +run3_jme_Winter22runsBCDEprompt.toModify( + tightJetIdAK8.filterParams, version = "RUN3WINTER22PUPPIrunsBCDEprompt" +).toModify( + tightJetIdLepVetoAK8.filterParams, version = "RUN3WINTER22PUPPIrunsBCDEprompt" +) + updatedJetsAK8WithUserData = cms.EDProducer("PATJetUserDataEmbedder", src = cms.InputTag("updatedJetsAK8"), userFloats = cms.PSet(), diff --git a/PhysicsTools/NanoAOD/python/nano_eras_cff.py b/PhysicsTools/NanoAOD/python/nano_eras_cff.py index e03f329ef8822..4163b72b9dce7 100644 --- a/PhysicsTools/NanoAOD/python/nano_eras_cff.py +++ b/PhysicsTools/NanoAOD/python/nano_eras_cff.py @@ -3,6 +3,7 @@ from Configuration.Eras.Modifier_run2_egamma_2018_cff import run2_egamma_2018 from Configuration.Eras.Modifier_run2_jme_2016_cff import run2_jme_2016 from Configuration.Eras.Modifier_run2_jme_2017_cff import run2_jme_2017 +from Configuration.Eras.Modifier_run2_jme_2018_cff import run2_jme_2018 from Configuration.Eras.Modifier_run2_muon_2016_cff import run2_muon_2016 from Configuration.Eras.Modifier_run2_muon_2018_cff import run2_muon_2018 @@ -15,6 +16,7 @@ from Configuration.Eras.Modifier_run3_nanoAOD_122_cff import run3_nanoAOD_122 from Configuration.Eras.Modifier_run3_nanoAOD_124_cff import run3_nanoAOD_124 +from Configuration.Eras.Modifier_run3_jme_Winter22runsBCDEprompt_cff import run3_jme_Winter22runsBCDEprompt run2_nanoAOD_ANY = ( run2_nanoAOD_106Xv2 diff --git a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h index 0b422c5bd63fc..a97f0c9d7c88f 100644 --- a/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h +++ b/PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h @@ -37,6 +37,10 @@ class PFJetIDSelectionFunctor : public Selector { SUMMER18PUPPI, RUN2UL16CHS, RUN2UL16PUPPI, + RUN3WINTER22CHSrunsBCDEprompt, + RUN3WINTER22PUPPIrunsBCDEprompt, + RUN3WINTER22CHS, + RUN3WINTER22PUPPI, RUN2ULCHS, RUN2ULPUPPI, N_VERSIONS @@ -76,8 +80,16 @@ class PFJetIDSelectionFunctor : public Selector { version_ = RUN2ULCHS; else if (versionStr == "RUN2ULPUPPI") version_ = RUN2ULPUPPI; + else if (versionStr == "RUN3WINTER22CHSrunsBCDEprompt") + version_ = RUN3WINTER22CHSrunsBCDEprompt; + else if (versionStr == "RUN3WINTER22PUPPIrunsBCDEprompt") + version_ = RUN3WINTER22PUPPIrunsBCDEprompt; + else if (versionStr == "RUN3WINTER22CHS") + version_ = RUN3WINTER22CHS; + else if (versionStr == "RUN3WINTER22PUPPI") + version_ = RUN3WINTER22PUPPI; else - version_ = RUN2ULCHS; //set RUN2ULCHS as default //this is extremely unsafe + version_ = RUN3WINTER22PUPPI; //set RUN3WINTER22PUPPI as default //this is extremely unsafe if (qualityStr == "LOOSE") quality_ = LOOSE; @@ -119,7 +131,7 @@ class PFJetIDSelectionFunctor : public Selector { static edm::ParameterSetDescription getDescription() { edm::ParameterSetDescription desc; - desc.ifValue(edm::ParameterDescription("version", "RUN2ULCHS", true, edm::Comment("")), + desc.ifValue(edm::ParameterDescription("version", "RUN3WINTER22PUPPI", true, edm::Comment("")), edm::allowedValues("FIRSTDATA", "RUNIISTARTUP", "WINTER16", @@ -130,7 +142,11 @@ class PFJetIDSelectionFunctor : public Selector { "RUN2UL16CHS", "RUN2UL16PUPPI", "RUN2ULCHS", - "RUN2ULPUPPI")); + "RUN2ULPUPPI", + "RUN3WINTER22CHSrunsBCDEprompt", + "RUN3WINTER22PUPPIrunsBCDEprompt", + "RUN3WINTER22CHS", + "RUN3WINTER22PUPPI")); desc.ifValue(edm::ParameterDescription("quality", "TIGHT", true, edm::Comment("")), edm::allowedValues("LOOSE", "TIGHT", "TIGHTLEPVETO")); desc.addOptional>("cutsToIgnore")->setComment(""); @@ -195,7 +211,9 @@ class PFJetIDSelectionFunctor : public Selector { bool operator()(const pat::Jet &jet, pat::strbitset &ret) override { if (version_ == FIRSTDATA || version_ == RUNIISTARTUP || version_ == WINTER16 || version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2UL16CHS || - version_ == RUN2UL16PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { + version_ == RUN2UL16PUPPI || version_ == RUN3WINTER22CHSrunsBCDEprompt || + version_ == RUN3WINTER22PUPPIrunsBCDEprompt || version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI || + version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { if (jet.currentJECLevel() == "Uncorrected" || !jet.jecSetsAvailable()) return firstDataCuts(jet, ret, version_); else @@ -213,7 +231,9 @@ class PFJetIDSelectionFunctor : public Selector { bool operator()(const reco::PFJet &jet, pat::strbitset &ret) { if (version_ == FIRSTDATA || version_ == RUNIISTARTUP || version_ == WINTER16 || version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2UL16CHS || - version_ == RUN2UL16PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { + version_ == RUN2UL16PUPPI || version_ == RUN3WINTER22CHSrunsBCDEprompt || + version_ == RUN3WINTER22PUPPIrunsBCDEprompt || version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI || + version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) { return firstDataCuts(jet, ret, version_); } else { return false; @@ -359,10 +379,14 @@ class PFJetIDSelectionFunctor : public Selector { float etaB = 2.4; // Cuts for |eta| < 2.6 for Summer18 - if (version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) + if (version_ == SUMMER18 || version_ == SUMMER18PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI || + version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || + version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) etaB = 2.6; if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && - version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || + version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN3WINTER22CHSrunsBCDEprompt && + version_ != RUN3WINTER22PUPPIrunsBCDEprompt && version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI && + version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || quality_ != TIGHT) { if (ignoreCut(indexCEF_) || (cef < cut(indexCEF_, double()) || std::abs(jet.eta()) > etaB)) passCut(ret, indexCEF_); @@ -569,7 +593,8 @@ class PFJetIDSelectionFunctor : public Selector { (nneutrals < cut(indexNNeutrals_FW_U_, int()) || std::abs(jet.eta()) <= 3.0)) passCut(ret, indexNNeutrals_FW_U_); - } else if ((version_ == SUMMER18) || (version_ == RUN2ULCHS)) { + } else if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || + (version_ == RUN3WINTER22CHS)) { // Cuts for |eta| <= 2.6 for SUMMER18 scenario if (ignoreCut(indexNConstituents_) || (nconstituents > cut(indexNConstituents_, int()) || std::abs(jet.eta()) > 2.6)) @@ -622,7 +647,8 @@ class PFJetIDSelectionFunctor : public Selector { passCut(ret, indexNNeutrals_FW_); } - else if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI)) { + else if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || + (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || (version_ == RUN3WINTER22PUPPI)) { // Cuts for |eta| <= 2.6 for SUMMER18PUPPI scenario if (ignoreCut(indexNConstituents_) || (nconstituents > cut(indexNConstituents_, int()) || std::abs(jet.eta()) > 2.6)) @@ -682,7 +708,9 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CHF"); push_back("NHF"); if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && - version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || + version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && + version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && + version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) || quality_ != TIGHT) push_back("CEF"); push_back("NEF"); @@ -747,7 +775,8 @@ class PFJetIDSelectionFunctor : public Selector { push_back("MUF"); } } - if ((version_ == SUMMER18) || (version_ == RUN2ULCHS)) { + if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || + (version_ == RUN3WINTER22CHS)) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NCH_TR"); @@ -764,7 +793,8 @@ class PFJetIDSelectionFunctor : public Selector { push_back("CEF_TR"); } } - if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI)) { + if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || + (version_ == RUN3WINTER22PUPPI)) { push_back("NHF_TR"); push_back("NEF_TR"); push_back("NHF_EC"); @@ -781,7 +811,9 @@ class PFJetIDSelectionFunctor : public Selector { } if ((version_ == WINTER17 || version_ == WINTER17PUPPI || version_ == SUMMER18 || version_ == SUMMER18PUPPI || - version_ == RUN2UL16CHS || version_ == RUN2UL16PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI) && + version_ == RUN2UL16CHS || version_ == RUN2UL16PUPPI || version_ == RUN2ULCHS || version_ == RUN2ULPUPPI || + version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || + version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) && quality_ == LOOSE) { edm::LogWarning("BadJetIDVersion") << "The LOOSE operating point is only supported for the WINTER16 JetID version -- defaulting to TIGHT"; @@ -810,8 +842,15 @@ class PFJetIDSelectionFunctor : public Selector { set("CHF", 0.0); set("NHF", 0.9); if (version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && - version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) + version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && + version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && + version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) set("CEF", 0.99); + if (version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || + version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) + set("CHF", 0.01); + if (version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) + set("NHF", 0.99); set("NEF", 0.9); set("NCH", 0); set("nConstituents", 1); @@ -872,7 +911,7 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN2ULCHS) { + } else if (version_ == RUN2ULCHS || version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22CHS) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("NCH_TR", 0); @@ -882,7 +921,7 @@ class PFJetIDSelectionFunctor : public Selector { set("NHF_FW", 0.2); set("NEF_FW", 0.90); set("nNeutrals_FW", 10); - } else if (version_ == RUN2ULPUPPI) { + } else if (version_ == RUN2ULPUPPI || version_ == RUN3WINTER22PUPPIrunsBCDEprompt) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("NHF_EC", 0.9999); @@ -890,30 +929,42 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); + } else if (version_ == RUN3WINTER22PUPPI) { + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("NHF_EC", 0.9999); + set("NHF_FW", -1.0); + set("NEF_FW", 0.90); + set("nNeutrals_FW_L", 1); + set("nNeutrals_FW_U", 999999); } } else if (quality_ == TIGHTLEPVETO) { set("CHF", 0.0); set("NHF", 0.9); + set("CEF", 0.8); set("NEF", 0.9); set("NCH", 0); set("nConstituents", 1); + set("MUF", 0.8); if (version_ == WINTER17) { - set("CEF", 0.8); set("NEF_EC_L", 0.02); set("NEF_EC_U", 0.99); set("nNeutrals_EC", 2); set("NHF_FW", 0.02); set("NEF_FW", 0.90); set("nNeutrals_FW", 10); - set("MUF", 0.8); + } + if (version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22PUPPIrunsBCDEprompt || + version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) { + set("CHF", 0.01); + } else if (version_ == RUN3WINTER22CHS || version_ == RUN3WINTER22PUPPI) { + set("NHF", 0.99); } else if (version_ == WINTER17PUPPI) { - set("CEF", 0.8); set("NHF_EC", 0.99); set("NHF_FW", 0.02); set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 15); - set("MUF", 0.8); } else if (version_ == WINTER16) { set("CEF", 0.9); set("NEF_EC", 0.01); @@ -921,15 +972,12 @@ class PFJetIDSelectionFunctor : public Selector { set("nNeutrals_EC", 2); set("nNeutrals_FW", 10); set("NEF_FW", 0.90); - set("MUF", 0.8); } else if (version_ == WINTER17PUPPI) { - set("CEF", 0.8); set("NHF_EC", 0.99); set("NHF_FW", 0.02); set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 15); - set("MUF", 0.8); } else if (version_ == WINTER16) { set("CEF", 0.9); set("NEF_EC", 0.01); @@ -937,10 +985,7 @@ class PFJetIDSelectionFunctor : public Selector { set("nNeutrals_EC", 2); set("nNeutrals_FW", 10); set("NEF_FW", 0.90); - set("MUF", 0.8); } else if (version_ == SUMMER18) { - set("CEF", 0.8); - set("MUF", 0.8); set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -953,8 +998,6 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW", 10); } else if (version_ == SUMMER18PUPPI) { - set("CEF", 0.8); - set("MUF", 0.8); set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -965,8 +1008,6 @@ class PFJetIDSelectionFunctor : public Selector { set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 15); } else if (version_ == RUN2UL16CHS) { - set("MUF", 0.8); - set("CEF", 0.8); set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("NHF_EC", 0.9); @@ -977,17 +1018,13 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW", 10); } else if (version_ == RUN2UL16PUPPI) { - set("MUF", 0.8); - set("CEF", 0.8); set("NHF_TR", 0.98); set("NEF_TR", 0.99); set("nNeutrals_EC", 1); set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); - } else if (version_ == RUN2ULCHS) { - set("CEF", 0.8); - set("MUF", 0.8); + } else if (version_ == RUN2ULCHS || version_ == RUN3WINTER22CHSrunsBCDEprompt || version_ == RUN3WINTER22CHS) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -999,9 +1036,7 @@ class PFJetIDSelectionFunctor : public Selector { set("NHF_FW", 0.2); set("NEF_FW", 0.90); set("nNeutrals_FW", 10); - } else if (version_ == RUN2ULPUPPI) { - set("CEF", 0.8); - set("MUF", 0.8); + } else if (version_ == RUN2ULPUPPI || version_ == RUN3WINTER22PUPPIrunsBCDEprompt) { set("NHF_TR", 0.9); set("NEF_TR", 0.99); set("MUF_TR", 0.8); @@ -1011,6 +1046,16 @@ class PFJetIDSelectionFunctor : public Selector { set("NEF_FW", 0.90); set("nNeutrals_FW_L", 2); set("nNeutrals_FW_U", 999999); + } else if (version_ == RUN3WINTER22PUPPI) { + set("NHF_TR", 0.9); + set("NEF_TR", 0.99); + set("MUF_TR", 0.8); + set("CEF_TR", 0.8); + set("NHF_EC", 0.9999); + set("NHF_FW", -1.0); + set("NEF_FW", 0.90); + set("nNeutrals_FW_L", 1); + set("nNeutrals_FW_U", 999999); } } } @@ -1020,7 +1065,9 @@ class PFJetIDSelectionFunctor : public Selector { indexNEF_ = index_type(&bits_, "NEF"); indexNHF_ = index_type(&bits_, "NHF"); if ((version_ != WINTER17 && version_ != WINTER17PUPPI && version_ != SUMMER18 && version_ != SUMMER18PUPPI && - version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI) || + version_ != RUN2UL16CHS && version_ != RUN2UL16PUPPI && version_ != RUN2ULCHS && version_ != RUN2ULPUPPI && + version_ != RUN3WINTER22CHSrunsBCDEprompt && version_ != RUN3WINTER22PUPPIrunsBCDEprompt && + version_ != RUN3WINTER22CHS && version_ != RUN3WINTER22PUPPI) || quality_ != TIGHT) indexCEF_ = index_type(&bits_, "CEF"); @@ -1061,7 +1108,8 @@ class PFJetIDSelectionFunctor : public Selector { indexMUF_ = index_type(&bits_, "MUF"); } } - if ((version_ == SUMMER18) || (version_ == RUN2ULCHS)) { + if ((version_ == SUMMER18) || (version_ == RUN2ULCHS) || (version_ == RUN3WINTER22CHSrunsBCDEprompt) || + (version_ == RUN3WINTER22CHS)) { indexNHF_TR_ = index_type(&bits_, "NHF_TR"); indexNEF_TR_ = index_type(&bits_, "NEF_TR"); indexNCH_TR_ = index_type(&bits_, "NCH_TR"); @@ -1077,7 +1125,8 @@ class PFJetIDSelectionFunctor : public Selector { indexCEF_TR_ = index_type(&bits_, "CEF_TR"); } } - if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI)) { + if ((version_ == SUMMER18PUPPI) || (version_ == RUN2ULPUPPI) || (version_ == RUN3WINTER22PUPPIrunsBCDEprompt) || + (version_ == RUN3WINTER22PUPPI)) { indexNHF_TR_ = index_type(&bits_, "NHF_TR"); indexNEF_TR_ = index_type(&bits_, "NEF_TR"); indexNHF_EC_ = index_type(&bits_, "NHF_EC");