A program for simulation of the dynamics of high intensity charged particle beams in linear particle accelerators has been
developed in C++ using the POOMA Framework, for use on serial and parallel architectures. The code models the trajectories
of charged particles through a sequence of different accelerator beamline elements such as drift chambers, quadrupole magnets,
or RF cavities. An FFT-based particle-in-cell algorithm is used to solve the Poisson equation that models the Coulomb interactions
of the particles. The code employs an object-oriented design with software abstractions for the particle beam, accelerator
beamline, and beamline elements, using C++ templates to efficiently support both 2D and 3D capabilities in the same code base.
The POOMA Framework, which encapsulates much of the effort required for parallel execution, provides particle and field classes,
particle-field interaction capabilities, and parallel FFT algorithms. The performance of this application running serially
and in parallel is compared to an existing HPF implementation, with the POOMA version seen to run four times faster than the
HPF code.
This work was performed under the auspices of the U.S. Department of Energy by Los Alamos National Laboratory under Contract
No. W-7405-Eng-36.