n0tmyself 5cc153f92b Something changes after discussion 10 mesi fa
..
Test 5cc153f92b Something changes after discussion 10 mesi fa
bin 5cc153f92b Something changes after discussion 10 mesi fa
modules 5cc153f92b Something changes after discussion 10 mesi fa
CMakeLists.txt 5cc153f92b Something changes after discussion 10 mesi fa
README.md 0e55aaf5d0 add comments 10 mesi fa

README.md

Elliptic Integrals Calculator

Description: Elliptic_Integrals::Elliptic(const double phi, const double k) computes elliptic integrals F(ϕ,k) and E(ϕ,k).

Usage:

std::vector<double> Elliptic_Integrals::Elliptic(const double phi, const double k)

In main.cpp displays a table for comparison with Irene A. Stegun, Milton Abramowitz, "Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables", page 613-618.

Parameters:

  • 'phi': The argument in degrees. It must be in the range [0,90]
  • 'k': The modulus. It must be in the range [−1,1]

Returns: A vector containing the values of F(ϕ,k) (at the first position) and E(ϕ,k) (at the second position).

Exceptions:

  • Throws an error if 'k' is not within the range [−1,1]
  • Throws an error if 'phi' is not within the range [0,90]

Special Cases:

  • If 'k' is equal to 1 and 'phi' is 90, the function returns ∞ for F(ϕ,k) and 1 for E(ϕ,k).
  • If 'k' is equal to 1, the function applies specific formulas for computing F(ϕ,k) and E(ϕ,k).
  • For other cases, the function iteratively computes the integrals until a desired level of precision is achieved.

Note: This implementation has a maximum iteration limit of 1000. Adjustments may be needed based on the desired precision and performance requirements.

Related papers:

  • Shanjie Zhang, Jian-Ming Jin, "Computation of Special Functions", page 664-665
  • Irene A. Stegun, Milton Abramowitz, "Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables", page 613-618