ATLAS Offline Software
Loading...
Searching...
No Matches
python.LLPToolsConfig Namespace Reference

Functions

 VSITrackParticleThinningCfg (flags, name, **kwargs)
 JetTrackParticleThinningCfg (flags, name, **kwargs)
 JetLargeD0TrackParticleThinningCfg (flags, name, **kwargs)
 TauLRTThinningCfg (flags, name, **kwargs)
 RCJetSubstructureAugCfg (flags, name, **kwargs)
 AugmentationToolLeadingJetsCfg (flags)
 TrackParametersKVUCfg (flags, name, **kwargs)
 TrackParticleCaloCellDecoratorCfg (flags, name, **kwargs)
 PixeldEdxTrackParticleThinningCfg (flags, name, **kwargs)
 LLP1TriggerSkimmingToolCfg (flags, name, TriggerListsHelper, **kwargs)
 LLP1TriggerMatchingToolRun2Cfg (flags, name, **kwargs)
 LRTMuonMergerAlg (flags, name="LLP1_MuonLRTMergingAlg", **kwargs)
 ZeroPixelHitMuonMergerAlgCfg (flags, name='LLP1_MuonZPHMergingAlg', **kwargs)
 LRTElectronMergerAlg (flags, name="LLP1_ElectronLRTMergingAlg", **kwargs)
 PhotonIsEMSelectorsCfg (flags)
 LRTElectronLHSelectorsCfg (flags)
 RecoverZeroPixelHitMuonsCfg (flags)

Function Documentation

◆ AugmentationToolLeadingJetsCfg()

python.LLPToolsConfig.AugmentationToolLeadingJetsCfg ( flags)
Configure the RC jet substructure computation tool

Definition at line 81 of file LLPToolsConfig.py.

81def AugmentationToolLeadingJetsCfg(flags):
82 """Configure the RC jet substructure computation tool"""
83 acc = ComponentAccumulator()
84 acc.addPublicTool(CompFactory.DerivationFramework.AugmentationToolLeadingJets(name = "LLP1AugmentationToolLeadingJets"),
85 primary = True)
86 return acc
87
88
89# Vertex constraint tool

◆ JetLargeD0TrackParticleThinningCfg()

python.LLPToolsConfig.JetLargeD0TrackParticleThinningCfg ( flags,
name,
** kwargs )
Configure the track particle merger tool

Definition at line 30 of file LLPToolsConfig.py.

30def JetLargeD0TrackParticleThinningCfg(flags, name, **kwargs):
31 """Configure the track particle merger tool"""
32 acc = ComponentAccumulator()
33 JetLargeD0TrackParticleThinning = CompFactory.DerivationFramework.JetLargeD0TrackParticleThinning
34 acc.addPublicTool(JetLargeD0TrackParticleThinning(name, **kwargs),
35 primary = True)
36 return acc
37

◆ JetTrackParticleThinningCfg()

python.LLPToolsConfig.JetTrackParticleThinningCfg ( flags,
name,
** kwargs )
Configure the track particle merger tool

Definition at line 21 of file LLPToolsConfig.py.

21def JetTrackParticleThinningCfg(flags, name, **kwargs):
22 """Configure the track particle merger tool"""
23 acc = ComponentAccumulator()
24 JetTrackParticleThinning = CompFactory.DerivationFramework.JetTrackParticleThinning
25 acc.addPublicTool(JetTrackParticleThinning(name, **kwargs),
26 primary = True)
27 return acc
28
29# Thinning for LRT tracks in jets

◆ LLP1TriggerMatchingToolRun2Cfg()

python.LLPToolsConfig.LLP1TriggerMatchingToolRun2Cfg ( flags,
name,
** kwargs )
Configure the common trigger matching for run 2 DAODs

Definition at line 220 of file LLPToolsConfig.py.

220def LLP1TriggerMatchingToolRun2Cfg(flags, name, **kwargs):
221 """Configure the common trigger matching for run 2 DAODs"""
222
223 triggerList = kwargs['TriggerList']
224 outputContainerPrefix = kwargs['OutputContainerPrefix']
225
226 kwargs.setdefault('InputElectrons', 'LRTElectrons')
227 kwargs.setdefault('InputMuons', 'MuonsLRT')
228 kwargs.setdefault('DRThreshold', None)
229
230 acc = ComponentAccumulator()
231
232 # Create trigger matching decorations
233 from DerivationFrameworkTrigger.TriggerMatchingToolConfig import TriggerMatchingToolCfg
234 if kwargs['DRThreshold'] is None:
235 PhysCommonTriggerMatchingTool = acc.getPrimaryAndMerge(TriggerMatchingToolCfg(
236 flags,
237 name=name,
238 ChainNames = triggerList,
239 OutputContainerPrefix = outputContainerPrefix,
240 InputElectrons = kwargs['InputElectrons'],
241 InputMuons = kwargs['InputMuons']))
242 else:
243 PhysCommonTriggerMatchingTool = acc.getPrimaryAndMerge(TriggerMatchingToolCfg(
244 flags,
245 name=name,
246 ChainNames = triggerList,
247 OutputContainerPrefix = outputContainerPrefix,
248 DRThreshold = kwargs['DRThreshold'],
249 InputElectrons = kwargs['InputElectrons'],
250 InputMuons = kwargs['InputMuons']))
251 CommonAugmentation = CompFactory.DerivationFramework.CommonAugmentation
252 acc.addEventAlgo(CommonAugmentation(f"{outputContainerPrefix}TriggerMatchingKernel",
253 AugmentationTools=[PhysCommonTriggerMatchingTool]))
254 return(acc)
255

◆ LLP1TriggerSkimmingToolCfg()

python.LLPToolsConfig.LLP1TriggerSkimmingToolCfg ( flags,
name,
TriggerListsHelper,
** kwargs )

Definition at line 158 of file LLPToolsConfig.py.

158def LLP1TriggerSkimmingToolCfg(flags, name, TriggerListsHelper, **kwargs):
159
160 from TriggerMenuMT.TriggerAPI.TriggerAPI import TriggerAPI
161 from TriggerMenuMT.TriggerAPI.TriggerEnums import TriggerPeriod, TriggerType
162
163 # tapi chain lists
164 trig_tapis = {k: [] for k in ('el','mu','g','xe','elmu','mug','tau','tauxe','exotics','gxe')}
165 if flags.Trigger.EDMVersion <= 2:
166 # Run 2: use the Run 2 TriggerAPI
167 allperiods = TriggerPeriod.y2015 | TriggerPeriod.y2016 | TriggerPeriod.y2017 | TriggerPeriod.y2018 | TriggerPeriod.future2e34
168 TriggerAPI.setConfigFlags(flags)
169 trig_tapis['el'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.el, livefraction=0.8)
170 trig_tapis['mu'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.mu, livefraction=0.8)
171 trig_tapis['g'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.g, livefraction=0.8)
172 trig_tapis['xe'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.xe, livefraction=0.8)
173 trig_tapis['elmu'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.el, additionalTriggerType=TriggerType.mu, livefraction=0.8)
174 trig_tapis['mug'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.mu, additionalTriggerType=TriggerType.g, livefraction=0.8)
175 trig_tapis['tau'] = TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.tau, livefraction=0.8)
176 trig_tapis['tauxe']= TriggerAPI.getLowestUnprescaledAnyPeriod(allperiods, triggerType=TriggerType.tau, additionalTriggerType=TriggerType.xe, livefraction=0.8)
177 else:
178 # Run 3: use the TriggerAPI session via tapis session
179 from DerivationFrameworkPhys.TriggerListsHelper import getTapisSession
180 session = getTapisSession(flags)
181 trig_tapis['el'] = list(session.getLowestUnprescaled(triggerType=TriggerType.el, livefraction=0.75))
182 trig_tapis['mu'] = list(session.getLowestUnprescaled(triggerType=TriggerType.mu, livefraction=0.75))
183 trig_tapis['g'] = list(session.getLowestUnprescaled(triggerType=TriggerType.g, livefraction=0.75))
184 trig_tapis['xe'] = list(session.getLowestUnprescaled(triggerType=TriggerType.xe, livefraction=0.75))
185 trig_tapis['elmu'] = list(session.getLowestUnprescaled(triggerType=[TriggerType.el, TriggerType.mu], livefraction=0.75))
186 trig_tapis['mug'] = list(session.getLowestUnprescaled(triggerType=[TriggerType.mu, TriggerType.g], livefraction=0.75))
187 trig_tapis['tau'] = list(session.getLowestUnprescaled(triggerType=TriggerType.tau, livefraction=0.75))
188 trig_tapis['tauxe'] = list(session.getLowestUnprescaled(triggerType=[TriggerType.tau, TriggerType.xe], livefraction=0.75))
189 trig_tapis['exotics'] = list(session.getLowestUnprescaled(triggerType=TriggerType.exotics, livefraction=0.75))
190 trig_tapis['gxe'] = list(session.getLowestUnprescaled(triggerType=[TriggerType.g, TriggerType.xe], livefraction=0.75))
191
192 # All chains not picked up by tapis are hardcoded in LLP1Triggers.txt and loaded below; see comments there for details
193 # (just take every non-comment, non-empty line)
194 from PathResolver import PathResolver
195 with open(PathResolver.FindCalibFile("DerivationFrameworkLLP/LLP1Triggers.txt")) as fp:
196 trig_hardcoded = [
197 line for ln in fp
198 if (line := ln.strip()) and not line.startswith('#')
199 ]
200
201 triggers = sorted(set(sum(trig_tapis.values(), []) + trig_hardcoded))
202
203 # debug printout of the final trigger list when needed
204 from AthenaCommon.Logging import logging
205 log = logging.getLogger("LLP1TriggerSkimmingToolCfg")
206 log.debug("LLP1 skimming trigger list (%d chains):", len(triggers))
207 for t in triggers:
208 log.debug(" %s", t)
209
210 acc = ComponentAccumulator()
211 TriggerSkimmingTool = CompFactory.DerivationFramework.TriggerSkimmingTool
212 acc.addPublicTool(TriggerSkimmingTool(name,
213 TriggerListAND = [],
214 TriggerListOR = triggers,
215 **kwargs),
216 primary = True)
217 return acc
218
219
static std::string FindCalibFile(const std::string &logical_file_name)
STL class.

◆ LRTElectronLHSelectorsCfg()

python.LLPToolsConfig.LRTElectronLHSelectorsCfg ( flags)

Definition at line 327 of file LLPToolsConfig.py.

327def LRTElectronLHSelectorsCfg(flags):
328
329 acc = ComponentAccumulator()
330
331 from ElectronPhotonSelectorTools.AsgElectronLikelihoodToolsConfig import AsgElectronLikelihoodToolCfg
332 from ElectronPhotonSelectorTools.ElectronLikelihoodToolMapping import electronLHmenu
333 from ROOT import LikeEnum
334
335 lhMenu = electronLHmenu.offlineMC21
336 if flags.GeoModel.Run is LHCPeriod.Run2:
337 lhMenu = electronLHmenu.offlineMC20
338
339 ElectronLHSelectorVeryLooseNoPix = acc.popToolsAndMerge(AsgElectronLikelihoodToolCfg(
340 flags,
341 name="ElectronLHSelectorVeryLooseNoPix",
342 quality=LikeEnum.VeryLooseLLP,
343 menu=lhMenu)
344 )
345 ElectronLHSelectorVeryLooseNoPix.primaryVertexContainer = "PrimaryVertices"
346
347 ElectronLHSelectorLooseNoPix = acc.popToolsAndMerge(AsgElectronLikelihoodToolCfg(
348 flags,
349 name="ElectronLHSelectorLooseNoPix",
350 quality=LikeEnum.LooseLLP,
351 menu=lhMenu)
352 )
353 ElectronLHSelectorLooseNoPix.primaryVertexContainer = "PrimaryVertices"
354
355 ElectronLHSelectorMediumNoPix = acc.popToolsAndMerge(AsgElectronLikelihoodToolCfg(
356 flags,
357 name="ElectronLHSelectorMediumNoPix",
358 quality=LikeEnum.MediumLLP,
359 menu=lhMenu)
360 )
361 ElectronLHSelectorMediumNoPix.primaryVertexContainer = "PrimaryVertices"
362
363 ElectronLHSelectorTightNoPix = acc.popToolsAndMerge(AsgElectronLikelihoodToolCfg(
364 flags,
365 name="ElectronLHSelectorTightNoPix",
366 quality=LikeEnum.TightLLP,
367 menu=lhMenu)
368 )
369 ElectronLHSelectorTightNoPix.primaryVertexContainer = "PrimaryVertices"
370
371 from DerivationFrameworkEGamma.EGammaToolsConfig import EGElectronLikelihoodToolWrapperCfg
372
373 # decorate electrons with the output of LH very loose
374 ElectronPassLHVeryLooseNoPix = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
375 flags,
376 name="ElectronPassLHVeryLooseNoPix",
377 EGammaElectronLikelihoodTool=ElectronLHSelectorVeryLooseNoPix,
378 EGammaFudgeMCTool="",
379 CutType="",
380 StoreGateEntryName="DFCommonElectronsLHVeryLooseNoPix",
381 ContainerName="Electrons",
382 StoreTResult=True)))
383
384 ElectronPassLHVeryLooseNoPixLRT = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
385 flags,
386 name="ElectronPassLHVeryLooseNoPixLRT",
387 EGammaElectronLikelihoodTool=ElectronLHSelectorVeryLooseNoPix,
388 EGammaFudgeMCTool="",
389 CutType="",
390 StoreGateEntryName="DFCommonElectronsLHVeryLooseNoPix",
391 ContainerName="LRTElectrons",
392 StoreTResult=True)))
393
394 # decorate electrons with the output of LH loose
395 ElectronPassLHLooseNoPix = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
396 flags,
397 name="ElectronPassLHLooseNoPix",
398 EGammaElectronLikelihoodTool=ElectronLHSelectorLooseNoPix,
399 EGammaFudgeMCTool="",
400 CutType="",
401 StoreGateEntryName="DFCommonElectronsLHLooseNoPix",
402 ContainerName="Electrons",
403 StoreTResult=False)))
404
405 ElectronPassLHLooseNoPixLRT = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
406 flags,
407 name="ElectronPassLHLooseNoPixLRT",
408 EGammaElectronLikelihoodTool=ElectronLHSelectorLooseNoPix,
409 EGammaFudgeMCTool="",
410 CutType="",
411 StoreGateEntryName="DFCommonElectronsLHLooseNoPix",
412 ContainerName="LRTElectrons",
413 StoreTResult=False)))
414
415 # decorate electrons with the output of LH medium
416 ElectronPassLHMediumNoPix = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
417 flags,
418 name="ElectronPassLHMediumNoPix",
419 EGammaElectronLikelihoodTool=ElectronLHSelectorMediumNoPix,
420 EGammaFudgeMCTool="",
421 CutType="",
422 StoreGateEntryName="DFCommonElectronsLHMediumNoPix",
423 ContainerName="Electrons",
424 StoreTResult=False)))
425
426 ElectronPassLHMediumNoPixLRT = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
427 flags,
428 name="ElectronPassLHMediumNoPixLRT",
429 EGammaElectronLikelihoodTool=ElectronLHSelectorMediumNoPix,
430 EGammaFudgeMCTool="",
431 CutType="",
432 StoreGateEntryName="DFCommonElectronsLHMediumNoPix",
433 ContainerName="LRTElectrons",
434 StoreTResult=False)))
435
436 # decorate electrons with the output of LH tight
437 ElectronPassLHTightNoPix = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
438 flags,
439 name="ElectronPassLHTightNoPix",
440 EGammaElectronLikelihoodTool=ElectronLHSelectorTightNoPix,
441 EGammaFudgeMCTool="",
442 CutType="",
443 StoreGateEntryName="DFCommonElectronsLHTightNoPix",
444 ContainerName="Electrons",
445 StoreTResult=False)))
446
447 ElectronPassLHTightNoPixLRT = acc.addPublicTool(acc.popToolsAndMerge(EGElectronLikelihoodToolWrapperCfg(
448 flags,
449 name="ElectronPassLHTightNoPixLRT",
450 EGammaElectronLikelihoodTool=ElectronLHSelectorTightNoPix,
451 EGammaFudgeMCTool="",
452 CutType="",
453 StoreGateEntryName="DFCommonElectronsLHTightNoPix",
454 ContainerName="LRTElectrons",
455 StoreTResult=False)))
456
457 LRTEGAugmentationTools = [ElectronPassLHVeryLooseNoPix,
458 ElectronPassLHVeryLooseNoPixLRT,
459 ElectronPassLHLooseNoPix,
460 ElectronPassLHLooseNoPixLRT,
461 ElectronPassLHMediumNoPix,
462 ElectronPassLHMediumNoPixLRT,
463 ElectronPassLHTightNoPix,
464 ElectronPassLHTightNoPixLRT]
465
466 acc.addEventAlgo(CompFactory.DerivationFramework.CommonAugmentation(
467 "LLP1EGammaLRTKernel",
468 AugmentationTools=LRTEGAugmentationTools
469 ))
470
471 return acc
472
473# RecoverZeroPixelHitMuons setup

◆ LRTElectronMergerAlg()

python.LLPToolsConfig.LRTElectronMergerAlg ( flags,
name = "LLP1_ElectronLRTMergingAlg",
** kwargs )

Definition at line 275 of file LLPToolsConfig.py.

275def LRTElectronMergerAlg(flags, name="LLP1_ElectronLRTMergingAlg", **kwargs):
276 acc = ComponentAccumulator()
277 prompt = kwargs.setdefault ('PromptElectronLocation', 'Electrons')
278 lrt = kwargs.setdefault ('LRTElectronLocation', 'LRTElectrons')
279 ExtraInputs = kwargs.setdefault ('ExtraInputs', [])
280 from IsolationAlgs.DerivationTrackIsoConfig import iso_vars
281 ExtraInputs += [('xAOD::IParticleContainer', f'{prompt}.{v}')
282 for v in iso_vars()]
283 ExtraInputs += [('xAOD::IParticleContainer', f'{lrt}.{v}')
284 for v in iso_vars()]
285 ExtraInputs += [
286 ('xAOD::IParticleContainer', f'{lrt}.core57cellsEnergyCorrection'),
287 ('xAOD::IParticleContainer', f'{lrt}.ptcone20'),
288 ('xAOD::IParticleContainer', f'{lrt}.neflowisol20'),
289 ('xAOD::IParticleContainer', f'{prompt}.neflowisol20'),
290 ]
291 alg = CompFactory.CP.ElectronLRTMergingAlg \
292 (name,
293 **kwargs)
294 acc.addEventAlgo(alg,
295 primary=True)
296 return acc
297
298# Photon IsEM setup for LLP1

◆ LRTMuonMergerAlg()

python.LLPToolsConfig.LRTMuonMergerAlg ( flags,
name = "LLP1_MuonLRTMergingAlg",
** kwargs )

Definition at line 256 of file LLPToolsConfig.py.

256def LRTMuonMergerAlg(flags, name="LLP1_MuonLRTMergingAlg", **kwargs):
257 acc = ComponentAccumulator()
258 alg = CompFactory.CP.MuonLRTMergingAlg(name, **kwargs)
259 acc.addEventAlgo(alg, primary=True)
260 return acc
261

◆ PhotonIsEMSelectorsCfg()

python.LLPToolsConfig.PhotonIsEMSelectorsCfg ( flags)

Definition at line 299 of file LLPToolsConfig.py.

299def PhotonIsEMSelectorsCfg(flags):
300 acc = ComponentAccumulator()
301 from ROOT import egammaPID
302 from ElectronPhotonSelectorTools.AsgPhotonIsEMSelectorsConfig import (
303 AsgPhotonIsEMSelectorCfg,
304 )
305
306 isFullSim = flags.Sim.ISF.Simulator.isFullSim() if flags.Input.isMC else False
307
308 if isFullSim:
309 from EGammaVariableCorrection.EGammaVariableCorrectionConfig import (
310 PhotonVariableCorrectionToolCfg,
311 )
312
313 PhotonVariableCorrectionTool = acc.popToolsAndMerge(
314 PhotonVariableCorrectionToolCfg(flags))
315 acc.addPublicTool(PhotonVariableCorrectionTool)
316
317 PhotonIsEMSelectorMedium = acc.popToolsAndMerge(
318 AsgPhotonIsEMSelectorCfg(
319 flags, name="PhotonIsEMSelectorMedium", quality=egammaPID.PhotonIDMedium
320 )
321 )
322 acc.addPublicTool(PhotonIsEMSelectorMedium)
323
324 return acc
325
326# Electron LLH setup for LLP1

◆ PixeldEdxTrackParticleThinningCfg()

python.LLPToolsConfig.PixeldEdxTrackParticleThinningCfg ( flags,
name,
** kwargs )
Confiure the lowpT + high dE/dx track thinniing tool

Definition at line 150 of file LLPToolsConfig.py.

150def PixeldEdxTrackParticleThinningCfg(flags, name, **kwargs):
151 """Confiure the lowpT + high dE/dx track thinniing tool"""
152 acc = ComponentAccumulator()
153 PixeldEdxTrackParticleThinning = CompFactory.DerivationFramework.PixeldEdxTrackParticleThinning
154 acc.addPublicTool(PixeldEdxTrackParticleThinning(name, **kwargs),
155 primary = True)
156 return acc
157

◆ RCJetSubstructureAugCfg()

python.LLPToolsConfig.RCJetSubstructureAugCfg ( flags,
name,
** kwargs )
Configure the RC jet substructure computation tool

Definition at line 47 of file LLPToolsConfig.py.

47def RCJetSubstructureAugCfg(flags, name, **kwargs):
48 """Configure the RC jet substructure computation tool"""
49 acc = ComponentAccumulator()
50 suffix = kwargs.pop("Suffix", "")
51 if not suffix:
52 raise AttributeError("Suffix not set!")
53 kwargs.setdefault("dec_Qw", "Qw_" + suffix)
54 kwargs.setdefault("dec_Tau1", "Tau1_" + suffix)
55 kwargs.setdefault("dec_Tau2", "Tau2_" + suffix)
56 kwargs.setdefault("dec_Tau3", "Tau3_" + suffix)
57 kwargs.setdefault("dec_Tau4", "Tau4_" + suffix)
58 kwargs.setdefault("dec_Tau21", "Tau21_" + suffix)
59 kwargs.setdefault("dec_Tau32", "Tau32_" + suffix)
60 kwargs.setdefault("dec_Split12", "Split12_" + suffix)
61 kwargs.setdefault("dec_Split23", "Split23_" + suffix)
62 kwargs.setdefault("dec_Split34", "Split34_" + suffix)
63 kwargs.setdefault("dec_ECF1", "ECF1_" + suffix)
64 kwargs.setdefault("dec_ECF2", "ECF2_" + suffix)
65 kwargs.setdefault("dec_ECF3", "ECF3_" + suffix)
66 kwargs.setdefault("dec_ECF4", "ECF4_" + suffix)
67 kwargs.setdefault("dec_C2", "C2_" + suffix)
68 kwargs.setdefault("dec_D2", "D2_" + suffix)
69 kwargs.setdefault("dec_pT", "pT_" + suffix)
70 kwargs.setdefault("dec_m", "m_" + suffix)
71 kwargs.setdefault("dec_NConstits", "NConstits_" + suffix)
72 kwargs.setdefault("dec_eta", "eta_" + suffix)
73 kwargs.setdefault("dec_phi", "phi_" + suffix)
74 kwargs.setdefault("dec_timing", "timing_" + suffix)
75 RCJetSubstructureAug = CompFactory.DerivationFramework.RCJetSubstructureAug
76 acc.addPublicTool(RCJetSubstructureAug(name, **kwargs),
77 primary = True)
78 return acc
79
80# tool to label leading/subleading jets

◆ RecoverZeroPixelHitMuonsCfg()

python.LLPToolsConfig.RecoverZeroPixelHitMuonsCfg ( flags)

Definition at line 474 of file LLPToolsConfig.py.

474def RecoverZeroPixelHitMuonsCfg(flags):
475 acc = ComponentAccumulator()
476 from IsolationAlgs.DerivationTrackIsoConfig import iso_vars
477 ExtraInputs = [('xAOD::IParticleContainer', 'Muons.' + v)
478 for v in iso_vars()]
479 acc.addEventAlgo(CompFactory.RecoverZeroPixelHitMuons(name="RecoverZeroPixelHitMuons", ExtraInputs=ExtraInputs))
480
481 return acc

◆ TauLRTThinningCfg()

python.LLPToolsConfig.TauLRTThinningCfg ( flags,
name,
** kwargs )
configure tau thinning

Definition at line 38 of file LLPToolsConfig.py.

38def TauLRTThinningCfg(flags, name, **kwargs):
39 """configure tau thinning"""
40
41 acc = ComponentAccumulator()
42 TauLRTThinningTool = CompFactory.DerivationFramework.TauLRTThinningTool
43 acc.addPublicTool(TauLRTThinningTool(name, **kwargs), primary=True)
44 return acc
45
46# RC jet substructure computation tool

◆ TrackParametersKVUCfg()

python.LLPToolsConfig.TrackParametersKVUCfg ( flags,
name,
** kwargs )
Configure the vertex constraint tool

Definition at line 90 of file LLPToolsConfig.py.

90def TrackParametersKVUCfg(flags, name, **kwargs):
91 """Configure the vertex constraint tool"""
92 acc = ComponentAccumulator()
93
94 if "IPEstimator" not in kwargs:
95 from TrkConfig.TrkVertexFitterUtilsConfig import AtlasTrackToVertexIPEstimatorCfg
96 kwargs.setdefault("IPEstimator", acc.popToolsAndMerge(
97 AtlasTrackToVertexIPEstimatorCfg(flags)))
98
99 if "VertexTrackUpdator" not in kwargs:
100 from TrkConfig.TrkVertexFitterUtilsConfig import KalmanVertexTrackUpdatorCfg
101 kwargs.setdefault("VertexTrackUpdator", acc.popToolsAndMerge(
102 KalmanVertexTrackUpdatorCfg(flags, SkipInvertibleCheck = True)))
103
104 if "LinearizedTrackFactory" not in kwargs:
105 from TrkConfig.TrkVertexFitterUtilsConfig import AtlasFullLinearizedTrackFactoryCfg
106 kwargs.setdefault("LinearizedTrackFactory", acc.popToolsAndMerge(
107 AtlasFullLinearizedTrackFactoryCfg(flags)))
108
109 if "TrackExtrapolator" not in kwargs:
110 from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
111 kwargs.setdefault("TrackExtrapolator", acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags)))
112
113 acc.setPrivateTools(CompFactory.DerivationFramework.TrackParametersKVU(name, **kwargs))
114 return acc
115
116
117# Calo cell cluster decorator

◆ TrackParticleCaloCellDecoratorCfg()

python.LLPToolsConfig.TrackParticleCaloCellDecoratorCfg ( flags,
name,
** kwargs )
Confiure the isolation decorator tool

Definition at line 118 of file LLPToolsConfig.py.

118def TrackParticleCaloCellDecoratorCfg(flags, name, **kwargs):
119 """Confiure the isolation decorator tool"""
120 acc = ComponentAccumulator()
121 prefix = kwargs.pop("DecorationPrefix", "LLP1")
122 kwargs.setdefault("ClusterAssocContainerName", kwargs["ContainerName"] + "ClusterAssociations")
123 kwargs.setdefault("decCellEtaKey", prefix + "_CaloCellEta")
124 kwargs.setdefault("decCellPhiKey", prefix + "_CaloCellPhi")
125 kwargs.setdefault("decCellRKey", prefix + "_CaloCellR")
126 kwargs.setdefault("decCelldEtaKey", prefix + "_CaloCelldEta")
127 kwargs.setdefault("decCelldPhiKey", prefix + "_CaloCelldPhi")
128 kwargs.setdefault("decCelldRKey", prefix + "_CaloCelldR")
129 kwargs.setdefault("decCellXKey", prefix + "_CaloCellX")
130 kwargs.setdefault("decCellYKey", prefix + "_CaloCellY")
131 kwargs.setdefault("decCellZKey", prefix + "_CaloCellZ")
132 kwargs.setdefault("decCelldXKey", prefix + "_CaloCelldX")
133 kwargs.setdefault("decCelldYKey", prefix + "_CaloCelldY")
134 kwargs.setdefault("decCelldZKey", prefix + "_CaloCelldZ")
135 kwargs.setdefault("decCellTKey", prefix + "_CaloCellTime")
136 kwargs.setdefault("decCellEKey", prefix + "_CaloCellE")
137 kwargs.setdefault("decCellIDKey", prefix + "_CaloCellID")
138 kwargs.setdefault("decCellSamplingKey", prefix + "_CaloCellSampling")
139 kwargs.setdefault("decCellQualityKey", prefix + "_CaloCellQuality")
140 kwargs.setdefault("decCellProvenanceKey", prefix + "_CaloCellProvenance")
141 kwargs.setdefault("decCellGainKey", prefix + "_CaloCellGain")
142 kwargs.setdefault("decCellEneDiffKey", prefix + "_CaloCellEneDiff")
143 kwargs.setdefault("decCellTimeDiffKey", prefix + "_CaloCellTimeDiff")
144 TrackParticleCaloCellDecorator = CompFactory.DerivationFramework.TrackParticleCaloCellDecorator
145 acc.addPublicTool(TrackParticleCaloCellDecorator(name, **kwargs),
146 primary = True)
147 return acc
148
149# high dE/dx and low pT track thinning

◆ VSITrackParticleThinningCfg()

python.LLPToolsConfig.VSITrackParticleThinningCfg ( flags,
name,
** kwargs )
Configure the track particle merger tool

Definition at line 12 of file LLPToolsConfig.py.

12def VSITrackParticleThinningCfg(flags, name, **kwargs):
13 """Configure the track particle merger tool"""
14 acc = ComponentAccumulator()
15 VSITrackParticleThinning = CompFactory.DerivationFramework.VSITrackParticleThinning
16 acc.addPublicTool(VSITrackParticleThinning(name, **kwargs),
17 primary = True)
18 return acc
19
20# Thinning for Std tracks in jets

◆ ZeroPixelHitMuonMergerAlgCfg()

python.LLPToolsConfig.ZeroPixelHitMuonMergerAlgCfg ( flags,
name = 'LLP1_MuonZPHMergingAlg',
** kwargs )
Configure for merging ZeroPixelHitMuons with the LRTMerged muons for vertexing

Definition at line 262 of file LLPToolsConfig.py.

262def ZeroPixelHitMuonMergerAlgCfg(flags, name='LLP1_MuonZPHMergingAlg', **kwargs):
263 """Configure for merging ZeroPixelHitMuons with the LRTMerged muons for vertexing"""
264
265 kwargs.setdefault('InputMuonContainers', ['Muons', 'MuonsLRT', 'ZeroPixelHitMuons'])
266 kwargs.setdefault('OutputMuonLocation', 'StdWithLRTMuons_wZPH')
267 kwargs.setdefault("CreateViewCollection", True)
268
269 acc = ComponentAccumulator()
270 alg = CompFactory.CP.MuonContainerMergingAlg(name, **kwargs)
271 acc.addEventAlgo(alg, primary=True)
272 return acc
273
274