iqm.qiskit_iqm.iqm_provider.IQMFacadeBackend#
- class iqm.qiskit_iqm.iqm_provider.IQMFacadeBackend(client: IQMClient, *, name: str | None = None, **kwargs)#
Bases:
IQMBackendSimulates the execution of quantum circuits on a mock IQM quantum computer.
Can be used to submit a circuit to a mock IQM server that has no real quantum hardware, and if the mock execution is successful, simulates the circuit locally using an error model that is broadly representative of the mocked QPU. Finally returns the simulated results.
Note
There is usually no point in using a facade backend with a real quantum computer, since the computation results will be replaced with a local simulation.
- Parameters:
client (IQMClient) – Client instance for communicating with an IQM server.
name (str | None) – Name of the fake backend (simulator instance) to use. If None, will be determined automatically based on the static quantum architecture of the server.
kwargs – Optional arguments to be passed to the parent class.
Attributes
nameName of the backend.
descriptionOptional human-readable description.
online_dateDate that the backend came online.
backend_versionVersion of the backend being provided.
Methods
_validate_no_empty_cregs(circuit)Returns True if given circuit has no empty (unused) classical registers, False otherwise.
run(run_input, **options)Run a quantum circuit or a list of quantum circuits on the IQM quantum computer represented by this backend.
- run(run_input: QuantumCircuit | list[QuantumCircuit], **options) JobV1#
Run a quantum circuit or a list of quantum circuits on the IQM quantum computer represented by this backend.
- Parameters:
run_input (QuantumCircuit | list[QuantumCircuit]) – The circuits to run.
options – Keyword arguments passed on to
create_run_request(), and documented there.
- Returns:
Job object from which the results can be obtained once the execution has finished.
- Return type: