ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileSimAlgs
python
TileDigitizationConfig.py
Go to the documentation of this file.
1
"""Combined Tile Digitization functions
2
3
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4
"""
5
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
6
from
AthenaConfiguration.Enums
import
ProductionStep
7
from
AthenaConfiguration.Enums
import
LHCPeriod
8
from
AthenaConfiguration.Enums
import
BeamType
9
from
TileConfiguration.TileConfigFlags
import
TileRunType
10
11
def
TileTriggerDigitizationCfg
(flags):
12
"""Return ComponentAccumulator with standard Tile Trigger Digitization configuration"""
13
14
if
flags.Beam.Type
is
BeamType.TestBeam:
15
return
ComponentAccumulator()
16
17
from
TileSimAlgs.TileHitToTTL1Config
import
TileHitToTTL1OutputCfg
18
acc = TileHitToTTL1OutputCfg(flags)
19
20
if
flags.GeoModel.Run > LHCPeriod.Run1:
21
from
TileSimAlgs.TileMuonReceiverConfig
import
TilePulseForTileMuonReceiverOutputCfg
22
acc.merge( TilePulseForTileMuonReceiverOutputCfg(flags) )
23
24
from
TileSimAlgs.TileMuonReceiverDecisionConfig
import
TileMuonReceiverDecisionOutputCfg
25
acc.merge( TileMuonReceiverDecisionOutputCfg(flags) )
26
27
from
TileL2Algs.TileL2Config
import
TileRawChannelToL2OutputCfg
28
acc.merge( TileRawChannelToL2OutputCfg(flags, streamName =
'RDO'
) )
29
30
return
acc
31
32
33
def
TileOverlayTriggerDigitizationCfg
(flags):
34
"""Return ComponentAccumulator with Overlay Tile Trigger Digitization configuration"""
35
acc = ComponentAccumulator()
36
37
if
flags.GeoModel.Run > LHCPeriod.Run1:
38
from
TileSimAlgs.TileMuonReceiverConfig
import
TilePulseForTileMuonReceiverOutputCfg
39
acc.merge( TilePulseForTileMuonReceiverOutputCfg(flags) )
40
41
from
TileSimAlgs.TileMuonReceiverDecisionConfig
import
TileMuonReceiverDecisionOutputCfg
42
acc.merge( TileMuonReceiverDecisionOutputCfg(flags) )
43
44
from
TileL2Algs.TileL2Config
import
TileRawChannelToL2OutputCfg
45
acc.merge( TileRawChannelToL2OutputCfg(flags, streamName =
'RDO'
) )
46
47
return
acc
48
49
50
def
TileDigitizationCfg
(flags):
51
"""Return ComponentAccumulator with standard Tile Digitization configuration"""
52
53
from
TileSimAlgs.TileDigitsMakerConfig
import
TileDigitsMakerOutputCfg
54
acc = TileDigitsMakerOutputCfg(flags)
55
56
if
flags.Common.ProductionStep != ProductionStep.PileUpPresampling
and
flags.Output.doWriteRDO:
57
from
TileRecUtils.TileRawChannelMakerConfig
import
TileRawChannelMakerOutputCfg
58
acc.merge( TileRawChannelMakerOutputCfg(flags, streamName =
'RDO'
) )
59
else
:
60
from
TileRecUtils.TileRawChannelMakerConfig
import
TileRawChannelMakerCfg
61
acc.merge( TileRawChannelMakerCfg(flags) )
62
63
if
flags.Digitization.EnableCaloHSTruthRecoInputs:
64
if
flags.Output.doWriteRDO:
65
from
TileRecUtils.TileRawChannelMakerConfig
import
TileRawChannelMakerDigiHSTruthOutputCfg
66
acc.merge( TileRawChannelMakerDigiHSTruthOutputCfg(flags, streamName =
'RDO'
) )
67
else
:
68
from
TileRecUtils.TileRawChannelMakerConfig
import
TileRawChannelMakerDigiHSTruthCfg
69
acc.merge( TileRawChannelMakerDigiHSTruthCfg(flags) )
70
71
return
acc
72
73
74
75
if
__name__ ==
"__main__"
:
76
77
from
AthenaConfiguration.AllConfigFlags
import
initConfigFlags
78
from
AthenaConfiguration.TestDefaults
import
defaultConditionsTags, defaultTestFiles
79
from
AthenaCommon.Logging
import
log
80
from
AthenaCommon.Constants
import
DEBUG
81
82
# Test setup
83
log.setLevel(DEBUG)
84
85
flags = initConfigFlags()
86
flags.Input.Files = defaultTestFiles.HITS_RUN2
87
flags.Tile.RunType = TileRunType.PHY
88
flags.Output.RDOFileName =
'myRDO-TileDigitization.pool.root'
89
flags.IOVDb.GlobalTag = defaultConditionsTags.RUN2_MC
90
flags.Digitization.PileUp =
False
91
92
flags.fillFromArgs()
93
94
flags.lock()
95
flags.dump()
96
97
# Construct our accumulator to run
98
from
AthenaConfiguration.MainServicesConfig
import
MainServicesCfg
99
acc = MainServicesCfg(flags)
100
101
from
AthenaPoolCnvSvc.PoolReadConfig
import
PoolReadCfg
102
acc.merge(PoolReadCfg(flags))
103
104
if
'EventInfo'
not
in
flags.Input.Collections:
105
from
xAODEventInfoCnv.xAODEventInfoCnvConfig
import
EventInfoCnvAlgCfg
106
acc.merge(EventInfoCnvAlgCfg(flags,
107
inputKey=
'McEventInfo'
,
108
outputKey=
'EventInfo'
))
109
110
acc.merge(
TileDigitizationCfg
(flags) )
111
acc.merge(
TileTriggerDigitizationCfg
(flags) )
112
113
acc.printConfig(withDetails =
True
, summariseProps =
True
)
114
acc.store( open(
'TileDigitization.pkl'
,
'wb'
) )
115
116
sc = acc.run(maxEvents=3)
117
# Success should be 0
118
import
sys
119
sys.exit(
not
sc.isSuccess())
Constants
TileDigitizationConfig.TileDigitizationCfg
TileDigitizationCfg(flags)
Definition
TileDigitizationConfig.py:50
TileDigitizationConfig.TileTriggerDigitizationCfg
TileTriggerDigitizationCfg(flags)
Definition
TileDigitizationConfig.py:11
TileDigitizationConfig.TileOverlayTriggerDigitizationCfg
TileOverlayTriggerDigitizationCfg(flags)
Definition
TileDigitizationConfig.py:33
Generated on
for ATLAS Offline Software by
1.17.0