id4_common.devices.phaseplates#
Phase retarders.
Module Contents#
- class id4_common.devices.phaseplates.MicronsSignal(parent_attr, *, parent=None, **kwargs)#
Bases:
ophyd.DerivedSignalA signal that converts the offset from degrees to microns
- describe()#
Override describe to report units as microns.
- inverse(value)#
Compute original signal value -> derived signal value
- forward(value)#
Compute derived signal value -> original signal value
- class id4_common.devices.phaseplates.PRPzt(PV, *args, drio_prefix='4idaSoft:232DRIO:1:', **kwargs)#
Bases:
ophyd.DevicePhase retarder PZT
- remote_setpoint#
- remote_readback#
- localdc#
- center#
- offset_degrees#
- offset_microns#
- servoon#
- servooff#
- servostatus#
- selectDC#
- selectAC#
- ACstatus#
- conversion_factor#
- class id4_common.devices.phaseplates.PRDeviceBase(prefix, name, motorsDict, **kwargs)#
Bases:
ophyd.PseudoPositionerBase class for phase retarder devices mapping energy to Bragg angle.
- energy#
- th#
- x#
- y#
- d_spacing#
- offset_degrees#
- motor_switch#
- tracking#
- convert_energy_to_theta(energy)#
Convert photon energy (keV) to Bragg angle (degrees) using the crystal d-spacing.
- convert_theta_to_energy(theta)#
Convert Bragg angle (degrees) to photon energy (keV) using the crystal d-spacing.
- forward(pseudo_pos)#
Run a forward (pseudo -> real) calculation
- inverse(real_pos)#
Run an inverse (real -> pseudo) calculation
- set_energy(energy)#
Calibrate the Bragg-angle motor to match the given photon energy (keV).
- default_settings()#
Apply default d-spacing and motor-switch settings for this phase retarder.
- class id4_common.devices.phaseplates.PRDevice(prefix, name, prnum, motorsDict, **kwargs)#
Bases:
PRDeviceBasePhase retarder with PZT piezo control and crystal-plane auto-selection.
- pzt#
- select_pr#
- default_settings()#
Set PZT conversion factor and d-spacing based on the selected crystal plane.