-
Alexis GAMELIN authoredAlexis GAMELIN authored
mbtrack2
mbtrack2 is a coherent object-oriented framework written in python to work on collective effects in synchrotrons.
mbtrack2 is composed of different modules allowing to easily write scripts for single bunch or multi-bunch tracking using MPI parallelization in a transparent way. The base of the tracking model of mbtrack2 is inspired by mbtrack, a C multi-bunch tracking code initially developed at SOLEIL.
Installation
Clone the mbtrack2 repo and enter the repo:
git clone https://gitlab.synchrotron-soleil.fr/PA/collective-effects/mbtrack2.git
cd mbtrack2
Using conda
To create a new conda environment for mbtrack2 run:
conda env create -f mbtrack2.yml
conda activate mbtrack2
Or to update your current conda environment to be able to run mbtrack2:
conda env update --file mbtrack2.yml
To test your installation run:
from mbtrack2 import *
Using pip
Run:
pip install -r requirements.txt
To test your installation run:
from mbtrack2 import *
Examples
Jupyter notebooks demonstrating mbtrack2 features are available in the example folder and can be opened online using google colab:
References
A. Gamelin, W. Foosang, and R. Nagaoka, “mbtrack2, a Collective Effect Library in Python”, presented at the 12th Int. Particle Accelerator Conf. (IPAC'21), Campinas, Brazil, May 2021, paper MOPAB070.