iqm.qiskit_iqm.pulse_level_utils.qiskit_to_iqm

Contents

iqm.qiskit_iqm.pulse_level_utils.qiskit_to_iqm#

iqm.qiskit_iqm.pulse_level_utils.qiskit_to_iqm(backend: IQMBackend, qiskit_circuits: QuantumCircuit | Sequence[QuantumCircuit], *, loading_rules: list[RuleType] | None = None) → tuple[list[Circuit], Compiler]#

Convert transpiled Qiskit quantum circuits to IQM format, for compiling to pulse level.

Also provides the Compiler object for compiling them, with the correct calibration set and component mapping initialized.

Parameters:
  • backend (IQMBackend) – qiskit-iqm backend used to transpile the circuits. Determines the calibration set to be used by the returned compiler.

  • qiskit_circuits (QuantumCircuit | Sequence[QuantumCircuit]) – One or many transpiled Qiskit QuantumCircuits to convert.

  • loading_rules (list[RuleType] | None) – Optional list of rules to use for loading the circuit. If not provided, will load the default calibration set from the backend.

Returns:

Equivalent IQM circuit(s), compiler for compiling them.

Return type:

tuple[list[Circuit], Compiler]