13def MuonSelectionToolCfg(flags, name="MuonSelectionTool", **kwargs):
14 """Configure the muon selection tool"""
15 acc = ComponentAccumulator()
16
17
18 from AthOnnxComps.OnnxRuntimeFlags import OnnxRuntimeType
19 from AthOnnxComps.OnnxRuntimeInferenceConfig import OnnxRuntimeInferenceToolCfg
20
21 model_fname = "MuonSelectorTools/TightNN_Experimental_18062025/model_DNN3norm_MC20ade.onnx"
22 if flags.GeoModel.Run >= LHCPeriod.Run3:
23 model_fname = "MuonSelectorTools/TightNN_Experimental_18062025/model_DNN3norm_MC23ad.onnx"
24
25 execution_provider = OnnxRuntimeType.CPU
26
27 kwargs.setdefault("IsRun3Geo", flags.GeoModel.Run >= LHCPeriod.Run3)
28 kwargs.setdefault("DisablePtCuts", True)
29 kwargs.setdefault("TurnOffMomCorr", True)
30 kwargs.setdefault("ORTInferenceTool", acc.popToolsAndMerge(
31 OnnxRuntimeInferenceToolCfg(flags, model_fname, execution_provider, name=name+"_ORTInferenceTool")
32 ))
33
34
35
36 the_tool = CompFactory.CP.MuonSelectionTool(name, **kwargs)
37 acc.setPrivateTools(the_tool)
38 acc.printConfig(withDetails=True)
39
40 return acc
41
42