21def MuonSelectionToolCfg(flags, name="MuonSelectionTool", **kwargs):
22 """Configure the muon selection tool"""
23 acc = ComponentAccumulator()
24
25
26 from AthOnnxComps.OnnxRuntimeFlags import OnnxRuntimeType
27 from AthOnnxComps.OnnxRuntimeInferenceConfig import OnnxRuntimeInferenceToolCfg
28
29 model_fname = "MuonSelectorTools/TightNN_Experimental_18062025/model_DNN3norm_MC20ade.onnx"
30 if flags.GeoModel.Run >= LHCPeriod.Run3:
31 model_fname = "MuonSelectorTools/TightNN_Experimental_18062025/model_DNN3norm_MC23ad.onnx"
32
33 execution_provider = OnnxRuntimeType.CPU
34
35 kwargs.setdefault("IsRun3Geo", flags.GeoModel.Run >= LHCPeriod.Run3)
36 kwargs.setdefault("ORTInferenceTool",
37 acc.popToolsAndMerge(OnnxRuntimeInferenceToolCfg(flags, model_fname, execution_provider, name=f"{name}_ORTInferenceTool")))
38
39
40
41 the_tool = CompFactory.CP.MuonSelectionTool(name, **kwargs)
42 acc.setPrivateTools(the_tool)
43 return acc
44