Abstract

Merlin++ is a C++ charged-particle tracking library developed for the simulation and analysis of complex beam dynamics within high energy particle accelerators. Accurate simulation and analysis of particle dynamics is an essential part of the design of new particle accelerators, and for the optimization of existing ones. Merlin++ is a feature-full library with focus on long-term tracking studies. A user may simulate distributions of protons or electrons in either single particle or sliced macro-particle bunches. The tracking code includes both straight and curvilinear coordinate systems allowing for the simulation of either linear or circular accelerator lattice designs, and uses a fast and accurate explicit symplectic integrator. Physics processes for common design studies have been implemented, including RF cavity acceleration, synchrotron radiation damping, on-line physical aperture checks and collimation, proton scattering, wakefield simulation, and spin-tracking. Merlin++ was written using C++ object orientated design practices and has been optimized for speed using multicore processors. This article presents an account of the program, including its functionality and guidance for use. Program summaryProgram Title: Merlin++CPC Library link to program files:https://doi.org/10.17632/4x4nsbhz37.1Developer's repository link: 10.5281/zenodo.3700155Licensing provisions: GPLv2+Programming language: C++Nature of problem: Complexity of particle accelerators beam dynamics over extensive tracking distances.Solution method: Long-term particle accelerator and tracking simulations utilizing explicit symplectic integrators.Additional comments including restrictions and unusual features: For further information see github.com/Merlin-Collaboration

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call