Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Lvl1SimulationConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2 
3 
6 
7 
8 def Lvl1SimulationCfg(flags, seqName = None):
9  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
10  from AthenaCommon.CFElements import parOR
11  if seqName:
12  acc = ComponentAccumulator(sequence=parOR(seqName))
13  else:
14  acc = ComponentAccumulator()
15 
16  from AthenaCommon.CFElements import seqAND
17  acc.addSequence(seqAND('L1SimSeq'))
18 
19  if flags.Trigger.enableL1CaloLegacy:
20  acc.addSequence(seqAND('L1CaloLegacySimSeq'), parentName='L1SimSeq')
21  from TrigT1CaloSim.TrigT1CaloSimRun2Config import L1CaloLegacySimCfg
22  acc.merge(L1CaloLegacySimCfg(flags), sequenceName='L1CaloLegacySimSeq')
23 
24  acc.addSequence(seqAND('L1CaloSimSeq'), parentName='L1SimSeq')
25 
26  if flags.Trigger.enableL1CaloPhase1:
27  from L1CaloFEXSim.L1CaloFEXSimCfg import L1CaloFEXSimCfg
28  acc.merge(L1CaloFEXSimCfg(flags), sequenceName = 'L1CaloSimSeq')
29 
30  if flags.Trigger.enableL0Muon:
31  acc.addSequence(seqAND('L0MuonSimSeq'), parentName='L1SimSeq')
32  from TriggerJobOpts.L0MuonSimulationConfig import L0MuonSimulationCfg
33  acc.merge(L0MuonSimulationCfg(flags), sequenceName='L0MuonSimSeq')
34  elif flags.Trigger.enableL1MuonPhase1:
35  acc.addSequence(seqAND('L1MuonSimSeq'), parentName='L1SimSeq')
36  from TriggerJobOpts.Lvl1MuonSimulationConfig import Lvl1MuonSimulationCfg
37  acc.merge(Lvl1MuonSimulationCfg(flags), sequenceName='L1MuonSimSeq')
38 
39  if flags.Trigger.L1.doTopo:
40  acc.addSequence(seqAND('L1TopoSimSeq'), parentName='L1SimSeq')
41  from L1TopoSimulation.L1TopoSimulationConfig import L1TopoSimulationCfg
42  acc.merge(L1TopoSimulationCfg(flags), sequenceName='L1TopoSimSeq')
43 
44  if flags.Trigger.L1.doGlobal:
45  globalSimSeqName = 'L0GlobalSimSeq'
46  acc.addSequence(parOR(globalSimSeqName), parentName='L1SimSeq')
47  from GlobalSimulation.GlobalL1TopoSimulation import GlobalL1TopoSimulationCfg
48  acc.merge(GlobalL1TopoSimulationCfg(flags), sequenceName=globalSimSeqName)
49 
50  if flags.Trigger.doZDC:
51  acc.addSequence(seqAND('L1ZDCSimSeq'),parentName='L1SimSeq')
52  from TrigT1ZDC.TrigT1ZDCConfig import L1ZDCSimCfg
53  acc.merge(L1ZDCSimCfg(flags), sequenceName = 'L1ZDCSimSeq')
54 
55  if flags.Trigger.doTRT:
56  acc.addSequence(seqAND('L1TRTSimSeq'),parentName='L1SimSeq')
57  from TrigT1TRT.TrigT1TRTConfig import L1TRTSimCfg
58  acc.merge(L1TRTSimCfg(flags), sequenceName = 'L1TRTSimSeq')
59 
60 
61  acc.addSequence(seqAND('L1CTPSimSeq'), parentName='L1SimSeq')
62  from TrigT1CTP.CTPSimulationConfig import CTPSimulationCfg
63  acc.merge(CTPSimulationCfg(flags), sequenceName="L1CTPSimSeq")
64 
65 
66  return acc
67 
68 if __name__ == '__main__':
69  import sys
70  from AthenaConfiguration.AllConfigFlags import initConfigFlags
71 
72  # The HLS code will trip an assertion is this doesn't exist...
73  import os
74  os.makedirs ('tb_data', exist_ok = True)
75 
76  flags = initConfigFlags()
77  flags.Input.Files = ['/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TriggerTest/valid1.601229.PhPy8EG_A14_ttbar_hdamp258p75_SingleLep.recon.RDO.e8514_e8528_s4159_s4114_r14799_tid34171421_00/RDO.34171421._000011.pool.root.1']
78  flags.Exec.MaxEvents = 5
79  flags.Concurrency.NumThreads = 1
80  flags.Trigger.triggerMenuSetup = 'Dev_pp_run3_v1'
81  flags.IOVDb.GlobalTag="OFLCOND-MC23-SDR-RUN3-05" # temporary override until the input RDO is updated to a MC23e setup
82  flags.Trigger.doHLT = True # this is necessary so that the simulation of L1Calo (if running on MC) gets output with keys that Topo sim expects
83  flags.fillFromArgs()
84  flags.lock()
85 
86  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
87  acc = MainServicesCfg(flags)
88 
89  from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
90  acc.merge(PoolReadCfg(flags))
91 
92  from TrigConfigSvc.TrigConfigSvcCfg import generateL1Menu
93  generateL1Menu(flags)
94 
95  acc.merge(Lvl1SimulationCfg(flags))
96 
97  acc.printConfig(withDetails=True, summariseProps=True, printDefaults=True)
98  sys.exit(acc.run().isFailure())
TrigT1ZDCConfig.L1ZDCSimCfg
def L1ZDCSimCfg(flags)
this function sets up the L1 simulation sequence with the ZDC it covers the case of rerunning the L1 ...
Definition: TrigT1ZDCConfig.py:6
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
L1TopoSimulationConfig.L1TopoSimulationCfg
def L1TopoSimulationCfg(flags, doMonitoring=True, readMuCTPI=False, name="L1TopoSimulation")
Definition: L1TopoSimulationConfig.py:46
python.Lvl1SimulationConfig.Lvl1SimulationCfg
def Lvl1SimulationCfg(flags, seqName=None)
this function sets up the top L1 simulation sequence
Definition: Lvl1SimulationConfig.py:8
python.TrigConfigSvcCfg.generateL1Menu
def generateL1Menu(flags)
Definition: TrigConfigSvcCfg.py:189
python.L0MuonSimulationConfig.L0MuonSimulationCfg
def L0MuonSimulationCfg(flags)
Definition: L0MuonSimulationConfig.py:291
python.CFElements.seqAND
def seqAND(name, subs=[])
Definition: CFElements.py:25
TrigT1CaloSimRun2Config.L1CaloLegacySimCfg
def L1CaloLegacySimCfg(flags)
Definition: TrigT1CaloSimRun2Config.py:74
python.JetAnalysisCommon.parOR
parOR
Definition: JetAnalysisCommon.py:271
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:260
TrigT1TRTConfig.L1TRTSimCfg
def L1TRTSimCfg(flags, name="TrigT1TRT")
Definition: TrigT1TRTConfig.py:7
python.Lvl1MuonSimulationConfig.Lvl1MuonSimulationCfg
def Lvl1MuonSimulationCfg(flags)
Definition: Lvl1MuonSimulationConfig.py:394
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
python.CTPSimulationConfig.CTPSimulationCfg
def CTPSimulationCfg(flags)
Definition: CTPSimulationConfig.py:6
python.PoolReadConfig.PoolReadCfg
def PoolReadCfg(flags)
Definition: PoolReadConfig.py:69
L1CaloFEXSimCfg
Definition: L1CaloFEXSimCfg.py:1
GlobalL1TopoSimulation.GlobalL1TopoSimulationCfg
def GlobalL1TopoSimulationCfg(flags, algLogLevel=None)
Definition: GlobalL1TopoSimulation.py:18