From db6ae2753ce069c480f7aa2c5b55e62fecbc3bf4 Mon Sep 17 00:00:00 2001 From: farrah-simpson Date: Fri, 10 Jul 2020 17:05:35 -0500 Subject: [PATCH 1/4] Added Tau IDs --- src/AOD2NanoAOD.cc | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/AOD2NanoAOD.cc b/src/AOD2NanoAOD.cc index 6409f67..ecc98f3 100644 --- a/src/AOD2NanoAOD.cc +++ b/src/AOD2NanoAOD.cc @@ -201,6 +201,17 @@ class AOD2NanoAOD : public edm::EDAnalyzer { bool value_tau_idantimumedium[max_tau]; bool value_tau_idantimutight[max_tau]; +//added Tau IDs + float value_tau_ByLooseCombinedIsolationDBSumPtCorr3Hits[max_tau]; + float value_tau_ByMediumCombinedIsolationDBSumPtCorr3Hits[max_tau]; + float value_tau_ByTightCombinedIsolationDBSumPtCorr3Hits[max_tau]; + float value_tau_ByLooseIsolationMVA[max_tau]; + float value_tau_ByMediumIsolationMVA[max_tau]; + float value_tau_ByTightIsolationMVA[max_tau]; + float value_tau_ByLooseMuonRejection[max_tau]; + float value_tau_ByMediumMuonRejection[max_tau]; + float value_tau_ByTightMuonRejection[max_tau]; + /* // Photons const static int max_ph = 1000; @@ -325,7 +336,18 @@ AOD2NanoAOD::AOD2NanoAOD(const edm::ParameterSet &iConfig) tree->Branch("Tau_idAntiMuLoose", value_tau_idantimuloose, "Tau_idAntiMuLoose[nTau]/O"); tree->Branch("Tau_idAntiMuMedium", value_tau_idantimumedium, "Tau_idAntiMuMedium[nTau]/O"); tree->Branch("Tau_idAntiMuTight", value_tau_idantimutight, "Tau_idAntiMuTight[nTau]/O"); - + + + //added Tau IDs + tree->Branch("Tau_ByLooseCombinedIsolationDBSumPtCorr3Hits",value_tau_ByLooseCombinedIsolationDBSumPtCorr3Hits, "Tau_ByLooseCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); + tree->Branch("Tau_ByMediumCombinedIsolationDBSumPtCorr3Hits",value_tau_ByMediumCombinedIsolationDBSumPtCorr3Hits, "Tau_ByMediumCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); + tree->Branch("Tau_ByTightCombinedIsolationDBSumPtCorr3Hits", value_tau_ByTightCombinedIsolationDBSumPtCorr3Hits, "Tau_ByTightCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); + tree->Branch("Tau_ByLooseIsolationMVA",value_tau_ByLooseIsolationMVA, "Tau_ByTightCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); + tree->Branch("Tau_ByMediumIsolationMVA",value_tau_ByMediumIsolationMVA, "Tau_ByMediumIsolationMVA[nTau]/F"); + tree->Branch("Tau_ByTightIsolationMVA",value_tau_ByTightIsolationMVA, "Tau_ByTightIsolationMVA[nTau]/F"); + tree->Branch("Tau_ByLooseMuonRejection",value_tau_ByLooseMuonRejection, "Tau_ByLooseMuonRejection[nTau]/F"); + tree->Branch("Tau_ByMediumMuonRejection",value_tau_ByMediumMuonRejection, "Tau_ByMediumMuonRejection[nTau]/F"); + tree->Branch("Tau_ByTightMuonRejection",value_tau_ByTightMuonRejection, "Tau_ByTightMuonRejection[nTau]/F"); /* // Photons tree->Branch("nPhoton", &value_ph_n, "nPhoton/i"); From d821a91a1fe04f2014f141d9e2bcdbc87751b519 Mon Sep 17 00:00:00 2001 From: farrah-simpson Date: Mon, 28 Sep 2020 16:52:15 -0500 Subject: [PATCH 2/4] FIlled TauIDs and changed variable names to match more consistently with others --- src/AOD2NanoAOD.cc | 61 +++++++++++++++++++++++++++++++--------------- 1 file changed, 41 insertions(+), 20 deletions(-) diff --git a/src/AOD2NanoAOD.cc b/src/AOD2NanoAOD.cc index ecc98f3..454da3e 100644 --- a/src/AOD2NanoAOD.cc +++ b/src/AOD2NanoAOD.cc @@ -202,15 +202,12 @@ class AOD2NanoAOD : public edm::EDAnalyzer { bool value_tau_idantimutight[max_tau]; //added Tau IDs - float value_tau_ByLooseCombinedIsolationDBSumPtCorr3Hits[max_tau]; - float value_tau_ByMediumCombinedIsolationDBSumPtCorr3Hits[max_tau]; - float value_tau_ByTightCombinedIsolationDBSumPtCorr3Hits[max_tau]; - float value_tau_ByLooseIsolationMVA[max_tau]; - float value_tau_ByMediumIsolationMVA[max_tau]; - float value_tau_ByTightIsolationMVA[max_tau]; - float value_tau_ByLooseMuonRejection[max_tau]; - float value_tau_ByMediumMuonRejection[max_tau]; - float value_tau_ByTightMuonRejection[max_tau]; + float value_tau_idCombinedisoDBSumPtCorr3Hitsloose[max_tau]; + float value_tau_idCombinedisoDBSumPtCorr3Hitsmedium[max_tau]; + float value_tau_idCombinedisoDBSumPtCorr3Hitstight[max_tau]; + float value_tau_idisoMVAloose[max_tau]; + float value_tau_idisoMVAmedium[max_tau]; + float value_tau_idisoMVAtight[max_tau]; /* // Photons @@ -337,17 +334,13 @@ AOD2NanoAOD::AOD2NanoAOD(const edm::ParameterSet &iConfig) tree->Branch("Tau_idAntiMuMedium", value_tau_idantimumedium, "Tau_idAntiMuMedium[nTau]/O"); tree->Branch("Tau_idAntiMuTight", value_tau_idantimutight, "Tau_idAntiMuTight[nTau]/O"); - //added Tau IDs - tree->Branch("Tau_ByLooseCombinedIsolationDBSumPtCorr3Hits",value_tau_ByLooseCombinedIsolationDBSumPtCorr3Hits, "Tau_ByLooseCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); - tree->Branch("Tau_ByMediumCombinedIsolationDBSumPtCorr3Hits",value_tau_ByMediumCombinedIsolationDBSumPtCorr3Hits, "Tau_ByMediumCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); - tree->Branch("Tau_ByTightCombinedIsolationDBSumPtCorr3Hits", value_tau_ByTightCombinedIsolationDBSumPtCorr3Hits, "Tau_ByTightCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); - tree->Branch("Tau_ByLooseIsolationMVA",value_tau_ByLooseIsolationMVA, "Tau_ByTightCombinedIsolationDBSumPtCorr3Hits[nTau]/F"); - tree->Branch("Tau_ByMediumIsolationMVA",value_tau_ByMediumIsolationMVA, "Tau_ByMediumIsolationMVA[nTau]/F"); - tree->Branch("Tau_ByTightIsolationMVA",value_tau_ByTightIsolationMVA, "Tau_ByTightIsolationMVA[nTau]/F"); - tree->Branch("Tau_ByLooseMuonRejection",value_tau_ByLooseMuonRejection, "Tau_ByLooseMuonRejection[nTau]/F"); - tree->Branch("Tau_ByMediumMuonRejection",value_tau_ByMediumMuonRejection, "Tau_ByMediumMuonRejection[nTau]/F"); - tree->Branch("Tau_ByTightMuonRejection",value_tau_ByTightMuonRejection, "Tau_ByTightMuonRejection[nTau]/F"); + tree->Branch("Tau_idCombinedIsoDBSumPtCorr3HitsLoose",value_tau_idCombinedisoDBSumPtCorr3Hitsloose, "Tau_idCombinedIsoDBSumPtCorr3HitsLoose[nTau]/O"); + tree->Branch("Tau_idCombinedIsoDBSumPtCorr3HitsMedium",value_tau_idCombinedisoDBSumPtCorr3Hitsmedium, "Tau_idCombinedIsoDBSumPtCorr3HitsMedium[nTau]/O"); + tree->Branch("Tau_idCombinedIsoDBSumPtCorr3HitsTight", value_tau_idCombinedisoDBSumPtCorr3Hitstight, "Tau_idCombinedIsoDBSumPtCorr3HitsTight[nTau]/O"); + tree->Branch("Tau_idIsoMVALoose",value_tau_idisoMVAloose, "Tau_idIsoMVALoose[nTau]/O"); + tree->Branch("Tau_idIsoMVAMedium",value_tau_idisoMVAmedium, "Tau_idIsoMVAMedium[nTau]/O"); + tree->Branch("Tau_idIsoMVATight",value_tau_idisoMVAtight, "Tau_idIsoMVATight[nTau]/O"); /* // Photons tree->Branch("nPhoton", &value_ph_n, "nPhoton/i"); @@ -533,7 +526,7 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, Handle tausLooseIso, tausVLooseIso, tausMediumIso, tausTightIso, tausDecayMode, tausLooseEleRej, tausMediumEleRej, tausTightEleRej, tausLooseMuonRej, tausMediumMuonRej, - tausTightMuonRej, tausRawIso; + tausTightMuonRej, tausRawIso, tausLooseIsoMVA, tausMediumIsoMVA, tausTightIsoMVA; iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByDecayModeFinding"), tausDecayMode); @@ -563,6 +556,21 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByTightMuonRejection"), tausTightMuonRej); +//added Tau Discriminators + + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits"), + tausLooseIso3Hits); + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr3Hits"), + tausMediumIso3Hits); + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr3Hits"), + tausTightIso3Hits); + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByLooseIsolationMVA"), + tausLooseIsoMVA); + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByMediumIsolationMVA"), + tausMediumIsoMVA); + iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByTightIsolationMVA"), + tausTightIsoMVA); + const float tau_min_pt = 15; value_tau_n = 0; std::vector selectedTaus; @@ -575,6 +583,7 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, value_tau_charge[value_tau_n] = it->charge(); value_tau_mass[value_tau_n] = it->mass(); value_tau_decaymode[value_tau_n] = it->decayMode(); + // Discriminators const auto idx = it - taus->begin(); value_tau_iddecaymode[value_tau_n] = tausDecayMode->operator[](idx).second; @@ -590,9 +599,21 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, value_tau_idantimumedium[value_tau_n] = tausMediumMuonRej->operator[](idx).second; value_tau_idantimutight[value_tau_n] = tausTightMuonRej->operator[](idx).second; +//added TauIDs filled + + value_tau_idisoMVAloose[value_tau_n] = tausLooseIsoMVA->operator[](idx).second; + value_tau_idisoMVAmedium[value_tau_n] = tausMediumIsoMVA->operator[](idx).second; + value_tau_idisoMVAtight[value_tau_n] = tausTightIsoMVA->operator[](idx).second; + value_tau_idCombinedisoDBSumPtCorr3Hitstight[value_tau_n] = tausLooseIso3Hits->operator[](idx).second; + value_tau_idCombinedisoDBSumPtCorr3Hitsmedium[value_tau_n] = tausMediumIso3Hits->operator[](idx).second; + value_tau_idCombinedisoDBSumPtCorr3Hitsloose[value_tau_n] = tausTightIso3Hits->operator[](idx).second; + + value_tau_reliso_all[value_tau_n] = (it->isolationPFChargedHadrCandsPtSum() + it->isolationPFGammaCandsEtSum()) / it->pt(); value_tau_jetidx[value_tau_n] = -1; value_tau_genpartidx[value_tau_n] = -1; + + value_tau_n++; } } From 676e8488684ed1009055b68af8ba3379833dc078 Mon Sep 17 00:00:00 2001 From: farrah-simpson Date: Mon, 28 Sep 2020 17:03:27 -0500 Subject: [PATCH 3/4] Correction Tau IDs --- src/AOD2NanoAOD.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/AOD2NanoAOD.cc b/src/AOD2NanoAOD.cc index 454da3e..359384c 100644 --- a/src/AOD2NanoAOD.cc +++ b/src/AOD2NanoAOD.cc @@ -526,7 +526,8 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, Handle tausLooseIso, tausVLooseIso, tausMediumIso, tausTightIso, tausDecayMode, tausLooseEleRej, tausMediumEleRej, tausTightEleRej, tausLooseMuonRej, tausMediumMuonRej, - tausTightMuonRej, tausRawIso, tausLooseIsoMVA, tausMediumIsoMVA, tausTightIsoMVA; + tausTightMuonRej, tausRawIso, tausLooseIsoMVA, tausMediumIsoMVA, tausTightIsoMVA, + tausLooseIso3Hits, tausMediumIso3Hitsi, tausTightIso3Hits; iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByDecayModeFinding"), tausDecayMode); From 1ff866955629dfa419ba0c2140b205282394edca Mon Sep 17 00:00:00 2001 From: farrah-simpson Date: Mon, 28 Sep 2020 17:28:34 -0500 Subject: [PATCH 4/4] correction TauID --- src/AOD2NanoAOD.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/AOD2NanoAOD.cc b/src/AOD2NanoAOD.cc index 359384c..4f03eb9 100644 --- a/src/AOD2NanoAOD.cc +++ b/src/AOD2NanoAOD.cc @@ -527,7 +527,7 @@ void AOD2NanoAOD::analyze(const edm::Event &iEvent, tausDecayMode, tausLooseEleRej, tausMediumEleRej, tausTightEleRej, tausLooseMuonRej, tausMediumMuonRej, tausTightMuonRej, tausRawIso, tausLooseIsoMVA, tausMediumIsoMVA, tausTightIsoMVA, - tausLooseIso3Hits, tausMediumIso3Hitsi, tausTightIso3Hits; + tausLooseIso3Hits, tausMediumIso3Hits, tausTightIso3Hits; iEvent.getByLabel(InputTag("hpsPFTauDiscriminationByDecayModeFinding"), tausDecayMode);