SinglePulseGate#

Module: iqm.pulse.gate_implementation

class iqm.pulse.gate_implementation.SinglePulseGate(parent, name, locus, calibration_data, builder)#

Bases: GateImplementation

Base class for GateImplementations that play a single pulse on a single channel.

The pulse is created in _get_pulse() and the channel is specified in _get_pulse_channel(). The base class also implements a basic _call() method that just inserts the specified pulse into the specified channel, and a method for computing the pulse’s duration. All of these methods can be overridden in subclasses.

Attributes

id

Unique str identifier, needed for certain caching properties.

sub_implementations

Single-component sub-implementations for factorizable gates with len(locus) > 1, otherwise empty.

Methods

duration_in_seconds

Duration of the Schedule of the gate implementation (in seconds).

Parameters:
duration_in_seconds()#

Duration of the Schedule of the gate implementation (in seconds).

Can be left unimplemented if the duration e.g. depends on the gate arguments. Subclasses can reimplement this method in case it makes sense in their context.

Return type:

float

Inheritance

Inheritance diagram of iqm.pulse.gate_implementation.SinglePulseGate