From 075599b9bf5575def6b8e62f045b515730df6f05 Mon Sep 17 00:00:00 2001 From: Matthew Date: Sun, 29 Nov 2020 17:43:16 +0100 Subject: [PATCH 1/3] Revert to original method of filtering out events w/o SV info --- RecoBTag/Combined/src/HeavyIonCSVTagger.cc | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc index 08ea2795f8fc9..c99762ef503fd 100644 --- a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc +++ b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc @@ -77,10 +77,10 @@ float HeavyIonCSVTagger::discriminator(const TagInfoHelper &tagInfo) const { // Loop over input variables std::map inputs; - bool notTaggable = false; std::vector tagValList = vars.getList(reco::btau::trackSip3dSig, false); bool noTrack = (tagValList.empty()); - bool noVertex = (vars.get(reco::btau::vertexCategory, -1.0) == 2); + bool vtxChecked = false; + float vtxMassVal = 0.; for (auto &mva_var : variables_) { //vectorial tagging variable @@ -91,17 +91,17 @@ float HeavyIonCSVTagger::discriminator(const TagInfoHelper &tagInfo) const { //single value tagging var else { inputs[mva_var.name] = vars.get(mva_var.id, mva_var.default_value); + if (!vtxChecked) { + if (mva_var.name == "TagVarCSV_vertexMass") { + vtxMassVal = inputs[mva_var.name]; + vtxChecked = true; + } + } } } - if (noTrack && noVertex) - notTaggable = true; - - //get the MVA output - float tag = (mvaID_->evaluate(inputs) + 1.) / 2.; - - if (notTaggable) - tag = -1; - - return tag; + if (vtxMassVal < 0 && noTrack) + return -1; + else + return (mvaID_->evaluate(inputs) + 1.) / 2.; } From ad1e40eae8e7a0d0de0ec2e1b092879b2749b38c Mon Sep 17 00:00:00 2001 From: Matthew Date: Tue, 1 Dec 2020 07:35:54 +0100 Subject: [PATCH 2/3] Reduce frequency of string comparison --- RecoBTag/Combined/src/HeavyIonCSVTagger.cc | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc index c99762ef503fd..6997a4d80ab1c 100644 --- a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc +++ b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc @@ -76,11 +76,8 @@ float HeavyIonCSVTagger::discriminator(const TagInfoHelper &tagInfo) const { // Loop over input variables std::map inputs; - std::vector tagValList = vars.getList(reco::btau::trackSip3dSig, false); bool noTrack = (tagValList.empty()); - bool vtxChecked = false; - float vtxMassVal = 0.; for (auto &mva_var : variables_) { //vectorial tagging variable @@ -91,17 +88,14 @@ float HeavyIonCSVTagger::discriminator(const TagInfoHelper &tagInfo) const { //single value tagging var else { inputs[mva_var.name] = vars.get(mva_var.id, mva_var.default_value); - if (!vtxChecked) { + if (noTrack) { if (mva_var.name == "TagVarCSV_vertexMass") { - vtxMassVal = inputs[mva_var.name]; - vtxChecked = true; + if (inputs[mva_var.name] < 0) + return -1; } } } } - if (vtxMassVal < 0 && noTrack) - return -1; - else - return (mvaID_->evaluate(inputs) + 1.) / 2.; + return (mvaID_->evaluate(inputs) + 1.) / 2.; } From f727ad85dba53e65cd4ac5f34410e8ced4027249 Mon Sep 17 00:00:00 2001 From: Matthew Date: Tue, 1 Dec 2020 10:15:14 +0100 Subject: [PATCH 3/3] Still less string comp --- RecoBTag/Combined/src/HeavyIonCSVTagger.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc index 6997a4d80ab1c..789eb574d9842 100644 --- a/RecoBTag/Combined/src/HeavyIonCSVTagger.cc +++ b/RecoBTag/Combined/src/HeavyIonCSVTagger.cc @@ -92,6 +92,7 @@ float HeavyIonCSVTagger::discriminator(const TagInfoHelper &tagInfo) const { if (mva_var.name == "TagVarCSV_vertexMass") { if (inputs[mva_var.name] < 0) return -1; + noTrack = false; } } }