Closed ckormanyos closed 2 weeks ago
comp_ellint_2
and ellint_2
.comp_ellint_3
and ellint_3
(but I don't yet have these in legacy code).Might stop at ellint_1
and ellint_2
complete and postpone ellint_3
. I'll need a few days for this state anyway.
Attention: Patch coverage is 96.70330%
with 15 lines
in your changes missing coverage. Please review.
Project coverage is 98.5%. Comparing base (
80060d2
) to head (54fa90a
).
OK I got ellint_1
and ellint_2
and also handled with series approximation the regions ${\phi}~{\approx}~0$. Also $128$-bit tests are running.
ellint_3
for another time.Hi Matt (@mborland)
I still need a day or two on this one, ... but...
This one makes a pretty good start at elliptix_x
. I'll handle either all or 2/3 of the points above and then hammer this one in within a day or so. This is a cool function to compute since it is one of the epic examples of actually using AGM-iteration to get numerical answers.
Thanks for getting this working properly!
Sure thing Matt (@mborland).
It's not quite yet done. In the 32-bit case, I still have a few convergence misses (like one in a few million). I still need to fully fix the iteration parameters and see why some extreme cases don't converge. I might just use Taylor series or Pade for a sub-class of 32-bit cals.
Anyway, I need still a day or two to get this thing into develop.
Still getting tiny fuzz at ${\approx}~{1}/{1,000,000}$ rate. The answer for sporadic points is a factor of $2$ too large. Re-convert PR to draft.
Hi Matt (@mborland) this one took a while. I finished ellint_1()
and ellint_2()
and also improved tan()
and a few other problem-ettes along the way.
Thanks Matt. This wqas a challenging one. I ended up using some old code and the fundamental AGM equations found in the NIST DLMF here. It is always fun to derive an algorithm directly from the literature.
I'll move on to ellint_3()
, probably sticking with AGM methods.
The purpose of this PR is to get the C++17 elliptic integral functions working and tested.