Absorption imaging
Overview
This experiment script provides the class absorption_imaging: build() declares the cooling/imaging
light and the camera trigger and exposes the MOT loading, the probe flash and the free-flight expansion
time as parameters; run() orchestrates the imaging sequence and provides two detection modes,
fluorescence_imaging and absorption_imaging.
Parameters (build excerpt)
Mot_loading, Flash_us (duration of the probe flash), expansiontime_ms (free-flight expansion),
image_detuning (imaging detuning), MOT_detuning.
Devices (build excerpt)
li_cooling_aom / li_repump_aom / li_zeeman_aom (cooling/repump/Zeeman),
li_absorption_h (horizontal absorption probe beam), li_imaging_valon + dds_0 (imaging frequency source),
trigger_radba (trigger).
Key code (excerpt)
from quatm.experiment import Experiment, NumberValue, delay
class absorption_imaging(Experiment):
def build(self):
self.setattr_device("li_absorption_h")
self.setattr_device("li_imaging_valon")
self.setattr_argument("expansiontime_ms", NumberValue(...))
# ... remainder omitted
def absorption_imaging(self):
# three frames with atoms / without atoms / background, computing the optical depth
...
Data analysis
The optical depth (column density) is computed and published by the analysis process ImageDivider, see
Data and analysis/Absorption imaging.