Acquire¶
- class Acquire(duration, channel=None, mem_slot=None, reg_slots=None, mem_slots=None, reg_slot=None, kernel=None, discriminator=None, name=None)[source]¶
The Acquire instruction is used to trigger the ADC associated with a particular qubit; e.g. instantiated with AcquireChannel(0), the Acquire command will trigger data collection for the channel associated with qubit 0 readout. This instruction also provides acquisition metadata:
the number of cycles during which to acquire (in terms of dt),
the register slot to store classified, intermediary readout results,
the memory slot to return classified results,
the kernel to integrate raw data for each shot, and
the discriminator to classify kerneled IQ points.
Create a new Acquire instruction.
- Parameters
duration (
int
) – Length of time to acquire data in terms of dt.channel (
Union
[AcquireChannel
,List
[AcquireChannel
],None
]) – The channel that will acquire data.mem_slot (
Union
[MemorySlot
,List
[MemorySlot
],None
]) – The classical memory slot in which to store the classified readout result.mem_slots (
Optional
[List
[MemorySlot
]]) – Deprecated list form ofmem_slot
.reg_slots (
Union
[RegisterSlot
,List
[RegisterSlot
],None
]) – Deprecated list form ofreg_slot
.reg_slot (
Optional
[RegisterSlot
]) – The fast-access register slot in which to store the classified readout result for fast feedback.kernel (
Optional
[Kernel
]) – AKernel
for integrating raw data.discriminator (
Optional
[Discriminator
]) – ADiscriminator
for discriminating kerneled IQ data into 0/1 results.name (
Optional
[str
]) – Name of the instruction for display purposes.
- Raises
PulseError – If channels are supplied, and the number of register and/or memory slots does not equal the number of channels.
Attributes
Acquire channel to acquire data.
Acquire channels to be acquired on.
Return the
Channel
that this instruction is scheduled on.Returns channels that this schedule uses.
The associated command.
Return discrimination settings.
Duration of this instruction.
Unique identifier for this instruction.
Iterable for getting instructions from Schedule tree.
Return kernel settings.
The classical memory slot which will store the classified readout result.
MemorySlots.
Name of this instruction.
Return instruction operands.
The fast-access register slot which will store the classified readout result for fast-feedback computation.
RegisterSlots.
Relative begin time of this instruction.
Relative end time of this instruction.
Occupied time slots by this instruction.
Methods
Acquire.__call__
([channel, mem_slot, …])Return new
Acquire
that is fully instantiated with its channels.Acquire.append
(schedule[, name])Return a new
Schedule
withschedule
inserted at the maximum time over all channels shared betweenself
andschedule
.Acquire.ch_duration
(*channels)Return duration of the supplied channels in this Instruction.
Acquire.ch_start_time
(*channels)Return minimum start time for supplied channels.
Acquire.ch_stop_time
(*channels)Return maximum start time for supplied channels.
Acquire.draw
([dt, style, filename, …])Plot the instruction.
Return itself as already single instruction.
Acquire.insert
(start_time, schedule[, name])Return a new
Schedule
withschedule
inserted withinself
atstart_time
.Acquire.shift
(time[, name])Return a new schedule shifted forward by time.
Acquire.union
(*schedules[, name])Return a new schedule which is the union of self and schedule.