accml is a software stack designed to facilitate implementing tools
characterising (high) energy charged accelerator.
These tools typically address:
- characterising an accelerator
- commissioning of an accelerator
- forecasting the performance of an accelerator, which is currently under design.
For details of its concept see design.md.
git clone https://github.com/python-accelerator-middle-layer/accml.git
cd accml
### 2. Install Dependencies
```bash
git checkout dev/main
git submodule update --init --recursivePlease note: accml is not per se depending on bluesky. It does use ophyd_async for communicating to EPICS or TANGO.
ophyd_async imports python protocol definitions from bluesky. We are confident that this dependency can be dropped at a later stage.
python3 -m pip install \
-e ./external-repositories/accml_lib/[bluesky-epics,pyat-simulator] \
-e ./[bluesky-epics]python3 -m pip install \
-e ./external-repositories/accml_lib/[bluesky-tango,pyat-simulator] \
-e ./[bluesky-tango]apptainer run oras://registry.hzdr.de/digital-twins-for-accelerators/containers/pyat-softioc-digital-twin:default-v0-5-1-bessy.2711893apptainer run oras://registry.hzdr.de/digital-twins-for-accelerators/epics-tools:latestKeep this terminal running — it simulates a virtual accelerator backend.
cd examples/10_epics/02_bluesky/accml_interface
python3 01_tune_response_measurement.pyapptainer pull -F virtual-accelerator.sif oras://gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/apptainer/virtual-accelerator:latestapptainer run --cleanenv virtual-accelerator.sifKeep this terminal running — it simulates a virtual accelerator backend.
cd examples/20_epics/02_bluesky/accml_interface execute:
python3 01_tune_response_measurement.py TANGO_HOST=localhost:11000