ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetAlignment
InDetAlignConfig
python
SolveITkConfig.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3
4
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
5
from
AthenaConfiguration.ComponentFactory
import
CompFactory
6
7
8
def
ITkAlignAlgCfg
(flags, name="ITkAlignAlgSolve", **kwargs):
9
cfg = ComponentAccumulator()
10
11
if
"GeometryManagerTool"
not
in
kwargs:
12
from
InDetAlignConfig.ITkAlignToolsConfig
import
ITkGeometryManagerToolCfg
13
kwargs.setdefault(
"GeometryManagerTool"
, cfg.addPublicTool(cfg.popToolsAndMerge(
14
ITkGeometryManagerToolCfg(flags))))
15
16
if
"AlignTool"
not
in
kwargs:
17
from
InDetAlignConfig.ITkAlignToolsConfig
import
ITkGlobalChi2AlignToolCfg
18
kwargs.setdefault(
"AlignTool"
, cfg.popToolsAndMerge(ITkGlobalChi2AlignToolCfg(flags)))
19
20
if
"AlignDBTool"
not
in
kwargs:
21
from
InDetAlignConfig.ITkAlignToolsConfig
import
ITkTrkAlignDBToolCfg
22
kwargs.setdefault(
"AlignDBTool"
, cfg.popToolsAndMerge(ITkTrkAlignDBToolCfg(flags)))
23
24
if
"AlignTrackCreator"
not
in
kwargs:
25
from
InDetAlignConfig.ITkAlignToolsConfig
import
ITkAlignTrackCreatorCfg
26
kwargs.setdefault(
"AlignTrackCreator"
, cfg.popToolsAndMerge(
27
ITkAlignTrackCreatorCfg(flags)))
28
29
kwargs.setdefault(
"AlignTrackPreProcessor"
,
None
)
30
kwargs.setdefault(
"WriteNtuple"
,
False
)
31
kwargs.setdefault(
"SolveOnly"
,
True
)
32
33
cfg.addEventAlgo(CompFactory.Trk.AlignAlg(name, **kwargs))
34
return
cfg
35
36
37
38
def
ITkSolveCfg
(flags, **kwargs):
39
cfg =
ITkAlignAlgCfg
(flags)
40
41
42
43
if
flags.ITk.Align.writeConstantsToPool:
44
objectList = []
45
tagList = []
46
47
if
flags.ITk.Align.writeSilicon:
48
if
flags.ITk.Align.writeDynamicDB:
49
objectList.extend([
"CondAttrListCollection#/Indet/AlignL1/ID"
,
50
"CondAttrListCollection#/Indet/AlignL2/PIX"
,
51
"CondAttrListCollection#/Indet/AlignL2/SCT"
,
52
"AlignableTransformContainer#/Indet/AlignL3"
])
53
tagList.extend([
"IndetL1Test"
,
"IndetL2PIXTest"
,
"IndetL2SCTTest"
,
54
flags.ITk.Align.tagSi])
55
else
:
56
objectList.extend([
"AlignableTransformContainer#/Indet/Align"
])
57
tagList.extend([flags.ITk.Align.tagSi])
58
59
60
from
RegistrationServices.OutputConditionsAlgConfig
import
OutputConditionsAlgCfg
61
cfg.merge(OutputConditionsAlgCfg(
62
flags,
63
outputFile = f
"{flags.ITk.Align.baseDir}/Solve/{flags.ITk.Align.outputConditionFile}"
,
64
ObjectList = objectList, IOVTagList = tagList, WriteIOV =
False
))
65
66
cfg.addEventAlgo(CompFactory.Trk.AlignTrackCollSplitter())
67
return
cfg
SolveITkConfig.ITkSolveCfg
ITkSolveCfg(flags, **kwargs)
Definition
SolveITkConfig.py:38
SolveITkConfig.ITkAlignAlgCfg
ITkAlignAlgCfg(flags, name="ITkAlignAlgSolve", **kwargs)
Definition
SolveITkConfig.py:8
Generated on
for ATLAS Offline Software by
1.17.0