Skip to content
giadarol edited this page Dec 4, 2019 · 68 revisions

IMPORTANT - Python 3 transition: Until Jan 2020, Python 2.7 will be the default Python version for PyECLOUD. The Python 3 version can be dowloaded following the instructions available here. As of Jan 2020, Python 3 will become the only supported python version


PyECLOUD is a 2D macro-particle code for the simulation of electron cloud effects in particle accelerators. It can be used for different purposes:

  • in stand-alone mode for the simulation of the e-cloud buildup at a certain section of an accelerator (in this case the beam is rigid and feels no effect from the cloud);
  • in combination with the PyHEADTAIL code for the simulation of the e-cloud effects on the beam dynamics, in particular single-bunch and coupled-bunch instabilities;
  • in combination with the PyHEADTAIL code for the simulation of the fast beam-ion instability. More information on this mode is available here.

An overview on PyECLOUD's history and main features can be found here.

Additional libraries

The following libraries are used together with PyECLOUD:

  • PyPIC: PyECLOUD relies on the PyPIC library (created as an external library from the Partice-In-Cell code previously included in PyECLOUD) for the computation of the fields generated by the beam and by the cloud.
  • PyKLU: the PyKLU library can be optionally used to speed-up the Particle In Cell solution.
  • PyHEADTAIL: the PyHEADTAIL library library is used in combination with PyECLOUD to study effects of e-cloud on the beam dynamics (instabilities, incoherent effects).
  • PyPARIS: the PyPARIS library library is used to exploit multiprocess parallelisation to speed-up single-bunch and coupled-bunch instability simulations.
  • NAFFlib: the NAFFlib library used for frequency analysis (e.g. optics calculations).

All these libraries should be installed to be able to run all examples and tests in PyECLOUD.

How to install PyECLOUD and its friend libraries

To get started using PyECLOUD, you can install the code following the instructions in the page:

Documentation

The input and output of the simulation are described in the:

Documents describing the physical models and algorithms implemented in PyECLOUD are collected in the page:

A checkpointing feature can be used for recovery of aborted simulations. Details about this mode can be found here.

Examples and tutorials

A tutorial on how to perform PyECLOUD-PyHEADTAIL simulations for e-cloud induced instabilities is available at here.

A simple example of buildup simulation and some instructions can be found at:

An example on how to run a coupled-bunch instability simulation can be found at: