1 @cindex elliptic integrals
3 The functions described in this section are declared in the header
4 file @file{gsl_sf_ellint.h}. Further information about the elliptic
5 integrals can be found in Abramowitz & Stegun, Chapter 17.
8 * Definition of Legendre Forms::
9 * Definition of Carlson Forms::
10 * Legendre Form of Complete Elliptic Integrals::
11 * Legendre Form of Incomplete Elliptic Integrals::
15 @node Definition of Legendre Forms
16 @subsection Definition of Legendre Forms
17 @cindex Legendre forms of elliptic integrals
18 The Legendre forms of elliptic integrals @math{F(\phi,k)},
19 @math{E(\phi,k)} and @math{\Pi(\phi,k,n)} are defined by,
24 F(\phi,k) &= \int_0^\phi dt {1 \over \sqrt{(1 - k^2 \sin^2(t))}}\cr
25 E(\phi,k) &= \int_0^\phi dt \sqrt{(1 - k^2 \sin^2(t))}\cr
26 \Pi(\phi,k,n) &= \int_0^\phi dt {1 \over (1 + n \sin^2(t)) \sqrt{1 - k^2 \sin^2(t)}}
34 F(\phi,k) = \int_0^\phi dt 1/\sqrt((1 - k^2 \sin^2(t)))
36 E(\phi,k) = \int_0^\phi dt \sqrt((1 - k^2 \sin^2(t)))
38 Pi(\phi,k,n) = \int_0^\phi dt 1/((1 + n \sin^2(t))\sqrt(1 - k^2 \sin^2(t)))
43 The complete Legendre forms are denoted by @math{K(k) = F(\pi/2, k)} and
44 @math{E(k) = E(\pi/2, k)}.
46 The notation used here is based on Carlson, @cite{Numerische
47 Mathematik} 33 (1979) 1 and differs slightly from that used by
48 Abramowitz & Stegun, where the functions are given in terms of the
49 parameter @math{m = k^2} and @math{n} is replaced by @math{-n}.
51 @node Definition of Carlson Forms
52 @subsection Definition of Carlson Forms
53 @cindex Carlson forms of Elliptic integrals
54 The Carlson symmetric forms of elliptical integrals @math{RC(x,y)},
55 @math{RD(x,y,z)}, @math{RF(x,y,z)} and @math{RJ(x,y,z,p)} are defined
61 RC(x,y) &= 1/2 \int_0^\infty dt (t+x)^{-1/2} (t+y)^{-1}\cr
62 RD(x,y,z) &= 3/2 \int_0^\infty dt (t+x)^{-1/2} (t+y)^{-1/2} (t+z)^{-3/2}\cr
63 RF(x,y,z) &= 1/2 \int_0^\infty dt (t+x)^{-1/2} (t+y)^{-1/2} (t+z)^{-1/2}\cr
64 RJ(x,y,z,p) &= 3/2 \int_0^\infty dt (t+x)^{-1/2} (t+y)^{-1/2} (t+z)^{-1/2} (t+p)^{-1}
72 RC(x,y) = 1/2 \int_0^\infty dt (t+x)^(-1/2) (t+y)^(-1)
74 RD(x,y,z) = 3/2 \int_0^\infty dt (t+x)^(-1/2) (t+y)^(-1/2) (t+z)^(-3/2)
76 RF(x,y,z) = 1/2 \int_0^\infty dt (t+x)^(-1/2) (t+y)^(-1/2) (t+z)^(-1/2)
78 RJ(x,y,z,p) = 3/2 \int_0^\infty dt
79 (t+x)^(-1/2) (t+y)^(-1/2) (t+z)^(-1/2) (t+p)^(-1)
83 @node Legendre Form of Complete Elliptic Integrals
84 @subsection Legendre Form of Complete Elliptic Integrals
86 @deftypefun double gsl_sf_ellint_Kcomp (double @var{k}, gsl_mode_t @var{mode})
87 @deftypefunx int gsl_sf_ellint_Kcomp_e (double @var{k}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
88 These routines compute the complete elliptic integral @math{K(k)} to
89 the accuracy specified by the mode variable @var{mode}.
90 Note that Abramowitz & Stegun define this function in terms of the
91 parameter @math{m = k^2}.
92 @comment Exceptional Return Values: GSL_EDOM
95 @deftypefun double gsl_sf_ellint_Ecomp (double @var{k}, gsl_mode_t @var{mode})
96 @deftypefunx int gsl_sf_ellint_Ecomp_e (double @var{k}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
97 These routines compute the complete elliptic integral @math{E(k)} to the
98 accuracy specified by the mode variable @var{mode}.
99 Note that Abramowitz & Stegun define this function in terms of the
100 parameter @math{m = k^2}.
101 @comment Exceptional Return Values: GSL_EDOM
104 @deftypefun double gsl_sf_ellint_Pcomp (double @var{k}, double @var{n}, gsl_mode_t @var{mode})
105 @deftypefunx int gsl_sf_ellint_Pcomp_e (double @var{k}, double @var{n}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
106 These routines compute the complete elliptic integral @math{\Pi(k,n)} to the
107 accuracy specified by the mode variable @var{mode}.
108 Note that Abramowitz & Stegun define this function in terms of the
109 parameters @math{m = k^2} and @math{\sin^2(\alpha) = k^2}, with the
110 change of sign @math{n \to -n}.
111 @comment Exceptional Return Values: GSL_EDOM
114 @node Legendre Form of Incomplete Elliptic Integrals
115 @subsection Legendre Form of Incomplete Elliptic Integrals
117 @deftypefun double gsl_sf_ellint_F (double @var{phi}, double @var{k}, gsl_mode_t @var{mode})
118 @deftypefunx int gsl_sf_ellint_F_e (double @var{phi}, double @var{k}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
119 These routines compute the incomplete elliptic integral @math{F(\phi,k)}
120 to the accuracy specified by the mode variable @var{mode}.
121 Note that Abramowitz & Stegun define this function in terms of the
122 parameter @math{m = k^2}.
123 @comment Exceptional Return Values: GSL_EDOM
126 @deftypefun double gsl_sf_ellint_E (double @var{phi}, double @var{k}, gsl_mode_t @var{mode})
127 @deftypefunx int gsl_sf_ellint_E_e (double @var{phi}, double @var{k}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
128 These routines compute the incomplete elliptic integral @math{E(\phi,k)}
129 to the accuracy specified by the mode variable @var{mode}.
130 Note that Abramowitz & Stegun define this function in terms of the
131 parameter @math{m = k^2}.
132 @comment Exceptional Return Values: GSL_EDOM
135 @deftypefun double gsl_sf_ellint_P (double @var{phi}, double @var{k}, double @var{n}, gsl_mode_t @var{mode})
136 @deftypefunx int gsl_sf_ellint_P_e (double @var{phi}, double @var{k}, double @var{n}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
137 These routines compute the incomplete elliptic integral @math{\Pi(\phi,k,n)}
138 to the accuracy specified by the mode variable @var{mode}.
139 Note that Abramowitz & Stegun define this function in terms of the
140 parameters @math{m = k^2} and @math{\sin^2(\alpha) = k^2}, with the
141 change of sign @math{n \to -n}.
142 @comment Exceptional Return Values: GSL_EDOM
145 @deftypefun double gsl_sf_ellint_D (double @var{phi}, double @var{k}, double @var{n}, gsl_mode_t @var{mode})
146 @deftypefunx int gsl_sf_ellint_D_e (double @var{phi}, double @var{k}, double @var{n}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
147 These functions compute the incomplete elliptic integral
148 @math{D(\phi,k)} which is defined through the Carlson form @math{RD(x,y,z)}
149 by the following relation,
153 D(\phi,k,n) = {1 \over 3} (\sin \phi)^3 RD (1-\sin^2(\phi), 1-k^2 \sin^2(\phi), 1).
160 D(\phi,k,n) = (1/3)(\sin(\phi))^3 RD (1-\sin^2(\phi), 1-k^2 \sin^2(\phi), 1).
163 The argument @var{n} is not used and will be removed in a future release.
165 @comment Exceptional Return Values: GSL_EDOM
170 @subsection Carlson Forms
172 @deftypefun double gsl_sf_ellint_RC (double @var{x}, double @var{y}, gsl_mode_t @var{mode})
173 @deftypefunx int gsl_sf_ellint_RC_e (double @var{x}, double @var{y}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
174 These routines compute the incomplete elliptic integral @math{RC(x,y)}
175 to the accuracy specified by the mode variable @var{mode}.
176 @comment Exceptional Return Values: GSL_EDOM
179 @deftypefun double gsl_sf_ellint_RD (double @var{x}, double @var{y}, double @var{z}, gsl_mode_t @var{mode})
180 @deftypefunx int gsl_sf_ellint_RD_e (double @var{x}, double @var{y}, double @var{z}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
181 These routines compute the incomplete elliptic integral @math{RD(x,y,z)}
182 to the accuracy specified by the mode variable @var{mode}.
183 @comment Exceptional Return Values: GSL_EDOM
186 @deftypefun double gsl_sf_ellint_RF (double @var{x}, double @var{y}, double @var{z}, gsl_mode_t @var{mode})
187 @deftypefunx int gsl_sf_ellint_RF_e (double @var{x}, double @var{y}, double @var{z}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
188 These routines compute the incomplete elliptic integral @math{RF(x,y,z)}
189 to the accuracy specified by the mode variable @var{mode}.
190 @comment Exceptional Return Values: GSL_EDOM
193 @deftypefun double gsl_sf_ellint_RJ (double @var{x}, double @var{y}, double @var{z}, double @var{p}, gsl_mode_t @var{mode})
194 @deftypefunx int gsl_sf_ellint_RJ_e (double @var{x}, double @var{y}, double @var{z}, double @var{p}, gsl_mode_t @var{mode}, gsl_sf_result * @var{result})
195 These routines compute the incomplete elliptic integral @math{RJ(x,y,z,p)}
196 to the accuracy specified by the mode variable @var{mode}.
197 @comment Exceptional Return Values: GSL_EDOM