File indexing completed on 2025-07-14 08:11:40
0001
0002 import os
0003 import argparse
0004
0005 import acts
0006
0007 from acts.examples import CsvMuonSpacePointReader, CsvMuonSegmentReader, MuonHoughSeeder
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 u = acts.UnitConstants
0018 rnd = acts.examples.RandomNumbers(seed=42)
0019
0020
0021 def runHoughFromCsv(inDir):
0022
0023
0024 s = acts.examples.Sequencer(events=8, numThreads=1, logLevel=acts.logging.VERBOSE)
0025
0026
0027 evReader = CsvMuonSpacePointReader(
0028 inputStem="SpacePoints",
0029 inputDir=os.path.dirname(inDir),
0030 outputSpacePoints="MuonSpacePoints",
0031 level=acts.logging.VERBOSE,
0032 )
0033
0034 truthReader = CsvMuonSegmentReader(
0035 inputStem="MuonTruthSegment",
0036 inputDir=os.path.dirname(inDir),
0037 outputSegments="MuonTruthSegments",
0038 level=acts.logging.VERBOSE,
0039 )
0040
0041
0042 s.addReader(evReader)
0043 s.addReader(truthReader)
0044
0045 seeder = MuonHoughSeeder(
0046 inSpacePoints=evReader.config.outputSpacePoints,
0047 inTruthSegments=truthReader.config.outputSegments,
0048 outHoughMax="MuonHoughSeeds",
0049 level=acts.logging.VERBOSE,
0050 )
0051
0052 s.addAlgorithm(seeder)
0053 s.run()
0054
0055
0056 if "__main__" == __name__:
0057 p = argparse.ArgumentParser(
0058 description="Example script to run ITk seed finding based on CSV spacepoints",
0059 )
0060 p.add_argument(
0061 "indir",
0062 help="Input directory containing the ITk standalone geometry. Get in touch if you don't have this.",
0063 )
0064
0065 args = p.parse_args()
0066
0067 runHoughFromCsv(args.indir)