ATLAS Offline Software
Loading...
Searching...
No Matches
muonEdgeSegmentInference Namespace Reference

Functions

 main (args)

Variables

 parser = SetupArgParser()
 nEvents
 inputFile
 required
 True
 dest
 help
 type
 float
 default
 int
 action
 score_mode = parser.add_mutually_exclusive_group()
 choices
 DEFAULT_BUCKET_SINGLE_OUTPUT_MODE
 const
 False
 args = parser.parse_args()

Detailed Description

Run segment-edge ONNX inference with an optional JSONL parity dump.

Function Documentation

◆ main()

main ( args)

Definition at line 6 of file muonEdgeSegmentInference.py.

6def main(args):
7 from MuonGeoModelTestR4.testGeoModel import setupGeoR4TestCfg
8 from MuonConfig.MuonConfigUtils import executeTest
9 from AthenaConfiguration.AllConfigFlags import initConfigFlags
10 flags = initConfigFlags()
11
12 if args.athenaDebug:
13 flags.Exec.DebugMessageComponents = [
14 "SegmentEdgeInferenceAlg",
15 "SegmentEdgeInferenceAlg.SegmentEdgeClassifierTool",
16 "SegmentEdgeInferenceAlg.SegmentEdgeClassifierTool.OnnxRuntimeSessionToolCPU",
17 "SegmentEdgeInferenceAlg.SegmentEdgeClassifierTool.OnnxRuntimeSessionToolCUDA",
18 "GraphInferenceAlg",
19 "GraphBucketFilterTool",
20 ]
21 print("INFO: Exec.DebugMessageComponents configured:", flags.Exec.DebugMessageComponents)
22
23 from AthOnnxComps.OnnxRuntimeFlags import OnnxRuntimeType
24 if args.use_cpu:
25 flags.AthOnnx.ExecutionProvider = OnnxRuntimeType.CPU
26 else:
27 flags.AthOnnx.ExecutionProvider = OnnxRuntimeType.CUDA
28
29 flags, cfg = setupGeoR4TestCfg(args, flags)
30
31 from MuonConfig.MuonDataPrepConfig import xAODUncalibMeasPrepCfg
32 cfg.merge(xAODUncalibMeasPrepCfg(flags))
33
34 from MuonSpacePointFormation.SpacePointFormationConfig import MuonSpacePointFormationCfg
35 cfg.merge(MuonSpacePointFormationCfg(flags))
36
37 from MuonPatternRecognitionAlgs.MuonPatternRecognitionConfig import MuonPatternRecognitionCfg
38 if args.doMLBucketFilter:
39 from MuonInference.InferenceConfig import GraphBucketFilterToolCfg, GraphInferenceAlgCfg
40 bucket_tool = cfg.popToolsAndMerge(
41 GraphBucketFilterToolCfg(
42 flags,
43 ModelPath=args.bucket_model_path,
44 ScoreThreshold=args.score_threshold,
45 OutputName=args.output_name,
46 SingleOutputMode=args.single_output_mode,
47 )
48 )
49 cfg.merge(GraphInferenceAlgCfg(flags, InferenceTools=[bucket_tool]))
50 cfg.merge(MuonPatternRecognitionCfg(flags))
51 cfg.getEventAlgo("MuonEtaHoughTransformAlg").SpacePointContainer = "FilteredMlBuckets"
52 else:
53 cfg.merge(MuonPatternRecognitionCfg(flags))
54
55 output_level = 1 if args.athenaDebug else 3
56 edge_space_point_key = "FilteredMlBuckets" if args.doMLBucketFilter else "MuonSpacePoints"
57
58 edge_classifier_kwargs = {
59 "ModelPath": args.edgeModel,
60 "ReadSpacePoints": edge_space_point_key,
61 "DebugDumpFile": args.segment_edge_debug_dump_file,
62 "DebugDumpMaxEvents": args.segment_edge_debug_dump_max_events,
63 "MaxDeltaThetaDeg": args.max_delta_theta_deg,
64 "MaxDeltaSector": args.max_delta_sector,
65 "SectorModulo": args.sector_modulo,
66 "OutputLevel": output_level,
67 }
68 from MuonInference.InferenceConfig import SegmentEdgeInferenceAlgCfg
69 cfg.merge(
70 SegmentEdgeInferenceAlgCfg(
71 flags,
72 EdgeClassifierTool=edge_classifier_kwargs,
73 PairGateThreshold=args.edge_threshold,
74 OutputLevel=output_level,
75 )
76 )
77
78 executeTest(cfg)
79
void print(char *figname, TCanvas *c1)
int main()
Definition hello.cxx:18

Variable Documentation

◆ action

muonEdgeSegmentInference.action

Definition at line 101 of file muonEdgeSegmentInference.py.

◆ args

muonEdgeSegmentInference.args = parser.parse_args()

Definition at line 123 of file muonEdgeSegmentInference.py.

◆ choices

muonEdgeSegmentInference.choices

Definition at line 108 of file muonEdgeSegmentInference.py.

◆ const

muonEdgeSegmentInference.const

Definition at line 110 of file muonEdgeSegmentInference.py.

◆ default

muonEdgeSegmentInference.default

Definition at line 87 of file muonEdgeSegmentInference.py.

◆ DEFAULT_BUCKET_SINGLE_OUTPUT_MODE

muonEdgeSegmentInference.DEFAULT_BUCKET_SINGLE_OUTPUT_MODE

Definition at line 108 of file muonEdgeSegmentInference.py.

◆ dest

muonEdgeSegmentInference.dest

Definition at line 85 of file muonEdgeSegmentInference.py.

◆ False

muonEdgeSegmentInference.False

Definition at line 121 of file muonEdgeSegmentInference.py.

◆ float

muonEdgeSegmentInference.float

Definition at line 87 of file muonEdgeSegmentInference.py.

◆ help

muonEdgeSegmentInference.help

Definition at line 86 of file muonEdgeSegmentInference.py.

◆ inputFile

muonEdgeSegmentInference.inputFile

Definition at line 84 of file muonEdgeSegmentInference.py.

◆ int

muonEdgeSegmentInference.int

Definition at line 91 of file muonEdgeSegmentInference.py.

◆ nEvents

muonEdgeSegmentInference.nEvents

Definition at line 83 of file muonEdgeSegmentInference.py.

◆ parser

muonEdgeSegmentInference.parser = SetupArgParser()

Definition at line 82 of file muonEdgeSegmentInference.py.

◆ required

muonEdgeSegmentInference.required

Definition at line 85 of file muonEdgeSegmentInference.py.

◆ score_mode

muonEdgeSegmentInference.score_mode = parser.add_mutually_exclusive_group()

Definition at line 107 of file muonEdgeSegmentInference.py.

◆ True

muonEdgeSegmentInference.True

Definition at line 85 of file muonEdgeSegmentInference.py.

◆ type

muonEdgeSegmentInference.type

Definition at line 87 of file muonEdgeSegmentInference.py.