Skip to content

Qiskit OpenPulse → Quantify translator (QAE-1077)

Explanation of changes

This MR is a generalization of !465 (closed).

It adds a new submodule quantify_scheduler.qiskit_integration which contains translation functions between Qiskit Pulse schedules and Quantify schedules.

It also contains an abstract interface hierarchy which can be used to define backends for different types of quantum computing systems. Two example "mock" backends have also been included for transmon systems, which are also used for unit testing.

Motivation of changes

The Qiskit experiments library is very vast and extensively tested. The infrastructure to utilize it with the Qblox cluster did not exist, this MR starts at an implementation.


Merge checklist

See also merge request guidelines

  • Merge request has been reviewed (in-depth by a knowledgeable contributor), and is approved by a project maintainer.
  • New code is covered by unit tests (or N/A).
  • New code is documented and docstrings use numpydoc format (or N/A).
  • New functionality: considered making private instead of extending public API (or N/A).
  • Public API changed: added @deprecated (or N/A).
  • Newly added/adjusted documentation and docstrings render properly (or N/A).
  • Pipeline fix or dependency update: post in #software-for-developers channel to merge main back in or update local packages (or N/A).
  • Tested on hardware (or N/A).
  • CHANGELOG.md and AUTHORS.md have been updated (or N/A).
  • Windows tests in CI pipeline pass (manually triggered by maintainers before merging).
    • Maintainers do not hit Auto-merge, we need to actively check as manual tests do not block pipeline

For reference, the issues workflow is described in the contribution guidelines.

Edited by Axel E. Andersson

Merge request reports