ATLAS Offline Software
LLP1.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2 #====================================================================
3 # DAOD_LLP1.py
4 # This defines DAOD_LLP1, an unskimmed DAOD format for Run 3.
5 # It contains the variables and objects needed for the large majority
6 # of physics analyses in ATLAS.
7 # It requires the flag LLP1 in Derivation_tf.py
8 #====================================================================
9 
10 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
11 from AthenaConfiguration.ComponentFactory import CompFactory
12 from AthenaConfiguration.Enums import LHCPeriod, MetadataCategory
13 
14 MergedElectronContainer = "StdWithLRTElectrons"
15 MergedMuonContainer = "StdWithLRTMuons"
16 MergedTrackCollection = "InDetWithLRTTrackParticles"
17 LLP1VrtSecInclusiveSuffixes = []
18 
19 # Main algorithm config
20 def LLP1KernelCfg(flags, name='LLP1Kernel', **kwargs):
21 
22  """Configure the derivation framework driving algorithm (kernel) for LLP1"""
23  acc = ComponentAccumulator()
24 
25  # Augmentations
26 
27 
28  # LRT track merge
29  from DerivationFrameworkInDet.InDetToolsConfig import InDetLRTMergeCfg
30  acc.merge(InDetLRTMergeCfg(flags))
31 
32  # LRT muons merge
33  from DerivationFrameworkLLP.LLPToolsConfig import LRTMuonMergerAlg
34  acc.merge(LRTMuonMergerAlg( flags,
35  PromptMuonLocation = "Muons",
36  LRTMuonLocation = "MuonsLRT",
37  OutputMuonLocation = MergedMuonContainer,
38  CreateViewCollection = True,
39  UseRun3WP = flags.GeoModel.Run == LHCPeriod.Run3))
40 
41  # LRT electrons merge
42  from DerivationFrameworkLLP.LLPToolsConfig import LRTElectronMergerAlg
43  acc.merge(LRTElectronMergerAlg( flags,
44  PromptElectronLocation = "Electrons",
45  LRTElectronLocation = "LRTElectrons",
46  OutputCollectionName = MergedElectronContainer,
47  isDAOD = False,
48  CreateViewCollection = True))
49 
50  # Max Cell sum decoration tool
51  from DerivationFrameworkCalo.DerivationFrameworkCaloConfig import (
52  MaxCellDecoratorCfg, MaxCellDecoratorKernelCfg)
53 
54  # Default configuration
55  acc.merge(MaxCellDecoratorKernelCfg(flags))
56 
57  # Specific for LRTElectrons
58  LLP1LRTMaxCellDecoratorTool = acc.popToolsAndMerge(MaxCellDecoratorCfg(
59  flags,
60  name = "LLP1LRTMaxCellDecoratorTool",
61  SGKey_electrons = "LRTElectrons",
62  SGKey_egammaClusters = ("" if flags.GeoModel.Run == LHCPeriod.Run3
63  else "egammaClusters"),
64  SGKey_photons = ''))
65  acc.addPublicTool(LLP1LRTMaxCellDecoratorTool)
66 
67  # Vertex constraint tools
68  from TrkConfig.TrkVertexFitterUtilsConfig import AtlasFullLinearizedTrackFactoryCfg
69  AtlasFullLinearizedTrackFactoryTool = acc.popToolsAndMerge(AtlasFullLinearizedTrackFactoryCfg(flags,
70  name = "LLP1AtlasFullLinearizedTrackFactory"))
71  acc.addPublicTool(AtlasFullLinearizedTrackFactoryTool)
72 
73  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
74  ExtrapolatorTool = acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags,
75  name = "LLP1ExtrapolatorTool"))
76  acc.addPublicTool(ExtrapolatorTool)
77 
78 
79  from DerivationFrameworkLLP.LLPToolsConfig import TrackParametersKVUCfg
80  LLP1TrackParametersKVUTool = acc.getPrimaryAndMerge(TrackParametersKVUCfg(flags,
81  name = "LLP1TrackParametersKVU",
82  TrackParticleContainerName = "InDetDisappearingTrackParticles",
83  VertexContainerName = "PrimaryVertices",
84  LinearizedTrackFactory = AtlasFullLinearizedTrackFactoryTool,
85  TrackExtrapolator = ExtrapolatorTool))
86  acc.addPublicTool(LLP1TrackParametersKVUTool)
87 
88  # Track isolation tools
89  import ROOT
90  isoPar = ROOT.xAOD.Iso.IsolationType
91  deco_ptcones = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20]
92  deco_ptcones_suffix = ["ptcone40", "ptcone30", "ptcone20"]
93  deco_prefix = 'LLP1_'
94 
95  from InDetConfig.InDetTrackSelectionToolConfig import InDetTrackSelectionTool_Loose_Cfg
96  TrackSelectionToolStd = acc.popToolsAndMerge(InDetTrackSelectionTool_Loose_Cfg(flags,
97  name = "TrackSelectionToolStd",
98  maxZ0SinTheta = 3.0,
99  minPt = 1000.))
100 
101  TrackSelectionToolPdEdx = acc.popToolsAndMerge(InDetTrackSelectionTool_Loose_Cfg(flags,
102  name = "TrackSelectionToolPdEdx",
103  maxD0 = 0.5,
104  maxZ0SinTheta = 3.0,
105  minPt = 1000.))
106 
107  TrackSelectionToolPdEdxTight = acc.popToolsAndMerge(InDetTrackSelectionTool_Loose_Cfg(flags,
108  name = "TrackSelectionToolPdEdxTight",
109  maxD0 = 0.5,
110  maxZ0SinTheta = 0.5,
111  minPt = 1000.))
112 
113  from IsolationAlgs.IsoToolsConfig import TrackIsolationToolCfg, CaloIsolationToolCfg
114  TrackIsoToolStd = acc.popToolsAndMerge(TrackIsolationToolCfg(flags,
115  name = "TrackIsoToolStd",
116  TrackSelectionTool = TrackSelectionToolStd))
117  acc.addPublicTool(TrackIsoToolStd)
118 
119  TrackIsoToolPdEdx = acc.popToolsAndMerge(TrackIsolationToolCfg(flags,
120  name = "TrackIsoToolPdEdx",
121  TrackSelectionTool = TrackSelectionToolPdEdx))
122  acc.addPublicTool(TrackIsoToolPdEdx)
123 
124  TrackIsoToolPdEdxTight = acc.popToolsAndMerge(TrackIsolationToolCfg(flags,
125  name = "TrackIsoToolPdEdxTight",
126  TrackSelectionTool = TrackSelectionToolPdEdxTight))
127  acc.addPublicTool(TrackIsoToolPdEdxTight)
128 
129  from CaloIdentifier import SUBCALO
130  CaloIsoTool = acc.popToolsAndMerge(CaloIsolationToolCfg(flags,
131  name = "CaloIsoTool",
132  EMCaloNums = [SUBCALO.LAREM],
133  HadCaloNums = [SUBCALO.LARHEC, SUBCALO.TILE],
134  UseEMScale = True,
135  UseCaloExtensionCaching = False,
136  saveOnlyRequestedCorrections = True))
137  acc.addPublicTool(CaloIsoTool)
138 
139  from DerivationFrameworkInDet.InDetToolsConfig import IsolationTrackDecoratorCfg
140  LLP1IsolationTrackDecoratorTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
141  name = "LLP1IsolationTrackDecorator",
142  TrackIsolationTool = TrackIsoToolStd,
143  CaloIsolationTool = CaloIsoTool,
144  TargetContainer = "InDetTrackParticles",
145  SelectionString = "InDetTrackParticles.pt>10*GeV",
146  iso = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20, isoPar.ptvarcone40, isoPar.ptvarcone30, isoPar.ptvarcone20, isoPar.topoetcone40, isoPar.topoetcone30, isoPar.topoetcone20],
147  isoSuffix = ["ptcone40", "ptcone30", "ptcone20", "ptvarcone40", "ptvarcone30", "ptvarcone20", "topoetcone40", "topoetcone30", "topoetcone20"],
148  Prefix = deco_prefix))
149  acc.addPublicTool(LLP1IsolationTrackDecoratorTool)
150 
151  LLP1IsolationTrackDecoratorDTTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
152  name = "LLP1IsolationTrackDecoratorDT",
153  TrackIsolationTool = TrackIsoToolStd,
154  CaloIsolationTool = CaloIsoTool,
155  TargetContainer = "InDetDisappearingTrackParticles",
156  SelectionString = "InDetDisappearingTrackParticles.pt>10*GeV",
157  iso = [isoPar.ptcone40, isoPar.ptcone30, isoPar.ptcone20, isoPar.ptvarcone40, isoPar.ptvarcone30, isoPar.ptvarcone20, isoPar.topoetcone40, isoPar.topoetcone30, isoPar.topoetcone20],
158  isoSuffix = ["ptcone40", "ptcone30", "ptcone20", "ptvarcone40", "ptvarcone30", "ptvarcone20", "topoetcone40", "topoetcone30", "topoetcone20"],
159  Prefix = deco_prefix))
160  acc.addPublicTool(LLP1IsolationTrackDecoratorDTTool)
161 
162  LLP1IsolationTrackDecoratorPdEdxTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
163  name = "LLP1IsolationTrackDecoratorPdEdx",
164  TrackIsolationTool = TrackIsoToolPdEdx,
165  CaloIsolationTool = CaloIsoTool,
166  TargetContainer = "InDetTrackParticles",
167  iso = deco_ptcones,
168  Prefix = 'TrkIsoPtPdEdx_',
169  isoSuffix = deco_ptcones_suffix))
170  acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTool)
171 
172  LLP1IsolationTrackDecoratorPdEdxDTTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
173  name = "LLP1IsolationTrackDecoratorPdEdxDT",
174  TrackIsolationTool = TrackIsoToolPdEdx,
175  CaloIsolationTool = CaloIsoTool,
176  TargetContainer = "InDetDisappearingTrackParticles",
177  iso = deco_ptcones,
178  Prefix = 'TrkIsoPtPdEdx_',
179  isoSuffix = deco_ptcones_suffix))
180  acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxDTTool)
181 
182  LLP1IsolationTrackDecoratorPdEdxTightTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
183  name = "LLP1IsolationTrackDecoratorPdEdxTight",
184  TrackIsolationTool = TrackIsoToolPdEdxTight,
185  CaloIsolationTool = CaloIsoTool,
186  TargetContainer = "InDetTrackParticles",
187  iso = deco_ptcones,
188  Prefix = 'TrkIsoPtTightPdEdx_',
189  isoSuffix = deco_ptcones_suffix))
190  acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTightTool)
191 
192  LLP1IsolationTrackDecoratorPdEdxTightDTTool = acc.getPrimaryAndMerge(IsolationTrackDecoratorCfg(flags,
193  name = "LLP1IsolationTrackDecoratorPdEdxTightDT",
194  TrackIsolationTool = TrackIsoToolPdEdxTight,
195  CaloIsolationTool = CaloIsoTool,
196  TargetContainer = "InDetDisappearingTrackParticles",
197  iso = deco_ptcones,
198  Prefix = 'TrkIsoPtTightPdEdx_',
199  isoSuffix = deco_ptcones_suffix))
200  acc.addPublicTool(LLP1IsolationTrackDecoratorPdEdxTightDTTool)
201 
202  from DerivationFrameworkLLP.LLPToolsConfig import TrackParticleCaloCellDecoratorCfg
203  LLP1TrackParticleCaloCellDecoratorTool = acc.getPrimaryAndMerge(TrackParticleCaloCellDecoratorCfg(flags,
204  name = "LLP1TrackParticleCaloCellDecorator",
205  DecorationPrefix = "LLP1",
206  ContainerName = "InDetTrackParticles"))
207  acc.addPublicTool(LLP1TrackParticleCaloCellDecoratorTool)
208 
209  augmentationTools = [ LLP1LRTMaxCellDecoratorTool,
210  LLP1TrackParametersKVUTool,
211  LLP1IsolationTrackDecoratorTool,
212  LLP1IsolationTrackDecoratorDTTool,
213  LLP1IsolationTrackDecoratorPdEdxTool,
214  LLP1IsolationTrackDecoratorPdEdxDTTool,
215  LLP1IsolationTrackDecoratorPdEdxTightTool,
216  LLP1IsolationTrackDecoratorPdEdxTightDTTool,
217  LLP1TrackParticleCaloCellDecoratorTool ]
218 
219  # Specific for Taus
220  LLP1TauMaxCellDecoratorTool = acc.popToolsAndMerge(MaxCellDecoratorCfg(
221  flags,
222  name = "LLP1TauMaxCellDecoratorTool",
223  SGKey_taus = 'TauJets',
224  SGKey_electrons = '',
225  SGKey_photons = ''))
226  acc.addPublicTool(LLP1TauMaxCellDecoratorTool)
227 
228  augmentationTools += [ LLP1TauMaxCellDecoratorTool ]
229 
230  # Specific for Jets: AntiKt4EMTopoJets
231  LLP1AntiKt4EMTopoJetMaxCellDecoratorTool = acc.popToolsAndMerge(MaxCellDecoratorCfg(
232  flags,
233  name = "LLP1AntiKt4EMTopoJetMaxCellDecoratorTool",
234  SGKey_jets = 'AntiKt4EMTopoJets',
235  SGKey_taus = '',
236  SGKey_electrons = '',
237  SGKey_photons = ''))
238  acc.addPublicTool(LLP1AntiKt4EMTopoJetMaxCellDecoratorTool)
239 
240  augmentationTools += [ LLP1AntiKt4EMTopoJetMaxCellDecoratorTool ]
241 
242  # Specific for Jets: AntiKt4EMPFlowJets
243  LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool = acc.popToolsAndMerge(MaxCellDecoratorCfg(
244  flags,
245  name = "LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool",
246  SGKey_jets = 'AntiKt4EMPFlowJets',
247  SGKey_taus = '',
248  SGKey_electrons = '',
249  SGKey_photons = ''))
250  acc.addPublicTool(LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool)
251 
252  augmentationTools += [ LLP1AntiKt4EMPFlowJetMaxCellDecoratorTool ]
253 
254  # Reclustered jets definitions
255  from JetRecConfig.JetRecConfig import registerAsInputConstit, JetRecCfg
256  from JetRecConfig.StandardSmallRJets import AntiKt4Truth, AntiKt4EMTopo
257  from JetRecConfig.JetDefinition import JetDefinition
258  from JetRecConfig.StandardJetConstits import stdConstitDic as cst
259 
260  registerAsInputConstit(AntiKt4EMTopo)
261  registerAsInputConstit(AntiKt4Truth)
262  cst.AntiKt4EMTopoJets.label = "EMTopoRC"
263  cst.AntiKt4TruthJets.label = "TruthRC"
264 
265  AntiKt10RCEMTopo = JetDefinition( "AntiKt",1.0,cst.AntiKt4EMTopoJets,
266  ghostdefs = ["Track", "TrackLRT", "LCTopoOrigin"],
267  modifiers = ("Sort", "Filter:200000",),
268  standardRecoMode = True,
269  lock = True,
270  )
271  if flags.Input.isMC:
272  AntiKt10RCTruth = JetDefinition("AntiKt",1.0,cst.AntiKt4TruthJets,
273  ghostdefs = [],
274  modifiers = ("Sort", "Filter:200000",),
275  standardRecoMode = True,
276  lock = True
277  )
278 
279  from DerivationFrameworkPhys.PhysCommonConfig import PhysCommonAugmentationsCfg
280  acc.merge(PhysCommonAugmentationsCfg(flags, TriggerListsHelper = kwargs['TriggerListsHelper']))
281  acc.merge(JetRecCfg(flags,AntiKt10RCEMTopo))
282  if flags.Input.isMC: acc.merge(JetRecCfg(flags,AntiKt10RCTruth))
283 
284  # MET with LRT in association map
285  from DerivationFrameworkJetEtMiss.METCommonConfig import METLRTCfg
286  acc.merge(METLRTCfg(flags, "AntiKt4EMTopo"))
287  acc.merge(METLRTCfg(flags, "AntiKt4EMPFlow"))
288 
289  # LRT Egamma
290  from DerivationFrameworkEGamma.EGammaLRTConfig import EGammaLRTCfg
291  acc.merge(EGammaLRTCfg(flags))
292 
293  from DerivationFrameworkLLP.LLPToolsConfig import LRTElectronLHSelectorsCfg
294  acc.merge(LRTElectronLHSelectorsCfg(flags))
295 
296  #Photon ID Selector
297  from DerivationFrameworkLLP.LLPToolsConfig import PhotonIsEMSelectorsCfg
298  acc.merge(PhotonIsEMSelectorsCfg(flags))
299 
300  # LRT Muons
301  from DerivationFrameworkMuons.MuonsCommonConfig import MuonsCommonCfg
302  acc.merge(MuonsCommonCfg(flags,
303  suff="LRT"))
304 
305  # flavor tagging
306  from DerivationFrameworkFlavourTag.FtagDerivationConfig import FtagJetCollectionsCfg
307  acc.merge(FtagJetCollectionsCfg(flags, ['AntiKt4EMTopoJets']))
308 
309  # VrtSecInclusive
310  from VrtSecInclusive.VrtSecInclusiveConfig import VrtSecInclusiveCfg
311 
312  acc.merge(VrtSecInclusiveCfg(flags,
313  name = "VrtSecInclusive",
314  AugmentingVersionString = "",
315  FillIntermediateVertices = False,
316  TrackLocation = MergedTrackCollection))
317  LLP1VrtSecInclusiveSuffixes.append("")
318 
319 
320  if flags.Input.isMC and flags.Derivation.LLP.doTrackSystematics:
321  from InDetTrackSystematicsTools.InDetTrackSystematicsToolsConfig import TrackSystematicsAlgCfg
322  TrackSystSuffix = "_TRK_EFF_LARGED0_GLOBAL__1down"
323  acc.merge(TrackSystematicsAlgCfg(
324  flags,
325  InputTrackContainer = MergedTrackCollection,
326  OutputTrackContainer = f"{MergedTrackCollection}{TrackSystSuffix}"))
327  acc.merge(VrtSecInclusiveCfg(flags,
328  name = f"VrtSecInclusive{TrackSystSuffix}",
329  AugmentingVersionString = TrackSystSuffix,
330  FillIntermediateVertices = False,
331  TrackLocation = f"{MergedTrackCollection}{TrackSystSuffix}"))
332  LLP1VrtSecInclusiveSuffixes.append(TrackSystSuffix)
333 
334  # short-lifetime VSI
335  shortLifetimeSuffix = "_shortLifetime"
336  acc.merge(VrtSecInclusiveCfg(flags,
337  name = "VrtSecInclusive_InDet"+shortLifetimeSuffix,
338  AugmentingVersionString = shortLifetimeSuffix,
339  FillIntermediateVertices = False,
340  TrackLocation = MergedTrackCollection,
341  twoTrkVtxFormingD0Cut = 1.0))
342  LLP1VrtSecInclusiveSuffixes.append(shortLifetimeSuffix)
343 
344  # leptons-only VSI
345  LeptonsSuffix = "_Leptons"
346  acc.merge(VrtSecInclusiveCfg(flags,
347  name = "VrtSecInclusive_InDet"+LeptonsSuffix,
348  AugmentingVersionString = LeptonsSuffix,
349  FillIntermediateVertices = False,
350  TrackLocation = MergedTrackCollection,
351  twoTrkVtxFormingD0Cut = 1.0,
352  doSelectTracksFromMuons = True,
353  doRemoveCaloTaggedMuons = True,
354  doSelectTracksFromElectrons = True,
355  MuonLocation = MergedMuonContainer,
356  ElectronLocation = MergedElectronContainer))
357  LLP1VrtSecInclusiveSuffixes.append(LeptonsSuffix)
358 
359  # track VSI
360  LepTrackSuffix = "_LepTrack"
361  acc.merge(VrtSecInclusiveCfg(flags,
362  name = "VrtSecInclusive_InDet"+LepTrackSuffix,
363  AugmentingVersionString = LepTrackSuffix,
364  FillIntermediateVertices = False,
365  TrackLocation = MergedTrackCollection,
366  MuonLocation = MergedMuonContainer,
367  ElectronLocation = MergedElectronContainer,
368  twoTrkVtxFormingD0Cut = 1.0,
369  doSelectIDAndGSFTracks = True,
370  doRemoveCaloTaggedMuons = True,
371  doRemoveNonLeptonVertices = True,
372  doAssociateNonSelectedTracks= False))
373  LLP1VrtSecInclusiveSuffixes.append(LepTrackSuffix)
374 
375  # Small-d0 Muons VSI
376  BoostedMuonsSuffix = "_BoostedMuons"
377  acc.merge(VrtSecInclusiveCfg(flags,
378  name = "VrtSecInclusive_InDet"+BoostedMuonsSuffix,
379  AugmentingVersionString = BoostedMuonsSuffix,
380  FillIntermediateVertices = False,
381  TrackLocation = MergedTrackCollection,
382  twoTrkVtxFormingD0Cut = 0.0,
383  doSelectTracksFromMuons = True,
384  doRemoveCaloTaggedMuons = True,
385  doSelectTracksFromElectrons = False,
386  MuonLocation = MergedMuonContainer,
387  do_PVvetoCut = False,
388  DoTwoTrSoftBtag = True,
389  TwoTrVrtMinDistFromPVCut = 0.5))
390  LLP1VrtSecInclusiveSuffixes.append(BoostedMuonsSuffix)
391 
392  # bad jet cleaning
393  jet_clean_prefix="DFCommonJets_"
394  jet_clean_container="AntiKt4EMTopoJets"
395  jet_clean_level="SuperLooseBadLLP"
396  from JetSelectorTools.JetSelectorToolsConfig import EventCleaningToolCfg, JetCleaningToolCfg
397  LLP1JetCleanSuperLLPTool = acc.popToolsAndMerge(JetCleaningToolCfg(flags,
398  "LLP1JetCleanSuperLLP",
399  jet_clean_container,
400  jet_clean_level,
401  False))
402  acc.addPublicTool(LLP1JetCleanSuperLLPTool)
403 
404  LLP1EventCleanSuperLLPTool = acc.popToolsAndMerge(EventCleaningToolCfg(flags,
405  "LLP1EventCleanSuperLLP",
406  jet_clean_level))
407  LLP1EventCleanSuperLLPTool.JetCleanPrefix = jet_clean_prefix
408  LLP1EventCleanSuperLLPTool.JetContainer = jet_clean_container
409  LLP1EventCleanSuperLLPTool.JetCleaningTool = LLP1JetCleanSuperLLPTool
410  acc.addPublicTool(LLP1EventCleanSuperLLPTool)
411 
412  LLP1EventCleanAlg = CompFactory.EventCleaningTestAlg(
413  "LLP1JetCleanDecoratorSuperLLP",
414  EventCleaningTool = LLP1EventCleanSuperLLPTool,
415  JetCollectionName = jet_clean_container,
416  EventCleanPrefix = jet_clean_prefix,
417  CleaningLevel = jet_clean_level,
418  doEvent = True)
419 
420  # Sequence for decorator locking.
421  # See comments in JetCommonConfig.AddEventCleanFlagsCfg.
422  acc.addSequence(CompFactory.AthSequencer('EventCleanSeq', Sequential=True))
423  acc.addEventAlgo(LLP1EventCleanAlg, 'EventCleanSeq')
424 
425  from DerivationFrameworkLLP.LLPToolsConfig import AugmentationToolLeadingJetsCfg
426  augmentationToolLeadingJets = acc.getPrimaryAndMerge(AugmentationToolLeadingJetsCfg(flags))
427  acc.addEventAlgo(CompFactory.DerivationFramework.DerivationKernel(name, AugmentationTools = [augmentationToolLeadingJets]))
428 
429  # Thinning tools...
430  from DerivationFrameworkInDet.InDetToolsConfig import TrackParticleThinningCfg, EgammaTrackParticleThinningCfg, MuonTrackParticleThinningCfg, TauTrackParticleThinningCfg, DiTauTrackParticleThinningCfg
431  from DerivationFrameworkTools.DerivationFrameworkToolsConfig import GenericObjectThinningCfg
432  from DerivationFrameworkTau.TauCommonConfig import TauThinningCfg
433 
434  # Inner detector tracks need to have greater than 10 GeV of pT
435  LLP1TrackParticleThinningTool = acc.getPrimaryAndMerge(TrackParticleThinningCfg(
436  flags,
437  name = "LLP1TrackParticleThinningTool",
438  StreamName = kwargs['StreamName'],
439  SelectionString = "InDetTrackParticles.pt>10*GeV",
440  InDetTrackParticlesKey = "InDetTrackParticles"))
441 
442  # Pixel tracklets need to have greater than 5 GeV of pT
443  LLP1DTTrackParticleThinningTool = acc.getPrimaryAndMerge(TrackParticleThinningCfg(
444  flags,
445  name = "LLP1DTTrackParticleThinningTool",
446  StreamName = kwargs['StreamName'],
447  SelectionString = "InDetDisappearingTrackParticles.pt>5*GeV",
448  InDetTrackParticlesKey = "InDetDisappearingTrackParticles"))
449 
450  # Include inner detector tracks associated with electrons
451  LLP1ElectronTPThinningTool = acc.getPrimaryAndMerge(EgammaTrackParticleThinningCfg(
452  flags,
453  name = "LLP1ElectronTPThinningTool",
454  StreamName = kwargs['StreamName'],
455  SGKey = "Electrons",
456  InDetTrackParticlesKey = "InDetTrackParticles"))
457 
458  # Include inner detector tracks associated with muons
459  LLP1MuonTPThinningTool = acc.getPrimaryAndMerge(MuonTrackParticleThinningCfg(
460  flags,
461  name = "LLP1MuonTPThinningTool",
462  StreamName = kwargs['StreamName'],
463  MuonKey = "Muons",
464  InDetTrackParticlesKey = "InDetTrackParticles"))
465  # Include LRT inner detector tracks associated with LRT muons
466  LLP1LRTMuonTPThinningTool = acc.getPrimaryAndMerge(MuonTrackParticleThinningCfg(
467  flags,
468  name = "LLP1LRTMuonTPThinningTool",
469  StreamName = kwargs['StreamName'],
470  MuonKey = "MuonsLRT",
471  InDetTrackParticlesKey = "InDetLargeD0TrackParticles"))
472 
473  # Tau-related containers: taus, tau tracks and associated ID tracks, neutral PFOs, secondary vertices
474  tau_thinning_expression = f"TauJets.pt >= {flags.Tau.MinPtDAOD}"
475  LLP1TauJetsThinningTool = acc.getPrimaryAndMerge(TauThinningCfg(
476  flags,
477  name = "LLP1TauJetThinningTool",
478  StreamName = kwargs['StreamName'],
479  Taus = "TauJets",
480  TauTracks = "TauTracks",
481  TrackParticles = "InDetTrackParticles",
482  TauNeutralPFOs = "TauNeutralParticleFlowObjects",
483  TauSecondaryVertices = "TauSecondaryVertices",
484  SelectionString = tau_thinning_expression))
485 
486  # Only keep tau tracks (and associated ID tracks) classified as charged tracks
487  LLP1TauTPThinningTool = acc.getPrimaryAndMerge(TauTrackParticleThinningCfg(
488  flags,
489  name = "LLP1TauTPThinningTool",
490  StreamName = kwargs['StreamName'],
491  TauKey = "TauJets",
492  InDetTrackParticlesKey = "InDetTrackParticles",
493  DoTauTracksThinning = True,
494  TauTracksKey = "TauTracks"))
495 
496  tau_murm_thinning_expression = tau_thinning_expression.replace('TauJets', 'TauJets_MuonRM')
497  LLP1TauJetMuonRMParticleThinningTool = acc.getPrimaryAndMerge(TauThinningCfg(
498  flags,
499  name = "LLP1TauJets_MuonRMThinningTool",
500  StreamName = kwargs['StreamName'],
501  Taus = "TauJets_MuonRM",
502  TauTracks = "TauTracks_MuonRM",
503  TrackParticles = "InDetTrackParticles",
504  TauNeutralPFOs = "TauNeutralParticleFlowObjects_MuonRM",
505  TauSecondaryVertices = "TauSecondaryVertices_MuonRM",
506  SelectionString = tau_murm_thinning_expression))
507 
508  # ID tracks associated with high-pt di-tau
509  LLP1DiTauTPThinningTool = acc.getPrimaryAndMerge(DiTauTrackParticleThinningCfg(
510  flags,
511  name = "LLP1DiTauTPThinningTool",
512  StreamName = kwargs['StreamName'],
513  DiTauKey = "DiTauJets",
514  InDetTrackParticlesKey = "InDetTrackParticles"))
515 
516 
517  LLP1DiTauLowPtThinningTool = acc.getPrimaryAndMerge(GenericObjectThinningCfg(
518  flags,
519  name = "LLP1DiTauLowPtThinningTool",
520  StreamName = kwargs['StreamName'],
521  ContainerName = "DiTauJetsLowPt",
522  SelectionString = "DiTauJetsLowPt.nSubjets > 1"))
523 
524  # ID tracks associated with low-pt ditau
525  LLP1DiTauLowPtTPThinningTool = acc.getPrimaryAndMerge(DiTauTrackParticleThinningCfg(
526  flags,
527  name = "LLP1DiTauLowPtTPThinningTool",
528  StreamName = kwargs['StreamName'],
529  DiTauKey = "DiTauJetsLowPt",
530  InDetTrackParticlesKey = "InDetTrackParticles",
531  SelectionString = "DiTauJetsLowPt.nSubjets > 1"))
532 
533 
534  # ID Tracks associated with secondary vertices
535  from DerivationFrameworkLLP.LLPToolsConfig import VSITrackParticleThinningCfg
536  LLP1VSITPThinningTool = acc.getPrimaryAndMerge(VSITrackParticleThinningCfg(flags,
537  name = "LLP1VSITPThinningTool",
538  StreamName = kwargs['StreamName'],
539  InDetTrackParticlesKey = "InDetTrackParticles",
540  AugVerStrings = LLP1VrtSecInclusiveSuffixes))
541  LLP1LRTVSITPThinningTool = acc.getPrimaryAndMerge(VSITrackParticleThinningCfg(flags,
542  name = "LLP1LRTVSITPThinningTool",
543  StreamName = kwargs['StreamName'],
544  InDetTrackParticlesKey = "InDetLargeD0TrackParticles",
545  AugVerStrings = LLP1VrtSecInclusiveSuffixes))
546 
547 
548 
549  # ID Tracks associated with jets
550  from DerivationFrameworkLLP.LLPToolsConfig import JetTrackParticleThinningCfg, JetLargeD0TrackParticleThinningCfg
551  LLP1JetTPThinningTool = acc.getPrimaryAndMerge(JetTrackParticleThinningCfg(flags,
552  name = "LLP1JetTPThinningTool",
553  StreamName = kwargs['StreamName'],
554  JetKey = "AntiKt4EMTopoJets",
555  SelectionString = "(AntiKt4EMTopoJets.pt > 20.*GeV) && (abs(AntiKt4EMTopoJets.eta) < 2.5)",
556  InDetTrackParticlesKey = "InDetTrackParticles"))
557 
558  LLP1FatJetTPThinningTool = acc.getPrimaryAndMerge(JetTrackParticleThinningCfg( flags,
559  name = "LLP1FatJetTPThinningTool",
560  StreamName = kwargs['StreamName'],
561  JetKey = "AntiKt10EMTopoRCJets",
562  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
563  InDetTrackParticlesKey = "InDetTrackParticles",
564  ))
565 
566  # LRT Tracks associated with jets
567  if flags.Tracking.doLargeD0:
568  LLP1LRTJetTPThinningTool = acc.getPrimaryAndMerge(JetLargeD0TrackParticleThinningCfg(flags,
569  name = "LLP1LRTJetTPThinningTool",
570  StreamName = kwargs['StreamName'],
571  JetKey = "AntiKt4EMTopoJets",
572  SelectionString = "(AntiKt4EMTopoJets.pt > 20.*GeV) && (abs(AntiKt4EMTopoJets.eta) < 2.5)",
573  InDetTrackParticlesKey = "InDetLargeD0TrackParticles"))
574 
575  LLP1LRTFatJetTPThinningTool = acc.getPrimaryAndMerge(JetLargeD0TrackParticleThinningCfg(flags,
576  name = "LLP1LRTFatJetTPThinningTool",
577  StreamName = kwargs['StreamName'],
578  JetKey = "AntiKt10EMTopoRCJets",
579  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
580  InDetTrackParticlesKey = "InDetLargeD0TrackParticles",
581  ))
582 
583  # high dE/dx and low pT tracks
584  from DerivationFrameworkLLP.LLPToolsConfig import PixeldEdxTrackParticleThinningCfg
585  LLP1PixeldEdxTrackParticleThinningTool = acc.getPrimaryAndMerge(PixeldEdxTrackParticleThinningCfg(
586  flags,
587  name = "LLP1PixeldEdxTrackParticleThinningTool",
588  StreamName = kwargs['StreamName'],
589  InDetTrackParticlesKey = "InDetTrackParticles"))
590 
591  LLP1PixeldEdxDTTrackParticleThinningTool = acc.getPrimaryAndMerge(PixeldEdxTrackParticleThinningCfg(
592  flags,
593  name = "LLP1PixeldEdxDTTrackParticleThinningTool",
594  StreamName = kwargs['StreamName'],
595  InDetTrackParticlesKey = "InDetDisappearingTrackParticles"))
596 
597 
598  #Thinning CaloCalTopoClusters associated to AntiKt4EMTopoJets
599  from DerivationFrameworkCalo.DerivationFrameworkCaloConfig import JetCaloClusterThinningCfg
600 
601  LLP1CCThinningTool = acc.getPrimaryAndMerge(JetCaloClusterThinningCfg(
602  flags,
603  name = "LLP1CCTool",
604  StreamName = kwargs['StreamName'],
605  SGKey = "AntiKt4EMTopoJets",
606  TopoClCollectionSGKey = "CaloCalTopoClusters",
607  SelectionString = "(AntiKt4EMTopoJets.DFDecoratorLeadingJets)",
608  AdditionalClustersKey = ["EMOriginTopoClusters","LCOriginTopoClusters"]
609  ))
610 
611 
612 
613 
614 
615  # Finally the kernel itself
616  thinningTools = [LLP1TrackParticleThinningTool,
617  LLP1DTTrackParticleThinningTool,
618  LLP1ElectronTPThinningTool,
619  LLP1MuonTPThinningTool,
620  LLP1LRTMuonTPThinningTool,
621  LLP1TauJetsThinningTool,
622  LLP1TauTPThinningTool,
623  LLP1TauJetMuonRMParticleThinningTool,
624  LLP1DiTauTPThinningTool,
625  LLP1DiTauLowPtThinningTool,
626  LLP1DiTauLowPtTPThinningTool,
627  LLP1VSITPThinningTool,
628  LLP1LRTVSITPThinningTool,
629  LLP1JetTPThinningTool,
630  LLP1FatJetTPThinningTool,
631  LLP1PixeldEdxTrackParticleThinningTool,
632  LLP1PixeldEdxDTTrackParticleThinningTool,
633  LLP1CCThinningTool
634  ]
635 
636  if flags.Tracking.doLargeD0:
637  thinningTools.append(LLP1LRTJetTPThinningTool)
638  thinningTools.append(LLP1LRTFatJetTPThinningTool)
639 
640  # Additionnal augmentations
641 
642  # Compute RC substructure variables from energy clusters
643  from DerivationFrameworkLLP.LLPToolsConfig import RCJetSubstructureAugCfg
644  LLP1RCJetSubstructureClustTrimAugTool = acc.getPrimaryAndMerge(RCJetSubstructureAugCfg(flags,
645  name = "LLP1RCJetSubstructureClustTrimAugTool",
646  StreamName = kwargs['StreamName'],
647  JetContainerKey = "AntiKt10EMTopoRCJets",
648  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
649  GhostConstitNames = ["GhostLCTopoOrigin"],
650  Suffix = "clusterTrim",
651  Grooming = "Trimming",
652  RClusTrim = 0.2,
653  PtFracTrim = 0.05
654  ))
655  RCSubstructureClusterTrimAug = CompFactory.DerivationFramework.CommonAugmentation("RCSubstructureClusterTrimAug", AugmentationTools = [LLP1RCJetSubstructureClustTrimAugTool])
656  acc.addEventAlgo(RCSubstructureClusterTrimAug)
657 
658  LLP1RCJetSubstructureClustSDAugTool = acc.getPrimaryAndMerge(RCJetSubstructureAugCfg(flags,
659  name = "LLP1RCJetSubstructureClustSDAugTool",
660  StreamName = kwargs['StreamName'],
661  JetContainerKey = "AntiKt10EMTopoRCJets",
662  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
663  GhostConstitNames = ["GhostLCTopoOrigin"],
664  Suffix = "clusterSoftDrop",
665  Grooming = "SoftDrop",
666  BetaSoft = 1.0,
667  ZcutSoft = 0.1
668  ))
669  RCSubstructureClusterSDAug = CompFactory.DerivationFramework.CommonAugmentation("RCSubstructureClusterSDAug", AugmentationTools = [LLP1RCJetSubstructureClustSDAugTool])
670  acc.addEventAlgo(RCSubstructureClusterSDAug)
671 
672  # Compute RC substructure variables from tracks
673  from DerivationFrameworkLLP.LLPToolsConfig import RCJetSubstructureAugCfg
674  LLP1RCJetSubstructureTrackTrimAugTool = acc.getPrimaryAndMerge(RCJetSubstructureAugCfg( flags,
675  name = "LLP1RCJetSubstructureTrackTrimAugTool",
676  StreamName = kwargs['StreamName'],
677  JetContainerKey = "AntiKt10EMTopoRCJets",
678  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
679  GhostConstitNames = ["GhostTrack", "GhostTrackLRT"],
680  Suffix = "trackTrim",
681  Grooming = "Trimming",
682  RClusTrim = 0.2,
683  PtFracTrim = 0.05
684  ))
685  RCSubstructureTrackTrimAug = CompFactory.DerivationFramework.CommonAugmentation("RCSubstructureTrackTrimAug", AugmentationTools = [LLP1RCJetSubstructureTrackTrimAugTool])
686  acc.addEventAlgo(RCSubstructureTrackTrimAug)
687 
688  from DerivationFrameworkLLP.LLPToolsConfig import RCJetSubstructureAugCfg
689  LLP1RCJetSubstructureTrackSDAugTool = acc.getPrimaryAndMerge(RCJetSubstructureAugCfg( flags,
690  name = "LLP1RCJetSubstructureTrackSDAugTool",
691  StreamName = kwargs['StreamName'],
692  JetContainerKey = "AntiKt10EMTopoRCJets",
693  SelectionString = "(AntiKt10EMTopoRCJets.pt > 200.*GeV) && (abs(AntiKt10EMTopoRCJets.eta) < 2.5)",
694  GhostConstitNames = ["GhostTrack", "GhostTrackLRT"],
695  Suffix = "trackSoftDrop",
696  Grooming = "SoftDrop",
697  BetaSoft = 1.0,
698  ZcutSoft = 0.1
699  ))
700  RCSubstructureTrackSDAug = CompFactory.DerivationFramework.CommonAugmentation("RCSubstructureTrackSDAug", AugmentationTools = [LLP1RCJetSubstructureTrackSDAugTool])
701  acc.addEventAlgo(RCSubstructureTrackSDAug)
702 
703 
704 
705  # Skimming
706  skimmingTools = []
707 
708  from DerivationFrameworkLLP.LLPToolsConfig import LLP1TriggerSkimmingToolCfg
709  LLP1TriggerSkimmingTool = acc.getPrimaryAndMerge(LLP1TriggerSkimmingToolCfg(flags,
710  name = "LLP1TriggerSkimmingTool",
711  TriggerListsHelper = kwargs['TriggerListsHelper']))
712 
713  skimmingTools.append(LLP1TriggerSkimmingTool)
714 
715  DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
716  acc.addEventAlgo(DerivationKernel(name,
717  SkimmingTools = skimmingTools,
718  ThinningTools = thinningTools,
719  AugmentationTools = augmentationTools))
720 
721  return acc
722 
723 
724 
725 
726 
727 
728 def LLP1Cfg(flags):
729  acc = ComponentAccumulator()
730  # Get the lists of triggers needed for trigger matching.
731  # This is needed at this scope (for the slimming) and further down in the config chain
732  # for actually configuring the matching, so we create it here and pass it down
733  # TODO: this should ideally be called higher up to avoid it being run multiple times in a train
734  from DerivationFrameworkPhys.TriggerListsHelper import TriggerListsHelper
735  LLP1TriggerListsHelper = TriggerListsHelper(flags)
736 
737  # Common augmentations
738  acc.merge(LLP1KernelCfg(flags, name="LLP1Kernel", StreamName = 'StreamDAOD_LLP1', TriggerListsHelper = LLP1TriggerListsHelper))
739 
740 
743  from IsolationSelection.IsolationSelectionConfig import IsoCloseByAlgsCfg
744  # We can't pass non-LRT containers to the LLP algorithm.
745  # Otherwise, if this is run in conjunction with PHYS, the decorations
746  # produced by the PHYS algorithm will be overwritten. To get those
747  # decorations produced when LLP1 is run alone, we schedule a separate
748  # algorithm for those but make it the same as the one in PHYS so that
749  # they'll be merged when both formats are used together.
750  acc.merge(IsoCloseByAlgsCfg(flags, isPhysLite = False, stream_name = 'StreamDAOD_LLP1'))
751  contNames = [ "LRTElectrons", "MuonsLRT" ]
752  acc.merge(IsoCloseByAlgsCfg(flags, suff = "_LLP1", isPhysLite = False, containerNames = contNames, useSelTools = True, stream_name = 'StreamDAOD_LLP1'))
753 
754  # ============================
755  # Define contents of the format
756  # =============================
757  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
758  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
759  from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
760 
761  LLP1SlimmingHelper = SlimmingHelper("LLP1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
762 
763  LLP1SlimmingHelper.SmartCollections = ["EventInfo",
764  "Electrons",
765  "LRTElectrons",
766  "Photons",
767  "Muons",
768  "MuonsLRT",
769  "PrimaryVertices",
770  "InDetTrackParticles",
771  "InDetLargeD0TrackParticles",
772  "AntiKt4EMTopoJets",
773  "AntiKt4EMPFlowJets",
774  "BTagging_AntiKt4EMTopo",
775  "BTagging_AntiKt4EMPFlow",
776  "BTagging_AntiKtVR30Rmax4Rmin02Track",
777  "MET_Baseline_AntiKt4EMTopo",
778  "MET_Baseline_AntiKt4EMPFlow",
779  "TauJets",
780  "TauJets_MuonRM",
781  "DiTauJets",
782  "DiTauJetsLowPt",
783  "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
784  "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets",
785  "AntiKtVR30Rmax4Rmin02PV0TrackJets",
786  ]
787 
788  LLP1SlimmingHelper.AllVariables = ["InDetDisappearingTrackParticles",
789  "MSDisplacedVertex",
790  "MuonSpectrometerTrackParticles",
791  "UnAssocMuonSegments",
792  "MuonSegments",
793  "MuonSegments_LRT",
794  "MSonlyTracklets",
795  "CombinedMuonTrackParticles",
796  "ExtrapolatedMuonTrackParticles",
797  "CombinedMuonsLRTTrackParticles",
798  "ExtraPolatedMuonsLRTTrackParticles",
799  "MSOnlyExtraPolatedMuonsLRTTrackParticles",
800  "CombinedStauTrackParticles",
801  "AntiKt4EMTopoJets",
802  "egammaClusters",
803  "ElectronRingSets",
804  "ElectronCaloRings",
805  "JetRingSets",
806  "JetCaloRings",
807  "SlowMuons",
808  #"LCOriginTopoClusters",
809  "EMOriginTopoClusters",
810  "Staus",
811  "METAssoc_AntiKt4EMTopo",
812  "MET_Core_AntiKt4EMTopo",
813  "METAssoc_AntiKt4EMPFlow",
814  "MET_Core_AntiKt4EMPFlow",
815  "PixelClusters",
816  "PixelMSOSs",
817  "DisappearingPixelMSOSs",
818  "SCT_Clusters",
819  "SCT_MSOSs",
820  "DisappearingSCT_MSOSs",
821  ]
822 
823 
824  excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV"
825  StaticContent = []
826  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"]
827  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData]
828  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
829  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Medium_VerticesAux." + excludedVertexAuxData]
830  StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"]
831  StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData]
832  StaticContent += ["xAOD::JetContainer#AntiKt10EMTopoRCJets","xAOD::JetAuxContainer#AntiKt10EMTopoRCJetsAux.-PseudoJet"]
833  StaticContent += ["CaloClusterCellLinkContainer#CaloCalTopoClusters_links"]
834 
835  for wp in LLP1VrtSecInclusiveSuffixes:
836  StaticContent += ["xAOD::VertexContainer#VrtSecInclusive_SecondaryVertices" + wp]
837  StaticContent += ["xAOD::VertexAuxContainer#VrtSecInclusive_SecondaryVertices" + wp + "Aux."]
838 
839  LLP1SlimmingHelper.ExtraVariables += ["AntiKt10TruthTrimmedPtFrac5SmallR20Jets.Tau1_wta.Tau2_wta.Tau3_wta.D2.GhostBHadronsFinalCount",
840  "Electrons.LHValue.DFCommonElectronsLHVeryLooseNoPixResult.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z.f3",
841  "LRTElectrons.LHValue.DFCommonElectronsLHVeryLooseNoPixResult.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z.f3",
842  "Photons.DFCommonPhotonsIsEMMedium.DFCommonPhotonsIsEMMediumIsEMValue.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z.f3",
843  "Muons.meanDeltaADCCountsMDT",
844  "egammaClusters.phi_sampl.eta0.phi0",
845  "LRTegammaClusters.phi_sampl.eta0.phi0",
846  "AntiKt4EMTopoJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.PartonTruthLabelID.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.GhostBHadronsFinal.GhostCHadronsFinal.GhostTrack.GhostTrackCount.GhostTrackLRT.GhostTrackLRTCount.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z",
847  "AntiKt4EMPFlowJets.DFCommonJets_QGTagger_truthjet_nCharged.DFCommonJets_QGTagger_truthjet_pt.DFCommonJets_QGTagger_truthjet_eta.DFCommonJets_QGTagger_NTracks.DFCommonJets_QGTagger_TracksWidth.DFCommonJets_QGTagger_TracksC1.PartonTruthLabelID.DFCommonJets_fJvt.ConeExclBHadronsFinal.ConeExclCHadronsFinal.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.GhostBHadronsFinal.GhostCHadronsFinal.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z",
848  "AntiKtVR30Rmax4Rmin02TrackJets_BTagging201903.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.GhostTausFinal.GhostTausFinalCount",
849  "AntiKtVR30Rmax4Rmin02TrackJets_BTagging201810.GhostBHadronsFinal.GhostCHadronsFinal.GhostBHadronsFinalCount.GhostBHadronsFinalPt.GhostCHadronsFinalCount.GhostCHadronsFinalPt.GhostTausFinal.GhostTausFinalCount",
850  "TruthPrimaryVertices.t.x.y.z.sumPt2",
851  "PrimaryVertices.t.x.y.z.sumPt2.covariance",
852  "InDetTrackParticles.d0.z0.vz.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.truthParticleLink.truthMatchProbability.radiusOfFirstHit.hitPattern.patternRecoInfo",
853  "InDetTrackParticles.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.numberOfTRTHits.numberOfTRTOutliers",
854  "InDetTrackParticles.numberOfIBLOverflowsdEdx.numberOfUsedHitsdEdx.pixeldEdx",
855  "InDetTrackParticles.expectInnermostPixelLayerHit.expectNextToInnermostPixelLayerHit.numberOfNextToInnermostPixelLayerHits.numberOfContribPixelLayers.numberOfGangedFlaggedFakes.numberOfPixelOutliers.numberOfPixelSplitHits.numberOfPixelSpoiltHits",
856  "InDetTrackParticles.numberOfSCTOutliers.numberOfSCTSpoiltHits",
857  "InDetTrackParticles.numberOfTRTHoles.numberOfTRTDeadStraws.numberOfTRTSharedHits.numberOfTRTHighThresholdHits.numberOfTRTHighThresholdHitsTotal.numberOfTRTHighThresholdOutliers.TRTdEdx.TRTdEdxUsedHits.hitPattern",
858  "InDetTrackParticles.truthMatchProbability.truthOrigin.truthType",
859  "InDetTrackParticles.TrkIsoPtPdEdx_ptcone20.TrkIsoPtPdEdx_ptcone30.TrkIsoPtPdEdx_ptcone40.TrkIsoPtTightPdEdx_ptcone20.TrkIsoPtTightPdEdx_ptcone30.TrkIsoPtTightPdEdx_ptcone40",
860  "InDetTrackParticles.LLP1_ptcone20.LLP1_ptcone30.LLP1_ptcone40.LLP1_ptvarcone20.LLP1_ptvarcone30.LLP1_ptvarcone40.definingParametersCovMatrixDiag.definingParametersCovMatrixOffDiag",
861  "InDetTrackParticles.LLP1_topoetcone20.LLP1_topoetcone30.LLP1_topoetcone40.LLP1_topoetcone20NonCoreCone.LLP1_topoetcone30NonCoreCone.LLP1_topoetcone40NonCoreCone",
862  "InDetTrackParticles.LLP1_CaloCelldEta.LLP1_CaloCelldPhi.LLP1_CaloCelldR.LLP1_CaloCelldX.LLP1_CaloCelldY.LLP1_CaloCelldZ.LLP1_CaloCellE.LLP1_CaloCellEta.LLP1_CaloCellGain.LLP1_CaloCellID.LLP1_CaloCellPhi.LLP1_CaloCellProvenance.LLP1_CaloCellQuality.LLP1_CaloCellR.LLP1_CaloCellSampling.LLP1_CaloCellTime.LLP1_CaloCellX.LLP1_CaloCellY.LLP1_CaloCellZ.LLP1_CaloCellEneDiff.LLP1_CaloCellTimeDiff",
863  "InDetTrackParticles.Reco_msosLink",
864 
865  "InDetLargeD0TrackParticles.d0.z0.vz.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.truthParticleLink.truthMatchProbability.radiusOfFirstHit.hitPattern.patternRecoInfo",
866  "GSFTrackParticles.d0.z0.vz.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.truthParticleLink.truthMatchProbability.radiusOfFirstHit.numberOfPixelHoles.numberOfSCTHoles.numberDoF.chiSquared.hitPattern.truthOrigin.truthType",
867  "LRTGSFTrackParticles.d0.z0.vz.TTVA_AMVFVertices.TTVA_AMVFWeights.eProbabilityHT.truthParticleLink.truthMatchProbability.radiusOfFirstHit.numberOfPixelHoles.numberOfSCTHoles.numberDoF.chiSquared.hitPattern.truthOrigin.truthType",
868  "EventInfo.hardScatterVertexLink.timeStampNSOffset",
869  "EventInfo.GenFiltHT.GenFiltMET.GenFiltHTinclNu.GenFiltPTZ.GenFiltFatJ",
870  "EventInfo.hardScatterVertexLink.timeStampNSOffset",
871  "EventInfo.DFCommonJets_eventClean_SuperLooseBadLLP.DFCommonJets_eventClean_SuperLooseBadLLP_EMTopo.DFCommonJets_eventClean_LooseBadLLP_EMTopo",
872  "TauJets.dRmax.etOverPtLeadTrk.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z",
873  "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET.ex.ey",
874  "HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht.ex.ey"]
875 
876 
877  VSITrackAuxVars = [
878  "is_selected", "is_associated", "is_svtrk_final", "pt_wrtSV", "eta_wrtSV",
879  "phi_wrtSV", "d0_wrtSV", "z0_wrtSV", "errP_wrtSV", "errd0_wrtSV",
880  "errz0_wrtSV", "chi2_toSV"
881  ]
882 
883  for suffix in LLP1VrtSecInclusiveSuffixes:
884  LLP1SlimmingHelper.ExtraVariables += [ "InDetTrackParticles." + '.'.join( [ var + suffix for var in VSITrackAuxVars] ) ]
885  LLP1SlimmingHelper.ExtraVariables += [ "InDetLargeD0TrackParticles." + '.'.join( [ var + suffix for var in VSITrackAuxVars] ) ]
886  LLP1SlimmingHelper.ExtraVariables += [ "GSFTrackParticles." + '.'.join( [ var + suffix for var in VSITrackAuxVars] ) ]
887  LLP1SlimmingHelper.ExtraVariables += [ "LRTGSFTrackParticles." + '.'.join( [ var + suffix for var in VSITrackAuxVars] ) ]
888 
889  LLP1SlimmingHelper.ExtraVariables.append('CaloCalTopoClusters.e_sampl.calM.calE.calEta.calPhi.CENTER_MAG.SECOND_TIME')
890  LLP1SlimmingHelper.AppendToDictionary["EMOriginTopoClusters"]='xAOD::CaloClusterContainer'
891  LLP1SlimmingHelper.AppendToDictionary["EMOriginTopoClustersAux"]='xAOD::ShallowAuxContainer'
892  LLP1SlimmingHelper.ExtraVariables.append('EMOriginTopoClusters.e_sampl.calM.calE.calEta.calPhi.CENTER_MAG.SECOND_TIME')
893 
894  # Truth containers
895  if flags.Input.isMC:
896 
897  from DerivationFrameworkMCTruth.MCTruthCommonConfig import addTruth3ContentToSlimmerTool
898  addTruth3ContentToSlimmerTool(LLP1SlimmingHelper)
899  LLP1SlimmingHelper.AllVariables += ['TruthHFWithDecayParticles','TruthHFWithDecayVertices','TruthCharm','TruthPileupParticles','InTimeAntiKt4TruthJets','OutOfTimeAntiKt4TruthJets', 'AntiKt4TruthJets']
900  LLP1SlimmingHelper.ExtraVariables += ["Electrons.TruthLink",
901  "LRTElectrons.TruthLink",
902  "Muons.TruthLink",
903  "MuonsLRT.TruthLink",
904  "Photons.TruthLink"]
905  if flags.Derivation.LLP.saveFullTruth:
906  LLP1SlimmingHelper.ExtraVariables += ['TruthParticles', 'TruthVertices']
907  StaticContent += ["xAOD::JetContainer#AntiKt10TruthRCJets","xAOD::JetAuxContainer#AntiKt10TruthRCJetsAux.-PseudoJet"]
908 
909 
910  from DerivationFrameworkEGamma.PhotonsCPDetailedContent import (
911  PhotonsCPDetailedContent,
912  )
913  LLP1SlimmingHelper.ExtraVariables += PhotonsCPDetailedContent
914 
915 
916  from DerivationFrameworkJetEtMiss.JetCommonConfig import addOriginCorrectedClustersToSlimmingTool
917  addOriginCorrectedClustersToSlimmingTool(LLP1SlimmingHelper,writeLC=True,writeEM=True)
918  LLP1SlimmingHelper.StaticContent = StaticContent
919 
920  # Trigger content
921  LLP1SlimmingHelper.IncludeTriggerNavigation = False
922  LLP1SlimmingHelper.IncludeJetTriggerContent = False
923  LLP1SlimmingHelper.IncludeMuonTriggerContent = False
924  LLP1SlimmingHelper.IncludeEGammaTriggerContent = False
925  LLP1SlimmingHelper.IncludeTauTriggerContent = False
926  LLP1SlimmingHelper.IncludeEtMissTriggerContent = False
927  LLP1SlimmingHelper.IncludeBJetTriggerContent = False
928  LLP1SlimmingHelper.IncludeBPhysTriggerContent = False
929  LLP1SlimmingHelper.IncludeMinBiasTriggerContent = False
930 
931  # Trigger matching
932  # Run 2
933  if flags.Trigger.EDMVersion == 2:
934  from DerivationFrameworkPhys.TriggerMatchingCommonConfig import AddRun2TriggerMatchingToSlimmingHelper
935  from DerivationFrameworkLLP.LLPToolsConfig import LLP1TriggerMatchingToolRun2Cfg
936  AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = LLP1SlimmingHelper,
937  OutputContainerPrefix = "TrigMatch_",
938  TriggerList = LLP1TriggerListsHelper.Run2TriggerNamesTau)
939  AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = LLP1SlimmingHelper,
940  OutputContainerPrefix = "TrigMatch_",
941  TriggerList = LLP1TriggerListsHelper.Run2TriggerNamesNoTau)
942  # Schedule additional pre-matching against LLP offline muons and electrons
943  acc.merge(LLP1TriggerMatchingToolRun2Cfg(flags,
944  name = "LRTTriggerMatchingTool",
945  OutputContainerPrefix = "LRTTrigMatch_",
946  TriggerList = LLP1TriggerListsHelper.Run2TriggerNamesNoTau,
947  InputElectrons=MergedElectronContainer,
948  InputMuons=MergedMuonContainer
949  ))
950  # And add the additional LLP trigger matching branches to the slimming helper
951  AddRun2TriggerMatchingToSlimmingHelper(SlimmingHelper = LLP1SlimmingHelper,
952  OutputContainerPrefix = "LRTTrigMatch_",
953  TriggerList = LLP1TriggerListsHelper.Run2TriggerNamesNoTau,
954  InputElectrons=MergedElectronContainer,
955  InputMuons=MergedMuonContainer
956  )
957  # Run 3, or Run 2 with navigation conversion
958  if flags.Trigger.EDMVersion == 3 or (flags.Trigger.EDMVersion == 2 and flags.Trigger.doEDMVersionConversion):
959  from TrigNavSlimmingMT.TrigNavSlimmingMTConfig import AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
961 
962  # Output stream
963  LLP1ItemList = LLP1SlimmingHelper.GetItemList()
964  acc.merge(OutputStreamCfg(flags, "DAOD_LLP1", ItemList=LLP1ItemList, AcceptAlgs=["LLP1Kernel"]))
965  acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_LLP1", AcceptAlgs=["LLP1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData, MetadataCategory.TruthMetaData]))
966 
967  return acc
968 
python.LLPToolsConfig.RCJetSubstructureAugCfg
def RCJetSubstructureAugCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:39
python.LLPToolsConfig.LLP1TriggerSkimmingToolCfg
def LLP1TriggerSkimmingToolCfg(flags, name, TriggerListsHelper, **kwargs)
Definition: LLPToolsConfig.py:91
TrigNavSlimmingMTConfig.AddRun3TrigNavSlimmingCollectionsToSlimmingHelper
def AddRun3TrigNavSlimmingCollectionsToSlimmingHelper(slimmingHelper)
Definition: TrigNavSlimmingMTConfig.py:98
python.LLPToolsConfig.LRTMuonMergerAlg
def LRTMuonMergerAlg(flags, name="LLP1_MuonLRTMergingAlg", **kwargs)
Definition: LLPToolsConfig.py:180
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.LLPToolsConfig.VSITrackParticleThinningCfg
def VSITrackParticleThinningCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:12
python.FtagDerivationConfig.FtagJetCollectionsCfg
def FtagJetCollectionsCfg(cfgFlags, jet_cols, pv_cols=None, trackAugmenterPrefix=None)
Definition: FtagDerivationConfig.py:33
python.EGammaLRTConfig.EGammaLRTCfg
def EGammaLRTCfg(ConfigFlags)
Definition: EGammaLRTConfig.py:15
python.JetSelectorToolsConfig.EventCleaningToolCfg
def EventCleaningToolCfg(ConfigFlags, name, cleaningLevel)
Definition: JetSelectorToolsConfig.py:14
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=[], MetadataItemList=[], disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, AcceptAlgs=[], HelperTools=[])
Definition: OutputStreamConfig.py:12
python.JetCommonConfig.addOriginCorrectedClustersToSlimmingTool
def addOriginCorrectedClustersToSlimmingTool(slimhelper, writeLC=False, writeEM=False)
Helper to add origin corrected clusters to output.
Definition: JetCommonConfig.py:276
DerivationFrameworkCaloConfig.JetCaloClusterThinningCfg
def JetCaloClusterThinningCfg(flags, **kwargs)
Definition: DerivationFrameworkCaloConfig.py:104
python.LLPToolsConfig.TrackParametersKVUCfg
def TrackParametersKVUCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:56
IsolationSelectionConfig.IsoCloseByAlgsCfg
def IsoCloseByAlgsCfg(flags, suff="", isPhysLite=False, containerNames=["Muons", "Electrons", "Photons"], stream_name="", ttva_wp="Nonprompt_All_MaxWeight", useSelTools=False)
Definition: IsolationSelectionConfig.py:146
VrtSecInclusiveConfig.VrtSecInclusiveCfg
def VrtSecInclusiveCfg(flags, name="VrtSecInclusive", **kwargs)
Definition: VrtSecInclusiveConfig.py:10
python.JetSelectorToolsConfig.JetCleaningToolCfg
def JetCleaningToolCfg(ConfigFlags, name, jetdef, cleaningLevel, useDecorations)
Definition: JetSelectorToolsConfig.py:6
python.InDetToolsConfig.TrackParticleThinningCfg
def TrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:458
python.LLPToolsConfig.TrackParticleCaloCellDecoratorCfg
def TrackParticleCaloCellDecoratorCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:74
python.InDetTrackSelectionToolConfig.InDetTrackSelectionTool_Loose_Cfg
def InDetTrackSelectionTool_Loose_Cfg(flags, name="InDetTrackSelectionTool_Loose", **kwargs)
Configs based on CutLevel Loose #####.
Definition: InDetTrackSelectionToolConfig.py:36
python.InDetToolsConfig.DiTauTrackParticleThinningCfg
def DiTauTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:549
python.TriggerMatchingCommonConfig.AddRun2TriggerMatchingToSlimmingHelper
def AddRun2TriggerMatchingToSlimmingHelper(**kwargs)
Definition: TriggerMatchingCommonConfig.py:49
DerivationFrameworkCaloConfig.MaxCellDecoratorCfg
def MaxCellDecoratorCfg(flags, **kwargs)
Definition: DerivationFrameworkCaloConfig.py:7
python.LLPToolsConfig.LRTElectronLHSelectorsCfg
def LRTElectronLHSelectorsCfg(flags)
Definition: LLPToolsConfig.py:221
python.LLPToolsConfig.LRTElectronMergerAlg
def LRTElectronMergerAlg(flags, name="LLP1_ElectronLRTMergingAlg", **kwargs)
Definition: LLPToolsConfig.py:186
python.AtlasExtrapolatorConfig.AtlasExtrapolatorCfg
def AtlasExtrapolatorCfg(flags, name='AtlasExtrapolator')
Definition: AtlasExtrapolatorConfig.py:63
python.JetRecConfig.registerAsInputConstit
def registerAsInputConstit(jetdef)
Definition: JetRecConfig.py:852
python.LLPToolsConfig.JetLargeD0TrackParticleThinningCfg
def JetLargeD0TrackParticleThinningCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:30
python.TrkVertexFitterUtilsConfig.AtlasFullLinearizedTrackFactoryCfg
def AtlasFullLinearizedTrackFactoryCfg(flags, name='AtlasFullLinearizedTrkFactory', **kwargs)
Definition: TrkVertexFitterUtilsConfig.py:20
InDetTrackSystematicsToolsConfig.TrackSystematicsAlgCfg
def TrackSystematicsAlgCfg(flags, name="InDetTrackSystematicsAlg", **kwargs)
Definition: InDetTrackSystematicsToolsConfig.py:53
python.JetRecConfig.JetRecCfg
def JetRecCfg(flags, jetdef, returnConfiguredDef=False)
Top level functions returning ComponentAccumulator out of JetDefinition.
Definition: JetRecConfig.py:36
python.MuonsCommonConfig.MuonsCommonCfg
def MuonsCommonCfg(flags, suff="")
Definition: MuonsCommonConfig.py:13
python.LLP1.LLP1KernelCfg
def LLP1KernelCfg(flags, name='LLP1Kernel', **kwargs)
Definition: LLP1.py:20
DerivationFrameworkCaloConfig.MaxCellDecoratorKernelCfg
def MaxCellDecoratorKernelCfg(flags, name="MaxCellDecoratorKernel", **kwargs)
Definition: DerivationFrameworkCaloConfig.py:63
python.DerivationFrameworkToolsConfig.GenericObjectThinningCfg
def GenericObjectThinningCfg(ConfigFlags, name, **kwargs)
Definition: DerivationFrameworkToolsConfig.py:20
python.InDetToolsConfig.JetTrackParticleThinningCfg
def JetTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:560
python.InDetToolsConfig.MuonTrackParticleThinningCfg
def MuonTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:528
python.InDetToolsConfig.TauTrackParticleThinningCfg
def TauTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:539
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.LLP1.LLP1Cfg
def LLP1Cfg(flags)
Definition: LLP1.py:728
IsoToolsConfig.CaloIsolationToolCfg
def CaloIsolationToolCfg(flags, **kwargs)
Definition: IsoToolsConfig.py:25
python.TrackIsolationDecoratorConfig.TrackIsolationToolCfg
def TrackIsolationToolCfg(ConfigFlags, name="TrackIsolationTool", **kwargs)
Definition: TrackIsolationDecoratorConfig.py:12
python.MCTruthCommonConfig.addTruth3ContentToSlimmerTool
def addTruth3ContentToSlimmerTool(slimmer)
Definition: MCTruthCommonConfig.py:462
python.InDetToolsConfig.InDetLRTMergeCfg
def InDetLRTMergeCfg(flags, name="InDetLRTMerge", **kwargs)
Definition: InDetToolsConfig.py:14
python.InDetToolsConfig.EgammaTrackParticleThinningCfg
def EgammaTrackParticleThinningCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:579
python.LLPToolsConfig.PhotonIsEMSelectorsCfg
def PhotonIsEMSelectorsCfg(flags)
Definition: LLPToolsConfig.py:193
python.TauCommonConfig.TauThinningCfg
def TauThinningCfg(flags, name, **kwargs)
Definition: TauCommonConfig.py:197
python.LLPToolsConfig.AugmentationToolLeadingJetsCfg
def AugmentationToolLeadingJetsCfg(flags)
Definition: LLPToolsConfig.py:48
python.PhysCommonConfig.PhysCommonAugmentationsCfg
def PhysCommonAugmentationsCfg(flags, **kwargs)
Definition: PhysCommonConfig.py:14
python.LLPToolsConfig.PixeldEdxTrackParticleThinningCfg
def PixeldEdxTrackParticleThinningCfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:83
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:222
SlimmingHelper
Definition: SlimmingHelper.py:1
python.HION12.DerivationKernel
DerivationKernel
Definition: HION12.py:66
python.InDetToolsConfig.IsolationTrackDecoratorCfg
def IsolationTrackDecoratorCfg(flags, name, **kwargs)
Definition: InDetToolsConfig.py:447
python.METCommonConfig.METLRTCfg
def METLRTCfg(ConfigFlags, jetType)
Definition: METCommonConfig.py:52
python.LLPToolsConfig.LLP1TriggerMatchingToolRun2Cfg
def LLP1TriggerMatchingToolRun2Cfg(flags, name, **kwargs)
Definition: LLPToolsConfig.py:144