ATLAS Offline Software
Loading...
Searching...
No Matches
EmulationConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3def emulateSC_Cfg(flags, CellsIn="SeedLessFS",CellsOut=""):
4
5 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory import CompFactory
7 acc = ComponentAccumulator()
8 if flags.Input.isMC:
9 from LArCabling.LArCablingConfig import LArFebRodMappingCfg
10 acc.merge(LArFebRodMappingCfg(flags))
11
12 from TrigCaloRec.TrigCaloRecConfig import hltCaloCellSeedlessMakerCfg
13 acc.merge(hltCaloCellSeedlessMakerCfg(flags, roisKey = ""))
14
15
16 #Use SCEmulation tool that randomly samples time histograms to estimate time for low energy and negative cells forming a supercell
17 acc.addEventAlgo(CompFactory.LVL1.SCEmulation(InputCells=CellsIn, OutputSuperCells = "EmulatedSCellNoBCID"))
18
19 from LArROD.LArSCSimpleMakerConfig import LArSuperCellBCIDEmAlgCfg
20
21 larSCargs = {}
22 larSCargs["SCellContainerIn"] = "EmulatedSCellNoBCID"
23 if (CellsOut==""):
24 larSCargs["SCellContainerOut"] = flags.Trigger.L1.L1CaloSuperCellContainerName
25 else :
26 larSCargs["SCellContainerOut"] = CellsOut
27
28 # Apply the pedestal correction
29 acc.merge(LArSuperCellBCIDEmAlgCfg(flags, **larSCargs))
30
31 # Given this function emulates supercells, we should also configure the supercell alignment Cond alg
32 acc.addCondAlgo(CompFactory.CaloSuperCellAlignCondAlg())
33
34 return acc
emulateSC_Cfg(flags, CellsIn="SeedLessFS", CellsOut="")