Class LegendreEllipticIntegral


  • public class LegendreEllipticIntegral
    extends Object
    Complete and incomplete elliptic integrals in Legendre form.

    The elliptic integrals are related to Jacobi elliptic functions.

    Beware that when computing elliptic integrals in the complex plane, many issues arise due to branch cuts. See the user guide for a thorough explanation.

    There are different conventions to interpret the arguments of Legendre elliptic integrals. In mathematical texts, these conventions show up using the separator between arguments. So for example for the incomplete integral of the first kind F we have:

    • F(φ, k): the first argument φ is an angle and the second argument k is the elliptic modulus: this is the trigonometric form of the integral
    • F(φ; m): the first argument φ is an angle and the second argument m=k² is the parameter: this is also a trigonometric form of the integral
    • F(x|m): the first argument x=sin(φ) is not an angle anymore and the second argument m=k² is the parameter: this is the Legendre form
    • F(φ\α): the first argument φ is an angle and the second argument α is the modular angle

    As we have no separator in a method call, we have to adopt one convention and stick to it. In Hipparchus, we adopted the Legendre form (i.e. F(x|m), with x=sin(φ) and m=k². These conventions are consistent with Wolfram Alpha functions EllipticF, EllipticE, ElliptiPI…

    Since:
    2.0
    See Also:
    Elliptic Integrals (Wikipedia), Complete Elliptic Integrals of the First Kind (MathWorld), Complete Elliptic Integrals of the Second Kind (MathWorld), Elliptic Integrals of the First Kind (MathWorld), Elliptic Integrals of the Second Kind (MathWorld), Elliptic Integrals of the Third Kind (MathWorld)