FluxPulseGate_SmoothConstant#

Module: iqm.pulse.gates.cz

class iqm.pulse.gates.cz.FluxPulseGate_SmoothConstant(parent, name, locus, calibration_data, builder)#

Bases: FluxPulseGate

Flux pulse gate implementation which uses a 3-part pulse sequence (cosine rise, constant, cosine fall).

Otherwise, works similar to FluxPulseGate.

Parameters:
  • flux_pulses – mapping from flux channel name to its flux pulse

  • rz – mapping from drive channel name to the virtual z rotation angle, in radians, that should be performed on it

  • parent (QuantumOp)

  • name (str)

  • locus (Locus)

  • calibration_data (OILCalibrationData)

  • builder (ScheduleBuilder)

Attributes

root_parameters

Parameters shared by all FluxPulseGateBase classes.

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

rise_wave#

Waveform, rise part of the 3-pulse sequence to be played with qubit and coupler gates.

alias of CosineRiseFlex

fall_wave#

Waveform, fall part of the 3-pulse sequence to be played with qubit and coupler gates.

alias of CosineFallFlex

root_parameters: dict[str, Parameter | Setting | dict] = {'coupler': {'amplitude': Parameter(name='', label='Coupler pulse amplitude', unit='', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'full_width': Parameter(name='', label='Coupler pulse full width', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'rise_time': Parameter(name='', label='Coupler pulse rise time', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None)}, 'duration': Parameter(name='', label='Gate duration', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'qubit': {'amplitude': Parameter(name='', label='Qubit pulse amplitude', unit='', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'full_width': Parameter(name='', label='Qubit pulse full width', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None), 'rise_time': Parameter(name='', label='Qubit pulse rise time', unit='s', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None)}, 'rz': {'*': Parameter(name='', label='Z rotation angle', unit='rad', data_type=<DataType.FLOAT: 1>, collection_type=<CollectionType.SCALAR: 0>, element_indices=None)}}#

Parameters shared by all FluxPulseGateBase classes. Inheriting classes may override this if there’s a need for additional calibration parameters.

Inheritance

Inheritance diagram of iqm.pulse.gates.cz.FluxPulseGate_SmoothConstant