All quantum circuits are made up of sequence of microwave pulses. Recently we released OpenPulse, which is a new module in qiskit terra, enabling programming of quantum circuits at a level of microwave pulses. Circuit visualizers have been improved to provide better usability. Likewise, improvement of pulse visualizer is very important.
Description
The PR Qiskit/qiskit-terra#2650 will introduce QuantumCircuit to pulse Schedule converter, namely pulse scheduler. Output of pulse scheduler may become a very long pulse Schedule, and the default pulse visualizer dosen't deal with such long pulse Schedule.
Let's see the examples.
User-defined pulse visualization
User can create custom microwave pulses in OpenPulse, and these pulses are added to pulse Schedule. Manually created Schedules are usually not long, and pulse visualizer will give you sufficient output to understand what is happening in your experiment.
d is drive channel to control quantum state of the target qubit, and u is control channel to control two qubit interaction. Because pulses in these channels are complex numbers, real and imaginary parts are differentiated by tone of a color. Rotation symbols indicate Frame Change instruction, which gives phase shift of following pulse.
Large circuit-pulse visualization
When we convert a large QuantumCircuit, such as QFT circuits, the output figure is very hard to see.
As you can see, the output is jammed with pulses and we cannot see the detail of each pulse shape. We are still able to optimize the visualization with several options, e.g. plot_range and channels_to_plot are useful, but, in contrast to circuit visualizer, this is not user-friendly. In such long Schedule case, it is also very hard to intuitively understand what is happening.
The project
It's relatively easy project to work on, without any expertise in quantum information and physics. IBM coach will provide some target Schedule objects to visualize, and the team will create new/enhance existing visualizer to have well-organized and easy viewing output. We prefer to use matplotlib as a visualizer backend.
If you have a background of visualization or graphic design, that would help to improve quality of deliverables.
Abstract
All quantum circuits are made up of sequence of microwave pulses. Recently we released OpenPulse, which is a new module in qiskit terra, enabling programming of quantum circuits at a level of microwave pulses. Circuit visualizers have been improved to provide better usability. Likewise, improvement of pulse visualizer is very important.
Description
The PR Qiskit/qiskit-terra#2650 will introduce
QuantumCircuit
to pulseSchedule
converter, namely pulse scheduler. Output of pulse scheduler may become a very long pulseSchedule
, and the default pulse visualizer dosen't deal with such long pulseSchedule
.Let's see the examples.
User-defined pulse visualization
User can create custom microwave pulses in OpenPulse, and these pulses are added to pulse
Schedule
. Manually createdSchedule
s are usually not long, and pulse visualizer will give you sufficient output to understand what is happening in your experiment.Small circuit-pulse visualization
When we convert relatively small
QuantumCircuit
, e.g. generating two qubit entangle, the pulse visualizer output is still easier viewing.(input)
(output)
d is drive channel to control quantum state of the target qubit, and u is control channel to control two qubit interaction. Because pulses in these channels are complex numbers, real and imaginary parts are differentiated by tone of a color. Rotation symbols indicate Frame Change instruction, which gives phase shift of following pulse.
Large circuit-pulse visualization
When we convert a large
QuantumCircuit
, such as QFT circuits, the output figure is very hard to see.(input)
(output)
As you can see, the output is jammed with pulses and we cannot see the detail of each pulse shape. We are still able to optimize the visualization with several options, e.g.
plot_range
andchannels_to_plot
are useful, but, in contrast to circuit visualizer, this is not user-friendly. In such longSchedule
case, it is also very hard to intuitively understand what is happening.The project
It's relatively easy project to work on, without any expertise in quantum information and physics. IBM coach will provide some target
Schedule
objects to visualize, and the team will create new/enhance existing visualizer to have well-organized and easy viewing output. We prefer to usematplotlib
as a visualizer backend.If you have a background of visualization or graphic design, that would help to improve quality of deliverables.
Members
-
@knzwnao
Deliverable
OpenPulse visualizer
GitHub repo
tbd