ATLAS Offline Software
Loading...
Searching...
No Matches
python.InDetGNNHardScatterSelectionConfig Namespace Reference

Functions

 AsgPtEtaSelectionToolCfg (flags, name="AsgPtEtaSelectionTool", **kwargs)
 AsgPtEtaSelectionToolGapCfg (flags, name="AsgPtEtaSelectionTool", **kwargs)
 AsgViewFromSelectionAlgCfg (flags, name="AsgViewFromSelectionAlg", **kwargs)
 GNNHSSelectionAlgCfg (flags, input, minPt)
 GNNHSOverlapRemovalToolCfg (flags, name="GNNHS_OverlapRemovalToolCfg", **kwargs)
 GNNHSOverlapRemovalAlgCfg (flags, name="GNNHS_OverlapRemovalAlg", overlapInputNames=None, overlapOutputNames=None, **kwargs)
 GNNToolCfg (flags, name="HardScatterSelectionGNNTool", **kwargs)
 GNNHSVertexDecoratorAlgCfg (flags, name="GNNHS_VertexDecoratorAlg", **kwargs)
 GNNSequenceCfg (flags, **kwargs)

Variables

 flags = initConfigFlags()
 Files
 MaxEvents
 top_acc = MainServicesCfg(flags)
 OutputLevel
 withDetails
 True
 summariseProps
 sc = top_acc.run(1)

Function Documentation

◆ AsgPtEtaSelectionToolCfg()

python.InDetGNNHardScatterSelectionConfig.AsgPtEtaSelectionToolCfg ( flags,
name = "AsgPtEtaSelectionTool",
** kwargs )

Definition at line 11 of file InDetGNNHardScatterSelectionConfig.py.

11def AsgPtEtaSelectionToolCfg(flags, name="AsgPtEtaSelectionTool", **kwargs):
12 cfg = ComponentAccumulator()
13 kwargs.setdefault("maxEta", 2.5)
14 cfg.setPrivateTools(CompFactory.CP.AsgPtEtaSelectionTool(name, **kwargs))
15 return cfg
16

◆ AsgPtEtaSelectionToolGapCfg()

python.InDetGNNHardScatterSelectionConfig.AsgPtEtaSelectionToolGapCfg ( flags,
name = "AsgPtEtaSelectionTool",
** kwargs )

Definition at line 17 of file InDetGNNHardScatterSelectionConfig.py.

17def AsgPtEtaSelectionToolGapCfg(flags, name="AsgPtEtaSelectionTool", **kwargs):
18 kwargs.setdefault("etaGapLow", 1.37)
19 kwargs.setdefault("etaGapHigh", 1.52)
20 return AsgPtEtaSelectionToolCfg(flags, name, **kwargs)
21

◆ AsgViewFromSelectionAlgCfg()

python.InDetGNNHardScatterSelectionConfig.AsgViewFromSelectionAlgCfg ( flags,
name = "AsgViewFromSelectionAlg",
** kwargs )

Definition at line 22 of file InDetGNNHardScatterSelectionConfig.py.

22def AsgViewFromSelectionAlgCfg(flags, name="AsgViewFromSelectionAlg", **kwargs):
23 cfg = ComponentAccumulator()
24 kwargs.setdefault("selection", "selectPtEta")
25 kwargs.setdefault("deepCopy", False)
26 cfg.addEventAlgo(CompFactory.CP.AsgViewFromSelectionAlg(name, **kwargs))
27 return cfg
28

◆ GNNHSOverlapRemovalAlgCfg()

python.InDetGNNHardScatterSelectionConfig.GNNHSOverlapRemovalAlgCfg ( flags,
name = "GNNHS_OverlapRemovalAlg",
overlapInputNames = None,
overlapOutputNames = None,
** kwargs )

Definition at line 81 of file InDetGNNHardScatterSelectionConfig.py.

82 overlapInputNames = None, overlapOutputNames = None, **kwargs):
83 cfg = ComponentAccumulator()
84
85 kwargs.setdefault("OutputLabel", "passesOR")
86 kwargs.setdefault("affectingSystematicsFilter", ".*")
87
88 for obj in overlapInputNames:
89 kwargs.setdefault(obj, overlapInputNames[obj])
90 kwargs.setdefault(obj+"Decoration", kwargs["OutputLabel"] + ",as_char")
91
92 kwargs.setdefault("overlapTool", cfg.popToolsAndMerge(GNNHSOverlapRemovalToolCfg(flags)))
93
94 cfg.addEventAlgo(CompFactory.CP.OverlapRemovalAlg(name, **kwargs))
95
96 for obj in overlapInputNames:
97 cfg.addEventAlgo(CompFactory.CP.AsgViewFromSelectionAlg(
98 name = "GNNHS_"+obj+"_ORSelectionAlg",
99 input = overlapInputNames[obj],
100 output = overlapOutputNames[obj],
101 selection = [kwargs["OutputLabel"]+",as_char"],
102 deepCopy = True))
103
104 return cfg
105
106
107# GNNTool + VertexDecoratorAlg configs
108

◆ GNNHSOverlapRemovalToolCfg()

python.InDetGNNHardScatterSelectionConfig.GNNHSOverlapRemovalToolCfg ( flags,
name = "GNNHS_OverlapRemovalToolCfg",
** kwargs )

Definition at line 49 of file InDetGNNHardScatterSelectionConfig.py.

49def GNNHSOverlapRemovalToolCfg(flags, name="GNNHS_OverlapRemovalToolCfg", **kwargs):
50 cfg = ComponentAccumulator()
51
52 kwargs.setdefault("InputLabel", "selectPtEta")
53 kwargs.setdefault("OutputLabel", "passesOR")
54 kwargs.setdefault("OutputPassValue", True)
55
56 subtool_kwargs={}
57 for prop in ["InputLabel", "OutputLabel", "OutputPassValue"]:
58 subtool_kwargs[prop] = kwargs[prop]
59
60 kwargs.setdefault("EleEleORT", CompFactory.ORUtils.EleEleOverlapTool(**subtool_kwargs))
61 kwargs.setdefault("EleMuORT", CompFactory.ORUtils.EleMuSharedTrkOverlapTool(**subtool_kwargs))
62 kwargs.setdefault("EleJetORT", CompFactory.ORUtils.EleJetOverlapTool(**subtool_kwargs))
63 kwargs.setdefault(
64 "MuJetORT",
65 CompFactory.ORUtils.MuJetOverlapTool(
66 PVContainerName=(
67 "PrimaryVertices_initial"
68 if flags.Tracking.PriVertex.sortingSetup is VertexSortingSetup.GNNSorting
69 else "PrimaryVertices"
70 ),
71 **subtool_kwargs
72 )
73 )
74 kwargs.setdefault("PhoEleORT", CompFactory.ORUtils.DeltaROverlapTool(**subtool_kwargs))
75 kwargs.setdefault("PhoMuORT", CompFactory.ORUtils.DeltaROverlapTool(**subtool_kwargs))
76 kwargs.setdefault("PhoJetORT", CompFactory.ORUtils.DeltaROverlapTool(**subtool_kwargs))
77
78 cfg.setPrivateTools(CompFactory.ORUtils.OverlapRemovalTool(name, **kwargs))
79 return cfg
80

◆ GNNHSSelectionAlgCfg()

python.InDetGNNHardScatterSelectionConfig.GNNHSSelectionAlgCfg ( flags,
input,
minPt )

Definition at line 29 of file InDetGNNHardScatterSelectionConfig.py.

29def GNNHSSelectionAlgCfg(flags, input, minPt):
30 cfg = ComponentAccumulator()
31
32 selectionTool = None
33 if input in ["Electrons", "Photons", "AntiKt4EMTopoJets"]:
34 selectionTool = cfg.popToolsAndMerge(
35 AsgPtEtaSelectionToolGapCfg(flags, minPt = minPt))
36 elif input in ["Muons"]:
37 selectionTool = cfg.popToolsAndMerge(
38 AsgPtEtaSelectionToolCfg(flags, minPt = minPt))
39
40 cfg.addEventAlgo(CompFactory.CP.AsgSelectionAlg(
41 name = "GNNHS_"+input+"_SelectionAlg",
42 selectionTool = selectionTool,
43 selectionDecoration = "selectPtEta,as_char",
44 particles = input))
45
46 return cfg
47
48

◆ GNNHSVertexDecoratorAlgCfg()

python.InDetGNNHardScatterSelectionConfig.GNNHSVertexDecoratorAlgCfg ( flags,
name = "GNNHS_VertexDecoratorAlg",
** kwargs )

Definition at line 114 of file InDetGNNHardScatterSelectionConfig.py.

114def GNNHSVertexDecoratorAlgCfg(flags, name="GNNHS_VertexDecoratorAlg", **kwargs):
115 cfg = ComponentAccumulator()
116
117 kwargs.setdefault("photonsIn", "Photons")
118
119 if "gnnTool" not in kwargs:
120 kwargs.setdefault("gnnTool", cfg.popToolsAndMerge(
121 GNNToolCfg(flags,
122 nnFile="InDetGNNHardScatterSelection/v0/HSGN2_export_090824.onnx")))
123
124 if "TrackVertexAssociationTool" not in kwargs:
125 from TrackVertexAssociationTool.TrackVertexAssociationToolConfig import TTVAToolCfg
126 kwargs.setdefault(
127 "TrackVertexAssociationTool",
128 cfg.popToolsAndMerge(
129 TTVAToolCfg(
130 flags,
131 "TrackVertexAssociationTool_GNNHS",
132 VertexContName=(
133 "PrimaryVertices_initial"
134 if flags.Tracking.PriVertex.sortingSetup is VertexSortingSetup.GNNSorting
135 else "PrimaryVertices"
136 ),
137 )
138 ),
139 )
140
141
142 cfg.addEventAlgo(
143 CompFactory.InDetGNNHardScatterSelection.VertexDecoratorAlg(name, **kwargs))
144 return cfg
145
146
147# Global Sequence

◆ GNNSequenceCfg()

python.InDetGNNHardScatterSelectionConfig.GNNSequenceCfg ( flags,
** kwargs )

Definition at line 148 of file InDetGNNHardScatterSelectionConfig.py.

148def GNNSequenceCfg(flags, **kwargs):
149 cfg = ComponentAccumulator()
150
151 sysSvc = CompFactory.CP.SystematicsSvc("SystematicsSvc")
152 selectionSvc = CompFactory.CP.SelectionNameSvc("SelectionNameSvc")
153 cfg.addService(sysSvc)
154 cfg.addService(selectionSvc)
155
156 inputCollections = {
157 "jets": (
158 "AntiKt4EMTopoCustomVtxGNNJets"
159 if flags.Tracking.PriVertex.sortingSetup is VertexSortingSetup.GNNSorting
160 else "AntiKt4EMTopoJets"
161 ),
162 "electrons": "Electrons",
163 "muons": "Muons",
164 "photons": "Photons",
165 }
166
167 ptThresholds = {
168 "jets": 15000,
169 "electrons": 4500,
170 "muons": 3000,
171 "photons": 10000,
172 }
173
174 for obj in inputCollections:
175 cfg.merge(GNNHSSelectionAlgCfg(flags, input = inputCollections[obj],
176 minPt = ptThresholds[obj]))
177
178 overlapOutputNames = {
179 "muons": f'{inputCollections["muons"]}_OR',
180 "electrons": f'{inputCollections["electrons"]}_OR',
181 "photons": f'{inputCollections["photons"]}_OR',
182 "jets": f'{inputCollections["jets"]}_OR',
183 }
184
185 cfg.merge(GNNHSOverlapRemovalAlgCfg(flags, overlapInputNames = inputCollections,
186 overlapOutputNames = overlapOutputNames))
187
188 from PhotonVertexSelection.PhotonVertexSelectionConfig import DecoratePhotonPointingAlgCfg
189 cfg.merge(DecoratePhotonPointingAlgCfg(flags, PhotonContainerKey=overlapOutputNames["photons"]))
190
191 cfg.merge(
192 GNNHSVertexDecoratorAlgCfg(
193 flags,
194 vertexIn=(
195 "PrimaryVertices_initial"
196 if flags.Tracking.PriVertex.sortingSetup is VertexSortingSetup.GNNSorting
197 else "PrimaryVertices"
198 ),
199 electronsIn=overlapOutputNames["electrons"],
200 muonsIn=overlapOutputNames["muons"],
201 photonsIn=overlapOutputNames["photons"],
202 jetsIn=overlapOutputNames["jets"],
203 )
204 )
205
206 return cfg
207
208

◆ GNNToolCfg()

python.InDetGNNHardScatterSelectionConfig.GNNToolCfg ( flags,
name = "HardScatterSelectionGNNTool",
** kwargs )

Definition at line 109 of file InDetGNNHardScatterSelectionConfig.py.

109def GNNToolCfg(flags, name="HardScatterSelectionGNNTool", **kwargs):
110 acc = ComponentAccumulator()
111 acc.setPrivateTools(CompFactory.InDetGNNHardScatterSelection.GNNTool(name, **kwargs))
112 return acc
113

Variable Documentation

◆ Files

python.InDetGNNHardScatterSelectionConfig.Files

Definition at line 215 of file InDetGNNHardScatterSelectionConfig.py.

◆ flags

python.InDetGNNHardScatterSelectionConfig.flags = initConfigFlags()

Definition at line 211 of file InDetGNNHardScatterSelectionConfig.py.

◆ MaxEvents

python.InDetGNNHardScatterSelectionConfig.MaxEvents

Definition at line 216 of file InDetGNNHardScatterSelectionConfig.py.

◆ OutputLevel

python.InDetGNNHardScatterSelectionConfig.OutputLevel

Definition at line 232 of file InDetGNNHardScatterSelectionConfig.py.

◆ sc

python.InDetGNNHardScatterSelectionConfig.sc = top_acc.run(1)

Definition at line 238 of file InDetGNNHardScatterSelectionConfig.py.

◆ summariseProps

python.InDetGNNHardScatterSelectionConfig.summariseProps

Definition at line 233 of file InDetGNNHardScatterSelectionConfig.py.

◆ top_acc

python.InDetGNNHardScatterSelectionConfig.top_acc = MainServicesCfg(flags)

Definition at line 220 of file InDetGNNHardScatterSelectionConfig.py.

◆ True

python.InDetGNNHardScatterSelectionConfig.True

Definition at line 233 of file InDetGNNHardScatterSelectionConfig.py.

◆ withDetails

python.InDetGNNHardScatterSelectionConfig.withDetails

Definition at line 233 of file InDetGNNHardScatterSelectionConfig.py.