|
|
== *The OPAL Framework* +++<br>+++ (Object Oriented Parallel Accelerator Library) +++<br>+++ `OPAL` 2.0.0 +++<br>+++ *User’s Reference Manual*
|
|
|
|
|
|
Andreas Adelmann, Christian Baumgarten, Matthias Frey, Achim Gsell,
|
|
|
Valeria Rizzoglio, Jochem Snuverink (PSI) Christof Metzger-Kraus, Yves
|
|
|
Ineichen, Xiaoying Pang, Steve Russell (LANL), Chuan Wang, Jianjun Yang
|
|
|
(CIAE), Suzanne Sheehy, Chris Rogers (RAL) and Daniel Winklehner (MIT)
|
|
|
|
|
|
=== Abstract
|
|
|
|
|
|
`OPAL` is a tool for charged-particle optics in accelerator structures
|
|
|
and beam lines. Using the `mad` language with extensions, `OPAL` is
|
|
|
derived from `mad9p` and is based on the `classic` class library, which
|
|
|
was started in 1995 by an international collaboration. IPPL (Independent
|
|
|
Parallel Particle Layer) is the framework which provides parallel
|
|
|
particles and fields using data parallel ansatz. `OPAL` is built from
|
|
|
the ground up as a parallel application exemplifying the fact that HPC
|
|
|
(High Performance Computing) is the third leg of science, complementing
|
|
|
theory and the experiment. HPC is made possible now through the
|
|
|
increasingly sophisticated mathematical models and evolving computer
|
|
|
power available on the desktop and in super computer centres. `OPAL`
|
|
|
runs on your laptop as well as on the largest HPC clusters available
|
|
|
today.
|
|
|
|
|
|
The `OPAL` framework makes it easy to add new features in the form of
|
|
|
new `C++` classes. It comes in the following flavours:
|
|
|
|
|
|
`OPAL-cycl`::
|
|
|
tracks particles with 3D space charge including neighbouring turns in
|
|
|
cyclotrons and FFAG’s with time as the independent variable.
|
|
|
`OPAL-t`::
|
|
|
can be used to model beam lines, linacs, rf-photo injectors and
|
|
|
complete XFEL’s excluding the undulator.
|
|
|
|
|
|
It should be noted that not all features of `OPAL` are available in all
|
|
|
flavours. The icon `DOPAL-t` means that a feature is not yet available
|
|
|
in `OPAL-t`. Similar icons are used for the other flavours. |