ATLAS Offline Software
Loading...
Searching...
No Matches
TileDigitsMakerConfig Namespace Reference

Functions

 TileDigitsMakerCfg (flags, **kwargs)
 TileDigitsMakerOutputCfg (flags, **kwargs)

Variables

 flags = initConfigFlags()
 Files
 RunType
 RDOFileName
 GlobalTag
 PileUp
 MaxEvents
 acc = MainServicesCfg(flags)
 withDetails
 True
 summariseProps
 sc = acc.run()

Detailed Description

Define method to construct configured Tile digits maker algorithm

Function Documentation

◆ TileDigitsMakerCfg()

TileDigitsMakerConfig.TileDigitsMakerCfg ( flags,
** kwargs )
Return component accumulator with configured Tile digits maker algorithm

Arguments:
    flags  -- Athena configuration flags
Keyword arguments:
    name -- name of TileDigitsMaker algorithm. Defaults to TileDigitsMaker.
    UseCoolPulseShapes -- flag to use pulse shape from database. Defaults to True.
    RndmEvtOverlay -- flag to add PileUp or noise by overlaying random events.
                      True if flag.Common.isOverlay equals to True.
    MaskBadChannels -- flag to mask channels tagged bad. Defaults to False.

Definition at line 10 of file TileDigitsMakerConfig.py.

10def TileDigitsMakerCfg(flags, **kwargs):
11 """Return component accumulator with configured Tile digits maker algorithm
12
13 Arguments:
14 flags -- Athena configuration flags
15 Keyword arguments:
16 name -- name of TileDigitsMaker algorithm. Defaults to TileDigitsMaker.
17 UseCoolPulseShapes -- flag to use pulse shape from database. Defaults to True.
18 RndmEvtOverlay -- flag to add PileUp or noise by overlaying random events.
19 True if flag.Common.isOverlay equals to True.
20 MaskBadChannels -- flag to mask channels tagged bad. Defaults to False.
21 """
22
23 kwargs.setdefault('name', 'TileDigitsMaker')
24 kwargs.setdefault('UseCoolPulseShapes', True)
25 kwargs.setdefault('MaskBadChannels', False)
26 kwargs.setdefault('RndmEvtOverlay', flags.Common.isOverlay)
27 kwargs.setdefault('OnlyUseContainerName', not flags.Common.isOverlay)
28
29 acc = TileHitVecToCntCfg(flags)
30
31 from TileConditions.TileInfoLoaderConfig import TileInfoLoaderCfg
32 infoLoaderAcc = TileInfoLoaderCfg(flags)
33 infoLoader = infoLoaderAcc.getPrimary()
34 acc.merge( infoLoaderAcc )
35
36 infoLoaderProperties = infoLoader._properties.items()
37
38 if 'TileNoise' in infoLoaderProperties:
39 tileNoise = infoLoaderProperties['TileNoise']
40 else:
41 tileNoise = infoLoader._descriptors['TileNoise'].default
42
43 if 'TileCoherNoise' in infoLoaderProperties:
44 tileCoherNoise = infoLoaderProperties['TileCoherNoise']
45 else:
46 tileCoherNoise = infoLoader._descriptors['TileCoherNoise'].default
47
48 from TileConditions.TileCablingSvcConfig import TileCablingSvcCfg
49 acc.merge(TileCablingSvcCfg(flags))
50
51 from TileConditions.TileSampleNoiseConfig import TileSampleNoiseCondAlgCfg
52 acc.merge( TileSampleNoiseCondAlgCfg(flags) )
53
54 from TileConditions.TileEMScaleConfig import TileEMScaleCondAlgCfg
55 acc.merge( TileEMScaleCondAlgCfg(flags) )
56
57 from TileConditions.TileSamplingFractionConfig import TileSamplingFractionCondAlgCfg
58 acc.merge( TileSamplingFractionCondAlgCfg(flags) )
59
60 if kwargs['RndmEvtOverlay']:
61 tileNoise = False
62 tileCoherNoise = False
63
64 kwargs['InputTileDigitContainer'] = f'{flags.Overlay.BkgPrefix}TileDigitsCnt'
65 kwargs['TileDQstatus'] = 'TileDQstatus'
66
67 if flags.Overlay.ByteStream:
68 from TileByteStream.TileByteStreamConfig import TileRawDataReadingCfg
69 acc.merge(TileRawDataReadingCfg(flags, readMuRcv=False))
70 else:
71 from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
72 acc.merge(SGInputLoaderCfg(flags, [f'TileDigitsContainer#{kwargs["InputTileDigitContainer"]}']))
73
74 from TileRecUtils.TileDQstatusConfig import TileDQstatusAlgCfg
75 acc.merge(TileDQstatusAlgCfg(flags))
76
77 if tileNoise or tileCoherNoise or kwargs['RndmEvtOverlay']:
78 if 'RndmSvc' not in kwargs:
79 from RngComps.RngCompsConfig import AthRNGSvcCfg
80 kwargs['RndmSvc'] = acc.getPrimaryAndMerge( AthRNGSvcCfg(flags) )
81 else:
82 kwargs['RndmSvc'] = None
83
84 if kwargs['UseCoolPulseShapes']:
85 from TileConditions.TilePulseShapeConfig import TilePulseShapeCondAlgCfg
86 acc.merge( TilePulseShapeCondAlgCfg(flags) )
87
88 if kwargs['MaskBadChannels'] or kwargs['RndmEvtOverlay']:
89 from TileConditions.TileBadChannelsConfig import TileBadChannelsCondAlgCfg
90 acc.merge( TileBadChannelsCondAlgCfg(flags) )
91
92 if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
93 kwargs.setdefault('TileDigitsContainer', flags.Overlay.BkgPrefix + 'TileDigitsCnt')
94 else:
95 kwargs.setdefault('TileDigitsContainer', 'TileDigitsCnt')
96
97 kwargs.setdefault('DoHSTruthReconstruction', flags.Digitization.EnableCaloHSTruthRecoInputs)
98 if kwargs['DoHSTruthReconstruction']:
99 kwargs.setdefault('TileHitContainer_DigiHSTruth', 'TileHitCnt_DigiHSTruth')
100 kwargs.setdefault('TileDigitsContainer_DigiHSTruth', 'TileDigitsCnt_DigiHSTruth')
101 else:
102 kwargs.setdefault('TileHitContainer_DigiHSTruth', '')
103 kwargs.setdefault('TileDigitsContainer_DigiHSTruth', '')
104
105
106 kwargs.setdefault('IntegerDigits', flags.Common.ProductionStep != ProductionStep.PileUpPresampling)
107
108 TileDigitsMaker=CompFactory.TileDigitsMaker
109 digitsMaker = TileDigitsMaker(**kwargs)
110
111 acc.addEventAlgo(digitsMaker, primary = True)
112
113 return acc
114
This algorithm performs digitization in TileCal, obtaining TileDigits from TileHits.

◆ TileDigitsMakerOutputCfg()

TileDigitsMakerConfig.TileDigitsMakerOutputCfg ( flags,
** kwargs )
Return component accumulator with configured Tile digits maker algorithm and Output Stream

Arguments:
    flags  -- Athena configuration flags
Keyword arguments:
    name -- name of TileDigitsMaker algorithm. Defaults to TileDigitsMaker.
    UseCoolPulseShapes -- flag to use pulse shape from database. Defaults to True.
    RndmEvtOverlay -- flag to add PileUp or noise by overlaying random events.
                      True if Common.ProductionStep equals to ProductionStep.Overlay.
    MaskBadChannels -- flag to mask channels tagged bad. Defaults to False.

Definition at line 115 of file TileDigitsMakerConfig.py.

115def TileDigitsMakerOutputCfg(flags, **kwargs):
116 """Return component accumulator with configured Tile digits maker algorithm and Output Stream
117
118 Arguments:
119 flags -- Athena configuration flags
120 Keyword arguments:
121 name -- name of TileDigitsMaker algorithm. Defaults to TileDigitsMaker.
122 UseCoolPulseShapes -- flag to use pulse shape from database. Defaults to True.
123 RndmEvtOverlay -- flag to add PileUp or noise by overlaying random events.
124 True if Common.ProductionStep equals to ProductionStep.Overlay.
125 MaskBadChannels -- flag to mask channels tagged bad. Defaults to False.
126 """
127
128 acc = TileDigitsMakerCfg(flags, **kwargs)
129 tileDigitsMaker = acc.getPrimary()
130
131 if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
132 if hasattr(tileDigitsMaker, 'TileDigitsContainer'):
133 tileDigitsContainer = tileDigitsMaker.TileDigitsContainer
134 else:
135 tileDigitsContainer = tileDigitsMaker.getDefaultProperty('TileDigitsContainer')
136 else:
137 if hasattr(tileDigitsMaker, 'TileFilteredContainer'):
138 tileDigitsContainer = tileDigitsMaker.TileFilteredContainer
139 else:
140 tileDigitsContainer = tileDigitsMaker.getDefaultProperty('TileFilteredContainer')
141
142 tileDigitsContainer = str(tileDigitsContainer).split('+').pop()
143 if flags.Digitization.AddCaloDigi:
144 outputItemList = ['TileDigitsContainer#*']
145 else:
146 outputItemList = ['TileDigitsContainer#' + tileDigitsContainer]
147
148 if flags.Output.doWriteRDO:
149 if flags.Digitization.EnableTruth:
150 outputItemList += ["CaloCalibrationHitContainer#*"]
151 from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg
152 acc.merge(TruthDigitizationOutputCfg(flags))
153 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
154 acc.merge( OutputStreamCfg(flags, streamName = 'RDO', ItemList = outputItemList) )
155
156 return acc
157
158
std::vector< std::string > split(const std::string &s, const std::string &t=":")
Definition hcg.cxx:177

Variable Documentation

◆ acc

TileDigitsMakerConfig.acc = MainServicesCfg(flags)

Definition at line 184 of file TileDigitsMakerConfig.py.

◆ Files

TileDigitsMakerConfig.Files

Definition at line 170 of file TileDigitsMakerConfig.py.

◆ flags

TileDigitsMakerConfig.flags = initConfigFlags()

Definition at line 169 of file TileDigitsMakerConfig.py.

◆ GlobalTag

TileDigitsMakerConfig.GlobalTag

Definition at line 173 of file TileDigitsMakerConfig.py.

◆ MaxEvents

TileDigitsMakerConfig.MaxEvents

Definition at line 175 of file TileDigitsMakerConfig.py.

◆ PileUp

TileDigitsMakerConfig.PileUp

Definition at line 174 of file TileDigitsMakerConfig.py.

◆ RDOFileName

TileDigitsMakerConfig.RDOFileName

Definition at line 172 of file TileDigitsMakerConfig.py.

◆ RunType

TileDigitsMakerConfig.RunType

Definition at line 171 of file TileDigitsMakerConfig.py.

◆ sc

TileDigitsMakerConfig.sc = acc.run()

Definition at line 200 of file TileDigitsMakerConfig.py.

◆ summariseProps

TileDigitsMakerConfig.summariseProps

Definition at line 197 of file TileDigitsMakerConfig.py.

◆ True

TileDigitsMakerConfig.True

Definition at line 197 of file TileDigitsMakerConfig.py.

◆ withDetails

TileDigitsMakerConfig.withDetails

Definition at line 197 of file TileDigitsMakerConfig.py.