This package provides universally polymorphic and portable, parallelizable routines for simulating charged particle beams both on the CPU and, using KernelAbstractions.jl
, various GPU backends including NVIDIA CUDA, Apple Metal, Intel oneAPI, and AMD ROCm.
BeamTracking.jl
is one package in the SciBmad ecosystem of accelerator physics software.
Currently, the following integrators have been implemented and tested against the Polymorphic Tracking Code (PTC):
- Yoshida's second, fourth, sixth, and eighth-order symplectic methods for the following splits:
- Drift-kick
- Thick-kick (including quadrupole-kick, solenoid-kick, bend-kick)
- Exact solenoid, exact bend, patch
For examples of how to use the package, we currently refer users to the SciBmad.jl
package while the documentation is still in development.