Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Create a schedule plotting package #411

Open
bramathon opened this issue Oct 6, 2024 · 0 comments · May be fixed by #412
Open

Create a schedule plotting package #411

bramathon opened this issue Oct 6, 2024 · 0 comments · May be fixed by #412

Comments

@bramathon
Copy link
Collaborator

Visualizing the schedule of a quil program is an important feature for users. Program timing is often important to understanding program behaviour and the effects of noise.

To support plotting, we propose a new package called "quil-plotting", which would live in the following location:

    quil-rs
    ├── quil-cli                               
    ├── quil-py           
    ├── quil-plotting
    │    ├── quil_plotting       # The Python library package root.
    │    │     └── pulse.py
    │    │     └── __init__.py
    │    ├── pyproject.toml
    │    ├── README.md
    │    └── test                    # Plotting tests
    ├── quil-rs
    ├── scripts                              
    ├── .gitignore
    └── ...                           

The standalone package would be tested and released along with quil-py and quil-rs. The package will be fairly small, containing additional python dependencies for plotting, and functions to create a plot. An example of such a plot is attached.

gate-view

We envision that the package may grow to include other visualizations of quil programs, including multi-block visualizations, graph visualizations or ZX-diagrams. However, for the time being, we restrict the scope to a pulse plot.

Open questions

  1. quil-py exposes a rust library in python, and thus has a number of project structures to do that. It uses the maturin build system and has a src/ directory with rust code. This is unnecessary for quil-plotting, but it's desirable to maintain consistency. Should quil-plotting use this build system and have a skeleton src/ directory?
@bramathon bramathon linked a pull request Oct 7, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant