From a21a304aea42ca17b420db2491290e1797095b0c Mon Sep 17 00:00:00 2001
From: Arnaud Duperrin <duperrin@cppm.in2p3.fr>
Date: Thu, 22 Apr 2021 16:56:34 +0000
Subject: [PATCH] Add btagging of AntiKtVR30Rmax4Rmin02PV0TrackJets VR jets in
 DAOD_PHYSVAL derivation (using update/fix in ATLJETMET-1326 from Jet/Met
 group) + allow mutiple jet collections btagging (PFlow and VR)

---
 .../python/FullListOfSmartContainers.py                   | 5 +++--
 .../DerivationFrameworkCore/python/SlimmingHelper.py      | 3 +++
 .../python/FtagRun3DerivationConfig.py                    | 6 +++++-
 .../DerivationFrameworkPhysicsValidation/share/PHYSVAL.py | 8 +++++---
 .../BTagging/python/JetParticleAssociationAlgConfig.py    | 3 ++-
 5 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/FullListOfSmartContainers.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/FullListOfSmartContainers.py
index d787813dcac3..05604f663510 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/FullListOfSmartContainers.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/FullListOfSmartContainers.py
@@ -70,8 +70,9 @@ FullListOfSmartContainers = [
    "BTagging_AntiKt4EMTopo_201810",
    "BTagging_AntiKt4EMPFlow_201810",
    "BTagging_AntiKt4EMPFlow_201903",
-   'BTagging_AntiKt4EMPFlow',
-   'BTagging_AntiKt4EMTopo',
+   "BTagging_AntiKt4EMPFlow",
+   "BTagging_AntiKt4EMTopo",
+   "BTagging_AntiKtVR30Rmax4Rmin02Track",
    "BTagging_AntiKtVR30Rmax4Rmin02Track_201810",
    "BTagging_AntiKtVR30Rmax4Rmin02Track_201810GhostTag",
    "BTagging_AntiKtVR30Rmax4Rmin02Track_201810_expert",
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/SlimmingHelper.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/SlimmingHelper.py
index e4b716b652df..84281805fa73 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/SlimmingHelper.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkCore/python/SlimmingHelper.py
@@ -569,6 +569,9 @@ class SlimmingHelper:
                 elif collectionName=="BTagging_AntiKt4EMTopo":
                         from DerivationFrameworkFlavourTag.BTaggingContent import BTaggingStandardContent
                         items.extend(BTaggingStandardContent("AntiKt4EMTopoJets"))
+                elif collectionName=="BTagging_AntiKtVR30Rmax4Rmin02Track":
+                        from DerivationFrameworkFlavourTag.BTaggingContent import BTaggingStandardContent
+                        items.extend(BTaggingStandardContent("AntiKtVR30Rmax4Rmin02PV0TrackJets"))
                 elif collectionName=="BTagging_AntiKt2Track":
                         from DerivationFrameworkFlavourTag.BTaggingContent import BTaggingStandardContent
                         items.extend(BTaggingStandardContent("AntiKt2PV0TrackJets"))
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkFlavourTag/python/FtagRun3DerivationConfig.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkFlavourTag/python/FtagRun3DerivationConfig.py
index 62b9af5c61f3..e86fda8de733 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkFlavourTag/python/FtagRun3DerivationConfig.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkFlavourTag/python/FtagRun3DerivationConfig.py
@@ -86,8 +86,12 @@ def getFtagComponent(cfgFlags, jetcol, taggerlist, OutputLevel=WARNING):
             'BTagging/201903/rnnip/antikt4empflow/network.json',
             'BTagging/201903/dl1r/antikt4empflow/network.json',
             'BTagging/201903/dl1/antikt4empflow/network.json',
+        ],
+        'AntiKtVR30Rmax4Rmin02Track': [
+            'BTagging/201903/rnnip/antiktvr30rmax4rmin02track/network.json',
+            'BTagging/201903/dl1r/antiktvr30rmax4rmin02track/network.json',
+            'BTagging/201903/dl1/antiktvr30rmax4rmin02track/network.json',
         ]
-
     }
 
     acc.merge(BTagTrackAugmenterAlgCfg(cfgFlags))
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkPhysicsValidation/share/PHYSVAL.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkPhysicsValidation/share/PHYSVAL.py
index c69d2713927f..4cf7aaf025d3 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkPhysicsValidation/share/PHYSVAL.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkPhysicsValidation/share/PHYSVAL.py
@@ -162,8 +162,7 @@ SeqPHYSVAL += CfgMgr.DerivationFramework__DerivationKernel("PHYSVALKernel")
 #====================================================================
 
 from DerivationFrameworkFlavourTag.FtagRun3DerivationConfig import FtagJetCollections
-FtagJetCollections(['AntiKt4EMPFlowJets'],SeqPHYSVAL)
-
+FtagJetCollections(['AntiKt4EMPFlowJets','AntiKtVR30Rmax4Rmin02TrackJets'],SeqPHYSVAL)
 
 #====================================================================
 # TC-LVT Vertices 
@@ -189,6 +188,7 @@ PHYSVALSlimmingHelper.SmartCollections = ["Electrons",
                                        "AntiKt4EMPFlowJets",
                                        "BTagging_AntiKt4EMPFlow",
                                        "BTagging_AntiKt4EMTopo",
+                                       "BTagging_AntiKtVR30Rmax4Rmin02Track",
                                        "MET_Reference_AntiKt4EMTopo",
                                        "MET_Reference_AntiKt4EMPFlow",
                                        "TauJets",
@@ -208,6 +208,7 @@ PHYSVALSlimmingHelper.AllVariables =  ["Electrons", "ForwardElectrons",
                                        "AntiKt4EMPFlowJets",
                                        "BTagging_AntiKt4EMPFlow",
                                        "BTagging_AntiKt4EMTopo",
+                                       "BTagging_AntiKtVR30Rmax4Rmin02Track",
                                        "MET_Reference_AntiKt4EMTopo",
                                        "MET_Reference_AntiKt4EMPFlow",
                                        "MET_Reference_AntiKt4LCTopo",
@@ -274,7 +275,8 @@ if DerivationFrameworkIsMonteCarlo:
                                             'TruthPrimaryVertices':'xAOD::TruthVertexContainer','TruthPrimaryVerticesAux':'xAOD::TruthVertexAuxContainer',
                                             'AntiKt10TruthTrimmedPtFrac5SmallR20Jets':'xAOD::JetContainer', 'AntiKt10TruthTrimmedPtFrac5SmallR20JetsAux':'xAOD::JetAuxContainer',
                                             'AntiKt10LCTopoJets':'xAOD::JetContainer', 'AntiKt10LCTopoJetsAux':'xAOD::JetAuxContainer',
-                                            'AntiKt10PV0TrackJets':'xAOD::JetContainer','AntiKt10PV0TrackJetsAux':'xAOD::JetAuxContainer'
+                                            'AntiKt10PV0TrackJets':'xAOD::JetContainer','AntiKt10PV0TrackJetsAux':'xAOD::JetAuxContainer',
+                                            'BTagging_AntiKtVR30Rmax4Rmin02Track':'xAOD::BTaggingContainer','BTagging_AntiKtVR30Rmax4Rmin02TrackAux':'xAOD::BTaggingAuxContainer'   
                                            }
 
    from DerivationFrameworkMCTruth.MCTruthCommon import addTruth3ContentToSlimmerTool
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/JetParticleAssociationAlgConfig.py b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/JetParticleAssociationAlgConfig.py
index c9e7c44ffd9f..0b9cfad6392c 100644
--- a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/JetParticleAssociationAlgConfig.py
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/JetParticleAssociationAlgConfig.py
@@ -27,7 +27,8 @@ def JetParticleAssociationAlgCfg(ConfigFlags, JetCollection="", ParticleCollecti
                        'coneSizeFitPar3': -1.56387e-05}
 
     # setup the associator
-    options['JetCollectionName'] = jetcol + 'Jets'
+    #options['JetCollectionName'] = jetcol + 'Jets'
+    options['JetCollectionName'] = jetcol.replace('Track', 'PV0Track') + 'Jets' #AD
     options['TrackParticleCollectionName'] = partcol
     options['TrackToJetAssociatorName'] = jetcol + 'Jets.' + AssociationName
     options['TrackToJetAssociator'] = acc.popToolsAndMerge(BTagTrackToJetAssociatorCfg(ConfigFlags, AssociationName, options = optionAssoc))
-- 
GitLab