ATLAS Offline Software
Loading...
Searching...
No Matches
ActsGaussianSumFitterConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5
7 name: str = "ActsGaussianSumFitterTool",
8 **kwargs) -> ComponentAccumulator:
9 acc = ComponentAccumulator()
10
11 kwargs.setdefault("RefitOnly", True) # Track summary will be added in the algorithm
12
13 kwargs.setdefault("UseDirectNavigation", flags.Acts.GsfDirectNavigation) # direct navigation used for refitting measurements
14 kwargs.setdefault("ComponentMergeMethod", flags.Acts.GsfComponentMergeMethod) # Mean or MaxWeight
15 kwargs.setdefault("MaxComponents", flags.Acts.GsfMaxComponents)
16 kwargs.setdefault("OutlierChi2Cut", flags.Acts.GsfOutlierChi2Cut)
17
18 if flags.Detector.GeometryITk:
19 from TrkConfig.TrkRIO_OnTrackCreatorConfig import ITkRotCreatorCfg
20 kwargs.setdefault('RotCreatorTool', acc.popToolsAndMerge(ITkRotCreatorCfg(flags)))
21 elif flags.Detector.GeometryID:
22 from TrkConfig.TrkRIO_OnTrackCreatorConfig import InDetRotCreatorCfg
23 kwargs.setdefault('RotCreatorTool', acc.popToolsAndMerge(InDetRotCreatorCfg(flags)))
24
25 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg, ActsGeometryRealmConvTool
26 kwargs.setdefault("TrackingGeometryTool", acc.getPrimaryAndMerge(ActsTrackingGeometryToolCfg(flags)))
27 kwargs.setdefault("GeometryRealmConvTool", acc.getPrimaryAndMerge(ActsGeometryRealmConvTool(flags)))
28
29 if "ExtrapolationTool" not in kwargs:
30 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
31 kwargs["ExtrapolationTool"] = acc.popToolsAndMerge(
32 ActsExtrapolationToolCfg(flags, MaxSteps=10000)
33 ) # PrivateToolHandle
34
35 if 'ATLASConverterTool' not in kwargs:
36 from ActsConfig.ActsEventCnvConfig import ActsToTrkConverterToolCfg
37 kwargs["ATLASConverterTool"] = acc.getPrimaryAndMerge(ActsToTrkConverterToolCfg(flags))
38
39 if 'BoundaryCheckTool' not in kwargs:
40 if flags.Detector.GeometryITk:
41 from InDetConfig.InDetBoundaryCheckToolConfig import ITkBoundaryCheckToolCfg
42 kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(ITkBoundaryCheckToolCfg(flags)))
43 else:
44 from InDetConfig.InDetBoundaryCheckToolConfig import InDetBoundaryCheckToolCfg
45 kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(InDetBoundaryCheckToolCfg(flags)))
46
47 acc.setPrivateTools(CompFactory.ActsTrk.GaussianSumFitterTool(name, **kwargs))
48 return acc
49
50
ComponentAccumulator ActsGaussianSumFitterToolCfg(flags, str name="ActsGaussianSumFitterTool", **kwargs)