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

[EPIC] OpenPulse Documentation #3676

Closed
2 of 34 tasks
lcapelluto opened this issue Jan 3, 2020 · 3 comments
Closed
2 of 34 tasks

[EPIC] OpenPulse Documentation #3676

lcapelluto opened this issue Jan 3, 2020 · 3 comments
Assignees
Labels
documentation Something is not clear or an error documentation mod: pulse Related to the Pulse module
Milestone

Comments

@lcapelluto
Copy link
Contributor

lcapelluto commented Jan 3, 2020

Each item in the checklist needs its own issue, and that issue needs to be linked here before starting.

Documentation for OpenPulse should cover:

Terra

  • getting started
  • creating instructions - IP
    • What are channels?
    • building pulses
      • using the pulse_lib or using numpy
      • using parametric pulses (this method should be encouraged)
    • What are frames? What is a frame change? How to add one? Why might you add a FC on derived channels? This ties into Implement frequency changes for pulse #3467 also
      • How to update the modulation frequency of a channel (or SetFrequency, later)
  • how to build a schedule (explain the syntax, explain multiple ways to build the schedule, explain schedule operations and composition)
  • how to add measurements, including explaining meas_map with a link to page about meas_levels (using a custom discriminator?) - IP
  • how to use execute
  • more advanced schedule building
    • what are control channels? how to get data about them and how to use them?
    • how to build and understand the system hamiltonian (hopefully, can mostly link to other resources)
  • getting data about the system
    • configuration
    • defaults and InstructionScheduleMap
    • properties
  • Using the scheduler (default scheduling method, demo how to use it, explain key features such as acquisition alignment)
    • different methods
    • custom scheduling with InstMap
    • extending the scheduler
  • special results types
    • different meas levels
    • extracting data from the results objects for each meas level
  • how to make a new ParametricPulse
  • help with typical use cases
    • how to vary parameters
  • physics (this section could potentially just be a list of references, it's important that the references exist and are easy to find, but explaining physics is not the aim of software documentation)
    • how does the system evolve under a pulse
  • troubleshooting: this is stuff that people ask about over time. Hopefully, everything will have been covered in the above, but there should still be a landing spot for this

Aer

  • Using the pulse simulator - IP

Tutorials for OpenPulse should demonstrate:

  • frequency sweep
  • basic implementation of each Pauli gate using pulse
  • basic CX bringup tuning CR pulses
  • measuring t1
  • measuring t2
  • dynamical decoupling
  • qubit spec (chevron)
  • creating a custom discriminator

Most of these are done in various places, and may need cleaning up, updating to use the latest code, or more thorough explanations.

@lcapelluto lcapelluto added the type: enhancement It's working, but needs polishing label Jan 3, 2020
@lcapelluto lcapelluto self-assigned this Jan 3, 2020
@lcapelluto lcapelluto added this to the 0.12 milestone Jan 3, 2020
@taalexander taalexander added documentation Something is not clear or an error documentation and removed type: enhancement It's working, but needs polishing labels Jan 3, 2020
@lcapelluto
Copy link
Contributor Author

user case misconception: framechange can be used to rotate around y axis

@lcapelluto
Copy link
Contributor Author

@DanPuzzuoli tracking your tutorial contributions here :D

@ajavadia ajavadia modified the milestones: 0.12, 0.13 Jan 28, 2020
@lcapelluto
Copy link
Contributor Author

Moved here: Qiskit/qiskit-tutorials#869

@1ucian0 1ucian0 added the mod: pulse Related to the Pulse module label Jan 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Something is not clear or an error documentation mod: pulse Related to the Pulse module
Projects
None yet
Development

No branches or pull requests

4 participants