dodal.devices.beamlines.i06_shared.I06EpicsPolynomialDevice#

class dodal.devices.beamlines.i06_shared.I06EpicsPolynomialDevice[source]#

A specialized Insertion Device for the I06 beamline that dynamically synchronizes lookup tables with polynomial coefficients stored in EPICS PVs.

This device composes multiple lookup objects to manage the relationships between Energy, Gap, and Phase. It utilizes EpicsPolynomialEnergyMotorLookup for dynamic forward/inverse energy mappings and StaticPolynomialEnergyMotorLookup for fixed phase positions.

The device implements the Triggerable protocol, allowing all dynamic physics tables to be refreshed simultaneously during a Bluesky plan via yield from bps.trigger(device).

Parameters:
  • prefix (str) – The EPICS prefix for the polynomial coefficient PVs.

  • name (str) – The name of the device for Bluesky/Ophyd.

energy_gap_motor_lookup#

Handles dynamic Energy -> Gap mapping via EPICS.

Type:

EpicsPolynomialEnergyMotorLookup

gap_motor_energy_lookup#

Handles dynamic Gap -> Energy mapping via EPICS.

Type:

EpicsPolynomialEnergyMotorLookup

energy_phase_motor_lookup#

Handles static Energy -> Phase mapping.

Type:

StaticPolynomialEnergyMotorLookup

Methods

trigger()

Triggering this device will update the lookup tables with the current PV values.

Attributes

trigger() None[source]#

Triggering this device will update the lookup tables with the current PV values.

Return type:

None