Currently the parser recognizes comp_ellint_1 and comp_ellint_2, but only executes on CPU when compiled with gcc. An implementation of the calculations have been added to amrex::Math to compute these quantities using the method described here:
https://dlmf.nist.gov/19.8
It is a quadratically converging iterative method that is compatible with device execution.
Gauss's Arithmetic-Geometric Mean
Additional background
Checklist
The proposed changes:
[ ] fix a bug or incorrect behavior in AMReX
[x] add new capabilities to AMReX
[ ] changes answers in the test suite to more than roundoff level
[ ] are likely to significantly affect the results of downstream AMReX users
[x] include documentation in the code and/or rst files, if appropriate
… that it can be executed on accelerator devices.
Summary
Currently the parser recognizes comp_ellint_1 and comp_ellint_2, but only executes on CPU when compiled with gcc. An implementation of the calculations have been added to amrex::Math to compute these quantities using the method described here: https://dlmf.nist.gov/19.8
It is a quadratically converging iterative method that is compatible with device execution.
Gauss's Arithmetic-Geometric Mean
Additional background
Checklist
The proposed changes: