Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Selecting schedules and slice measurements in multidimensional QUA programs #6

Open
nulinspiratie opened this issue May 21, 2024 · 0 comments

Comments

@nulinspiratie
Copy link
Contributor

nulinspiratie commented May 21, 2024

When a QUA program contains an N-dimensional loop, each N-dimensional coordinate has its own Qiskit Pulse schedule. Similarly, the simulated results are also N-dimensional.
We can only visualize a single Qiskit Pulse Schedule (i.e. 0-dimensional) and a results array that is at most 2-dimensional (e.g. as a heat map).

The dimensionality of the outputs can be reduced by adding sliders to select a specific coordinate along an axis, as shown in the image below
image

Implementation details

  • Plotly Dash should be used to create the necessary sliders and visualization
  • The visualizations of the pulse schedules and simulation results can plotted using either Plotly or Matplotlib.
  • Each of the N axes in an N-dimensional array should have its own slider, which is initially set to the first value
    • By changing the value of the slider, a specific coordinate is selected along this axis
    • The sliders should be shared by both the pulse schedule and the simulation results
  • Each slider has a checkbox next to it that has the property "sweep"
    • These checkboxes indicate which axes should be selected for plotting the results
    • Initially the first two sweep axes are selected
  • The results should only render if one (1D line plot) or two (2D heat map) checkboxes are ticked

Acceptance criteria

QUA programs with 1 to 3 sweep axes should be tested

  • For each of the three programs, there should be a corresponding number of sliders, one for each sweep axis
  • Upon varying each of the sliders, the visualized pulse schedule should change correspondingly to the selected coordinates
  • The visualized simulation results should only change if the slider that does not have a checkbox (if any) is varied.
  • The visualized simulation results should be a 1D line plot if only a single checkbox is ticked, and a 2D heat map if two checkboxes are ticked. The visualized results should match the selected coordinates and sweep axes
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

1 participant