| [/ |
| Copyright (c) 2006 Xiaogang Zhang |
| Use, modification and distribution are subject to the |
| Boost Software License, Version 1.0. (See accompanying file |
| LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
| ] |
| |
| [section:ellint_intro Elliptic Integral Overview] |
| |
| The main reference for the elliptic integrals is: |
| |
| [: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.] |
| |
| Mathworld also contain a lot of useful background information: |
| |
| [:[@http://mathworld.wolfram.com/EllipticIntegral.html Weisstein, Eric W. |
| "Elliptic Integral." From MathWorld--A Wolfram Web Resource.]] |
| |
| As does [@http://en.wikipedia.org/wiki/Elliptic_integral Wikipedia Elliptic integral]. |
| |
| [h4 Notation] |
| |
| All variables are real numbers unless otherwise noted. |
| |
| [h4 [#ellint_def]Definition] |
| |
| [equation ellint1] |
| |
| is called elliptic integral if ['R(t, s)] is a rational function |
| of ['t] and ['s], and ['s[super 2]] is a cubic or quartic polynomial |
| in ['t]. |
| |
| 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: |
| |
| Elliptic Integral of the First Kind (Legendre form) |
| |
| [equation ellint2] |
| |
| Elliptic Integral of the Second Kind (Legendre form) |
| |
| [equation ellint3] |
| |
| Elliptic Integral of the Third Kind (Legendre form) |
| |
| [equation ellint4] |
| |
| where |
| |
| [equation ellint5] |
| |
| [note ['[phi]] is called the amplitude. |
| |
| ['k] is called the modulus. |
| |
| ['[alpha]] is called the modular angle. |
| |
| ['n] is called the characteristic.] |
| |
| [caution Perhaps more than any other special functions the elliptic |
| integrals are expressed in a variety of different ways. In particular, |
| the final parameter /k/ (the modulus) may be expressed using a modular |
| angle [alpha], or a parameter /m/. These are related by: |
| |
| k = sin[alpha] |
| |
| m = k[super 2] = sin[super 2][alpha] |
| |
| So that the integral of the third kind (for example) may be expressed as |
| either: |
| |
| [Pi](n, [phi], k) |
| |
| [Pi](n, [phi] \\ [alpha]) |
| |
| [Pi](n, [phi]| m) |
| |
| To further complicate matters, some texts refer to the ['complement |
| of the parameter m], or 1 - m, where: |
| |
| 1 - m = 1 - k[super 2] = cos[super 2][alpha] |
| |
| This implementation uses /k/ throughout: this matches the requirements |
| of the [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf |
| Technical Report on C++ Library Extensions]. However, you should |
| be extra careful when using these functions!] |
| |
| When ['[phi]] = ['[pi]] / 2, the elliptic integrals are called ['complete]. |
| |
| Complete Elliptic Integral of the First Kind (Legendre form) |
| |
| [equation ellint6] |
| |
| Complete Elliptic Integral of the Second Kind (Legendre form) |
| |
| [equation ellint7] |
| |
| Complete Elliptic Integral of the Third Kind (Legendre form) |
| |
| [equation ellint8] |
| |
| Carlson [[link ellint_ref_carlson77 Carlson77]] [[link ellint_ref_carlson78 Carlson78]] gives an alternative definition of |
| elliptic integral's canonical forms: |
| |
| Carlson's Elliptic Integral of the First Kind |
| |
| [equation ellint9] |
| |
| where ['x], ['y], ['z] are nonnegative and at most one of them |
| may be zero. |
| |
| Carlson's Elliptic Integral of the Second Kind |
| |
| [equation ellint10] |
| |
| where ['x], ['y] are nonnegative, at most one of them may be zero, |
| and ['z] must be positive. |
| |
| Carlson's Elliptic Integral of the Third Kind |
| |
| [equation ellint11] |
| |
| where ['x], ['y], ['z] are nonnegative, at most one of them may be |
| zero, and ['p] must be nonzero. |
| |
| Carlson's Degenerate Elliptic Integral |
| |
| [equation ellint12] |
| |
| where ['x] is nonnegative and ['y] is nonzero. |
| |
| [note ['R[sub C](x, y) = R[sub F](x, y, y)] |
| |
| ['R[sub D](x, y, z) = R[sub J](x, y, z, z)]] |
| |
| |
| [h4 [#ellint_theorem]Duplication Theorem] |
| |
| Carlson proved in [[link ellint_ref_carlson78 Carlson78]] that |
| |
| [equation ellint13] |
| |
| [h4 [#ellint_formula]Carlson's Formulas] |
| |
| The Legendre form and Carlson form of elliptic integrals are related |
| by equations: |
| |
| [equation ellint14] |
| |
| In particular, |
| |
| [equation ellint15] |
| |
| [h4 Numerical Algorithms] |
| |
| 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 [[link ellint_ref_carlson79 Carlson79]] [[link ellint_ref_carlson78 Carlson78]], by contrast, |
| provides a unified method for all three kinds of elliptic integrals |
| with satisfactory precisions. |
| |
| [h4 [#ellint_refs]References] |
| |
| Special mention goes to: |
| |
| [:A. M. Legendre, ['Traitd des Fonctions Elliptiques et des Integrales |
| Euleriennes], Vol. 1. Paris (1825).] |
| |
| However the main references are: |
| |
| # [#ellint_ref_AS]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. |
| # [#ellint_ref_carlson79]B.C. Carlson, ['Computing elliptic integrals by duplication], |
| Numerische Mathematik, vol 33, 1 (1979). |
| # [#ellint_ref_carlson77]B.C. Carlson, ['Elliptic Integrals of the First Kind], |
| SIAM Journal on Mathematical Analysis, vol 8, 231 (1977). |
| # [#ellint_ref_carlson78]B.C. Carlson, ['Short Proofs of Three Theorems on Elliptic Integrals], |
| SIAM Journal on Mathematical Analysis, vol 9, 524 (1978). |
| # [#ellint_ref_carlson81]B.C. Carlson and E.M. Notis, ['ALGORITHM 577: Algorithms for Incomplete |
| Elliptic Integrals], ACM Transactions on Mathematmal Software, |
| vol 7, 398 (1981). |
| # B. C. Carlson, ['On computing elliptic integrals and functions]. J. Math. and |
| Phys., 44 (1965), pp. 36-51. |
| # B. C. Carlson, ['A table of elliptic integrals of the second kind]. Math. Comp., 49 |
| (1987), pp. 595-606. (Supplement, ibid., pp. S13-S17.) |
| # B. C. Carlson, ['A table of elliptic integrals of the third kind]. Math. Comp., 51 (1988), |
| pp. 267-280. (Supplement, ibid., pp. S1-S5.) |
| # B. C. Carlson, ['A table of elliptic integrals: cubic cases]. Math. Comp., 53 (1989), pp. |
| 327-333. |
| # B. C. Carlson, ['A table of elliptic integrals: one quadratic factor]. Math. Comp., 56 (1991), |
| pp. 267-280. |
| # B. C. Carlson, ['A table of elliptic integrals: two quadratic factors]. Math. Comp., 59 |
| (1992), pp. 165-180. |
| # B. C. Carlson, ['[@http://arxiv.org/abs/math.CA/9409227 |
| Numerical computation of real or complex elliptic integrals]]. Numerical Algorithms, |
| Volume 10, Number 1 / March, 1995, p13-26. |
| # B. C. Carlson and John L. Gustafson, ['[@http://arxiv.org/abs/math.CA/9310223 |
| Asymptotic Approximations for Symmetric Elliptic Integrals]], |
| SIAM Journal on Mathematical Analysis, Volume 25, Issue 2 (March 1994), 288-303. |
| |
| |
| The following references, while not directly relevent to our implementation, |
| may also be of interest: |
| |
| # R. Burlisch, ['Numerical Compuation of Elliptic Integrals and Elliptic Functions.] |
| Numerical Mathematik 7, 78-90. |
| # R. Burlisch, ['An extension of the Bartky Transformation to Incomplete |
| Elliptic Integrals of the Third Kind]. Numerical Mathematik 13, 266-284. |
| # R. Burlisch, ['Numerical Compuation of Elliptic Integrals and Elliptic Functions. III]. |
| Numerical Mathematik 13, 305-315. |
| # T. Fukushima and H. Ishizaki, ['[@http://adsabs.harvard.edu/abs/1994CeMDA..59..237F |
| Numerical Computation of Incomplete Elliptic Integrals of a General Form.]] |
| Celestial Mechanics and Dynamical Astronomy, Volume 59, Number 3 / July, 1994, |
| 237-251. |
| |
| [endsect] |