ATLAS Offline Software
Loading...
Searching...
No Matches
TrigEgammaMonitCategory.py
Go to the documentation of this file.
1# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3# Categories currently used by offline Egamma TO monitoringMT tool
4# Mechanism to read mongroups directly from trigger menu
5
6from AthenaMonitoring.DQConfigFlags import DQDataType
7
8
9def mongroupsCfg(moniAccess, data_type):
10
11 shifter_eg = moniAccess.monitoredChains(signatures="egammaMon", monLevels=["shifter"])
12 shifter_tp = moniAccess.monitoredChains(signatures="egammaMon", monLevels=["shifter_tp"])
13 shifter_topo = moniAccess.monitoredChains(signatures="egammaMon", monLevels=["shifter_topo"])
14
15 monitoring_electron = list(filter(lambda x: ('HLT_e' in x and 'L1eEM28' not in x), shifter_eg)) # etcut chains
16 monitoring_tags = []
17 monitoringTP_electron = list(filter(lambda x: ('L1eEM28' not in x), shifter_tp))
18
19 monitoringTP_tag = [
20 'HLT_2e17_lhvloose_L12eEM18M',
21 'HLT_2e24_lhvloose_L12eEM24L',
22 ]
23
24 monitoringTP_zrad = [
25 'HLT_2e17_lhvloose_g22_tight_probe_L12eEM18M',
26 'HLT_2e17_lhvloose_g25_medium_probe_L12eEM18M',
27 'HLT_2e17_lhvloose_g50_loose_probe_L12eEM18M',
28 'HLT_2e17_lhvloose_g35_medium_probe_L12eEM18M',
29 'HLT_2e24_lhvloose_g22_tight_probe_L12eEM24L',
30 'HLT_2e24_lhvloose_g25_medium_probe_L12eEM24L',
31 'HLT_2e24_lhvloose_g50_loose_probe_L12eEM24L',
32 'HLT_2e24_lhvloose_g35_medium_probe_L12eEM24L',
33 ]
34
35 monitoringTP_Matching = {
36 'HLT_2e17_lhvloose_L12eEM18M': [
37 'HLT_2e17_lhvloose_g22_tight_probe_L12eEM18M',
38 'HLT_2e17_lhvloose_g25_medium_probe_L12eEM18M',
39 'HLT_2e17_lhvloose_g35_medium_probe_L12eEM18M',
40 'HLT_2e17_lhvloose_g50_loose_probe_L12eEM18M'
41 ],
42
43 'HLT_2e24_lhvloose_L12eEM24L': [
44 'HLT_2e24_lhvloose_g22_tight_probe_L12eEM24L',
45 'HLT_2e24_lhvloose_g25_medium_probe_L12eEM24L',
46 'HLT_2e24_lhvloose_g35_medium_probe_L12eEM24L',
47 'HLT_2e24_lhvloose_g50_loose_probe_L12eEM24L'
48 ]
49 }
50
51 monitoring_photon = list(filter(lambda x: ('HLT_g' in x and 'noringer' not in x), shifter_eg))
52
53 monitoring_bootstrap = {
54 'HLT_g22_tight_L1eEM18M' : 'HLT_g20_tight_L1eEM18M',
55 'HLT_g25_medium_L1eEM24L' : 'HLT_g25_loose_L1eEM24L',
56 'HLT_g35_medium_L1eEM24L' : 'HLT_g25_loose_L1eEM24L',
57 'HLT_g50_loose_L1eEM24L' : 'HLT_g25_loose_L1eEM24L',
58 'HLT_g35_medium_noringer_L1eEM24L' : 'HLT_g25_loose_noringer_L1eEM24L',
59 }
60
61 t0_tp = moniAccess.monitoredChains(signatures="egammaMon", monLevels=["t0_tp"])
62
63 validationTP_electron_DNN = list(filter(lambda x: ('_dnn' in x), t0_tp ))
64 validation_electron = ['HLT_e25_etcut_L1eEM18M','HLT_e60_etcut_L1eEM26M']
65 validation_jpsi = list(filter(lambda x: ('_L1JPSI' in x), shifter_topo ))
66 validationTP_jpsiee = ['HLT_e10_lhvloose_L1eEM9']
67
68 monitoring_topo = []
69 mongroups = {
70 'monitoring_electron' : monitoring_electron,
71 'monitoring_photon' : monitoring_photon ,
72 'monitoring_bootstrap' : monitoring_bootstrap,
73 'monitoringTP_electron' : monitoringTP_electron,
74 'monitoringTP_tag' : monitoringTP_tag,
75 'monitoringTP_probe' : monitoringTP_zrad,
76 'monitoringTP_Matching' : monitoringTP_Matching,
77 'monitoring_tags' : monitoring_tags,
78 'monitoring_topo' : monitoring_topo,
79 }
80
81 if data_type is DQDataType.MC:
82
83 mongroups['validation_electron'] = validation_electron
84 mongroups['validation_photon'] = monitoring_photon
85 mongroups['validation_jpsi'] = validation_jpsi
86 mongroups['validationTP_jpsiee'] = validationTP_jpsiee
87 mongroups['validationTP_electron_DNN'] = validationTP_electron_DNN
88
89 elif data_type is DQDataType.Cosmics:
90 monitoring_electron_cosmic=['HLT_e5_etcut_L1eEM5']
91 monitoring_photon_cosmic=['HLT_g3_etcut_LArPEB_L1eEM5']
92 monitoring_bootstrap_cosmic = {'HLT_g3_etcut_LArPEB_L1eEM5' : 'HLT_g3_etcut_LArPEB_L1eEM5'}
93
94 mongroups['monitoring_electron_cosmic'] = monitoring_electron_cosmic
95 mongroups['monitoring_photon_cosmic'] = monitoring_photon_cosmic
96 mongroups['monitoring_bootstrap_cosmic'] = monitoring_bootstrap_cosmic
97
98 return mongroups
99
100# Topolological chains - monitoring configuration
101topo_config = {
102 'Zee' : {'mass':(50 , 130) , 'dphi':(1.5, 5) },
103 'Jpsiee': {'mass':( 1 , 5) , 'dphi':(1.5, 5) },
104 'Heg' : {'mass':(90 , 140) , 'dphi':(1.5, 5) },
105 }
106
107
111
112primary_single_ele = [
113 'HLT_e26_lhtight_ivarloose_L1eEM26M',
114 'HLT_e26_lhtight_ivarloose_L1eEM26T',
115 'HLT_e28_lhtight_ivarloose_L1eEM28M',
116 'HLT_e60_lhmedium_L1eEM26M',
117 'HLT_e140_lhloose_L1eEM26M']
118
119primary_double_pho = [
120 'HLT_2g22_tight_L12eEM18M',
121 'HLT_g35_medium_g25_medium_L12eEM24L',
122 'HLT_2g50_loose_L12eEM24L',
123 ]
124
125monitoring_Zee = ['HLT_e26_lhtight_e14_etcut_probe_50invmAB130_L1eEM26M',
126 'HLT_e26_lhtight_e14_etcut_L1eEM26M',
127 'HLT_e26_lhtight_e14_etcut_probe_50invmAB130_L1eEM26M',
128 'HLT_e26_lhtight_e14_etcut_L1eEM26M'
129 ] + primary_single_ele
130
131monitoring_Jpsiee = [
132 'HLT_e5_lhtight_e9_etcut_1invmAB5_L1JPSI-1M5-eEM9',
133 'HLT_e5_lhtight_e14_etcut_1invmAB5_L1JPSI-1M5-eEM15',
134 'HLT_e9_lhtight_e4_etcut_1invmAB5_L1JPSI-1M5-eEM9',
135 'HLT_e14_lhtight_e4_etcut_1invmAB5_L1JPSI-1M5-eEM15',
136 'HLT_e10_lhvloose_L1eEM9',
137 'HLT_e14_lhvloose_L1eEM12L'
138 ]