Toolkits
The Boulder Opal Toolkits are currently in beta phase of development. Breaking changes may be introduced.
The Boulder Opal Toolkits provide convenience nodes, classes, and functions that can simplify developing and deploying workflows in Boulder Opal.
The toolkits are built on top of the existing Boulder Opal functions and graph operations, and are designed for a particular physical system, or system-agnostic tasks. For example, the superconducting toolkit contains functionalities to simulate and optimize superconducting qubit systems, and the signal library provides various forms of commonly used control signals.
Each toolkit provides convenience functions, which can be accessed through its corresponding
namespace from the Qctrl
object. For example, all functions in the utility toolkit
live in the namespace of utils of the Qctrl
object. For ease of use,
some toolkits also define classes for creating abstractions for the physical system.
For example, the Cavity class in the superconducting toolkit. These classes also live
in the corresponding superconducting namespace of the Qctrl
object.
Finally, toolkits may also host convenience graph nodes, which can be used together with other
nodes for defining a general computation graph for your task. These operations
live in the corresponding namespace of a Graph
object.
For example, you can access the nodes for defining signals from the signals namespace of
a Graph
object.
For more context on the role of toolkits and their usage in Boulder Opal, see the Boulder Opal Toolkits topic.
Following is a list of toolkits in Boulder Opal:
Toolkit for closed-loop optimizations. |
|
Toolkit for trapped ion systems. |
|
Toolkit for signal library. |
|
Toolkit for superconducting qubits. |
|
Toolkit for system-agnostic functionality. |