ATLAS Offline Software
Loading...
Searching...
No Matches
EnhancedBiasChainConfiguration.py
Go to the documentation of this file.
1# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentFactory import CompFactory
4from TriggerMenuMT.HLT.Config.ChainConfigurationBase import ChainConfigurationBase
5from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequence, SelectionCA, InEventRecoCA
6
7from AthenaCommon.Logging import logging
8logging.getLogger().info("Importing %s",__name__)
9log = logging.getLogger(__name__)
10
11# Low threshold prescaled L1 items - slected at HLT based on TBP bit from L1 in random-seeded events
12# High(er) threshold prescaled L1 items - slected at HLT based on TBP bit from L1 in random-seeded events
13l1seeds = { 'low' : \
14 ['L1_2eEM9',\
15 'L1_eEM12L',\
16 "L1_eTAU20",\
17 'L1_jJ40p30ETA49',\
18 'L1_JPSI-1M5-eEM15',\
19 'L1_jJ60',\
20 'L1_JPSI-1M5-eEM9',\
21 'L1_MU8F',\
22 'L1_ZeroBias',\
23 ],\
24 'medium' : \
25 [
26 'L1_2eEM18',\
27 'L1_2MU3V',\
28 'L1_MU5VF_3MU3V',\
29 'L1_BTAG-MU5VFjJ20_2jJ40p0ETA25_jJ50p0ETA25',\
30 'L1_BPH-0M9-eEM9-eEM7_MU5VF',\
31 'L1_BPH-2M9-2DR15-2MU5VF',\
32 'L1_BPH-2M9-0DR15-C-MU5VFMU3V',\
33 'L1_BPH-7M11-25DR99-2MU3VF',\
34 'L1_BPH-8M15-0DR22-2MU5VF',\
35 'L1_BPH-8M15-0DR22-MU5VFMU3V-BO',\
36 'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20',\
37 'L1_DY-BOX-2MU5VF',\
38 'L1_DY-BOX-2MU3VF',\
39 'L1_eEM18L',\
40 'L1_eEM24L',\
41 'L1_gXEJWOJ100',\
42 'L1_jJ60p30ETA49',\
43 'L1_jJ80p0ETA25_2jJ40p30ETA49',\
44 'L1_jJ90',\
45 'L1_jJ90_DETA20-jJ90J',\
46 'L1_LFV-MU5VF',\
47 'L1_MU5VF_jJ80',\
48 'L1_eTAU60',\
49 'L1_jXE70',
50 'L1_3jJ40p0ETA25',
51 'L1_2cTAU50M_DPHI-2eTAU50',
52 'L1_ADVAEL',
53 #'L1_gXENC100',
54 'L1_cXE100',
55 'L1_ADBDTL',
56 'L1_ARTEMISL',
57 ]
58}
59
60
62 inputMakerAlg = CompFactory.InputMakerForRoI("IM_enhancedBias")
63 inputMakerAlg.RoITool = CompFactory.ViewCreatorInitialROITool()
64 inputMakerAlg.RoIs="enhancedBiasInputRoIs"
65
66 reco = InEventRecoCA("EnhancedBiasReco", inputMaker=inputMakerAlg)
67
68 return reco
69
70
71def EnhancedBiasHypoToolGen(flags, chainDict):
72 tool = CompFactory.L1InfoHypoTool(chainDict['chainName'],
73 CTPUnpackingTool = CompFactory.CTPUnpackingTool(UseTBPBits = True))
74
75 key = chainDict['chainParts'][0]['algType']
76 if key not in l1seeds:
77 log.error("No configuration exist for EB chain: %s", key)
78 else:
79 tool.L1ItemNames = l1seeds[key]
80
81 return tool
82
83
85
86 reco = enhancedBiasReco(flags)
87 selAcc = SelectionCA("enhancedBiasSequence")
88 selAcc.mergeReco(reco)
89 selAcc.addHypoAlgo(CompFactory.L1InfoHypo("EnhancedBiasHypo"))
90
91 return MenuSequence(flags,
92 selAcc,
93 HypoToolGen = EnhancedBiasHypoToolGen)
94
95
96class EnhancedBiasChainConfiguration(ChainConfigurationBase):
97 def __init__(self, chainDict):
98 ChainConfigurationBase.__init__(self, chainDict)
99
100
101 def assembleChainImpl(self, flags):
102 chainSteps = []
103 log.debug("Assembling chain for %s", self.chainName)
104
105 chainSteps.append( self.getStep(flags, "EnhancedBias", [enhancedBiasMenuSequenceGenCfg]) )
106
107 return self.buildChain(chainSteps)