elliptic_integral


elliptic_integral, a C++ code which evaluates complete elliptic integrals of first, second and third kind, including the Jacobi elliptic functions sn(), cn(), and dn(), using the Carlson elliptic integral functions.

The complete and incomplete elliptic integrals of the first, second and third kind can be evaluated, with parameters A (angle in degrees), K (sine of A) or M (the modulus, K^2).

Routines are also supplied to evaluate Jacobi's elliptic functions CN, DN and SN.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

elliptic_integral is available in a C version and a C++ version and a Fortran77 version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

elliptic_integral_test

test_values, a C++ code which supplies test values of various mathematical functions.

toms577, a C++ code which evaluates Carlson's elliptic integral functions RC, RD, RF and RJ. This is a version of ACM TOMS algorithm 577;

Reference:

  1. Bille Carlson,
    Computing Elliptic Integrals by Duplication,
    Numerische Mathematik,
    Volume 33, 1979, pages 1-16.
  2. Bille Carlson, Elaine Notis,
    Algorithm 577, Algorithms for Incomplete Elliptic Integrals,
    ACM Transactions on Mathematical Software,
    Volume 7, Number 3, pages 398-403, September 1981.

Source Code:


Last revised on 26 February 2020.