Introduction
Maybee the best is to look at papers and presentations to see the potential and use cases. At the moment no papers etc. are avaidable for OPALX due to the early stage of the project.
Checkout the manual for both variants of OPAL.
The OPAL mailing list opal AT lists.psi.ch is used to discuss problems and issues. Subscribe with mailing list.
Please report bugs and feature requests via the mailing list.
OPAL (Object Oriented Parallel Accelerator Library) is a parallel open source tool for charged-particle optics in linear accelerators and rings, including 3D space charge. Using the MAD language with extensions, OPAL can run on a laptop as well as on the largest high performance computing systems. OPAL is built from the ground up as a parallel application exemplifying the fact that high performance computing is the third leg of science, complementing theory and experiment.
The OPAL framework makes it easy to add new features in the form of new C++ classes. OPAL comes in the following flavours:
-
OPAL-cycl: tracks particles with 3D space charge including neighbouring turns in cyclotrons and FFAs with time as the independent variable.
-
OPAL-t: models beam lines, linacs, rf-photo injectors and complete XFELs.
-
OPAL-map: map tracking (experimental).
The code is managed through the Git distributed version control system. A suite of unit tests have been developed for various parts of OPAL, validating each part of the code independently. Unit tests use the google testing framework. System tests validate the overall integration of different elements. Documentation is written in Asciidoc. Tools are available to readily convert Asciidoc into formats such as PDF and HTML for display.
This is the landing for OPALX 2026.1 which is still under heavy development.
Download of Binaries and Clone of Repository
not yet avaidable
| Version/ Source code |
Linux binary package |
macOS binary package |
Manual | Source code documentation |
Release notes |
|---|---|---|---|---|---|
OPAL development |
n.a. |
n.a. |
n.a. |
||
Instead of downloading the source tar-ball you can get the OPAL source via Git. Either clone the whole Git repository (~ 2 GB!) with
git clone https://github.com/OPALX-project/OPAL.git
or clone a specific branch/tag with
git clone --single-branch --depth 1 --branch BRANCH_OR_TAG https://github.com/OPALX-project/OPAL.git [DIR]
Start with Examples
not yet avaidable
For Users
-
Distributions (e.g.
TYPE=FROMFILE)
Tools
-
The runOPAL Python scripts allows you to run, automated, several OPAL jobs and obtain the data in a conceived way. Scans of multiple dimensions are easy to perform.
-
The pyOPALTools.md Python package contains many tools for pre- and postprocessing, and analysing and plotting output data. See also Post Processing.
For Developers
Development
Documentation
Build-, Unit- and Regression Tests The repository for the unit test can be found here.