Wiki » History » Version 16
Rogers, Chris, 27 September 2012 14:08
A multiparticle tracking postprocessor library for accelerator physicsists. You've got your favourite tracking code running, what now? This package is a post-processor for taking beam data to calculate beam emittance, Twiss functions, etc. Also includes bindings to plotting packages ROOT and matplotlib, and a whole lot more!
h2. Download and Installation
You can download the latest version from the code repository hosted on "sourceforge":http://sourceforge.net/projects/xboa/. This is mirrored on "launchpad":http://launchpad.net/xboa.
Installation instructions are in the README file, but you probably have to do something like:
tar -xzf xboa-<version>.tar.gz
python setup.py build
sudo python setup.py install
At the moment only Linux is supported, but windows support would be pretty easy to implement if there was demand.
When doing any physics analysis beyond the most basic, one really wants to be able to manipulate the analysis in various ways. For any detailed analysis, physicists will want to make cuts and calculate different variables in different ways. For this reason x-boa really provides just a library of physics analysis functions. Examples of how to use it are provided, but once physicists get going they can really push the analysis however they like.
There are several example scripts in the directory xboa-<version>/xboa/examples that are good to start with. They take you through the steps required to load particle tracking data, access it, make plots and manipulate it in various ways. Reference documentation is in the directory xboa-<version>/doc. Browse the example script code at:
There is also a script that _almost_ clones the functionality of the ecalc9f code developed by Greg Penn and Rick Fernow:
Documentation is generated by the installation process, or available inline from the python command line by doing
Three modules are available
* Common contains some useful general purpose routines including general plotting routines
* Hit provides the interface to individual monte carlo Hits (e.g. particles traversing some output plane)
* Bunch provides interface to operations on groups of particles (e.g. moment and Twiss parameter calculation)
Documentation on each module is provided with the x-boa installation.