ATLAS Offline Software
Loading...
Searching...
No Matches
Tracking/Acts/ActsConfig/python/ActsPriVxFinderConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5from AthenaConfiguration.Enums import LHCPeriod
6
8 name="ActsAdaptiveMultiPriVtxFinderTool",
9 **kwargs) -> ComponentAccumulator:
10 from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
11 acc = BeamSpotCondAlgCfg(flags)
12
13 if "TrackSelector" not in kwargs:
14 from InDetConfig.InDetTrackSelectionToolConfig import (
15 VtxInDetTrackSelectionCfg)
16 kwargs.setdefault("TrackSelector", acc.popToolsAndMerge(
17 VtxInDetTrackSelectionCfg(flags)))
18
19 if "TrackingGeometryTool" not in kwargs:
20 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
21 kwargs.setdefault("TrackingGeometryTool", acc.getPrimaryAndMerge(
22 ActsTrackingGeometryToolCfg(flags))) # PrivateToolHandle
23
24 if "ExtrapolationTool" not in kwargs:
25 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
26 kwargs.setdefault("ExtrapolationTool", acc.popToolsAndMerge(
27 ActsExtrapolationToolCfg(flags))) # PrivateToolHandle
28
29 kwargs.setdefault("useBeamConstraint",
30 flags.Tracking.PriVertex.useBeamConstraint)
31 kwargs.setdefault("tracksMaxZinterval",
32 flags.Tracking.PriVertex.maxZinterval)
33 kwargs.setdefault("doFullSplitting",
34 not flags.Tracking.PriVertex.useBeamConstraint)
35
36 if flags.GeoModel.Run >= LHCPeriod.Run4:
37 kwargs.setdefault("minWeight", 0.02)
38 kwargs.setdefault("maxIterations", 200)
39
40 acc.setPrivateTools(
41 CompFactory.ActsTrk.AdaptiveMultiPriVtxFinderTool(name, **kwargs))
42 return acc
43
45 name="ActsAdaptiveMultiPriVtxFinderTool",
46 **kwargs) -> ComponentAccumulator:
47 acc = ComponentAccumulator()
48
49 if "TrackSelector" not in kwargs:
50 from InDetConfig.InDetTrackSelectionToolConfig import (
51 TrigVtxInDetTrackSelectionCfg)
52 kwargs.setdefault("TrackSelector", acc.popToolsAndMerge(
53 TrigVtxInDetTrackSelectionCfg(flags)))
54
55 kwargs.setdefault("useBeamConstraint", True)
56 kwargs.setdefault("useSeedConstraint", False)
57 kwargs.setdefault("tracksMaxZinterval", flags.Tracking.ActiveConfig.TracksMaxZinterval)
58 kwargs.setdefault("doFullSplitting", False)
59 kwargs.setdefault("addSingleTrackVertices", flags.Tracking.ActiveConfig.addSingleTrackVertices)
60
61 acc.setPrivateTools(acc.popToolsAndMerge(
62 ActsGaussAdaptiveMultiFindingCfg(flags, name+flags.Tracking.ActiveConfig.input_name, **kwargs)))
63 return acc
64
66 name="ActsIterativePriVtxFinderTool",
67 **kwargs) -> ComponentAccumulator:
68 from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
69 acc = BeamSpotCondAlgCfg(flags)
70
71 if "TrackSelector" not in kwargs:
72 from InDetConfig.InDetTrackSelectionToolConfig import (
73 VtxInDetTrackSelectionCfg)
74 kwargs.setdefault("TrackSelector", acc.popToolsAndMerge(
75 VtxInDetTrackSelectionCfg(flags)))
76
77 if "TrackingGeometryTool" not in kwargs:
78 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
79 kwargs.setdefault("TrackingGeometryTool", acc.getPrimaryAndMerge(
80 ActsTrackingGeometryToolCfg(flags))) # PrivateToolHandle
81
82 if "ExtrapolationTool" not in kwargs:
83 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
84 kwargs.setdefault("ExtrapolationTool", acc.popToolsAndMerge(
85 ActsExtrapolationToolCfg(flags))) # PrivateToolHandle
86
87 kwargs.setdefault("useBeamConstraint",
88 flags.Tracking.PriVertex.useBeamConstraint)
89 kwargs.setdefault("significanceCutSeeding", 12)
90 kwargs.setdefault("maximumChi2cutForSeeding", 49)
91 kwargs.setdefault("maxVertices", flags.Tracking.PriVertex.maxVertices)
92 kwargs.setdefault("doMaxTracksCut", flags.Tracking.PriVertex.doMaxTracksCut)
93 kwargs.setdefault("maxTracks", flags.Tracking.PriVertex.maxTracks)
94
95 acc.setPrivateTools(CompFactory.ActsTrk.IterativePriVtxFinderTool(name, **kwargs))
96 return acc
97
98
100 name="ActsAdaptiveMultiPriVtxFinderTool",
101 **kwargs) -> ComponentAccumulator:
102 kwargs.setdefault("seederType", "Grid")
103 kwargs.setdefault("GridMainGridSize", flags.Tracking.PriVertex.gridMainGridSize)
104 kwargs.setdefault("GridTrkGridSize", flags.Tracking.PriVertex.gridTrkGridSize)
105 kwargs.setdefault("GridUseHighestSumZPosition", flags.Tracking.PriVertex.gridUseHighestSumZPosition)
106 kwargs.setdefault("gridMaxD0Significance", flags.Tracking.PriVertex.gridMaxD0Significance)
107 kwargs.setdefault("gridMaxZ0Significance", flags.Tracking.PriVertex.gridMaxZ0Significance)
108
109 return ActsGaussAdaptiveMultiFindingCfg(flags, name, **kwargs)
ComponentAccumulator ActsIterativeFindingCfg(flags, name="ActsIterativePriVtxFinderTool", **kwargs)
ComponentAccumulator ActsGridAdaptiveMultiFindingCfg(flags, name="ActsAdaptiveMultiPriVtxFinderTool", **kwargs)
ComponentAccumulator TrigActsGaussAdaptiveMultiFindingCfg(flags, name="ActsAdaptiveMultiPriVtxFinderTool", **kwargs)
ComponentAccumulator ActsGaussAdaptiveMultiFindingCfg(flags, name="ActsAdaptiveMultiPriVtxFinderTool", **kwargs)