qat.experimental.dialect.pulse.ir.types module

class AmplitudeType(*parameters)

Bases: AmplitudeType

A type representing an amplitude value, used for expressing the amplitude of pulse channels.

The value is expected to be a floating-point number representing the amplitude in arbitrary units.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.amplitude'

The attribute name should be a static field in the attribute classes.

class FrameType(port_kind='output')

Bases: FrameType

Represents a reference frame for a quantum system, encoding a frequency, and tracks phase and time evolution relative to that frequency.

Used with the intent of manipulating a quantum component.

Variables:

port_kind – A target-resolved token used to identify the port class for this frame, without encoding hardware object details directly in the IR. This name can take any string, but is expected to match a meaningful port class in the context of the system data. The default is “output”, which for example, is the standard port kind for a qubit drive frame.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.frame'

The attribute name should be a static field in the attribute classes.

port_kind: StringAttr = <xdsl.irdl.attributes._ParameterDef object>
class FrequencyType(*parameters)

Bases: FrequencyType

A type representing a frequency value, used for expressing frequencies of pulse channels.

The value is expected to be a floating-point number representing the frequency in Hz.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.frequency'

The attribute name should be a static field in the attribute classes.

class PhaseType(*parameters)

Bases: PhaseType

A type representing a phase value, typically used for phase manipulations.

The value is expected to be a floating-point number representing the angle in radians.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.phase'

The attribute name should be a static field in the attribute classes.

class TimeType(*parameters)

Bases: TimeType

Represents a time value, used for expressing durations of operations on frames.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.time'

The attribute name should be a static field in the attribute classes.

class WaveformType(*parameters)

Bases: WaveformType

Represents a waveform type.

classmethod get_irdl_definition()

Get the IRDL attribute definition.

name: ClassVar[str] = 'pulse.waveform'

The attribute name should be a static field in the attribute classes.