Skip to main content

A fast particle tracking code for plasma wakefield acceleators

Project description

Wake-T: A fast tracking code for plasma accelerators.

Build Status CodeFactor License

Wake-T logo

Overview

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:

Wake-T logo

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.

Installation

  1. 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.

  2. 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.

  1. If you haven't already, open a terminal in the newly created folder and perform the installation with
python setup.py install

References

[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).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Wake-T-0.4.0.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

Wake_T-0.4.0-py3-none-any.whl (80.1 kB view details)

Uploaded Python 3

File details

Details for the file Wake-T-0.4.0.tar.gz.

File metadata

  • Download URL: Wake-T-0.4.0.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.7.4

File hashes

Hashes for Wake-T-0.4.0.tar.gz
Algorithm Hash digest
SHA256 73c024466d969fcc4ce936bea4c35ce252d94a1fa7d837b334d66a685f8173a6
MD5 64c573dbe643d0edda8a8c694a2bc98e
BLAKE2b-256 c63f2ff0b3d0ddd3e949812c987f3f4652b78e07af5a3ddbbf4529a71144c3d5

See more details on using hashes here.

File details

Details for the file Wake_T-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: Wake_T-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 80.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.7.4

File hashes

Hashes for Wake_T-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 931fe1bcf265ede2a8e1227ac6c07d702cb6c04dd36006f32b6ff2159c9d6b51
MD5 5ecf8648eef2beecc456ac5a7e5bf07e
BLAKE2b-256 150fe7882e907e3dfebb6e34f4de52974b694c7aa4d13bdeffda1c05ee835745

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page