RAYX Commands

After a successful build, type -h or --help for a summary of all known commands.

Hint: -c or --command are accepted. But -command can result in errors.

Terminal application for rayx  
Usage: ./rayx [OPTIONS]

Options:
  -h,--help                   Print this help message and exit
  -c,--ocsv                   Output stored as .csv file.
  -b,--batch INT              Batch size for Vulkan tracing
  -B,--benchmark              Benchmark application and output to stdout
  -X,--gpu                    Tracing on GPU
  -x,--cpu                    Tracing on CPU
  -p,--plot                   Plot output footprints and histograms.
  -l,--list                   List available devices
  -d,--device INT             Device ID
  -i,--input TEXT             Input RML File or Directory.
  -o,--output TEXT            Output path or filename
  -v,--version                Print application metadata
  -f                          Fix the seed to RAYX::FIXED_SEED (Uses default)
  -s,--seed INT               Provide a user-defined seed
  -S,--sequential             Trace rays sequentially
  -V,--verbose                Print detailed debug and trace info
  -F,--format TEXT            Format output CSV / H5 data
  -m,--maxEvents INT          Maximum number of recorded events per ray
  -R,--record-element INT     Record events only for a specific element (Default: -1 to record for all)

Command descriptions

Command nameDescription
--helpPrints the help message.
--ocsvStore the result as a .csv (defaults to .h5). Not recommended for large ray counts.
--batchSpecifies how large a batch of rays should be. Useful for compute performance tuning.
--benchmarkBenchmarks RAYX core performance. Outputs total runtime stats to stdout.
--gpuRun tracing on the GPU.
--cpuRun tracing on the CPU.
--plotPlots footprints and histograms from the last Image Plane element. Closes only after the user exits the plot window.
--listLists all supported compute devices available on the system.
--deviceSelect a specific device by ID. Use with --list to see available IDs.
--inputPath to the RML file or directory to be used as the beamline.
--outputPath where the traced ray data should be saved.
--versionDisplays application version and build metadata.
--dummyRuns a dummy test beamline with a few optical elements. Useful for quick diagnostics.
--seedSpecifies a custom seed for deterministic tracing.
--fFix the seed to a default constant (RAYX::FIXED_SEED).
--sequentialTraces rays sequentially rather than in parallel.
--verboseOutputs more internal information for debugging and performance tuning.
--formatSelects the output format. Supported: csv, h5.
--maxEventsLimits the number of events (e.g., interactions with beamline elements) that are recorded per ray.
--record-elementRestrict event recording to a specific beamline element by index. Default: -1 to record events for all elements.