<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Elliptic Integral Overview</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../../../index.html" title="Math Toolkit">
<link rel="up" href="../ellint.html" title="Elliptic Integrals">
<link rel="prev" href="../ellint.html" title="Elliptic Integrals">
<link rel="next" href="ellint_carlson.html" title="Elliptic Integrals - Carlson Form">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../ellint.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="ellint_carlson.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="math_toolkit.special.ellint.ellint_intro"></a><a class="link" href="ellint_intro.html" title="Elliptic Integral Overview"> Elliptic
        Integral Overview</a>
</h4></div></div></div>
<p>
          The main reference for the elliptic integrals is:
        </p>
<div class="blockquote"><blockquote class="blockquote"><p>
            M. Abramowitz and I. A. Stegun (Eds.) (1964) Handbook of Mathematical
            Functions with Formulas, Graphs, and Mathematical Tables, National Bureau
            of Standards Applied Mathematics Series, U.S. Government Printing Office,
            Washington, D.C.
          </p></blockquote></div>
<p>
          Mathworld also contain a lot of useful background information:
        </p>
<div class="blockquote"><blockquote class="blockquote"><p>
            <a href="http://mathworld.wolfram.com/EllipticIntegral.html" target="_top">Weisstein,
            Eric W. "Elliptic Integral." From MathWorld--A Wolfram Web
            Resource.</a>
          </p></blockquote></div>
<p>
          As does <a href="http://en.wikipedia.org/wiki/Elliptic_integral" target="_top">Wikipedia
          Elliptic integral</a>.
        </p>
<a name="math_toolkit.special.ellint.ellint_intro.notation"></a><h5>
<a name="id1130431"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.notation">Notation</a>
        </h5>
<p>
          All variables are real numbers unless otherwise noted.
        </p>
<a name="ellint_def"></a><a name="math_toolkit.special.ellint.ellint_intro.definition"></a><h5>
<a name="id1130451"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.definition">Definition</a>
        </h5>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint1.png"></span>
        </p>
<p>
          is called elliptic integral if <span class="emphasis"><em>R(t, s)</em></span> is a rational
          function of <span class="emphasis"><em>t</em></span> and <span class="emphasis"><em>s</em></span>, and <span class="emphasis"><em>s<sup>2</sup></em></span>
          is a cubic or quartic polynomial in <span class="emphasis"><em>t</em></span>.
        </p>
<p>
          Elliptic integrals generally can not be expressed in terms of elementary
          functions. However, Legendre showed that all elliptic integrals can be
          reduced to the following three canonical forms:
        </p>
<p>
          Elliptic Integral of the First Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint2.png"></span>
        </p>
<p>
          Elliptic Integral of the Second Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint3.png"></span>
        </p>
<p>
          Elliptic Integral of the Third Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint4.png"></span>
        </p>
<p>
          where
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint5.png"></span>
        </p>
<div class="note"><table border="0" summary="Note">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../doc/src/images/note.png"></td>
<th align="left">Note</th>
</tr>
<tr><td align="left" valign="top">
<p>
            <span class="emphasis"><em>&#966;</em></span> is called the amplitude.
          </p>
<p>
            <span class="emphasis"><em>k</em></span> is called the modulus.
          </p>
<p>
            <span class="emphasis"><em>&#945;</em></span> is called the modular angle.
          </p>
<p>
            <span class="emphasis"><em>n</em></span> is called the characteristic.
          </p>
</td></tr>
</table></div>
<div class="caution"><table border="0" summary="Caution">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../../../doc/src/images/caution.png"></td>
<th align="left">Caution</th>
</tr>
<tr><td align="left" valign="top">
<p>
            Perhaps more than any other special functions the elliptic integrals
            are expressed in a variety of different ways. In particular, the final
            parameter <span class="emphasis"><em>k</em></span> (the modulus) may be expressed using
            a modular angle &#945;, or a parameter <span class="emphasis"><em>m</em></span>. These are related
            by:
          </p>
<p>
            k = sin&#945;
          </p>
<p>
            m = k<sup>2</sup> = sin<sup>2</sup>&#945;
          </p>
<p>
            So that the integral of the third kind (for example) may be expressed
            as either:
          </p>
<p>
            &#928;(n, &#966;, k)
          </p>
<p>
            &#928;(n, &#966; \ &#945;)
          </p>
<p>
            &#928;(n, &#966;| m)
          </p>
<p>
            To further complicate matters, some texts refer to the <span class="emphasis"><em>complement
            of the parameter m</em></span>, or 1 - m, where:
          </p>
<p>
            1 - m = 1 - k<sup>2</sup> = cos<sup>2</sup>&#945;
          </p>
<p>
            This implementation uses <span class="emphasis"><em>k</em></span> throughout: this matches
            the requirements of the <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf" target="_top">Technical
            Report on C++ Library Extensions</a>. However, you should be extra
            careful when using these functions!
          </p>
</td></tr>
</table></div>
<p>
          When <span class="emphasis"><em>&#966;</em></span> = <span class="emphasis"><em>&#960;</em></span> / 2, the elliptic integrals
          are called <span class="emphasis"><em>complete</em></span>.
        </p>
<p>
          Complete Elliptic Integral of the First Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint6.png"></span>
        </p>
<p>
          Complete Elliptic Integral of the Second Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint7.png"></span>
        </p>
<p>
          Complete Elliptic Integral of the Third Kind (Legendre form)
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint8.png"></span>
        </p>
<p>
          Carlson [<a class="link" href="ellint_intro.html#ellint_ref_carlson77">Carlson77</a>] [<a class="link" href="ellint_intro.html#ellint_ref_carlson78">Carlson78</a>] gives an alternative definition
          of elliptic integral's canonical forms:
        </p>
<p>
          Carlson's Elliptic Integral of the First Kind
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint9.png"></span>
        </p>
<p>
          where <span class="emphasis"><em>x</em></span>, <span class="emphasis"><em>y</em></span>, <span class="emphasis"><em>z</em></span>
          are nonnegative and at most one of them may be zero.
        </p>
<p>
          Carlson's Elliptic Integral of the Second Kind
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint10.png"></span>
        </p>
<p>
          where <span class="emphasis"><em>x</em></span>, <span class="emphasis"><em>y</em></span> are nonnegative, at
          most one of them may be zero, and <span class="emphasis"><em>z</em></span> must be positive.
        </p>
<p>
          Carlson's Elliptic Integral of the Third Kind
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint11.png"></span>
        </p>
<p>
          where <span class="emphasis"><em>x</em></span>, <span class="emphasis"><em>y</em></span>, <span class="emphasis"><em>z</em></span>
          are nonnegative, at most one of them may be zero, and <span class="emphasis"><em>p</em></span>
          must be nonzero.
        </p>
<p>
          Carlson's Degenerate Elliptic Integral
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint12.png"></span>
        </p>
<p>
          where <span class="emphasis"><em>x</em></span> is nonnegative and <span class="emphasis"><em>y</em></span>
          is nonzero.
        </p>
<div class="note"><table border="0" summary="Note">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../doc/src/images/note.png"></td>
<th align="left">Note</th>
</tr>
<tr><td align="left" valign="top">
<p>
            <span class="emphasis"><em>R<sub>C</sub>(x, y) = R<sub>F</sub>(x, y, y)</em></span>
          </p>
<p>
            <span class="emphasis"><em>R<sub>D</sub>(x, y, z) = R<sub>J</sub>(x, y, z, z)</em></span>
          </p>
</td></tr>
</table></div>
<a name="ellint_theorem"></a><a name="math_toolkit.special.ellint.ellint_intro.duplication_theorem"></a><h5>
<a name="id1131051"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.duplication_theorem">Duplication
          Theorem</a>
        </h5>
<p>
          Carlson proved in [<a class="link" href="ellint_intro.html#ellint_ref_carlson78">Carlson78</a>]
          that
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint13.png"></span>
        </p>
<a name="ellint_formula"></a><a name="math_toolkit.special.ellint.ellint_intro.carlson_s_formulas"></a><h5>
<a name="id1131105"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.carlson_s_formulas">Carlson's
          Formulas</a>
        </h5>
<p>
          The Legendre form and Carlson form of elliptic integrals are related by
          equations:
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint14.png"></span>
        </p>
<p>
          In particular,
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/ellint15.png"></span>
        </p>
<a name="math_toolkit.special.ellint.ellint_intro.numerical_algorithms"></a><h5>
<a name="id1131178"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.numerical_algorithms">Numerical
          Algorithms</a>
        </h5>
<p>
          The conventional methods for computing elliptic integrals are Gauss and
          Landen transformations, which converge quadratically and work well for
          elliptic integrals of the first and second kinds. Unfortunately they suffer
          from loss of significant digits for the third kind. Carlson's algorithm
          [<a class="link" href="ellint_intro.html#ellint_ref_carlson79">Carlson79</a>] [<a class="link" href="ellint_intro.html#ellint_ref_carlson78">Carlson78</a>],
          by contrast, provides a unified method for all three kinds of elliptic
          integrals with satisfactory precisions.
        </p>
<a name="ellint_refs"></a><a name="math_toolkit.special.ellint.ellint_intro.references"></a><h5>
<a name="id1131211"></a>
          <a class="link" href="ellint_intro.html#math_toolkit.special.ellint.ellint_intro.references">References</a>
        </h5>
<p>
          Special mention goes to:
        </p>
<div class="blockquote"><blockquote class="blockquote"><p>
            A. M. Legendre, <span class="emphasis"><em>Traitd des Fonctions Elliptiques et des Integrales
            Euleriennes</em></span>, Vol. 1. Paris (1825).
          </p></blockquote></div>
<p>
          However the main references are:
        </p>
<a name="ellint_ref_AS"></a><a name="ellint_ref_carlson79"></a><a name="ellint_ref_carlson77"></a><a name="ellint_ref_carlson78"></a><a name="ellint_ref_carlson81"></a><div class="orderedlist"><ol type="1">
<li>
              M. Abramowitz and I. A. Stegun (Eds.) (1964) Handbook of Mathematical
              Functions with Formulas, Graphs, and Mathematical Tables, National
              Bureau of Standards Applied Mathematics Series, U.S. Government Printing
              Office, Washington, D.C.
            </li>
<li>
              B.C. Carlson, <span class="emphasis"><em>Computing elliptic integrals by duplication</em></span>,
              Numerische Mathematik, vol 33, 1 (1979).
            </li>
<li>
              B.C. Carlson, <span class="emphasis"><em>Elliptic Integrals of the First Kind</em></span>,
              SIAM Journal on Mathematical Analysis, vol 8, 231 (1977).
            </li>
<li>
              B.C. Carlson, <span class="emphasis"><em>Short Proofs of Three Theorems on Elliptic
              Integrals</em></span>, SIAM Journal on Mathematical Analysis, vol 9,
              524 (1978).
            </li>
<li>
              B.C. Carlson and E.M. Notis, <span class="emphasis"><em>ALGORITHM 577: Algorithms for
              Incomplete Elliptic Integrals</em></span>, ACM Transactions on Mathematmal
              Software, vol 7, 398 (1981).
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>On computing elliptic integrals and functions</em></span>.
              J. Math. and Phys., 44 (1965), pp. 36-51.
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>A table of elliptic integrals of the second
              kind</em></span>. Math. Comp., 49 (1987), pp. 595-606. (Supplement,
              ibid., pp. S13-S17.)
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>A table of elliptic integrals of the third
              kind</em></span>. Math. Comp., 51 (1988), pp. 267-280. (Supplement,
              ibid., pp. S1-S5.)
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>A table of elliptic integrals: cubic cases</em></span>.
              Math. Comp., 53 (1989), pp. 327-333.
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>A table of elliptic integrals: one quadratic
              factor</em></span>. Math. Comp., 56 (1991), pp. 267-280.
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em>A table of elliptic integrals: two quadratic
              factors</em></span>. Math. Comp., 59 (1992), pp. 165-180.
            </li>
<li>
              B. C. Carlson, <span class="emphasis"><em><a href="http://arxiv.org/abs/math.CA/9409227" target="_top">Numerical
              computation of real or complex elliptic integrals</a></em></span>.
              Numerical Algorithms, Volume 10, Number 1 / March, 1995, p13-26.
            </li>
<li>
              B. C. Carlson and John L. Gustafson, <span class="emphasis"><em><a href="http://arxiv.org/abs/math.CA/9310223" target="_top">Asymptotic
              Approximations for Symmetric Elliptic Integrals</a></em></span>,
              SIAM Journal on Mathematical Analysis, Volume 25, Issue 2 (March 1994),
              288-303.
            </li>
</ol></div>
<p>
          The following references, while not directly relevent to our implementation,
          may also be of interest:
        </p>
<div class="orderedlist"><ol type="1">
<li>
              R. Burlisch, <span class="emphasis"><em>Numerical Compuation of Elliptic Integrals and
              Elliptic Functions.</em></span> Numerical Mathematik 7, 78-90.
            </li>
<li>
              R. Burlisch, <span class="emphasis"><em>An extension of the Bartky Transformation to
              Incomplete Elliptic Integrals of the Third Kind</em></span>. Numerical
              Mathematik 13, 266-284.
            </li>
<li>
              R. Burlisch, <span class="emphasis"><em>Numerical Compuation of Elliptic Integrals and
              Elliptic Functions. III</em></span>. Numerical Mathematik 13, 305-315.
            </li>
<li>
              T. Fukushima and H. Ishizaki, <span class="emphasis"><em><a href="http://adsabs.harvard.edu/abs/1994CeMDA..59..237F" target="_top">Numerical
              Computation of Incomplete Elliptic Integrals of a General Form.</a></em></span>
              Celestial Mechanics and Dynamical Astronomy, Volume 59, Number 3 /
              July, 1994, 237-251.
            </li>
</ol></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
      Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
      Thijs van den Berg<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../ellint.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ellint.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="ellint_carlson.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
