qxmt.devices.ibmq_device module

qxmt.devices.ibmq_device module#

class qxmt.devices.ibmq_device.IBMQDevice(platform, device_name, backend_name, n_qubits, shots, random_seed=None, logger=<Logger qxmt.devices.ibmq_device (INFO)>)

Bases: BaseDevice

IBMQ device implementation for quantum computation. This class provides a concrete implementation of the BaseDevice for IBM Quantum.

Parameters:
  • platform (str)

  • device_name (str)

  • backend_name (str | None)

  • n_qubits (int)

  • shots (int | None)

  • random_seed (int | None)

  • logger (Any)

__init__(platform, device_name, backend_name, n_qubits, shots, random_seed=None, logger=<Logger qxmt.devices.ibmq_device (INFO)>)

Initialize the IBMQ device.

Parameters:
  • platform (str) – platform name (ex: pennylane, qulacs, etc.)

  • device_name (str) – device name provided by the platform (ex: default.qubit, default.tensor, etc.)

  • backend_name (Optional[str]) – backend name for the IBM Quantum real device

  • n_qubits (int) – number of qubits

  • shots (Optional[int]) – number of shots for the quantum circuit

  • random_seed (Optional[int]) – random seed for the quantum device

  • logger (Any) – logger instance

Return type:

None

get_backend()

Get the IBM Quantum real device backend.

Returns:

IBM Quantum real device backend

Return type:

IBMBackend | BackendV2

Raises:

IBMQSettingError – The real device is not set

get_backend_name()

Get the real or remote backend name.

Returns:

backend name

Return type:

str

get_device()

Get the quantum device instance.

Returns:

quantum device instance

Return type:

Any

get_job_ids(created_after=None, created_before=None)

Get the job IDs.

Parameters:
  • created_after (Optional[datetime]) – created datetime of the jobs. If None, start time filter is not applied.

  • created_before (Optional[datetime]) – finished datetime of the jobs. If None, end time filter is not applied.

Returns:

job IDs

Return type:

list[str]

get_provider()

Get real machine provider name.

Returns:

provider name

Return type:

str

get_service()

Get the IBM Quantum service.

Returns:

IBM Quantum service

Return type:

QiskitRuntimeService

Raises:

IBMQSettingError – The real device is not set

is_remote()

Check if the device is a remote device.

Returns:

True if the device is a remote device, False otherwise

Return type:

bool

is_simulator()

Check if the device is a simulator or real machine.

Returns:

True if the device is a simulator, False otherwise

Return type:

bool