ATLAS Offline Software
DVFlags.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaCommon.JobProperties import JobProperty
4 from AthenaCommon.JobProperties import jobproperties
5 
6 import AthenaCommon.SystemOfUnits as Units
7 
8 primRPVLLDESDM=jobproperties.PrimaryDPDFlags_RPVLLStream
9 
10 
11 from LongLivedParticleDPDMaker.RPVLLTriggers import RPVLLTriggers
12 apitriggers = RPVLLTriggers()
13 from LongLivedParticleDPDMaker.RPVLLTriggers import rpvllTrig
14 
15 
16 class DV_containerFlags(JobProperty):
17  statusOn = True
18  photonCollectionName='Photons'
19  electronCollectionName='Electrons'
20  muonCollectionName='Muons'
21  jetCollectionName="AntiKt4EMTopoJets"
22  METCollectionName="MET_LocHadTopo"
23 primRPVLLDESDM.add_JobProperty(DV_containerFlags)
24 
25 class DV_MultiJetTriggerFlags(JobProperty):
26  statusOn=True
27  allowedTypes=['bool']
28  StoredValue=True
29  triggers = ["HLT_4j100","HLT_5j85","HLT_5j85_lcw","HLT_5j75_0eta250","EF_6j70","HLT_6j45_0eta240","HLT_7j45"]
30  triggers += ["HLT_4j110","HLT_5j85","HLT_5j65_0eta240_L14J150ETA25","HLT_6j85","HLT_6j55_0eta240_L14J150ETA25"] #2017
31  triggers += ["HLT_4j120","HLT_4j130","HLT_5j60","HLT_5j70","HLT_5j90","HLT_5j100","HLT_6j45","HLT_6j60","HLT_6j70","HLT_7j50"] #L34
32  triggers += ["HLT_4j60_gsc100_boffperf_split","HLT_4j60_gsc110_boffperf_split","HLT_4j60_gsc115_boffperf_split",
33  "HLT_4j70_gsc120_boffperf_split","HLT_4j70_gsc130_boffperf_split","HLT_5j50_gsc70_boffperf_split",
34  "HLT_5j55_gsc75_boffperf_split","HLT_5j60_gsc85_boffperf_split","HLT_5j60_gsc90_boffperf_split",
35  "HLT_5j60_gsc100_boffperf_split","HLT_6j45_gsc60_boffperf_split","HLT_6j50_gsc65_boffperf_split",
36  "HLT_6j50_gsc70_boffperf_split","HLT_6j60_gsc85_boffperf_split","HLT_7j25_gsc45_boffperf_split_L14J20",
37  "HLT_7j25_gsc50_boffperf_split_L14J20" ]#gsc
38  triggers += ["HLT_2j275_j140","HLT_2j250_j120","HLT_2j220_j120"]#3jet
39  triggers += ["HLT_5j85_L14J15"] # 2018 5 jet
40  if rpvllTrig.doRPVLLTriggerAPI:
41  triggers += apitriggers.getDVMultiJetTriggers()
42 primRPVLLDESDM.add_JobProperty(DV_MultiJetTriggerFlags)
43 
44 
45 
46 class DV_2JetFilterFlags_HighpTCut(JobProperty):
47  statusOn=True
48  allowedTypes=['bool']
49  StoredValue=True
50  cutEtMin=500.0*Units.GeV
51  nPassed=2
52 primRPVLLDESDM.add_JobProperty(DV_2JetFilterFlags_HighpTCut)
53 
54 class DV_3JetFilterFlags_HighpTCut(JobProperty):
55  statusOn=True
56  allowedTypes=['bool']
57  StoredValue=True
58  cutEtMin=180.0*Units.GeV
59  nPassed=3
60 primRPVLLDESDM.add_JobProperty(DV_3JetFilterFlags_HighpTCut)
61 
62 class DV_4JetFilterFlags_HighpTCut(JobProperty):
63  statusOn=True
64  allowedTypes=['bool']
65  StoredValue=True
66  cutEtMin=220.0*Units.GeV
67  nPassed=4
68 primRPVLLDESDM.add_JobProperty(DV_4JetFilterFlags_HighpTCut)
69 
70 class DV_5JetFilterFlags_HighpTCut(JobProperty):
71  statusOn=True
72  allowedTypes=['bool']
73  StoredValue=True
74  cutEtMin=170.0*Units.GeV
75  nPassed=5
76 primRPVLLDESDM.add_JobProperty(DV_5JetFilterFlags_HighpTCut)
77 
78 class DV_6JetFilterFlags_HighpTCut(JobProperty):
79  statusOn=True
80  allowedTypes=['bool']
81  StoredValue=True
82  cutEtMin=100.0*Units.GeV
83  nPassed=6
84 primRPVLLDESDM.add_JobProperty(DV_6JetFilterFlags_HighpTCut)
85 
86 class DV_7JetFilterFlags_HighpTCut(JobProperty):
87  statusOn=True
88  allowedTypes=['bool']
89  StoredValue=True
90  cutEtMin=75.0*Units.GeV
91  nPassed=7
92 primRPVLLDESDM.add_JobProperty(DV_7JetFilterFlags_HighpTCut)
93 
94 
95 
96 
97 
98 
99 class DV_2JetFilterFlags(JobProperty):
100  statusOn=True
101  allowedTypes=['bool']
102  StoredValue=True
103  cutEtMin=220.0*Units.GeV
104  nPassed=2
105 primRPVLLDESDM.add_JobProperty(DV_2JetFilterFlags)
106 
107 class DV_3JetFilterFlags(JobProperty):
108  statusOn=True
109  allowedTypes=['bool']
110  StoredValue=True
111  cutEtMin=120.0*Units.GeV
112  nPassed=3
113 primRPVLLDESDM.add_JobProperty(DV_3JetFilterFlags)
114 
115 class DV_4JetFilterFlags(JobProperty):
116  statusOn=True
117  allowedTypes=['bool']
118  StoredValue=True
119  cutEtMin=100.0*Units.GeV
120  nPassed=4
121 primRPVLLDESDM.add_JobProperty(DV_4JetFilterFlags)
122 
123 class DV_5JetFilterFlags(JobProperty):
124  statusOn=True
125  allowedTypes=['bool']
126  StoredValue=True
127  cutEtMin=75.0*Units.GeV
128  nPassed=5
129 primRPVLLDESDM.add_JobProperty(DV_5JetFilterFlags)
130 
131 class DV_6JetFilterFlags(JobProperty):
132  statusOn=True
133  allowedTypes=['bool']
134  StoredValue=True
135  cutEtMin=50.0*Units.GeV
136  nPassed=6
137 primRPVLLDESDM.add_JobProperty(DV_6JetFilterFlags)
138 
139 class DV_7JetFilterFlags(JobProperty):
140  statusOn=True
141  allowedTypes=['bool']
142  StoredValue=True
143  cutEtMin=45.0*Units.GeV
144  nPassed=7
145 primRPVLLDESDM.add_JobProperty(DV_7JetFilterFlags)
146 
147 class DV_MuonBarrelFilterFlags(JobProperty):
148  statusOn=True
149  allowedTypes=["bool"]
150  StoredValue=True
151  cutEtMin=60.0*Units.GeV
152  cutEtaMax=1.1
153  triggers=["HLT_mu60_0eta105_msonly"]
154  if rpvllTrig.doRPVLLTriggerAPI:
155  triggers += apitriggers.getDVMuonBarrelTriggers()
156  nPassed=1
157 primRPVLLDESDM.add_JobProperty(DV_MuonBarrelFilterFlags)
158 
159 class DV_MuonFullMSFilterFlags(JobProperty):
160  statusOn=True
161  allowedTypes=["bool"]
162  StoredValue=True
163  cutEtMin=80.0*Units.GeV
164  cutEtaMax=2.5
165  triggers=["HLT_mu80_msonly_3layersEC"]
166  if rpvllTrig.doRPVLLTriggerAPI:
167  triggers += apitriggers.getDVMuonFullMSTriggers()
168  nPassed=1
169 primRPVLLDESDM.add_JobProperty(DV_MuonFullMSFilterFlags)
170 
171 class DV_PhotonFilterFlags(JobProperty):
172  statusOn=True
173  allowedTypes=['bool']
174  StoredValue= True
175  cutEtMin=150.0*Units.GeV
176  cutEtaMax=2.5
177  cutIsEM="Loose"
178  triggers=["HLT_g140_loose"]
179  triggers+=["HLT_g140_tight","HLT_g200_loose"]#2017
180  if rpvllTrig.doRPVLLTriggerAPI:
181  triggers += apitriggers.getDVPhotonTriggers()
182  prescale=20
183  nPassed=1
184 primRPVLLDESDM.add_JobProperty(DV_PhotonFilterFlags)
185 
186 
187 class DV_METFilterFlags(JobProperty):
188  statusOn=True
189  allowedTypes=["bool"]
190  StoredValue=True
191  cutMetMin=180.0*Units.GeV
192  deltaPhiCut=0.1
193  triggers=["HLT_xe90_L1XE50","HLT_xe100_L1XE50","HLT_xe120_L1XE50",
194  "HLT_xe90_L1XE55","HLT_xe100_L1XE55","HLT_xe120_L1XE55",
195  "HLT_xe90_L1XE60","HLT_xe100_L1XE60","HLT_xe120_L1XE60",
196  "HLT_xe90_tc_lcw_L1XE50","HLT_xe100_tc_lcw_L1XE50","HLT_xe120_tc_lcw_L1XE50",
197  "HLT_xe90_tc_lcw_L1XE55","HLT_xe100_tc_lcw_L1XE55","HLT_xe120_tc_lcw_L1XE55",
198  "HLT_xe90_tc_lcw_L1XE60","HLT_xe100_tc_lcw_L1XE60","HLT_xe120_tc_lcw_L1XE60",
199  "HLT_xe90_mht_L1XE50","HLT_xe100_mht_L1XE50","HLT_xe110_mht_L1XE50","HLT_xe120_mht_L1XE50",
200  "HLT_xe90_mht_L1XE55","HLT_xe100_mht_L1XE55","HLT_xe110_mht_L1XE55","HLT_xe120_mht_L1XE55",
201  "HLT_xe90_mht_L1XE60","HLT_xe100_mht_L1XE60","HLT_xe110_mht_L1XE60","HLT_xe120_mht_L1XE60",
202  "HLT_xe130_mht_L1XE50","HLT_xe110_mht_L1XE50_AND_xe65_L1XE50"
203  "HLT_xe110_mht_L1XE50_AND_xe70_L1XE50","HLT_xe110_mht_L1XE50_AND_xe75_L1XE50","HLT_xe110_mht_L1XE50_AND_xe80_L1XE50",
204  "HLT_xe110_mht_L1XE55_AND_xe65_L1XE55","HLT_xe110_mht_L1XE55_AND_xe70_L1XE55","HLT_xe110_mht_L1XE55_AND_xe75_L1XE55",
205  "HLT_xe110_mht_L1XE55_AND_xe80_L1XE55"]
206  triggers+=[ "HLT_xe110_pufit_L1XE60", "HLT_xe120_mht_L1XE60_xe80_L1XE60" ] #2017
207  triggers+=[ "HLT_xe110_pufit_L1XE50", "HLT_xe110_pufit_L1XE55", "HLT_xe110_pufit_L1XE70" ] #2017
208  triggers+=[ "HLT_xe120_pufit_L1XE60", "HLT_xe120_mht_xe80_L1XE60" ] #L34
209  triggers+=[ "HLT_xe110_pufit_xe70_L1XE50" ] #2018 primary
210  triggers+=[ "HLT_xe110_pufit_xe65_L1XE55","HLT_xe100_pufit_xe75_L1XE60",
211  "HLT_xe110_pufit_xe65_L1XE60" ] #2018 backup
212  if rpvllTrig.doRPVLLTriggerAPI:
213  triggers += apitriggers.getDVMETTriggers()
214 primRPVLLDESDM.add_JobProperty(DV_METFilterFlags)
215 
217  statusOn=True
218  allowedTypes=["bool"]
219  StoredValue=True
220  cutEtMin=70.0*Units.GeV
221  cutEtaMax=2.5
222  cutSumPtTrkMax=5.0*Units.GeV
223 primRPVLLDESDM.add_JobProperty(DV_SingleTracklessJetFilterFlags)
224 
226  statusOn=True
227  allowedTypes=["bool"]
228  StoredValue=True
229  cutEtMin=50.0*Units.GeV
230  cutEtaMax=2.5
231  cutSumPtTrkMax=5.0*Units.GeV
232 primRPVLLDESDM.add_JobProperty(DV_DoubleTracklessJetFilterFlags)
233 
234 class DV_MeffFilterFlags(JobProperty):
235  statusOn=False
236  allowedTypes=['bool']
237  StoredValue=True
238  cutMeffMin=1.0*Units.TeV
239  cutMEToverMeffMin=0.3
240  cutMEToverMeffMax=0.7
241  cutJetPtMin=40.0*Units.GeV
242  cutJetEtaMax=2.5
243  cutMETMin=150.0*Units.GeV
244  triggers=["HLT_xe90_L1XE50","HLT_xe100_L1XE50","HLT_xe120_L1XE50",
245  "HLT_xe90_L1XE55","HLT_xe100_L1XE55","HLT_xe120_L1XE55",
246  "HLT_xe90_L1XE60","HLT_xe100_L1XE60","HLT_xe120_L1XE60",
247  "HLT_xe90_tc_lcw_L1XE50","HLT_xe100_tc_lcw_L1XE50","HLT_xe120_tc_lcw_L1XE50",
248  "HLT_xe90_tc_lcw_L1XE55","HLT_xe100_tc_lcw_L1XE55","HLT_xe120_tc_lcw_L1XE55",
249  "HLT_xe90_tc_lcw_L1XE60","HLT_xe100_tc_lcw_L1XE60","HLT_xe120_tc_lcw_L1XE60",
250  "HLT_xe90_mht_L1XE50","HLT_xe100_mht_L1XE50","HLT_xe110_mht_L1XE50","HLT_xe120_mht_L1XE50",
251  "HLT_xe90_mht_L1XE55","HLT_xe100_mht_L1XE55","HLT_xe110_mht_L1XE51","HLT_xe120_mht_L1XE55",
252  "HLT_xe90_mht_L1XE60","HLT_xe100_mht_L1XE60","HLT_xe110_mht_L1XE60","HLT_xe120_mht_L1XE60",
253  "HLT_xe90_topoclPS_L1XE50","HLT_xe100_topoclPS_L1XE50","HLT_xe120_topoclPS_L1XE50",
254  "HLT_xe90_topoclPS_L1XE55","HLT_xe100_topoclPS_L1XE55","HLT_xe120_topoclPS_L1XE55",
255  "HLT_xe90_topoclPS_L1XE60","HLT_xe100_topoclPS_L1XE60","HLT_xe120_topoclPS_L1XE60",
256  "HLT_xe90_topoclPUC_L1XE50","HLT_xe100_topoclPUC_L1XE50","HLT_xe120_topoclPUC_L1XE50",
257  "HLT_xe90_topoclPUC_L1XE55","HLT_xe100_topoclPUC_L1XE55","HLT_xe120_topoclPUC_L1XE55",
258  "HLT_xe90_topoclPUC_L1XE60","HLT_xe100_topoclPUC_L1XE60","HLT_xe120_topoclPUC_L1XE60"
259  ]
260 #primRPVLLDESDM.add_JobProperty(DV_MeffFilterFlags)
261 
262 class DV_PrescalerFlags(JobProperty):
263  statusOn=True
264  allowedTypes=['bool']
265  StoredValue=True
266  prescale=20
267 primRPVLLDESDM.add_JobProperty(DV_PrescalerFlags)
268 
python.DVFlags.DV_7JetFilterFlags
Definition: DVFlags.py:139
python.DVFlags.DV_4JetFilterFlags
Definition: DVFlags.py:115
python.DVFlags.DV_5JetFilterFlags
Definition: DVFlags.py:123
python.DVFlags.DV_2JetFilterFlags
Definition: DVFlags.py:99
python.DVFlags.DV_3JetFilterFlags
Definition: DVFlags.py:107
python.DVFlags.DV_6JetFilterFlags
Definition: DVFlags.py:131
SystemOfUnits
python.DVFlags.DV_MuonBarrelFilterFlags
Definition: DVFlags.py:147
python.DVFlags.DV_4JetFilterFlags_HighpTCut
Definition: DVFlags.py:62
python.DVFlags.DV_3JetFilterFlags_HighpTCut
Definition: DVFlags.py:54
python.DVFlags.DV_PrescalerFlags
Definition: DVFlags.py:262
python.DVFlags.DV_MeffFilterFlags
Definition: DVFlags.py:234
python.DVFlags.DV_SingleTracklessJetFilterFlags
Definition: DVFlags.py:216
python.DVFlags.DV_MultiJetTriggerFlags
Definition: DVFlags.py:25
python.DVFlags.DV_MuonFullMSFilterFlags
Definition: DVFlags.py:159
python.DVFlags.DV_7JetFilterFlags_HighpTCut
Definition: DVFlags.py:86
python.DVFlags.DV_2JetFilterFlags_HighpTCut
Definition: DVFlags.py:46
python.DVFlags.DV_PhotonFilterFlags
Definition: DVFlags.py:171
python.DVFlags.DV_DoubleTracklessJetFilterFlags
Definition: DVFlags.py:225
python.DVFlags.DV_5JetFilterFlags_HighpTCut
Definition: DVFlags.py:70
python.DVFlags.DV_6JetFilterFlags_HighpTCut
Definition: DVFlags.py:78
python.DVFlags.DV_containerFlags
Definition: DVFlags.py:16
python.DVFlags.DV_METFilterFlags
Definition: DVFlags.py:187