ATLAS Offline Software
LArDigitizationConfig.py
Go to the documentation of this file.
1 """Define functions for LAr Digitization with ComponentAccumulator
2 
3 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
4 """
5 # utilities
6 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
7 from AthenaConfiguration.ComponentFactory import CompFactory
8 from AthenaConfiguration.Enums import BeamType, LHCPeriod, ProductionStep
9 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
10 # for PileUpTool
11 from LArGeoAlgsNV.LArGMConfig import LArGMCfg
12 from LArRecUtils.LArADC2MeVCondAlgConfig import LArADC2MeVCondAlgCfg
13 from LArRecUtils.LArXTalkWeightCondAlgConfig import LArXTalkWeightCondAlgCfg
14 from LArRecUtils.LArRecUtilsConfig import LArAutoCorrNoiseCondAlgCfg
15 from LArBadChannelTool.LArBadChannelConfig import LArBadFebCfg,LArBadChannelCfg
16 from LArConfiguration.LArElecCalibDBConfig import LArElecCalibDBCfg
17 from DigitizationConfig.PileUpToolsConfig import PileUpToolsCfg
18 from DigitizationConfig.PileUpMergeSvcConfig import PileUpMergeSvcCfg, PileUpXingFolderCfg
19 # for Digitization
20 from LArROD.LArRawChannelBuilderAlgConfig import LArRawChannelBuilderAlgCfg
21 from LArROD.LArDigitThinnerConfig import LArDigitThinnerCfg
22 from LArROD.LArNNChannelBuilder import LArNNRawChannelBuilderCfg
23 from DigitizationConfig.TruthDigitizationOutputConfig import TruthDigitizationOutputCfg
24 # for Trigger Tower
25 from CaloConditions.CaloConditionsConfig import CaloTriggerTowerCfg
26 from SGComps.AddressRemappingConfig import InputOverwriteCfg
27 
28 def useLArFloat(flags):
29  """Return bool for simplified transient LArHit with float E,time"""
30  # temporary, remapping to LArHitFloat does not seeem to work
31  # with this scheme... => larger memory usage
32  if flags.Digitization.DoXingByXingPileUp or flags.Common.isOverlay:
33  return False
34  # check for fast chain, running digitisation from hits in memory
35  if flags.Sim.DoFullChain:
36  return False
37  return False
38 
39 
40 def LArRangeEMCfg(flags, name="LArRangeEM", **kwargs):
41  """Return a PileUpXingFoldertool for ElectroMagnetic calorimeter"""
42  # bunch crossing range in ns
43  kwargs.setdefault("FirstXing", -751)
44  kwargs.setdefault("LastXing", 101)
45  if useLArFloat(flags):
46  kwargs.setdefault("ItemList", ["LArHitFloatContainer#LArHitEMB",
47  "LArHitFloatContainer#LArHitEMEC"])
48  else:
49  kwargs.setdefault("ItemList", ["LArHitContainer#LArHitEMB",
50  "LArHitContainer#LArHitEMEC"])
51  return PileUpXingFolderCfg(flags, name, **kwargs)
52 
53 
54 def LArRangeHECCfg(flags, name="LArRangeHEC", **kwargs):
55  """Return a PileUpXingFoldertool for Hadronic End-Cap"""
56  # bunch crossing range in ns
57  kwargs.setdefault("FirstXing", -676)
58  kwargs.setdefault("LastXing", 101)
59  if useLArFloat(flags):
60  kwargs.setdefault("ItemList", ["LArHitFloatContainer#LArHitHEC"])
61  else:
62  kwargs.setdefault("ItemList", ["LArHitContainer#LArHitHEC"])
63  return PileUpXingFolderCfg(flags, name, **kwargs)
64 
65 
66 def LArRangeFCALCfg(flags, name="LArRangeFCAL", **kwargs):
67  """Return a PileUpXingFoldertool for Forward Calorimeters"""
68  # bunch crossing range in ns
69  kwargs.setdefault("FirstXing", -551)
70  kwargs.setdefault("LastXing", 101)
71  if useLArFloat(flags):
72  kwargs.setdefault("ItemList", ["LArHitFloatContainer#LArHitFCAL"])
73  else:
74  kwargs.setdefault("ItemList", ["LArHitContainer#LArHitFCAL"])
75  return PileUpXingFolderCfg(flags, name, **kwargs)
76 
77 
78 def LArPileUpToolCfg(flags, name="LArPileUpTool", **kwargs):
79  """Return ComponentAccumulator with configured LArPileUpTool"""
80  acc = LArGMCfg(flags)
81 
82  # add new conditions for LArXTalkWeight
83  acc.merge(LArXTalkWeightCondAlgCfg(flags))
84 
85  # defaults
86  if flags.Common.isOverlay:
87  # Some noise needs to be added during MC Overlay
88  # No noise should be added during Data Overlay
89  kwargs.setdefault("NoiseOnOff", not flags.Overlay.DataOverlay)
90  kwargs.setdefault("NoiseOnOff", flags.Digitization.DoCaloNoise) # For other jobs go with the noise flag setting.
91  kwargs.setdefault("DoDigiTruthReconstruction", flags.Digitization.EnableCaloHSTruthRecoInputs)
92  kwargs.setdefault("RandomSeedOffset", flags.Digitization.RandomSeedOffset)
93  if flags.Digitization.PileUp:
94  intervals = []
95  if flags.Digitization.DoXingByXingPileUp:
96  kwargs.setdefault("FirstXing", -751)
97  kwargs.setdefault("LastXing", 101)
98  else:
99  intervals += [acc.popToolsAndMerge(LArRangeEMCfg(flags))]
100  intervals += [acc.popToolsAndMerge(LArRangeHECCfg(flags))]
101  intervals += [acc.popToolsAndMerge(LArRangeFCALCfg(flags))]
102  kwargs.setdefault("PileUpMergeSvc", acc.getPrimaryAndMerge(PileUpMergeSvcCfg(flags, Intervals=intervals)).name)
103  else:
104  kwargs.setdefault("PileUpMergeSvc", '')
105  kwargs.setdefault("RndmEvtOverlay", flags.Common.isOverlay)
106  # if doing MC+MC overlay
107  if flags.Common.isOverlay and flags.Input.isMC:
108  kwargs.setdefault("isMcOverlay", True)
109 
110  # cosmics digitization
111  if flags.Beam.Type is BeamType.Cosmics:
112  kwargs.setdefault("UseTriggerTime", True)
113  acc.addEventAlgo(CompFactory.CosTriggerTimeAlg())
114  if flags.Digitization.PileUp or flags.Common.isOverlay:
115  kwargs.setdefault("PileUp", True)
116  kwargs.setdefault("useLArFloat", useLArFloat(flags))
117  if useLArFloat(flags):
118  acc.merge(InputOverwriteCfg("LArHitContainer","LArHitEMB","LArHitFloatContainer","LArHitEMB"))
119  acc.merge(InputOverwriteCfg("LArHitContainer","LArHitEMEC","LArHitFloatContainer","LArHitEMEC"))
120  acc.merge(InputOverwriteCfg("LArHitContainer","LArHitHEC","LArHitFloatContainer","LArHitHEC"))
121  acc.merge(InputOverwriteCfg("LArHitContainer","LArHitFCAL","LArHitFloatContainer","LArHitFCAL"))
122  if flags.Common.isOverlay:
123  from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
124  acc.merge(SGInputLoaderCfg(flags, [
125  "LArHitFloatContainer#LArHitEMB",
126  "LArHitFloatContainer#LArHitEMEC",
127  "LArHitFloatContainer#LArHitFCAL",
128  "LArHitFloatContainer#LArHitHEC",
129  ]))
130  else:
131  if flags.Common.isOverlay and not flags.Sim.DoFullChain:
132  from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
133  acc.merge(SGInputLoaderCfg(flags, [
134  "LArHitContainer#LArHitEMB",
135  "LArHitContainer#LArHitEMEC",
136  "LArHitContainer#LArHitFCAL",
137  "LArHitContainer#LArHitHEC",
138  ]))
139  if flags.Common.isOverlay:
140  kwargs.setdefault("OnlyUseContainerName", False)
141  if flags.Overlay.DataOverlay:
142  kwargs.setdefault("InputDigitContainer", f"{flags.Overlay.BkgPrefix}FREE")
143  else:
144  kwargs.setdefault("InputDigitContainer", f"{flags.Overlay.BkgPrefix}LArDigitContainer_MC")
145 
146  from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
147  acc.merge(SGInputLoaderCfg(flags, [f'LArDigitContainer#{kwargs["InputDigitContainer"]}']))
148  else:
149  kwargs.setdefault("OnlyUseContainerName", flags.Digitization.PileUp)
150  LArPileUpTool = CompFactory.LArPileUpTool
151  acc.setPrivateTools(LArPileUpTool(name, **kwargs))
152  return acc
153 
154 def LArHitEMapToDigitAlgCfg(flags, name="LArHitEMapToDigitAlg", **kwargs):
155  """Return ComponentAccumulator with configured LArHitEMapToDigitAlg"""
156  acc = LArGMCfg(flags)
157 
158  #The LArHitEMapToDigit needs: Noise, fSampl, Pedestal,Shape ADC2MeV
159  # AutoCorrNoise, the list of bad FEBs and the cabling
160  acc.merge(LArADC2MeVCondAlgCfg(flags))
161  acc.merge(LArBadFebCfg(flags))
162  acc.merge(LArBadChannelCfg(flags))
163  if flags.Overlay.DataOverlay:
164  kwargs.setdefault("ShapeKey", "LArShape")
165  #kwargs.setdefault("AutoCorrNoiseKey", "LArAutoCorr")
166  if not flags.Digitization.DoCaloNoise:
167  requiredConditons=["fSampl", "Pedestal", "Shape"]
168  else:
169  requiredConditons=["Noise", "fSampl", "Pedestal", "Shape"]
170  acc.merge(LArElecCalibDBCfg(flags,requiredConditons))
171 
172  if not flags.Common.isOverlay:
173  acc.merge(LArAutoCorrNoiseCondAlgCfg(flags))
174  #kwargs.setdefault('AutoCorrNoiseKey','LArAutoCorr')
175 
176  if "ProblemsToMask" not in kwargs:
177  kwargs["ProblemsToMask"] = ["deadReadout", "deadPhys"]
178  # defaults
179  if flags.Common.isOverlay:
180  # Some noise needs to be added during MC Overlay
181  # No noise should be added during Data Overlay
182  kwargs.setdefault("NoiseOnOff", not flags.Overlay.DataOverlay)
183  else :
184  kwargs.setdefault("NoiseOnOff", flags.Digitization.DoCaloNoise)
185  kwargs.setdefault("DoDigiTruthReconstruction", flags.Digitization.EnableCaloHSTruthRecoInputs)
186  kwargs.setdefault("RandomSeedOffset", flags.Digitization.RandomSeedOffset)
187  if (not flags.Digitization.HighGainFCal) and (not flags.Common.isOverlay):
188  kwargs.setdefault("HighGainThreshFCAL", 0)
189  if (not flags.Digitization.HighGainEMECIW) and (not flags.Common.isOverlay):
190  kwargs.setdefault("HighGainThreshEMECIW", 0)
191  kwargs.setdefault("RndmEvtOverlay", flags.Common.isOverlay)
192  if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
193  kwargs.setdefault("DigitContainer", flags.Overlay.BkgPrefix + "LArDigitContainer_MC")
194  else:
195  kwargs.setdefault("DigitContainer", "LArDigitContainer_MC") # FIXME - should not be hard-coded
196  # if doing MC+MC overlay
197  if flags.Common.isOverlay and flags.Input.isMC:
198  kwargs.setdefault("isMcOverlay", True)
199  kwargs.setdefault("Nsamples", flags.LAr.ROD.nSamples)
200  kwargs.setdefault("firstSample", #Need to set a negative value to include preceeding samples
201  -flags.LAr.ROD.nPreceedingSamples if flags.LAr.ROD.nPreceedingSamples!=0 else flags.LAr.ROD.FirstSample)
202  LArHitEMapToDigitAlg = CompFactory.LArHitEMapToDigitAlg
203  acc.addEventAlgo(LArHitEMapToDigitAlg(name, **kwargs))
204  return acc
205 
206 def LArOutputCfg(flags):
207  """Return ComponentAccumulator with Output for LAr. Not standalone."""
208  acc = ComponentAccumulator()
209  if flags.Output.doWriteRDO:
210  ItemList = []
211  if flags.Digitization.AddCaloDigi:
212  ItemList.append("LArDigitContainer#*")
213  elif flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
214  ItemList.append("LArDigitContainer#" + flags.Overlay.BkgPrefix + "LArDigitContainer_MC")
215  elif flags.Digitization.AddCaloDigiThinned:
216  ItemList.append("LArDigitContainer#LArDigitContainer_MC_Thinned")
217  if flags.Common.ProductionStep != ProductionStep.PileUpPresampling:
218  ItemList.append("LArRawChannelContainer#LArRawChannels")
219  if flags.Digitization.EnableTruth:
220  ItemList.append("CaloCalibrationHitContainer#*")
221  acc.merge(TruthDigitizationOutputCfg(flags))
222  acc.merge(OutputStreamCfg(flags, "RDO", ItemList))
223  return acc
224 
225 
226 def LArDigitizationBasicCfg(flags, **kwargs):
227  """Return ComponentAccumulator with LAr digitization configuration"""
228  acc = ComponentAccumulator()
229  if "PileUpTools" not in kwargs:
230  PileUpTools = acc.popToolsAndMerge(LArPileUpToolCfg(flags))
231  kwargs["PileUpTools"] = PileUpTools
232  acc.merge(PileUpToolsCfg(flags, **kwargs))
233 
234  acc.merge(LArHitEMapToDigitAlgCfg(flags))
235  if flags.LAr.ROD.NNRawChannelBuilding:
236  acc.merge(LArNNRawChannelBuilderCfg(flags))
237  else:
238  acc.merge(LArRawChannelBuilderAlgCfg(flags))
239 
240  if flags.Digitization.AddCaloDigiThinned:
241  acc.merge(LArDigitThinnerCfg(flags))
242  return acc
243 
244 
245 def LArDigitizationCfg(flags, **kwargs):
246  """Return ComponentAccumulator with LAr digitization and Output"""
247  acc = LArDigitizationBasicCfg(flags, **kwargs)
248  acc.merge(LArOutputCfg(flags))
249  return acc
250 
251 
252 def LArOverlayDigitizationBasicCfg(flags, name="digitmaker1", **kwargs):
253  """Return ComponentAccumulator with LAr Overlay digitization configuration"""
254  acc = ComponentAccumulator()
255 
256  if flags.Overlay.DataOverlay:
257  from LArByteStream.LArRawDataReadingConfig import LArRawDataReadingCfg
258  acc.merge(LArRawDataReadingCfg(flags))
259 
260  if "LArPileUpTool" not in kwargs:
261  kwargs["LArPileUpTool"] = acc.popToolsAndMerge(LArPileUpToolCfg(flags))
262 
263  if flags.Concurrency.NumThreads > 0:
264  kwargs.setdefault('Cardinality', flags.Concurrency.NumThreads)
265 
266  LArHitEMapMaker = CompFactory.LArHitEMapMaker
267  acc.addEventAlgo(LArHitEMapMaker(name, **kwargs))
268  acc.merge(LArHitEMapToDigitAlgCfg(flags))
269 
270  acc.merge(LArRawChannelBuilderAlgCfg(flags))
271  if flags.Digitization.AddCaloDigiThinned:
272  acc.merge(LArDigitThinnerCfg(flags))
273  return acc
274 
275 
276 def LArOverlayCfg(flags, **kwargs):
277  """Return ComponentAccumulator with LAr overlay and Output"""
278  acc = LArOverlayDigitizationBasicCfg(flags, **kwargs)
279  acc.merge(LArOutputCfg(flags))
280  return acc
281 
282 
283 def LArAutoCorrNoiseCondSCAlgCfg(flags, **kwargs):
284  acc = ComponentAccumulator()
285 
286  requiredConditions=["AutoCorrSC"]
287  from LArConfiguration.LArElecCalibDBConfig import LArElecCalibDBMCSCCfg
288  acc.merge(LArElecCalibDBMCSCCfg(flags,requiredConditions))
289  kwargs.setdefault("LArAutoCorrObjKey", "LArAutoCorrSC") # Provided by LArFlatConditionsAlg<LArAutoCorrSC>
290 
291  from LArCabling.LArCablingConfig import LArOnOffIdMappingSCCfg
292  acc.merge(LArOnOffIdMappingSCCfg(flags))
293  kwargs.setdefault("LArOnOffIdMappingObjKey", 'LArOnOffIdMapSC')
294  kwargs.setdefault("nSampl", flags.LAr.ROD.nSamples + 2) # See ATLASSIM-5483
295  kwargs.setdefault("isSuperCell", True)
296  kwargs.setdefault("LArAutoCorrNoiseObjKey", "LArAutoCorrNoiseSC") # output
297  acc.addCondAlgo(CompFactory.LArAutoCorrNoiseCondAlg(name="LArAutoCorrNoiseSCCondAlg", **kwargs))
298  return acc
299 
300 
301 def LArSCL1MakerCfg(flags, **kwargs):
302  """Return ComponentAccumulator for LArSCL1Maker"""
303  acc = ComponentAccumulator()
304  if flags.Common.isOverlay:
305  acc.merge(LArOverlayDigitizationBasicCfg(flags))
306  else:
307  acc.merge(LArDigitizationBasicCfg(flags))
308 
309  kwargs.setdefault("LArHitEMapKey", "StoreGateSvc+LArHitEMap") # Provided by LArPileUpTool
310 
311  from LArRecUtils.LArADC2MeVSCCondAlgConfig import LArADC2MeVSCCondAlgCfg
312  acc.merge(LArADC2MeVSCCondAlgCfg(flags))
313  kwargs.setdefault("LArADC2MeVKey", "ConditionStore+LArADC2MeVSC") # Provided by LArADC2MeVSCCondAlg
314 
315  from LArCabling.LArCablingConfig import LArOnOffIdMappingSCCfg
316  acc.merge(LArOnOffIdMappingSCCfg(flags))
317  # '<prefix>/LAR/IdentifierOfl/OnOffIdMap_SC</prefix> <tag>LARIdentifierOflOnOffIdMap_SC-000</tag>' Do we need to add this override in the IOVDbSvc or just add the conditions properly in the Run3 conditions global tag???
318  kwargs.setdefault("ScCablingKey", "ConditionStore+LArOnOffIdMapSC") # Provided by LArOnOffMappingAlgSC
319 
320  requiredConditions=["fSamplSC","ShapeSC","PedestalSC","NoiseSC"]
321  from LArConfiguration.LArElecCalibDBConfig import LArElecCalibDBMCSCCfg
322  acc.merge(LArElecCalibDBMCSCCfg(flags,requiredConditions))
323  kwargs.setdefault("FracSKey", "ConditionStore+LArfSamplSC") # Provided by LArFlatConditionsAlg<LArfSamplSC>
324  kwargs.setdefault("ShapeKey", "ConditionStore+LArShapeSC") # Provided by LArFlatConditionsAlg<LArShapeSC>
325  kwargs.setdefault("PedestalKey", "ConditionStore+LArPedestalSC") # Provided by LArFlatConditionsAlg<LArPedestalSC>
326  kwargs.setdefault("LArNoiseKey", "ConditionStore+LArNoiseSC") # Provided by LArFlatConditionsAlg<LArNoiseSC>
327 
328  acc.merge(LArAutoCorrNoiseCondSCAlgCfg(flags))
329  kwargs.setdefault("LArAutoCorrKey", "ConditionStore+LArAutoCorrNoiseSC") # Provided by LArAutoCorrNoiseCondAlg/LArAutoCorrNoiseSCCondAlg
330  kwargs.setdefault("NSamples", flags.LAr.ROD.nSamples + 2) # For consistency with LArAutoCorrNoiseSC - see ATLASSIM-5483
331  from RngComps.RngCompsConfig import AthRNGSvcCfg
332  kwargs.setdefault("RndmSvc",
333  acc.getPrimaryAndMerge(AthRNGSvcCfg(flags)).name)
334  if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
335  kwargs.setdefault("SCL1ContainerName", f"{flags.Overlay.BkgPrefix}LArDigitSCL2") # Output - why L2??
336  if flags.Common.isOverlay:
337  kwargs.setdefault("BkgDigitKey", f"{flags.Overlay.BkgPrefix}LArDigitSCL2")
338 
339  from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
340  acc.merge(SGInputLoaderCfg(flags, [f'LArDigitContainer#{kwargs["BkgDigitKey"]}']))
341  kwargs.setdefault("SCL1ContainerName","LArDigitSCL2") # Output - why L2??
342  acc.addEventAlgo(CompFactory.LArSCL1Maker(**kwargs))
343  return acc
344 
345 
346 def LArTriggerDigitizationBasicCfg(flags, **kwargs):
347  """Return ComponentAccumulator for LAr Trigger Tower"""
348  acc = LArDigitizationBasicCfg(flags)
349  acc.merge(CaloTriggerTowerCfg(flags))
350 
351  kwargs.setdefault("NoiseOnOff", flags.Digitization.DoCaloNoise)
352  kwargs.setdefault("RandomSeedOffset", flags.Digitization.RandomSeedOffset)
353  kwargs.setdefault("PileUp", flags.Digitization.PileUp)
354  if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
355  kwargs.setdefault("EmTTL1ContainerName", flags.Overlay.BkgPrefix + "LArTTL1EM")
356  kwargs.setdefault("HadTTL1ContainerName", flags.Overlay.BkgPrefix + "LArTTL1HAD")
357  acc.addEventAlgo(CompFactory.LArTTL1Maker(**kwargs))
358  if flags.GeoModel.Run >= LHCPeriod.Run3:
359  acc.merge(LArSCL1MakerCfg(flags))
360  if flags.Common.ProductionStep is not ProductionStep.PileUpPresampling:
361  from LArROD.LArSuperCellBuilderConfig import LArSuperCellBuilderAlgCfg, LArSuperCellBCIDAlgCfg
362  acc.merge(LArSuperCellBuilderAlgCfg(flags))
363  acc.merge(LArSuperCellBCIDAlgCfg(flags))
364  return acc
365 
366 
367 def LArTriggerDigitizationCfg(flags, **kwargs):
368  """Return ComponentAccumulator for LAr Trigger Tower and Output"""
369  acc = LArTriggerDigitizationBasicCfg(flags)
370  acc.merge(LArOutputCfg(flags))
371  acc.merge(OutputStreamCfg(flags, "RDO", ["LArTTL1Container#*"]))
372  if flags.GeoModel.Run >= LHCPeriod.Run3:
373  if flags.Common.ProductionStep == ProductionStep.PileUpPresampling:
374  acc.merge(OutputStreamCfg(flags, "RDO", ["LArDigitContainer#" + flags.Overlay.BkgPrefix + "LArDigitSCL2"]))
375  else:
376  acc.merge(OutputStreamCfg(flags, "RDO", ["CaloCellContainer#SCell"]))
377  return acc
378 
379 
381  """Return ComponentAccumulator with LAr Overlay Trigger Tower"""
382  acc = LArOverlayDigitizationBasicCfg(flags)
383  acc.merge(CaloTriggerTowerCfg(flags))
384 
385  kwargs.setdefault("NoiseOnOff", flags.Digitization.DoCaloNoise)
386  kwargs.setdefault("RandomSeedOffset", flags.Digitization.RandomSeedOffset)
387  kwargs.setdefault("PileUp", True)
388  kwargs.setdefault("EmTTL1ContainerName", flags.Overlay.SigPrefix + "LArTTL1EM")
389  kwargs.setdefault("HadTTL1ContainerName", flags.Overlay.SigPrefix + "LArTTL1HAD")
390 
391  if flags.Concurrency.NumThreads > 0:
392  kwargs.setdefault('Cardinality', flags.Concurrency.NumThreads)
393 
394  acc.addEventAlgo(CompFactory.LArTTL1Maker(**kwargs))
395  return acc
396 
397 
398 def LArSuperCellOverlayCfg(flags, **kwargs):
399  acc = LArSCL1MakerCfg(flags)
400  from LArROD.LArSuperCellBuilderConfig import LArSuperCellBuilderAlgCfg, LArSuperCellBCIDAlgCfg
401  acc.merge(LArSuperCellBuilderAlgCfg(flags))
402  acc.merge(LArSuperCellBCIDAlgCfg(flags))
403  acc.merge(OutputStreamCfg(flags, "RDO", ["CaloCellContainer#SCell"]))
404  return acc
python.CaloConditionsConfig.CaloTriggerTowerCfg
def CaloTriggerTowerCfg(flags)
Definition: CaloConditionsConfig.py:8
python.LArElecCalibDBConfig.LArElecCalibDBCfg
def LArElecCalibDBCfg(flags, condObjs)
Definition: LArElecCalibDBConfig.py:47
python.LArADC2MeVSCCondAlgConfig.LArADC2MeVSCCondAlgCfg
def LArADC2MeVSCCondAlgCfg(flags)
Definition: LArADC2MeVSCCondAlgConfig.py:6
python.LArDigitizationConfig.LArOverlayCfg
def LArOverlayCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:276
python.LArElecCalibDBConfig.LArElecCalibDBMCSCCfg
def LArElecCalibDBMCSCCfg(flags, folders, detdb="LAR_OFL")
Definition: LArElecCalibDBConfig.py:241
LArCablingConfig.LArOnOffIdMappingSCCfg
def LArOnOffIdMappingSCCfg(configFlags)
Definition: LArCablingConfig.py:65
LArPileUpTool
Definition: LArPileUpTool.h:61
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=[], MetadataItemList=[], disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, AcceptAlgs=[], HelperTools=[])
Definition: OutputStreamConfig.py:12
python.LArDigitizationConfig.LArRangeFCALCfg
def LArRangeFCALCfg(flags, name="LArRangeFCAL", **kwargs)
Definition: LArDigitizationConfig.py:66
python.LArDigitizationConfig.LArRangeHECCfg
def LArRangeHECCfg(flags, name="LArRangeHEC", **kwargs)
Definition: LArDigitizationConfig.py:54
python.TruthDigitizationOutputConfig.TruthDigitizationOutputCfg
def TruthDigitizationOutputCfg(flags)
Definition: TruthDigitizationOutputConfig.py:9
python.LArADC2MeVCondAlgConfig.LArADC2MeVCondAlgCfg
def LArADC2MeVCondAlgCfg(flags)
Definition: LArADC2MeVCondAlgConfig.py:6
python.LArSuperCellBuilderConfig.LArSuperCellBCIDAlgCfg
def LArSuperCellBCIDAlgCfg(flags, name="LArSuperCellBCIDAlgDefault", **kwargs)
Definition: LArSuperCellBuilderConfig.py:37
python.LArBadChannelConfig.LArBadChannelCfg
def LArBadChannelCfg(configFlags, tag=None, isSC=False)
Definition: LArBadChannelConfig.py:8
python.LArRawChannelBuilderAlgConfig.LArRawChannelBuilderAlgCfg
def LArRawChannelBuilderAlgCfg(flags, **kwargs)
Definition: LArRawChannelBuilderAlgConfig.py:9
python.LArDigitizationConfig.LArDigitizationBasicCfg
def LArDigitizationBasicCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:226
python.LArDigitizationConfig.LArAutoCorrNoiseCondSCAlgCfg
def LArAutoCorrNoiseCondSCAlgCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:283
python.LArNNChannelBuilder.LArNNRawChannelBuilderCfg
def LArNNRawChannelBuilderCfg(configFlags, name="LArNNRawChannelBuilder", **kwargs)
Definition: LArNNChannelBuilder.py:11
python.LArBadChannelConfig.LArBadFebCfg
def LArBadFebCfg(configFlags, tag=None)
Definition: LArBadChannelConfig.py:45
python.LArDigitThinnerConfig.LArDigitThinnerCfg
def LArDigitThinnerCfg(flags, **kwargs)
Definition: LArDigitThinnerConfig.py:12
python.LArSuperCellBuilderConfig.LArSuperCellBuilderAlgCfg
def LArSuperCellBuilderAlgCfg(flags, **kwargs)
Definition: LArSuperCellBuilderConfig.py:7
AddressRemappingConfig.InputOverwriteCfg
def InputOverwriteCfg(from_type, from_name, to_type, to_name)
Definition: AddressRemappingConfig.py:50
SGInputLoaderConfig.SGInputLoaderCfg
def SGInputLoaderCfg(flags, Load=None, **kwargs)
Definition: SGInputLoaderConfig.py:7
LArHitEMapToDigitAlg
Definition: LArHitEMapToDigitAlg.h:60
python.LArDigitizationConfig.LArHitEMapToDigitAlgCfg
def LArHitEMapToDigitAlgCfg(flags, name="LArHitEMapToDigitAlg", **kwargs)
Definition: LArDigitizationConfig.py:154
python.PileUpToolsConfig.PileUpToolsCfg
def PileUpToolsCfg(flags, **kwargs)
Definition: PileUpToolsConfig.py:14
python.LArDigitizationConfig.LArOverlayDigitizationBasicCfg
def LArOverlayDigitizationBasicCfg(flags, name="digitmaker1", **kwargs)
Definition: LArDigitizationConfig.py:252
python.LArDigitizationConfig.LArSuperCellOverlayCfg
def LArSuperCellOverlayCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:398
LArGMConfig.LArGMCfg
def LArGMCfg(flags)
Definition: LArGMConfig.py:8
python.LArDigitizationConfig.LArDigitizationCfg
def LArDigitizationCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:245
python.LArDigitizationConfig.LArTriggerDigitizationBasicCfg
def LArTriggerDigitizationBasicCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:346
python.LArRawDataReadingConfig.LArRawDataReadingCfg
def LArRawDataReadingCfg(configFlags, **kwargs)
Definition: LArRawDataReadingConfig.py:10
python.LArRecUtilsConfig.LArAutoCorrNoiseCondAlgCfg
def LArAutoCorrNoiseCondAlgCfg(flags, name="LArAutoCorrNoiseCondAlg", **kwargs)
Definition: LArRecUtilsConfig.py:20
LArHitEMapMaker
Definition: LArHitEMapMaker.h:15
python.LArDigitizationConfig.LArOverlayTriggerDigitizationBasicCfg
def LArOverlayTriggerDigitizationBasicCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:380
python.LArDigitizationConfig.LArOutputCfg
def LArOutputCfg(flags)
Definition: LArDigitizationConfig.py:206
python.LArDigitizationConfig.LArRangeEMCfg
def LArRangeEMCfg(flags, name="LArRangeEM", **kwargs)
Definition: LArDigitizationConfig.py:40
python.PileUpMergeSvcConfig.PileUpXingFolderCfg
def PileUpXingFolderCfg(flags, name="PileUpXingFolder", **kwargs)
Definition: PileUpMergeSvcConfig.py:35
python.PileUpMergeSvcConfig.PileUpMergeSvcCfg
def PileUpMergeSvcCfg(flags, name="PileUpMergeSvc", Intervals=[], **kwargs)
Definition: PileUpMergeSvcConfig.py:10
python.LArDigitizationConfig.LArTriggerDigitizationCfg
def LArTriggerDigitizationCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:367
python.LArDigitizationConfig.LArSCL1MakerCfg
def LArSCL1MakerCfg(flags, **kwargs)
Definition: LArDigitizationConfig.py:301
python.LArDigitizationConfig.useLArFloat
def useLArFloat(flags)
Definition: LArDigitizationConfig.py:28
python.LArDigitizationConfig.LArPileUpToolCfg
def LArPileUpToolCfg(flags, name="LArPileUpTool", **kwargs)
Definition: LArDigitizationConfig.py:78
python.LArXTalkWeightCondAlgConfig.LArXTalkWeightCondAlgCfg
def LArXTalkWeightCondAlgCfg(flags)
Definition: LArXTalkWeightCondAlgConfig.py:91
RngCompsConfig.AthRNGSvcCfg
def AthRNGSvcCfg(flags, name="AthRNGSvc")
Definition: RngCompsConfig.py:51