Skip to content

example PR A #615

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

Open
wants to merge 2 commits into
base: devel
Choose a base branch
from
Open

example PR A #615

wants to merge 2 commits into from

Conversation

TysonRayJones
Copy link
Member

@TysonRayJones TysonRayJones commented May 6, 2025

Example PR A

This example PR demonstrates how to add a new, standard QuEST function. As an illustration, it implements calcAmpSum() (and calcRealAmpSum()) which returns the sum of all amplitudes in a Qureg (or just its real component).

The PR combines the changes of the four PRs below which each illustrate an isolated "step" of implementing a new feature.

  1. (#607) calcRealAmpSum() frontend
  2. (#608) calc(Real)AmpSum() backend
  3. (#609) calcRealAmpSum() unit tests
  4. (#610) calcAmpSum() frontend

These individual PRs document how to expose and document the new function, validate its user inputs, implement its accelerated backends (distributed, multithreaded and GPU-accelerated) and its unit tests. It also demonstrates some extra steps needed to maintain C and C++ agnosticism when the new function returns a qcomp directly, as calcAmpSum() does.

and all associated frontend, backend and testing functionality, as a demo
@TysonRayJones TysonRayJones added the demo A demonstration of a development process label May 6, 2025
@TysonRayJones TysonRayJones changed the title added calcRealAmpSum() and calcAmpSum() example PR A May 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
demo A demonstration of a development process
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant