Wake-T
(Wakefield particle Tracker) is a tracking code for plasma wakefield accelerators which aims at providing a fast alternative to Particle-in-Cell (PIC) simulations. Instead of relying on the computationally-expensive PIC algorithm for simulating the plasma wakefields and the beam evolution, Wake-T
uses an analytical or numerical (Runge-Kutta) solver to track the evolution of the beam electrons in the wakefields, which, at the same time, are computed from reduced models. This allows for a significant speed-up of the simulations, which can be performed in a matter of seconds instead or hours/days. An overview of this strategy can be seen in the following figure:
The main drawback of this approach is a reduced accuracy of the results, compared to a PIC code, particularly if the assumptions of the reduced wakefield models are not satisfied. Although more models are planned to be included in the future, some of the main current limitations of the code are the lack of realistic laser evolution and electron self-injection.
In addition to plasma-acceleration stages, Wake-T
can also simulate active plasma lenses, drifts, dipoles, quadrupoles and sextupoles, allowing for the simulation of complex beamlines. The tracking along the drifts and magnets is performed using second-order transfer matrices, and CSR effects can be included by using a 1D model. This matrix approach and the CSR model are based on a streamlined version of the Ocelot
implementation.
If you don't have Python 3 already installed, download the latest version, for example, from here. It is recommended to create a virtual environment for Wake-T
(you can see how here, for example). Remember to activate the new environment before proceeding with the installation.
Simply type
pip install Wake-T
in your terminal.
- Clone this repository to a directory in your computer using
git
git clone https://github.com/AngelFP/Wake-T.git
or simply download the code from here and unzip it.
- If you haven't already, open a terminal in the newly created folder and perform the installation with
python setup.py install
[1] - A. Ferran Pousa et al., Intrinsic energy spread and bunch length growth in plasma-based accelerators due to betatron motion, Sci. Rep. 9, 17690 (2019).
[2] - P. Baxevanis and G. Stupakov, Novel fast simulation technique for axisymmetric plasma wakefield acceleration configurations in the blowout regime, Phys. Rev. Accel. Beams 21, 071301 (2018).
[3] - A. Ferran Pousa et al., Wake-T: a fast particle tracking code for plasma-based accelerators, J. Phys.: Conf. Ser. 1350 012056 (2019).