MultiplexedProbeTimeBox#
Module: iqm.pulse.timebox
- class iqm.pulse.timebox.MultiplexedProbeTimeBox(label, locus_components, atom, children=<factory>, scheduling=SchedulingStrategy.ASAP, scheduling_algorithm=SchedulingAlgorithm.HARD_BOUNDARY, neighborhood_components=<factory>, boxes_length=0, measure_components=<factory>, additional_components=<factory>)#
Bases:
MeasureBoxA
MeasureBoxfor multiplexing IQ pulses in probe channels.A MultiplexedProbeTimeBox’s atom contains exactly one
ReadoutTriggerfor each probe channel. This class implementsmultiplex()between MultiplexedProbeTimeBox instances such that everyReadoutTriggeron overlapping probe channels is multiplexed withReadoutTrigger.__add__()(non-overlapping probe channel contents are just combined).Attributes
measure_componentsThe
MeasureBoxes.measure_componentsof the MeasureBoxesselfbelongs to.additional_componentsThe
MeasureBoxes.additional_componentsof the MeasureBoxesselfbelongs to.labelDescription the contents of the box for users' convenience.
locus_componentsNames of the QPU components on which this timebox operates.
atomResolved contents of the TimeBox, or None if not resolved.
childrenFurther Timeboxes inside this TimeBox.
neighborhood_componentsDict of neighborhood range integers mapped to sets of components neighboring the locus of this
TimeBox.Methods
Build an atomic MultiplexedProbeTimeBox from a single ReadoutTrigger instruction.
Multiplex two atomic
MultiplexedProbeTimeBoxinstances together.- Parameters:
label (str)
atom (Schedule | None)
scheduling (SchedulingStrategy)
scheduling_algorithm (SchedulingAlgorithm)
boxes_length (int)
- multiplex(other)#
Multiplex two atomic
MultiplexedProbeTimeBoxinstances together.The multiplexing is done such that every
ReadoutTriggerbelonging to the same probe channel are multiplexed together. Otherwise, behaves likeMeasureBox.__add__, returning a normalMeasureBox.- Parameters:
other (MeasureBox)
- Return type:
- static from_readout_trigger(readout_trigger, probe_channel, locus_components, *, label='', block_channels=(), block_duration=0)#
Build an atomic MultiplexedProbeTimeBox from a single ReadoutTrigger instruction.
- Parameters:
readout_trigger (ReadoutTrigger) – Readout trigger instruction.
probe_channel (str) – Name of the probe channel to play
readout_triggerin.label (str) – Label of the new timebox.
block_channels (Iterable[str]) – Names of channels to block.
block_duration (int) – Duration of the required blocking (in samples).
- Returns:
Atomic timebox containing
readout_triggerin the channelprobe_channel.- Return type:
Inheritance
