[Description of PR]
TODO:
- Add unit tests and/or doctests in docstrings
- Add docstrings and API docs for any new/modified user-facing classes and functions
- New/modified features documented in docs/tutorial.rst
- Changes documented in docs/release.rst
- GitHub Actions have all passed
- Test coverage is 100% (Codecov passes)