ATLAS Offline Software
egammaCaloToolsConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 __doc__ = """
4 Tool configuration to instantiate
5 all egammaCaloTools with default configuration.
6 """
7 
8 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
9 from AthenaConfiguration.ComponentFactory import CompFactory
10 
11 
12 def CaloFillRectangularClusterCfg(flags, **kwargs):
13  result = ComponentAccumulator()
14 
15  kwargs.setdefault("eta_size", 5)
16  kwargs.setdefault("phi_size", 7)
17  kwargs.setdefault("cells_name", flags.Egamma.Keys.Input.CaloCells)
18 
19  result.setPrivateTools(CompFactory.CaloFillRectangularCluster(**kwargs))
20  return result
21 
22 
24  flags, name="egammaCheckEnergyDepositTool", **kwargs
25 ):
26  result = ComponentAccumulator()
27  kwargs.setdefault("ThrE2min", 50)
28  kwargs.setdefault("ThrF0max", 0.9)
29  kwargs.setdefault("ThrF1max", 0.9)
30  kwargs.setdefault("ThrF2max", 0.999)
31  kwargs.setdefault("ThrF3max", 0.8)
32  result.setPrivateTools(CompFactory.egammaCheckEnergyDepositTool(name, **kwargs))
33  return result
34 
35 
36 def egammaCaloClusterSelectorGSFCfg(flags, name="caloClusterGSFSelector", **kwargs):
37  result = ComponentAccumulator()
38 
39  if "egammaCheckEnergyDepositTool" not in kwargs:
40  if not flags.Egamma.doLowMu:
41  kwargs["egammaCheckEnergyDepositTool"] = result.popToolsAndMerge(
43  )
44 
45  kwargs.setdefault("EMEtCut", 2250.0 if not flags.Egamma.doLowMu else 300.0)
46  kwargs.setdefault("EMEtSplittingFraction", 0.7)
47  kwargs.setdefault("EMFCut", 0.5)
48  kwargs.setdefault("CellContainerName", flags.Egamma.Keys.Input.CaloCells)
49  result.setPrivateTools(CompFactory.egammaCaloClusterSelector(name, **kwargs))
50  return result
51 
52 
53 def egammaCaloClusterSelectorCfg(flags, name="caloClusterROISelector", **kwargs):
54  result = ComponentAccumulator()
55 
56  if "egammaCheckEnergyDepositTool" not in kwargs:
57  if not flags.Egamma.doLowMu:
58  kwargs["egammaCheckEnergyDepositTool"] = result.popToolsAndMerge(
60  )
61  kwargs.setdefault("EMEtCut", 2250.0 if not flags.Egamma.doLowMu else 300.0)
62  kwargs.setdefault("EMEtSplittingFraction", 0.7)
63  kwargs.setdefault("EMFCut", 0.7)
64  kwargs.setdefault("RetaCut", 0.65 if not flags.Egamma.doLowMu else 0.0)
65  kwargs.setdefault("HadLeakCut", 0.15)
66  result.setPrivateTools(CompFactory.egammaCaloClusterSelector(name, **kwargs))
67  return result
68 
69 
71  flags, name="caloClusterHadROISelector", **kwargs
72 ):
73  result = ComponentAccumulator()
74  kwargs.setdefault("egammaCheckEnergyDepositTool", "")
75  kwargs.setdefault("ClusterEtCut", 150e3)
76  result.setPrivateTools(CompFactory.egammaCaloClusterSelector(name, **kwargs))
77  return result
78 
79 
80 if __name__ == "__main__":
81  from AthenaConfiguration.AllConfigFlags import initConfigFlags
82  from AthenaConfiguration.ComponentAccumulator import printProperties
83  from AthenaConfiguration.TestDefaults import defaultTestFiles
84  from AthenaCommon.Logging import logging
85  flags = initConfigFlags()
86  flags.Input.Files = defaultTestFiles.RDO_RUN2
87  flags.fillFromArgs()
88  flags.lock()
89  flags.dump()
90 
92  mlog = logging.getLogger("egammaCaloToolsConfigTest")
93  mlog.info("Configuring egammaCaloClusterSelector : ")
95  mlog,
96  cfg.popToolsAndMerge(egammaCaloClusterSelectorCfg(flags)),
97  nestLevel=1,
98  printDefaults=True,
99  )
100  mlog.info("Configuring egammaCaloClusterSelectorGSF :")
102  mlog,
103  cfg.popToolsAndMerge(egammaCaloClusterSelectorGSFCfg(flags)),
104  nestLevel=1,
105  printDefaults=True,
106  )
107  mlog.info("Configuring egammaHadCaloClusterSelector :")
109  mlog,
110  cfg.popToolsAndMerge(egammaHadCaloClusterSelectorCfg(flags)),
111  nestLevel=1,
112  printDefaults=True,
113  )
114  f = open("egtracktools.pkl", "wb")
115  cfg.store(f)
116  f.close()
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.egammaCaloToolsConfig.egammaHadCaloClusterSelectorCfg
def egammaHadCaloClusterSelectorCfg(flags, name="caloClusterHadROISelector", **kwargs)
Definition: egammaCaloToolsConfig.py:70
python.egammaCaloToolsConfig.CaloFillRectangularClusterCfg
def CaloFillRectangularClusterCfg(flags, **kwargs)
Definition: egammaCaloToolsConfig.py:12
python.egammaCaloToolsConfig.egammaCheckEnergyDepositToolcfg
def egammaCheckEnergyDepositToolcfg(flags, name="egammaCheckEnergyDepositTool", **kwargs)
Definition: egammaCaloToolsConfig.py:23
python.egammaCaloToolsConfig.egammaCaloClusterSelectorGSFCfg
def egammaCaloClusterSelectorGSFCfg(flags, name="caloClusterGSFSelector", **kwargs)
Definition: egammaCaloToolsConfig.py:36
python.egammaCaloToolsConfig.egammaCaloClusterSelectorCfg
def egammaCaloClusterSelectorCfg(flags, name="caloClusterROISelector", **kwargs)
Definition: egammaCaloToolsConfig.py:53
extractSporadic.printProperties
def printProperties(h, q, hLB)
Definition: extractSporadic.py:8
Trk::open
@ open
Definition: BinningType.h:40
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19