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 mergemain
back in or update local packages (or N/A). -
Tested on hardware (or N/A). -
CHANGELOG.md
andAUTHORS.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