Accelerator physics codes explained
A charged particle accelerator is a complex machine that takes elementary charged particles and accelerates them to very high energies. Accelerator physics is a field of physics encompassing all the aspects required to design and operate the equipment and to understand the resulting dynamics of the charged particles. There are software packages associated with each domain. The 1990 edition of the Los Alamos Accelerator Code Group's compendium[1] provides summaries of more than 200 codes. Certain codes are still in use today, although many are obsolete. Another index of existing and historical accelerator simulation codes is located at the CERN CARE/HHH website.[2]
Single particle dynamics codes
For many applications it is sufficient to track a single particle through the relevant electric and magnetic fields.Old codes no longer maintained by their original authors or home institutions include: BETA,[3] AGS, ALIGN, COMFORT, DESIGN, DIMAD, HARMON, LEGO, LIAR, MAGIC, MARYLIE, PATRICIA, PETROS, RACETRACK, SYNCH,[4] TRANSPORT, TURTLE, and UAL. Some legacy codes are maintained by commercial organizations for academic, industrial and medical accelerator facilities that continue to use those codes. TRACE 3-D and TURTLE are among the historic codes that are commercially maintained.[5]
Major maintained codes include:
| Single Particle Dynamics | Spin Tracking | Taylor Maps | Weak-Strong Beam-Beam Interaction | Electromagnetic Field Tracking | Higher Energy Collective Effects | Synchrotron Radiation Effects | Radiation Tracking | Wakefields | Extensible | Notes |
---|
| Accelerator Toolbox (AT),[6] | | [7] | | | | | | | | | |
---|
| ASTRA[8] | | | | | | | | | | | | For space-charge simulations |
---|
| BDSIM[9] | | | | | | | | | | | | For particle-matter simulations. |
---|
| Bmad (contains PTC)[10] | | | | | | | | | | | | Reproduces PTC's unique beam line structures. Simulates X-rays. |
---|
| COSY INFINITY[11] | | | | | | | | | | | | |
---|
| DYNAC[12] | | | | | | | | | | | | |
---|
| Elegant[13] | | | | | | | | | | | |
---|
| MAD8 and MAD-X (includes PTC)[14] | | | | | | | | | | | |
---|
| MAD-NG | | | | | | | | | | | | Extensible, embeds LuaJIT |
---|
| MERLIN++[15] [16] | | | | | | | | | | | | Other: beam-matter interactions, sliced-macroparticle tracking |
---|
| OCELOT[17] | | | | | | | | | | | |
---|
| OPA[18] | | | | | | | | | | | |
---|
| OPAL[19] | | | | | | | | | | | | runs on laptops and on x 10k cores. |
---|
| PLACET[20] | | | | | | | | | | | | LINAC including wakefields simulations. |
---|
| Propaga[21] | | | | | | | | | | | |
---|
| PTC[22] | | | | | | | | | | | |
---|
| SAD[23] | | | | | | | | | | | |
---|
| SAMM[24] | | | | | | | | | | | |
---|
| SixTrack[25] | | | | | | | | | | | | Can run on BOINC |
---|
| Zgoubi[26] [27] | | | | | | | | | | | | | |
---|
Columns
- Spin Tracking
Tracking of a particle's spin.
- Taylor Maps
Construction of Taylor series maps to high order that can be used for simulating particle motion and also can be used for such things as extracting single particle resonance strengths.
- Weak-Strong Beam-Beam Interaction
Can simulate the beam-beam interaction with the simplification that one beam is essentially fixed in size. See below for a list of strong-strong interaction codes.
- Electromagnetic Field Tracking
Can track (ray trace) a particle through arbitrary electromagnetic fields.
- Higher Energy Collective effects
The interactions between the particles in the beam can have important effects on the behavior, control and dynamics. Collective effects take different forms from Intrabeam Scattering (IBS) which is a direct particle-particle interaction to wakefields which are mediated by the vacuum chamber wall of the machine the particles are traveling in. In general, the effect of direct particle-particle interactions is less with higher energy particle beams. At very low energies, space charge has a large effect on a particle beam and thus becomes hard to calculate. See below for a list of programs that can handle low energy space charge forces.
- Synchrotron radiation effectsCan simulate the effect of synchrotron radiation emission on the particles being tracked.
- Radiation Tracking
Ability to track the synchrotron radiation (mainly X-rays) produced by the acceleration of charged particles.This is not the same as simulating the effect of synchrotron radiation emission on the particles being tracked.
- Wakefields
The electro-magnetic interaction between the beam and the vacuum chamber wall enclosing the beam are known as wakefields. Wakefields produce forces that affect the trajectory of the particles of the beam and can potentially destabilize the trajectories.
- Extensible
Open source and object oriented coding to make it relatively easy to extend the capabilities.Space charge codes
The self interaction (e.g. space charge) of the charged particle beam can cause growth of the beam, such as with bunch lengthening, or intrabeam scattering. Additionally, space charge effects may cause instabilities and associated beam loss. Typically, at relatively low energies (roughly for energies where the relativistic gamma factor is less than 10 or so), the Poisson equation is solved at intervals during the tracking using particle-in-cell algorithms. Space charge effects lessen at higher energies so at higher energies the space charge effects may be modeled using simpler algorithms that are computationally much faster than the algorithms used at lower energies.Codes that handle low energy space charge effects include:
At higher energies, space charge effects include Touschek scattering and coherent synchrotron radiation (CSR). Codes that handle higher energy space charge include:
"Strong-strong" beam-beam effects codes
When two beams collide, the electromagnetic field of one beam will then have strong effects on the other one, called beam-beam effects. So called "weak-strong" simulations model one beam (called the "strong" beam since it affects the other beam) as a fixed distribution (typically a Gaussian distribution) which interacts with the particles of the other "weak" beam. This greatly simplifies the simulation. A full "strong-strong" simulation is more complicated and takes more simulation time. Strong-strong codes include
Impedance computation codes
An important class of collective effects may be summarized in terms of the beams response to an "impedance". An important job is thus the computation of this impedance for the machine. Codes for this computation include
Magnet and other hardware-modeling codes
To control the charged particle beam, appropriate electric and magnetic fields must be created. There are software packages to help in the design and understanding of the magnets, RF cavities, and other elements that create these fields. Codes include
Lattice description and data interchange issues
Given the variety of modeling tasks, there is not one common data format that has developed.For describing the layout of an accelerator and the corresponding elements, one uses a so-called "lattice file".There have been numerous attempts at unifying the lattice file formats used in different codes. One unification attempt is the Accelerator Markup Language, and the Universal Accelerator Parser.[52] Another attempt at a unified approach to accelerator codes is the UAL or Universal Accelerator Library.[53] As of 2023 neither of these formats are maintained.
The file formats used inMAD may be the most common, with translation routines available to convert to an input form needed for a different code. Associated with the Elegant code is a data format called SDDS, with an associated suite of tools. If one uses a Matlab-based code, such as Accelerator Toolbox, one has available all the tools within Matlab.
For the interchange of particle positions and electromagnetic fields, the OpenPMD[54] standard defines a format which can then be implemented with a file format like HDF5.
Codes in applications of particle accelerators
There are many applications of particle accelerators. For example, two important applications are elementary particle physics and synchrotron radiation production. When performing a modeling task for any accelerator operation, the results of charged particle beam dynamics simulations must feed into the associated application. Thus, for a full simulation, one must include the codes in associated applications. For particle physics, the simulation may be continued in a detector with a code such as Geant4.
For a synchrotron radiation facility, for example, the electron beam produces an x-ray beam that then travels down a beamline before reaching the experiment. Thus, the electron beam modeling software must interface with the x-ray optics modelling software such as SRW,[55] Shadow,[56] McXTrace,[57] or Spectra.[58] Bmad[10] can model both X-rays and charged particle beams. The x-rays are used in an experiment which may be modeled and analyzed with various software, such as the DAWN science platform.[59] OCELOT[60] also includes both synchrotron radiation calculation and x-ray propagation models.
Industrial and medical accelerators represent another area of important applications. A 2013 survey estimated that there were about 27,000 industrial accelerators and another 14,000 medical accelerators world wide,[61] and those numbers have continued to increase since that time.[62] Codes used at those facilities vary considerably and often include a mix of traditional codes and custom codes developed for specific applications. The Advanced Orbit Code (AOC)[63] developed at Ion Beam Applications is an example.
See also
Notes and References
- Computer Codes for Particle Accelerator Design and Analysis: A Compendium, Second Edition, Helen Stokes Deaven and Kwok Chi Dominic Chen, Los Alamos National Laboratory report number LA-UR-90-1766, 290 pages (1990).
- https://oraweb.cern.ch/pls/hhh/code_website.disp_allcat the CERN CARE/HHH website
- Web site: user's guide . 2013-11-16 . 2018-07-04 . https://web.archive.org/web/20180704202245/http://care-hhh.web.cern.ch/care-hhh/Simulation-Codes/Optics/Literature/BETA_MANUAL.pdf . dead .
- http://sourceforge.net/projects/libtracy/ libtracy at sourceforge.net
- http://www.accelsoftinc.com/ AccelSoft Inc. website
- https://github.com/atcollab/at ATcollab website
- See https://github.com/carmignani/festa
- http://www.desy.de/~mpyflo/ ASTRA Homepage
- http://www.pp.rhul.ac.uk/bdsim BDSIM Homepage
- http://www.lepp.cornell.edu/bmad/ Bmad home page
- Web site: COSY . 2018-06-14 . 2018-07-07 . https://web.archive.org/web/20180707093842/http://bt.pa.msu.edu/index_cosy.htm . dead .
- Web site: DYNAC.
- ELEGANT, a Flexible SDDS Compliant Code for Accelerator Simulation software
- Web site: MAD - Methodical Accelerator Design. 2020-09-09. mad@cern.ch.
- Github Merlin-Collaboration/Merlin. 2019-03-03. 10.5281/zenodo.2598428. Appleby. Robert. Barlow. Roger J.. Bungau. Adriana. Fallon. James. Kruecker. Dirk. Molson. James. Rafique. Haroon. Rowan. Scott. Serluca. Maurizio. Sjøbæk. Kyrre Ness. Toader. Adina. Tygier. Sam. Walker. Nick. Wolski. Andy.
- Merlin++ . 10.5281/zenodo.2598428. 2019. Appleby. Robert. Barlow. Roger J.. Bungau. Adriana. Fallon. James. Kruecker. Dirk. Molson. James. Rafique. Haroon. Rowan. Scott. Serluca. Maurizio. Sjøbæk. Kyrre Ness. Toader. Adina. Tygier. Sam. Walker. Nick. Wolski. Andy.
- https://github.com/ocelot-collab/ocelot/ OCELOT collaboration on GitHub
- https://ados.web.psi.ch/opa/ OPA website
- Web site: Home · Wiki · OPAL / SRC.
- https://cds.cern.ch/record/2145365?ln=en PLACET manual
- https://github.com/ALaDyn/Propaga Propaga GitHub repository
- Web site: GitHub - jceepf/fpp_book. GitHub. 2019-02-06.
- http://acc-physics.kek.jp/SAD/ SAD home page at kek.jp
- http://pcwww.liv.ac.uk/~awolski/main_links_computercodes.htm SAMM, another Matlab based tracking code, at liv.ac.uk
- http://sixtrack.web.cern.ch/SixTrack/ SixTrack home page at cern.ch
- https://sourceforge.net/projects/zgoubi/files/ Zgoubi home page at sourceforge.net
- https://sourceforge.net/p/zgoubi/code/HEAD/tree/trunk/guide/Zgoubi.pdf Zgoubi Users' Guide
- https://www.cst.com/solutions#SolverIds-Param%5B%5D=afcdc15d9d8a463c86193b62acc4b805 PIC solver at cst.com
- http://www.pulsar.nl/gpt/ General Particle Tracer (GPT) from Pulsar Physics
- Web site: IMPACT homepage at Berkeley Lab . 2015-04-09 . https://web.archive.org/web/20150416205107/http://amac.lbl.gov/~jiqiang/impact/ . 2015-04-16 . dead .
- https://github.com/ECP-WarpX/impactx ImpactX: an s-based beam dynamics code including space charge effects from Berkeley Lab
- THE MULTIPARTICLE TRACKING CODES SBTRACK AND MBTRACK. R. Nagaoka, PAC '09 paper here
- http://web.ornl.gov/~jzh/JHolmes/ORBIT.html ORBIT home page at ornl.gov
- https://github.com/PyORBIT-Collaboration PyORBIT Collaboration
- https://gitlab.psi.ch/OPAL/src/wikis/home OPAL homepage
- https://github.com/PyCOMPLETE/PyHEADTAIL/wiki PyHEADTAIL wiki
- https://web.fnal.gov/sites/Synergia/SitePages/Synergia%20Home.aspx Synergia home page at fnal.gov
- http://irfu.cea.fr/Sacm/logiciels/index3.php TraceWin at CEA Saclay
- TRANFT user's manual, BNL--77074-2006-IR http://www.osti.gov/scitech/biblio/896444
- https://www.txcorp.com/vsim VSim at Tech-X
- http://warp.lbl.gov Warp wiki
- Web site: GUINEA-PIG Twiki. live. https://web.archive.org/web/20220120001359/https://twiki.cern.ch/twiki/bin/view/ABPComputing/Guinea-Pig . 2022-01-20 . 2020-07-03. twiki.cern.ch.
- Web site: BeamBeam3D GitHub Repo. J. Qiang, M. Furman, and R. Ryne, "A parallel particle-in-cell model for beam–beam interaction in high energy ring colliders" . 2004 . J. Comp. Phys. . 10.1016/j.jcp.2004.01.008.
- http://abci.kek.jp/abci.htm ABCI home page at kek.jp
- https://portal.slac.stanford.edu/sites/ard_public/acd/Pages/Default.aspx ACE3P at slac.stanford.gov
- https://www.cst.com/ CST
- http://www.gdfidl.de/ GdfidL
- T. Weiland, DESY
- http://www.comsol.com/ COMSOL home page at comsol.com
- https://www.cst.com/Applications/Category/Magnetostatics CST Electromagnetic Studio at cst.com
- Web site: OPERA at magnet-design-software.com . 2013-11-15 . https://web.archive.org/web/20131224023436/http://magnet-design-software.com/webinar-introduction-magnet-design-opera/ . 2013-12-24 . dead .
- http://www.lepp.cornell.edu/~dcs/aml/ Description of AML and UAP at cornell.edu
- See references by N. Malitsky and Talman such as this manual from 2002.
- https://github.com/openPMD/openPMD-standard OpenPMD GitHub repository.
- http://www.esrf.eu/Accelerators/Groups/InsertionDevices/Software/SRW SRW home page at esrf.eu
- http://www.esrf.eu/computing/scientific/raytracing/ Shadow home page at esrf.eu
- http://www.mcxtrace.org/ McXTrace home page at mcxtrace.org
- Web site: Spectra home page at riken.go.jp . 2013-11-15 . https://web.archive.org/web/20130827221328/http://radiant.harima.riken.go.jp/spectra/ . 2013-08-27 . dead .
- http://www.dawnsci.org DAWN science platform website
- Web site: An Introduction to Ocelot. GitHub. 16 December 2021.
- https://accelconf.web.cern.ch/IPAC2013/papers/weib201.pdf R. W. Hamm and M. E. Hamm, Industrial Accelerators
- https://accelconf.web.cern.ch/ipac2017/talks/tuia2_talk.pdf session on accelerator business opportunities at IPAC-17
- https://accelconf.web.cern.ch/ipac2016/papers/tupoy002.pdf AOC, A Beam Dynamics Code for Medical and Industrial Accelerators