Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions | Variables
python.TriggerLists Namespace Reference

Functions

def jetTrig (flags)
 
def single_el_Trig (flags)
 
def multi_el_Trig (flags)
 
def single_mu_Trig (flags)
 
def multi_mu_Trig (flags)
 
def MET_Trig (flags)
 
def single_photon_Trig (flags)
 
def get_jetTrig (flags)
 

Variables

 log = logging.getLogger('DAODJetEtMissTriggerList')
 

Function Documentation

◆ get_jetTrig()

def python.TriggerLists.get_jetTrig (   flags)

Definition at line 90 of file TriggerLists.py.

90 def get_jetTrig(flags):
91 
92  trigger_list = jetTrig(flags)
93 
94  if flags.GeoModel.Run < LHCPeriod.Run3:
95  return trigger_list
96 
97  pattern = re.compile(r"HLT_\d*j\d+")
98  vetoes = ['PhysicsTLA', 'calratio', 'emergingPTF', 'dispjet', 'trackless', 'hitdvjet', 'bgn1', 'bgn2', 'bdl1', 'boffperf', 'xe', 'afprec', 'LArPEBHLT', 'TAU', 'XE', 'L1jLJ']
99 
100  # retrieve trigger list from input file metadata
101  # and add to trigger_list from trigAPI
102  metadata = GetFileMD(flags.Input.Files)
103  menu = metadata['TriggerMenu']
104  if not menu:
105  log.error("TriggerMenu could not be retrieved from file metadata.")
106  else:
107  HLTChainskey = 'HLTChains'
108  if HLTChainskey not in menu:
109  log.error("HLTChains could not be retrieved from file metadata.")
110  else:
111  md_hltchains = menu[HLTChainskey]
112  log.info(f"{len(md_hltchains)} HLT chains retrieved from file metadata")
113  trigger_list += md_hltchains
114 
115  filtered_j_chains = []
116  for chain in set(trigger_list):
117  if not pattern.match(chain): continue
118  if any(v in chain for v in vetoes): continue
119  filtered_j_chains.append(chain)
120 
121  return filtered_j_chains

◆ jetTrig()

def python.TriggerLists.jetTrig (   flags)

Definition at line 12 of file TriggerLists.py.

12 def jetTrig(flags):
13  period2015tofuture = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future
14  period2017tofuture = TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future
15  TriggerAPI.setConfigFlags(flags)
16  API_jetTrig = TriggerAPI.getActive(period2015tofuture, TriggerType.j_single)
17  # Large-radius multijet triggers
18  API_jetTrig += TriggerAPI.getActive(period2017tofuture,TriggerType.j_multi,matchPattern=".*_a10t_.*")
19  # Eta-intercalibration triggers (one central, one forward jet)
20  API_jetTrig += TriggerAPI.getActive(period2015tofuture,TriggerType.j_multi,matchPattern="HLT_j.*_320eta490")
21  return API_jetTrig
22 
23 # electron triggers (unprescaled)

◆ MET_Trig()

def python.TriggerLists.MET_Trig (   flags)

Definition at line 60 of file TriggerLists.py.

60 def MET_Trig(flags):
61  if flags.Trigger.EDMVersion <= 2:
62  TriggerAPI.setConfigFlags(flags)
63  allperiods = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future2e34
64  trigger_names = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.xe, livefraction=0.8)
65  else:
66  session = getTapisSession(flags)
67  lf = 0.8 # Prescale weighted life fraction of the GRL's LBs
68  trigger_names = set()
69  trigger_names = list(session.getLowestUnprescaled(triggerType=TriggerType.xe, livefraction=lf).union(trigger_names))
70  return trigger_names
71 
72 # photon triggers (prescaled and unprescaled)

◆ multi_el_Trig()

def python.TriggerLists.multi_el_Trig (   flags)

Definition at line 36 of file TriggerLists.py.

36 def multi_el_Trig(flags):
37  TriggerAPI.setConfigFlags(flags)
38  API_multiElTriggers = TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2015, TriggerType.el_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2016, TriggerType.el_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2017, TriggerType.el_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2018, TriggerType.el_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.future, TriggerType.el_multi)
39  return API_multiElTriggers
40 
41 # single muon triggers (unprescaled)

◆ multi_mu_Trig()

def python.TriggerLists.multi_mu_Trig (   flags)

Definition at line 54 of file TriggerLists.py.

54 def multi_mu_Trig(flags):
55  TriggerAPI.setConfigFlags(flags)
56  API_multiMuTriggers = TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2015, TriggerType.mu_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2016, TriggerType.mu_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2017, TriggerType.mu_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.y2018, TriggerType.mu_multi) + TriggerAPI.getLowestUnprescaled(TriggerPeriod.future, TriggerType.mu_multi)
57  return API_multiMuTriggers
58 
59 # xe triggers (unprescaled)

◆ single_el_Trig()

def python.TriggerLists.single_el_Trig (   flags)

Definition at line 24 of file TriggerLists.py.

24 def single_el_Trig(flags):
25  if flags.Trigger.EDMVersion <= 2:
26  TriggerAPI.setConfigFlags(flags)
27  allperiods = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future2e34
28  trigger_names = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.el, livefraction=0.8)
29  else:
30  session = getTapisSession(flags)
31  lf = 0.8 # Prescale weighted life fraction of the GRL's LBs
32  trigger_names = set()
33  trigger_names = list(session.getLowestUnprescaled(triggerType=TriggerType.el, livefraction=lf).union(trigger_names))
34  return trigger_names
35 

◆ single_mu_Trig()

def python.TriggerLists.single_mu_Trig (   flags)

Definition at line 42 of file TriggerLists.py.

42 def single_mu_Trig(flags):
43  if flags.Trigger.EDMVersion <= 2:
44  TriggerAPI.setConfigFlags(flags)
45  allperiods = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future2e34
46  trigger_names = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.mu, livefraction=0.8)
47  else:
48  session = getTapisSession(flags)
49  lf = 0.8 # Prescale weighted life fraction of the GRL's LBs
50  trigger_names = set()
51  trigger_names = list(session.getLowestUnprescaled(triggerType=TriggerType.mu, livefraction=lf).union(trigger_names))
52  return trigger_names
53 

◆ single_photon_Trig()

def python.TriggerLists.single_photon_Trig (   flags)

Definition at line 73 of file TriggerLists.py.

73 def single_photon_Trig(flags):
74  if flags.Trigger.EDMVersion <= 2:
75  TriggerAPI.setConfigFlags(flags)
76  allperiods = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future2e34
77  trigger_names = TriggerAPI.getActive(allperiods, triggerType=TriggerType.g, livefraction=0.8)
78  else:
79  session = getTapisSession(flags)
80  lf = 0.8 # Prescale weighted life fraction of the GRL's LBs
81  trigger_names = set()
82  trigger_names = list(session.getLowestUnprescaled(triggerType=TriggerType.g, livefraction=lf).union(trigger_names))
83  return trigger_names
84 
85 # get jet triggers
86 # Run 2: returns list returned by trigAPI
87 # Run 3: TrigAPI doesn't return complete list. Adds additional jet triggers from file metadata
88 # and filters out unnecessary chains - ATLJETMET-1717.
89 # Use this function until trigAPI works for Run 3.

Variable Documentation

◆ log

python.TriggerLists.log = logging.getLogger('DAODJetEtMissTriggerList')

Definition at line 9 of file TriggerLists.py.

python.AutoConfigFlags.GetFileMD
def GetFileMD(filenames, allowEmpty=True, maxLevel='peeker')
Definition: AutoConfigFlags.py:65
python.TriggerLists.MET_Trig
def MET_Trig(flags)
Definition: TriggerLists.py:60
python.TriggerLists.single_photon_Trig
def single_photon_Trig(flags)
Definition: TriggerLists.py:73
python.TriggerLists.single_mu_Trig
def single_mu_Trig(flags)
Definition: TriggerLists.py:42
python.TriggerLists.multi_el_Trig
def multi_el_Trig(flags)
Definition: TriggerLists.py:36
python.TriggerLists.jetTrig
def jetTrig(flags)
Definition: TriggerLists.py:12
python.TriggerLists.single_el_Trig
def single_el_Trig(flags)
Definition: TriggerLists.py:24
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
python.TriggerLists.get_jetTrig
def get_jetTrig(flags)
Definition: TriggerLists.py:90
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
python.TriggerLists.multi_mu_Trig
def multi_mu_Trig(flags)
Definition: TriggerLists.py:54
python.TriggerListsHelper.getTapisSession
def getTapisSession(flags)
Definition: TriggerListsHelper.py:32