ATLAS Offline Software
Loading...
Searching...
No Matches
FullScanInDetConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.AccumulatorCache import AccumulatorCache
5from AthenaConfiguration.AthConfigFlags import AthConfigFlags
6
7from TrigInDetConfig.utils import getFlagsForActiveConfig
8from TrigInDetConfig.TrigInDetConfig import trigInDetFastTrackingCfg, trigInDetLRTCfg
9from InDetConfig.InDetPriVxFinderConfig import InDetTrigPriVxFinderCfg
10
11from AthenaCommon.Logging import logging
12from AthenaCommon.CFElements import parOR
13
14logging.getLogger().info("Importing %s",__name__)
15log = logging.getLogger(__name__)
16
17from .FullScanDefs import trkFSRoI
18
19@AccumulatorCache
20def commonInDetFullScanCfg(flags: AthConfigFlags) -> ComponentAccumulator:
21 acc = ComponentAccumulator()
22 seqname='TrigInDetFullScan'
23 acc.addSequence(parOR(seqname),primary=True)
24
25 flagsWithTrk = getFlagsForActiveConfig(flags, 'fullScan', log)
26 acc.merge(
27 trigInDetFastTrackingCfg(
28 flagsWithTrk,
29 trkFSRoI,
30 signatureName='fullScan',
31 in_view=False
32 ),
33 seqname
34 )
35
36 vxkwargs = {
37 "inputTracks": flagsWithTrk.Tracking.ActiveConfig.tracks_FTF,
38 "outputVtx": flagsWithTrk.Tracking.ActiveConfig.vertex_jet,
39 }
40 if flags.Trigger.FSHad.doJetRestrictedVertexSort:
41 from TrkConfig.TrkVertexToolsConfig import JetRestrictedSumPt2VertexCollectionSortingToolCfg
42 from TrkConfig.TrkVertexWeightCalculatorsConfig import JetRestrictedSumPt2VertexWeightCalculatorCfg
43 jetcalccfg = JetRestrictedSumPt2VertexWeightCalculatorCfg(
44 flags,
45 JetContainer='HLT_AntiKt4EMTopoJets_subjesIS',
46 TrackParticleLocation=flagsWithTrk.Tracking.ActiveConfig.tracks_FTF,
47 PlainSumPtDecor='UnrestrictedSumPt'
48 )
49 jetcalc = jetcalccfg.popPrivateTools()
50 acc.merge(jetcalccfg)
51 vxsortcfg = JetRestrictedSumPt2VertexCollectionSortingToolCfg(
52 flags,
53 VertexWeightCalculator=jetcalc
54 )
55 vxsort = acc.popToolsAndMerge(vxsortcfg)
56 vxkwargs["VertexCollectionSortingTool"] = vxsort
57
58 from TrkConfig.TrkVertexToolsConfig import SumPt2VertexCollectionSortingToolCfg
59 default_sumpt_vxsort = SumPt2VertexCollectionSortingToolCfg(flags)
60 from InDetPriVxFinder.ResortVerticesConfig import ResortVerticesCfg
61 acc.merge(ResortVerticesCfg(
62 flags,
63 flagsWithTrk.Tracking.ActiveConfig.vertex_jet,
64 "HLT_IDVertex_FS_origsumpt",
65 default_sumpt_vxsort,
66 ))
67
68 acc.merge(
69 InDetTrigPriVxFinderCfg(
70 flagsWithTrk,
71 **vxkwargs,
72 ),
73 seqname
74 )
75
76 return acc
77
78
79def commonInDetLRTCfg(flags : AthConfigFlags,
80 flagsLRT : AthConfigFlags,
81 rois : str = trkFSRoI) -> ComponentAccumulator:
82
83 acc = ComponentAccumulator()
84 seqname = 'TrigInDetLRT_'+flagsLRT.Tracking.ActiveConfig.name
85 acc.addSequence(parOR(seqname),primary=True)
86
87 acc.merge(
88 trigInDetLRTCfg(
89 flagsLRT,
90 flags.Tracking.ActiveConfig.trkTracks_FTF,
91 rois,
92 in_view=False
93 ),
94 seqname
95 )
96
97 return acc
ComponentAccumulator commonInDetFullScanCfg(AthConfigFlags flags)
ComponentAccumulator commonInDetLRTCfg(AthConfigFlags flags, AthConfigFlags flagsLRT, str rois=trkFSRoI)