Experiment helpers
Overview
Quatm wraps routine experiment calibration tasks as alignment/helper tools. The modules live in
quatm/GUI/alignment/, together with a number of standalone entry-point widgets, and provide
one-click runs and automatic optimisation.
ODT alignment helper — OdtAlignmentHelper
quatm/GUI/alignment/odt_helper.py — builds a single-axis control block for each piezo mirror
axis of xODT/cODT, and provides overall run/terminate together with compensation voltage and BA
laser parameter settings. The complete alignment sequence for each axis is: full-range scan with
the laser off → fine scan near the ion → publish the fit result → move to the target position.
from quatm.GUI.alignment.odt_helper import OdtAlignmentHelper
helper = OdtAlignmentHelper(parent=parent)
helper.run_all() # run the full alignment sequence (thread pool keeps axes sequential)
helper.terminate_all() # safely stop all axes
Stray-field compensation — CompensationHelper
quatm/GUI/alignment/comp_helper.py — obtains the compensation voltage from a voltage scan along
each trap axis as the intersection of two fitted lines, minimising the stray field automatically.
| Component | Description |
|---|---|
PlotWidget | Plot widget with one tab per trap axis |
ControlWidget | Control area for each axis plus a shared parameter area |
SingleAxisWidget | Scan parameters and “find compensation voltage” (intersection of the two fit lines) |
CompVoltageScan | Performs the voltage scan at the high and low rf confinement |
from quatm.GUI.alignment.comp_helper import CompensationHelper
comp = CompensationHelper(parent=parent)
Piezo mirror control — PiezoMirrorControl
quatm/GUI/entries/piezo_mirror_controler.py — a simple panel that steers the direction of the
mirror driven by a linear actuator using arrow keys/buttons; W/A/S/D correspond to up/left/down/right.
from quatm.GUI.entries.piezo_mirror_controler import PiezoMirrorControl
mirror = PiezoMirrorControl() # standalone window; control with WASD or the arrow keys
mirror.show()