atomiq.components.dummies ========================= .. py:module:: atomiq.components.dummies .. autoapi-nested-parse:: Dummies ======= This module gathers differnt dummy components that mimic hardware but do nothing. They are mainly used for debugging atomiq Classes ------- .. autoapisummary:: atomiq.components.dummies.DummyADC atomiq.components.dummies.DummyRFSource atomiq.components.dummies.DummyDAC atomiq.components.dummies.DummyActor atomiq.components.dummies.DummyMonitor atomiq.components.dummies.DummySwitch Module Contents --------------- .. py:class:: DummyADC(return_value, *args, **kwargs) Bases: :py:obj:`atomiq.components.electronics.adc.ADC` An analog-to-ditigal converter (ADC) with multiple channels Many ADCs come with multiple channels that are always sampled together. This class represents such ADCs :param num_chan: Number of channels the ADC has. .. py:attribute:: kernel_invariants .. py:attribute:: return_value .. py:method:: _measure(target_arr) .. py:class:: DummyRFSource(default_frequency = 100000000.0, default_amplitude = 0.0, default_phase = 0.0, freq_limit = (0.0, float('inf')), amp_limit = (0.0, 1.0), blind = False, default_ramp_steps = 30, *args, **kwargs) Bases: :py:obj:`atomiq.components.electronics.rfsource.RFSource` A dummy RFSource used for debugging .. py:method:: _set_frequency(frequency) .. py:method:: _set_amplitude(amplitude) .. py:method:: _set_phase(phase) .. py:class:: DummyDAC(*args, **kwargs) Bases: :py:obj:`atomiq.components.electronics.voltagesource.DAC` A DAC with multiple channels :param num_chan: Number of channels the DAC has .. py:attribute:: values .. py:method:: set_channel_voltage(channel, voltage) .. py:method:: update() .. py:class:: DummyActor(*args, **kwargs) Bases: :py:obj:`atomiq.components.primitives.Component`, :py:obj:`atomiq.components.primitives.Parametrizable` An atomiq Component Every component in atomiq inherits from this class. It provides basic functionality for automatic and recursive building and initialization of components (prepare, build, prerun). It also takes care for joining kernel invariants along the inheritance tree. .. Note:: The arguments `parent` and `identifier` are automatically passed to the component object by the atomiq object builder. :param parent: The parent context of the component. Usually this is the experiment that uses the component :param identifier: A unique name to identify the component. :param debug_output: Set whether the component should show debug output. Using this switch rather than the debug kernel logger can allow the compiler to not include the debug commands in the kernel code if the output is not needed. .. py:attribute:: amplitude :value: 0.0 .. py:method:: set_amplitude(amp) .. py:class:: DummyMonitor(dummy_actor, *args, **kwargs) Bases: :py:obj:`atomiq.components.primitives.Component`, :py:obj:`atomiq.components.primitives.Measurable` An atomiq Component Every component in atomiq inherits from this class. It provides basic functionality for automatic and recursive building and initialization of components (prepare, build, prerun). It also takes care for joining kernel invariants along the inheritance tree. .. Note:: The arguments `parent` and `identifier` are automatically passed to the component object by the atomiq object builder. :param parent: The parent context of the component. Usually this is the experiment that uses the component :param identifier: A unique name to identify the component. :param debug_output: Set whether the component should show debug output. Using this switch rather than the debug kernel logger can allow the compiler to not include the debug commands in the kernel code if the output is not needed. .. py:attribute:: dummy_actor .. py:method:: get_voltage() .. py:class:: DummySwitch(channels, *args, **kwargs) Bases: :py:obj:`atomiq.components.primitives.Component`, :py:obj:`atomiq.components.primitives.Switchable` An atomiq Component Every component in atomiq inherits from this class. It provides basic functionality for automatic and recursive building and initialization of components (prepare, build, prerun). It also takes care for joining kernel invariants along the inheritance tree. .. Note:: The arguments `parent` and `identifier` are automatically passed to the component object by the atomiq object builder. :param parent: The parent context of the component. Usually this is the experiment that uses the component :param identifier: A unique name to identify the component. :param debug_output: Set whether the component should show debug output. Using this switch rather than the debug kernel logger can allow the compiler to not include the debug commands in the kernel code if the output is not needed. .. py:attribute:: states .. py:method:: _get_channel_index(channel) .. py:method:: on(channel = '') .. py:method:: off(channel = '') .. py:method:: is_on(channel = '')