IQMBackendBase#
Module: iqm.qiskit_iqm.iqm_backend
- class iqm.qiskit_iqm.iqm_backend.IQMBackendBase(architecture: DynamicQuantumArchitecture, *, metrics: ObservationFinder | None = None, name: str = 'IQMBackend', **kwargs)#
-
Abstract base class for various IQM-specific backends.
- Parameters:
architecture (DynamicQuantumArchitecture) – Dynamic quantum architecture associated with the backend instance.
metrics (ObservationFinder | None) – Optional calibration data and related quality metrics for the transpilation target.
name (str) – Optional name for the backend instance.
Attributes
Maximum number of circuits for a single job.
Return the list of physical qubits in the backend.
Return the target without computational resonators.
Return the target with MOVE gates and resonators included.
nameName of the backend.
descriptionOptional human-readable description.
online_dateDate that the backend came online.
backend_versionVersion of the backend being provided.
Methods
Return the real physical target of the backend without fictional CZ gates.
Return the plugin that should be used for scheduling the circuits on this backend.
True iff the backend QPU has computational resonators.
Given a quantum register index, return the corresponding IQM-style qubit name.
Given an IQM-style qubit name, return the corresponding index in the register.
Run (or simulate) the execution of quantum circuit(s).
- property target_with_resonators: Target#
Return the target with MOVE gates and resonators included.
- Raises:
ValueError – The backend does not have resonators.
- get_real_target() Target#
Return the real physical target of the backend without fictional CZ gates.
- Return type:
- qubit_name_to_index(name: str) int#
Given an IQM-style qubit name, return the corresponding index in the register.
- Parameters:
name (str) – IQM-style qubit name (‘QB1’, ‘QB2’, etc.)
- Returns:
Index of the given qubit in the quantum register.
- Raises:
ValueError – Qubit name cannot be found on the backend.
- Return type:
- index_to_qubit_name(index: int) str#
Given a quantum register index, return the corresponding IQM-style qubit name.
- Parameters:
index (int) – Qubit index in the quantum register.
- Returns:
Corresponding IQM-style qubit name (‘QB1’, ‘QB2’, etc.).
- Raises:
ValueError – Qubit index cannot be found on the backend.
- Return type:
- get_scheduling_stage_plugin() str#
Return the plugin that should be used for scheduling the circuits on this backend.
- Return type:
- property max_circuits: int | None#
Maximum number of circuits for a single job.
None means unlimited.
- abstractmethod run(run_input: QuantumCircuit | list[QuantumCircuit], **options) JobV1#
Run (or simulate) the execution of quantum circuit(s).
Note that the return type is
JobV1, notIQMJob, since this is whatIQMFakeBackendproduces.- Parameters:
run_input (QuantumCircuit | list[QuantumCircuit])
- Return type:
JobV1
Inheritance
