From afa52459a71aa8341d012db03bccfa455f8981a0 Mon Sep 17 00:00:00 2001
From: Thomas Strebler <thomas.strebler@cern.ch>
Date: Sun, 16 Feb 2025 07:52:15 +0000
Subject: [PATCH] Clean up of tau and muon merging analysis configs

Clean up of tau and muon merging analysis configs
---
 .../python/MuonAnalysisConfig.py              | 16 ++++++-----
 .../python/TauAnalysisConfig.py               | 28 +++++++------------
 2 files changed, 19 insertions(+), 25 deletions(-)

diff --git a/PhysicsAnalysis/Algorithms/MuonAnalysisAlgorithms/python/MuonAnalysisConfig.py b/PhysicsAnalysis/Algorithms/MuonAnalysisAlgorithms/python/MuonAnalysisConfig.py
index 14eddc5fda1..453eb05b3cd 100644
--- a/PhysicsAnalysis/Algorithms/MuonAnalysisAlgorithms/python/MuonAnalysisConfig.py
+++ b/PhysicsAnalysis/Algorithms/MuonAnalysisAlgorithms/python/MuonAnalysisConfig.py
@@ -16,7 +16,7 @@ class MuonCalibrationConfig (ConfigBlock):
     def __init__ (self, containerName='') :
         super (MuonCalibrationConfig, self).__init__ ()
         self.setBlockName('Muons')
-        self.addOption ('inputContainer', 'Muons', type=str, 
+        self.addOption ('inputContainer', '', type=str,
             info="select muon input container, by default set to Muons")
         self.addOption ('containerName', containerName, type=str,
             noneAction='error',
@@ -59,8 +59,10 @@ class MuonCalibrationConfig (ConfigBlock):
         else :
             raise ValueError ("invalid calibMode: \"" + self.calibMode + "\". Allowed values are correctData_CB, correctData_IDMS, notCorrectData_IDMS, notCorrectData_CB")
 
-        config.setSourceName (self.containerName,
-                              "AnalysisMuons" if config.isPhyslite() else self.inputContainer,
+        inputContainer = "AnalysisMuons" if config.isPhyslite() else "Muons"
+        if self.inputContainer:
+            inputContainer = self.inputContainer
+        config.setSourceName (self.containerName, inputContainer,
                               calibMode=calibMode)
 
         # Set up a shallow copy to decorate
@@ -501,20 +503,20 @@ class MuonTriggerAnalysisSFBlock (ConfigBlock):
 
 
 class MuonLRTMergedConfig (ConfigBlock) :
-    def __init__ (self, inputMuons = 'Muons', inputLRTMuons = 'MuonsLRT', containerName = 'Muons_LRTMerged', postfix = '') :
+    def __init__ (self) :
         super (MuonLRTMergedConfig, self).__init__ ()
         self.addOption (
-            'inputMuons', inputMuons, type=str,
+            'inputMuons', 'Muons', type=str,
             noneAction='error',
             info="the name of the input muon container."
         )
         self.addOption (
-            'inputLRTMuons', inputLRTMuons, type=str,
+            'inputLRTMuons', 'MuonsLRT', type=str,
             noneAction='error',
             info="the name of the input LRT muon container."
         )
         self.addOption (
-            'containerName', containerName, type=str,
+            'containerName', 'Muons_LRTMerged', type=str,
             noneAction='error',
             info="the name of the output container after LRT merging."
         )
diff --git a/PhysicsAnalysis/Algorithms/TauAnalysisAlgorithms/python/TauAnalysisConfig.py b/PhysicsAnalysis/Algorithms/TauAnalysisAlgorithms/python/TauAnalysisConfig.py
index 1f8074ebbb1..db52df38c02 100644
--- a/PhysicsAnalysis/Algorithms/TauAnalysisAlgorithms/python/TauAnalysisConfig.py
+++ b/PhysicsAnalysis/Algorithms/TauAnalysisAlgorithms/python/TauAnalysisConfig.py
@@ -15,7 +15,7 @@ class TauCalibrationConfig (ConfigBlock):
         super (TauCalibrationConfig, self).__init__ ()
         self.setBlockName('Taus')
         self.containerName = containerName
-        self.addOption ('inputContainer', 'TauJets', type=str,
+        self.addOption ('inputContainer', '', type=str,
             info="select tau input container, by default set to TauJets")
         self.addOption ('containerName', containerName, type=str,
             noneAction='error',
@@ -37,10 +37,10 @@ class TauCalibrationConfig (ConfigBlock):
         if postfix != '' and postfix[0] != '_' :
             postfix = '_' + postfix
 
-        if config.isPhyslite() :
-            config.setSourceName (self.containerName, "AnalysisTauJets")
-        else :
-            config.setSourceName (self.containerName, self.inputContainer)
+        inputContainer = "AnalysisTauJets" if config.isPhyslite() else "TauJets"
+        if self.inputContainer:
+            inputContainer = self.inputContainer
+        config.setSourceName (self.containerName, inputContainer)
 
         # Set up the tau truth matching algorithm:
         if self.rerunTruthMatching and config.dataType() is not DataType.Data:
@@ -285,38 +285,30 @@ class TauWorkingPointConfig (ConfigBlock) :
 
 
 class EXPERIMENTAL_TauCombineMuonRemovalConfig (ConfigBlock) :
-    def __init__ (self, inputTaus = 'TauJets', inputTausMuRM = 'TauJets_MuonRM', outputTaus = 'TauJets_MuonRmCombined', postfix = '') :
+    def __init__ (self) :
         super (EXPERIMENTAL_TauCombineMuonRemovalConfig, self).__init__ ()
         self.addOption (
-            'inputTaus', inputTaus, type=str,
+            'inputTaus', 'TauJets', type=str,
             noneAction='error',
             info="the name of the input tau container."
         )
         self.addOption (
-            'inputTausMuRM', inputTausMuRM, type=str,
+            'inputTausMuRM', 'TauJets_MuonRM', type=str,
             noneAction='error',
             info="the name of the input tau container with muon removal applied."
         )
-        self.addOption ('postfix', postfix, type=str,
-            info="a postfix to apply to decorations and algorithm names. "
-            "Typically not needed here as selectionName is used internally."
-        )
         self.addOption (
-            'outputTaus', outputTaus, type=str,
+            'outputTaus', 'TauJets_MuonRmCombined', type=str,
             noneAction='error',
             info="the name of the output tau container."
         )
 
     def makeAlgs (self, config) :
 
-        postfix = self.postfix
-        if postfix != '' and postfix[0] != '_' :
-            postfix = '_' + postfix
-
         if config.isPhyslite() :
             raise(RuntimeError("Muon removal taus is not available in Physlite mode"))
 
-        alg = config.createAlgorithm( 'CP::TauCombineMuonRMTausAlg', 'TauCombineMuonRMTausAlg' + postfix )
+        alg = config.createAlgorithm( 'CP::TauCombineMuonRMTausAlg', 'TauCombineMuonRMTausAlg' + self.outputTaus )
         alg.taus = self.inputTaus
         alg.muonrm_taus = self.inputTausMuRM
         alg.combined_taus = self.outputTaus
-- 
GitLab