ATLAS Offline Software
JetFitterSequentialVertexFitterConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory import CompFactory
5 
6 def JetFitterSequentialVertexFitterCfg(flags, name, useBTagFlagsDefaults = True, **options):
7  """Sets up a JetFitterSequentialVertexFitter tool and returns it.
8 
9  input: name: The name of the tool (should be unique).
10  useBTagFlagsDefaults : Whether to use BTaggingFlags defaults for options that are not specified.
11  Note however that this tool has no BTaggingFlags defaults; the option is
12  here only for consistency.
13  **options: Python dictionary with options for the tool.
14  output: The actual tool, which can then by added to ToolSvc via ToolSvc += output."""
15  acc = ComponentAccumulator()
16  if useBTagFlagsDefaults:
17  from TrkConfig.TrkVertexFitterUtilsConfig import AtlasFullLinearizedTrackFactoryCfg
18  jetFitterFullLinearizedTrackFactory = acc.popToolsAndMerge(AtlasFullLinearizedTrackFactoryCfg(flags, 'JFFullLinearizedTrackFactory'))
19 
20  from TrkConfig.TrkVertexFittersConfig import SequentialVertexSmootherCfg
21  jetFitterSequentialVertexSmoother = acc.popToolsAndMerge(SequentialVertexSmootherCfg(flags, 'JFSequentialVertexSmoother'))
22 
23  defaults = { 'LinearizedTrackFactory' : jetFitterFullLinearizedTrackFactory,
24  'VertexSmoother' : jetFitterSequentialVertexSmoother, }
25  for option in defaults:
26  options.setdefault(option, defaults[option])
27 
28  options['name'] = name
29  acc.setPrivateTools(CompFactory.Trk.SequentialVertexFitter(**options))
30 
31  return acc
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.JetFitterSequentialVertexFitterConfig.JetFitterSequentialVertexFitterCfg
def JetFitterSequentialVertexFitterCfg(flags, name, useBTagFlagsDefaults=True, **options)
Definition: JetFitterSequentialVertexFitterConfig.py:6
python.TrkVertexFitterUtilsConfig.AtlasFullLinearizedTrackFactoryCfg
def AtlasFullLinearizedTrackFactoryCfg(flags, name='AtlasFullLinearizedTrkFactory', **kwargs)
Definition: TrkVertexFitterUtilsConfig.py:20
python.TrkVertexFittersConfig.SequentialVertexSmootherCfg
def SequentialVertexSmootherCfg(flags, name="SequentialVertexSmoother", **kwargs)
Definition: TrkVertexFittersConfig.py:53