Reset_Conditional#
- class iqm.pulse.gates.reset.Reset_Conditional(parent, name, locus, calibration_data, builder)#
Bases:
CompositeGate
Conditional reset operation.
Uses a measurement followed by a conditional PRX gate with angle \(\pi\). It is assumed the measurement projects the state into the computational basis.
The conditional PRX implementation handles any necessary waits to accommodate for the feedback result propagation delay.
This reset implementation is factorizable. It can act upon any set of locus components, and the measurement used in the conditional reset will be multiplexed to those components. However, only locus components that have readout and drive can be reset via conditional reset. Otherwise, locus components will just have their channels blocked.
Module:
iqm.pulse.gates.reset
Attributes
Gates that can be calibrated separately from their common calibration existing in
self.builder
.Methods
Get the name of the locus mapping stored in
ScheduleBuilder.ChipTopology
for this implementation.- Parameters:
parent (QuantumOp) –
name (str) –
locus (Locus) –
calibration_data (OILCalibrationData) –
builder (ScheduleBuilder) –
- registered_gates: list[str] = ['measure', 'cc_prx']#
Gates that can be calibrated separately from their common calibration existing in
self.builder
. The gate names should correspond to the keys inself.builder.op_table
. Other gates besides the ones given here can also be constructed viaself.builder
, but these will always use the common calibration.
- _call()#
The GateImplementation-specific logic for implementing a quantum operation.
Inheriting classes may override this method if the default
__call__()
caching (based on the args & kwargs in the signature) is sufficient. Any additional caching may also be implemented inside this function if needed.- Return type:
- classmethod get_locus_mapping_name(operation_name, implementation_name)#
Get the name of the locus mapping stored in
ScheduleBuilder.ChipTopology
for this implementation.By default, it is
"<operation_name>.<implementation_name>"
. Inheriting classes may override this for different behaviour.