ATLAS Offline Software
Loading...
Searching...
No Matches
JetSecVtxFindingAlgConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5from BTagging.InDetImprovedJetFitterVxFinderConfig import InDetImprovedJetFitterVxFinderCfg
6from InDetConfig.InDetVKalVxInJetToolConfig import InDetVKalVxInJetToolCfg, MSV_InDetVKalVxInJetToolCfg
7
8
9def JetSecVtxFindingAlgCfg(flags, BTagVxSecVertexInfoName, SVAlgName, JetCollection, PrimaryVertexCollectionName="", SVFinder="", TracksToTag="", **options):
10 """Adds a SecVtxTool instance and registers it.
11
12 input: name: The tool's name.
13 JetCollection The name of the jet collections.
14 ToolSvc: The ToolSvc instance.
15 options: Python dictionary of options to be passed to the SecVtxTool.
16 output: The tool."""
17
18 acc = ComponentAccumulator()
19
20 if SVFinder == 'JetFitter':
21 secVtxFinder = acc.popToolsAndMerge(InDetImprovedJetFitterVxFinderCfg(flags, 'JFVxFinder'))
22 elif SVFinder == 'JetFitterFlip': #Add the JetFitterFlip tagger (invert sign of signed track impact parameter)
23 secVtxFinder = acc.popToolsAndMerge(InDetImprovedJetFitterVxFinderCfg(flags, 'JFVxFinderFlip', 'FLIP_SIGN'))
24 elif SVFinder == 'SV1':
25 secVtxFinder = acc.popToolsAndMerge(InDetVKalVxInJetToolCfg(flags, "IDVKalVxInJet"))
26 elif SVFinder == 'SV1Flip':
27 secVtxFinder = acc.popToolsAndMerge(InDetVKalVxInJetToolCfg(flags, "IDVKalVxInJetFlip"))
28 elif SVFinder == 'MSV':
29 secVtxFinder = acc.popToolsAndMerge(MSV_InDetVKalVxInJetToolCfg(flags, "IDVKalMultiVxInJet"))
30 else:
31 return acc
32
33 options = {}
34 options.setdefault('SecVtxFinder', secVtxFinder)
35 options.setdefault('vxPrimaryCollectionName', PrimaryVertexCollectionName)
36 options['JetCollectionName'] = JetCollection
37 options['TracksToTag'] = TracksToTag
38 options['BTagVxSecVertexInfoName'] = BTagVxSecVertexInfoName
39 options['name'] = SVAlgName
40
41 # -- create the association algorithm
42 acc.addEventAlgo(CompFactory.Analysis.JetSecVtxFindingAlg(**options))
43
44 return acc
JetSecVtxFindingAlgCfg(flags, BTagVxSecVertexInfoName, SVAlgName, JetCollection, PrimaryVertexCollectionName="", SVFinder="", TracksToTag="", **options)