Inspect an Accelerator#

This tutorial shows how to inspect and access the content of the accelerator.

Prerequisites#

This tutorial requires an existing pyAML configuration file.

The example uses the configuration provided by the pyaml-test-lattice package.

# Get the path to the configuration file
from pyaml_test_lattice import configurations

# List available files and their descriptions
configurations
{
'pyaml/tango/pyaml-cs-oa/fodo_1gev_6d_pyaml-oa.yaml': pyAML accelerator configuration for the pyaml-cs-oa TANGO bindings.,
'pyaml/tango/pyaml-cs-oa/fodo_1gev_6d_pyaml_catalogs-oa.yaml': Catalog configuration for the pyaml-cs-oa TANGO bindings.,
'pyaml/tango/tango-pyaml/fodo_1gev_6d_pyaml.yaml': pyAML accelerator configuration for the tango-pyaml bindings.,
'pyaml/tango/tango-pyaml/fodo_1gev_6d_pyaml_catalogs.yaml': Catalog configuration for the tango-pyaml bindings.
}

Load the Accelerator#

from pyaml.accelerator import Accelerator
accelerator = Accelerator.load(configurations["pyaml/tango/pyaml-cs-oa/fodo_1gev_6d_pyaml-oa.yaml"])
PyAML OA control system binding (0.2.0rc2.dev14+g25ef1815c) initialized with name 'live' and prefix=''

Inspect the Accelerator Contents#

The yellow pages provide an overview of the accelerator. This shows what is configured and available for use.

accelerator.yellow_pages
Controls:
    live
    .

Simulators:
    design
    .

Arrays:
    QF_001                (pyaml.arrays.magnet_array)             size=1
    SF_001                (pyaml.arrays.magnet_array)             size=1
    QD_001                (pyaml.arrays.magnet_array)             size=1
    SD_001                (pyaml.arrays.magnet_array)             size=1
    QF_002                (pyaml.arrays.magnet_array)             size=1
    SF_002                (pyaml.arrays.magnet_array)             size=1
    QD_002                (pyaml.arrays.magnet_array)             size=1
    SD_002                (pyaml.arrays.magnet_array)             size=1
    QF_003                (pyaml.arrays.magnet_array)             size=1
    SF_003                (pyaml.arrays.magnet_array)             size=1
    QD_003                (pyaml.arrays.magnet_array)             size=1
    SD_003                (pyaml.arrays.magnet_array)             size=1
    QF_004                (pyaml.arrays.magnet_array)             size=1
    SF_004                (pyaml.arrays.magnet_array)             size=1
    QD_004                (pyaml.arrays.magnet_array)             size=1
    SD_004                (pyaml.arrays.magnet_array)             size=1
    QF_005                (pyaml.arrays.magnet_array)             size=1
    SF_005                (pyaml.arrays.magnet_array)             size=1
    QD_005                (pyaml.arrays.magnet_array)             size=1
    SD_005                (pyaml.arrays.magnet_array)             size=1
    QF_006                (pyaml.arrays.magnet_array)             size=1
    SF_006                (pyaml.arrays.magnet_array)             size=1
    QD_006                (pyaml.arrays.magnet_array)             size=1
    SD_006                (pyaml.arrays.magnet_array)             size=1
    QF_007                (pyaml.arrays.magnet_array)             size=1
    SF_007                (pyaml.arrays.magnet_array)             size=1
    QD_007                (pyaml.arrays.magnet_array)             size=1
    SD_007                (pyaml.arrays.magnet_array)             size=1
    QF_008                (pyaml.arrays.magnet_array)             size=1
    SF_008                (pyaml.arrays.magnet_array)             size=1
    QD_008                (pyaml.arrays.magnet_array)             size=1
    SD_008                (pyaml.arrays.magnet_array)             size=1
    QF_009                (pyaml.arrays.magnet_array)             size=1
    SF_009                (pyaml.arrays.magnet_array)             size=1
    QD_009                (pyaml.arrays.magnet_array)             size=1
    SD_009                (pyaml.arrays.magnet_array)             size=1
    QF_010                (pyaml.arrays.magnet_array)             size=1
    SF_010                (pyaml.arrays.magnet_array)             size=1
    QD_010                (pyaml.arrays.magnet_array)             size=1
    SD_010                (pyaml.arrays.magnet_array)             size=1
    QF_011                (pyaml.arrays.magnet_array)             size=1
    SF_011                (pyaml.arrays.magnet_array)             size=1
    QD_011                (pyaml.arrays.magnet_array)             size=1
    SD_011                (pyaml.arrays.magnet_array)             size=1
    QF_012                (pyaml.arrays.magnet_array)             size=1
    SF_012                (pyaml.arrays.magnet_array)             size=1
    QD_012                (pyaml.arrays.magnet_array)             size=1
    SD_012                (pyaml.arrays.magnet_array)             size=1
    QF_013                (pyaml.arrays.magnet_array)             size=1
    SF_013                (pyaml.arrays.magnet_array)             size=1
    QD_013                (pyaml.arrays.magnet_array)             size=1
    SD_013                (pyaml.arrays.magnet_array)             size=1
    QF_014                (pyaml.arrays.magnet_array)             size=1
    SF_014                (pyaml.arrays.magnet_array)             size=1
    QD_014                (pyaml.arrays.magnet_array)             size=1
    SD_014                (pyaml.arrays.magnet_array)             size=1
    QF_015                (pyaml.arrays.magnet_array)             size=1
    SF_015                (pyaml.arrays.magnet_array)             size=1
    QD_015                (pyaml.arrays.magnet_array)             size=1
    SD_015                (pyaml.arrays.magnet_array)             size=1
    QF_016                (pyaml.arrays.magnet_array)             size=1
    SF_016                (pyaml.arrays.magnet_array)             size=1
    QD_016                (pyaml.arrays.magnet_array)             size=1
    SD_016                (pyaml.arrays.magnet_array)             size=1
    Cell1                 (pyaml.arrays.element_array)            size=4
    Cell2                 (pyaml.arrays.element_array)            size=4
    Cell3                 (pyaml.arrays.element_array)            size=4
    Cell4                 (pyaml.arrays.element_array)            size=4
    Cell5                 (pyaml.arrays.element_array)            size=4
    Cell6                 (pyaml.arrays.element_array)            size=4
    Cell7                 (pyaml.arrays.element_array)            size=4
    Cell8                 (pyaml.arrays.element_array)            size=4
    Cell9                 (pyaml.arrays.element_array)            size=4
    Cell10                (pyaml.arrays.element_array)            size=4
    Cell11                (pyaml.arrays.element_array)            size=4
    Cell12                (pyaml.arrays.element_array)            size=4
    Cell13                (pyaml.arrays.element_array)            size=4
    Cell14                (pyaml.arrays.element_array)            size=4
    Cell15                (pyaml.arrays.element_array)            size=4
    Cell16                (pyaml.arrays.element_array)            size=4
    .

Diagnostics:
    BETATRON_TUNE (pyaml.diagnostics.tune_monitor)
    .

Show the Configuration of a Magnet#

accelerator.design.magnets.get("QF_001")
[Quadrupole(peer='Simulator:design', name='QF_001_f2013521b99e4a76bed1db7ec67464b0', model_name='QF_001_f2013521b99e4a76bed1db7ec67464b0', magnet_model=IdentityMagnetModel)]

Gallery generated by Sphinx-Gallery