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