Skip to content

RAYX is a simulation tool for beamlines at electron storage rings. It traces synchrotron radiation through a series of mirrors, gratings and more and gives the user helpful insights, how a given beamline performs.

License

hz-b/rayx

Repository files navigation

RAYX

RAYX is a simulation tool designed for beamlines at electron storage rings. Currently, it is intended to be used in conjunction with RAY-UI. Our primary focus with RAYX is on high-performance tracing, achieved through the utilization of GPUs via the Vulkan API.

RAYX vs RAY-UI

RAYX offers several advanced features, including:

  • Global (not sequential) tracing of beamlines for enhanced efficiency.
  • GPU utilization for accelerated tracing performance.
  • A dedicated mode for sequentially tracing multiple beamlines with ease.
  • Grouping functionality, allowing objects to be grouped together for simplified group transformations.

In contrast, RAY-UI provides a graphical user interface (GUI) for editing beamlines, a feature currently lacking in RAYX. This means that .rml files for beamlines must be edited manually or generated using RAY-UI. Integrating a beamline editor into rayx-ui is among our top priorities for future development.

Installing or Building RAYX

testUbuntu testWindows testUbuntuClang MDBookDeploy

For additional information, please visit our Wiki. We are committed to delivering stable releases, which can be found here. Please note that the master branch and other branches might be unstable, and building RAYX from the source could lead to unstable software. If you experience any issues with our distributed binaries, do not hesitate to open an issue. We are keen on providing assistance and offering alternative solutions as the need arises.

About

RAYX is a simulation tool for beamlines at electron storage rings. It traces synchrotron radiation through a series of mirrors, gratings and more and gives the user helpful insights, how a given beamline performs.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published