CrystalQPUFromBackend

CrystalQPUFromBackend#

Module: iqm.qaoa.transpiler.quantum_hardware

class iqm.qaoa.transpiler.quantum_hardware.CrystalQPUFromBackend(backend)[source]#

Bases: QPU

Class for a QPU with square lattice topology, initialited from a Qiskit backend object.

Since the topology is square lattice, the qubits can be identified with 2D integer coordinates (up to a global shift). The 2D coordinates are calculated from the connectivity topology (provided as the StaticQuantumArchitecture of the input backend).

If the provided backend is an instance of IQMBackend and it was created by IQMProvider.get_backend(use_metrics=True), then it contains the calibration metrics. The CZ gate errors from these are converted to gate fidelities and saved as edge attributes of the hardware graph.

Parameters:

backend (IQMBackendBase) – The backend containing information about the QPU.

Raises:
  • ValueError – If the backend is IQMBackend and it contains multiple different CZ gate fidelity entries for a pair of coupled qubits.

  • TypeError – If an unknown type of backend is provided (neither IQMBackend nor IQMFakeBackend).

Attributes

Methods

Inheritance

Inheritance diagram of iqm.qaoa.transpiler.quantum_hardware.CrystalQPUFromBackend