atomiq.components.optoelectronics.photodiode module

class atomiq.components.optoelectronics.photodiode.Photodiode(*args, **kwargs)

Bases: Component, Measurable

Abstract class to represent a photodiode as a device to measure light power

A Measurable has one ore more channels at which data can be measured

measure()
Return type:

artiq.compiler.types.TMono('float', OrderedDict())

get_power()
Return type:

artiq.compiler.types.TMono('float', OrderedDict())

class atomiq.components.optoelectronics.photodiode.AnalogPhotodiode(adc_channel, *args, **kwargs)

Bases: Photodiode

An analog photodiode that gives a voltage proportional to the incidend light power.

Parameters:

adc_channel (ADCChannel) -- The ADC channel that reads the analog voltage of the photodiode

A Measurable has one ore more channels at which data can be measured

kernel_invariants = {'adc_channel'}
get_power(samples=1, cached=False)
Parameters:
  • samples (artiq.compiler.types.TMono('int', OrderedDict([('width', artiq.compiler.types.TValue(32))])))

  • cached (artiq.compiler.types.TMono('bool', OrderedDict()))

Return type:

artiq.compiler.types.TMono('float', OrderedDict())

measure()
Return type:

artiq.compiler.types.TMono('float', OrderedDict())

class atomiq.components.optoelectronics.photodiode.CalibratedPhotodiode(calibration, *args, **kwargs)

Bases: AnalogPhotodiode

An analog photodiode with a power calibration

Parameters:
  • adc_channel -- The ADC channel that reads the analog voltage of the photodiode

  • calibration (Calibration) -- calibration of the photodiode

A Measurable has one ore more channels at which data can be measured

kernel_invariants = {'calibration'}
get_power(samples=1, cached=False)
Parameters:
  • samples (artiq.compiler.types.TMono('int', OrderedDict([('width', artiq.compiler.types.TValue(32))])))

  • cached (artiq.compiler.types.TMono('bool', OrderedDict()))

Return type:

artiq.compiler.types.TMono('float', OrderedDict())

measure()
Return type:

artiq.compiler.types.TMono('float', OrderedDict())