Skip to content
This repository was archived by the owner on Aug 21, 2023. It is now read-only.

[EPIC] OpenPulse Documentation #869

Closed
17 of 29 tasks
lcapelluto opened this issue Jan 28, 2020 · 3 comments
Closed
17 of 29 tasks

[EPIC] OpenPulse Documentation #869

lcapelluto opened this issue Jan 28, 2020 · 3 comments
Assignees
Labels
documentation Something is not clear or error in description

Comments

@lcapelluto
Copy link
Contributor

lcapelluto commented Jan 28, 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

Pulse Basics

  • getting started
  • creating instructions
    • What are channels?
    • building pulses
      • using the pulse_lib or using numpy
      • using parametric pulses (this method should be encouraged)
      • 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?)
  • 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) - IP
    • different methods
    • custom scheduling with InstMap
  • how to use execute (special args: frequencies passed that way, meas levels, etc)
  • 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

Pulse Advanced

  • special results types
    • different meas levels
    • extracting data from the results objects for each meas level
  • help with typical use cases
    • how to vary parameters
  • Extending the scheduler
  • 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)
    • What are frames? What is a frame change? How to add one? Why might you add a FC on derived channels? This ties into #3467 also

Aer

  • Using the pulse simulator

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 documentation Something is not clear or error in description label Jan 28, 2020
@lcapelluto
Copy link
Contributor Author

Please assign me:)

@nonhermitian
Copy link
Contributor

nonhermitian commented May 8, 2020

I think a lot of pulse stuff needs to be reworked as the tutorials within the docs cannot access the IQX.

Also, much of the material I have seen can likely be put within the Qiskit docs.

@Eric-Arellano
Copy link
Collaborator

Closing in preparation for archiving this repo in favor of the tutorials living directly in Qiskit (aka Terra), qiskit-algorithms, and qiskit-aer.

I believe this is out of date too.

@Eric-Arellano Eric-Arellano closed this as not planned Won't fix, can't repro, duplicate, stale Aug 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Something is not clear or error in description
Projects
None yet
Development

No branches or pull requests

3 participants