LAURA: Lattice Architecture for a Unified Representation of Accelerators
LAURA (Lattice Architecture for a Unified Representation of Accelerators) is a python package for handling particle accelerator lattice data.
This package provides a standardized interface for interacting with objects representing elements in an accelerator lattice. The intention is to collate as much information as possible about each element, in order to achieve the following goals:
Representing a ground source of truth about a given particle accelerator lattice.
Providing a basis for producing configurable simulation lattice files for a range of codes.
Store auxiliary data – mechanical, survey, electrical, for example.
Provide a basic interface to the controls system for each element.
Schema-first
The definitive description of an accelerator element in LAURA is not Python code. It is a
LinkML ontology, held in laura/schema/YAML/, from which everything
else is generated: the Pydantic classes you import, a JSON Schema that validates lattice files,
an OWL ontology, SHACL shapes, a SQLAlchemy ORM, a GraphQL schema and TypeScript types.
This is what makes “a ground source of truth” more than an aspiration. An element’s properties,
their units, their defaults and their permitted values are stated once, in a machine-readable
form that is not tied to Python – so a lattice can be validated, reasoned over, queried with
SPARQL or loaded into a database without LAURA itself being involved.
Warning
Installation
LAURA is published on PyPI as laura-accelerator and requires Python 3.10 or newer:
pip install laura-accelerator
The core install has no simulation-code dependencies – reading, writing and manipulating lattices works out of the box. Support for individual target codes is pulled in through extras:
Extra |
Provides |
|---|---|
|
A single simulation-code backend; see Translator Module. |
|
All of the above at once. |
|
RDF / linked-data export and SPARQL queries; see Importing and Exporting. |
|
Relational (SQLAlchemy) export; see Importing and Exporting. |
|
LinkML tooling for regenerating the schema artefacts and for YAML validation. |
|
The Sphinx toolchain used to build this site. |
|
Everything. |
Note
RF-Track is not distributed on PyPI, so it has no extra – install its wheel manually into the same environment to use RF-Track Translator.
Documentation
Participation
We welcome contributions and suggestions from the community! LAURA is currently under active development,
and as such certain features may be missing or not working as expected. If you find any issues, please
raise it here.
We are also happy to help with installation and setting up your accelerator lattice.
Indices and tables
References
A. Valishev, S. Nagaitsev, V. Kashikhin, and V. Danilov. Ring for test of nonlinear integrable optics. Proceedings of IPAC 2011, New York, NY, USA, pages 1606–1608, 2011. URL: https://proceedings.jacow.org/PAC2011/papers/wep070.pdf.
MAD-X. https://cern.ch/madx. URL: https://cern.ch/madx.
K. Floettmann. ASTRA. https://www.desy.de/ mpyflo/. URL: https://www.desy.de/~mpyflo/.
Pulsar Physics. General Particle Tracer. www.pulsar.nl/gpt. URL: http://www.pulsar.nl/gpt.
M. Borland. Elegant: A flexible SDDS-compliant code for accelerator simulation. Proceedings of ICAP'00, Darmstadt, Germany, 2000. URL: https://www1.aps.anl.gov/icms_files/lsnotes/files/APS_1418218.pdf.
M. Dohlus and T. Limberg. CSRtrack : Faster Calculation of 3-D CSR Effects. Proceedings of FEL 2004, Trieste, Italy, pages MOCOS05, 2004. URL: https://accelconf.web.cern.ch/f04/papers/MOCOS05/MOCOS05.PDF.
I. Agapov, G. Geloni, S. Tomin, and I. Zagorodnov. Ocelot: A software framework for synchrotron light source and FEL studies. Nucl. Instrum. Meth. A, 768:151–156, 2014. URL: https://www.sciencedirect.com/science/article/pii/S0168900214010882, doi:https://doi.org/10.1016/j.nima.2014.09.057.
G. Iadarola, A. Abramov, X. Buffat, R. De Maria, D. Demetriadou, L. Deniau, P.D. Hermes, P. Kicsiny, P. M. Kruyt, A. Latina, S. Łopaciuk, L. Mether, K. Paraschou, T. Pieloni, G. Sterbini, F.F. Van der Veken, P. Belanger, D. Di Croce, M. Seidel, and L. van Riesen-Haupt. Xsuite: an integrated beam physics simulation framework. Proceedings of ICFA 68th Advanced Beam Dynamics Workshop on High-Intensity and High-Brightness Hadron Beams, pages TUA2I1, 2023. URL: https://proceedings.jacow.org/hb2023/papers/tua2i1.pdf, doi:10.18429/JACoW-HB2023-TUA2I1.
A Ferran Pousa, R Assmann, and A Martinez de la Ossa. Wake-t: a fast particle tracking code for plasma-based accelerators. Journal of Physics: Conference Series, 1350(1):012056, Nov 2019. URL: https://dx.doi.org/10.1088/1742-6596/1350/1/012056, doi:10.1088/1742-6596/1350/1/012056.
S. Reiche. GENESIS 1.3: A fully 3D time-dependent FEL simulation code. Nucl. Instrum. Meth. A, 429(1):243, 1999. URL: https://www.sciencedirect.com/science/article/pii/S016890029900114X, doi:https://doi.org/10.1016/S0168-9002(99)00114-X.
OpenPMD. https://www.openpmd.org/. URL: https://www.openpmd.org/.