mqt.core.plugins.qiskit.job

QDMI Qiskit Job implementation.

Provides a Qiskit JobV1-compatible wrapper for QDMI job execution and results.

Module Contents

class QDMIJob(backend: QDMIBackend, jobs: Job | Sequence[Job], circuit_names: str | Sequence[str])[source]

Bases: qiskit.providers.JobV1

Qiskit job wrapping one or more QDMI/FoMaC jobs.

This class handles both single-circuit and multi-circuit execution, aggregating results from multiple QDMI jobs when needed.

Parameters:
  • backend – The backend this job runs on.

  • jobs – The FoMaC Job object(s). Can be a single job or a list of jobs.

  • circuit_names – The name(s) of the circuit(s) being executed. Can be a single name or a list of names.

result() Result[source]

Get the result of the job.

For multi-circuit jobs, this aggregates results from all submitted circuits.

Returns:

The result of the job with one ExperimentResult per circuit.

status() JobStatus[source]

Get the status of the job.

For multi-circuit jobs, returns the most relevant status: - ERROR if any job failed - CANCELLED if any job was canceled (and none failed) - RUNNING if any job is running (and none failed/canceled) - QUEUED if any job is queued (and none failed/canceled/running) - DONE if all jobs are done

Returns:

The aggregated status of the job(s).

Raises:

ValueError – If the job status is unknown.

submit() None[source]

This method should not be called.

QDMI jobs are submitted via run().