ELLKN 3CW "06 March 2010" "mathcw-1.00"

Table of contents


NAME

ellknf, ellkn, ellknl, ellknw, ellknq, ellknll, ellkndf, ellknd, ellkndl, ellkndll - complete elliptic integral function of the first kind from nome

SYNOPSIS

cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ]

#include <mathcw.h>

extern float ellknf (float q);

extern double ellkn (double q);

extern long double ellknl (long double q);

extern __float80 ellknw (__float80 q);

extern __float128 ellknq (__float128 q);

extern long_long_double ellknll (long_long_double q);

extern decimal_float ellkndf (decimal_float q);

extern decimal_double ellknd (decimal_double q);

extern decimal_long_double ellkndl (decimal_long_double q);

extern decimal_long_long_double ellkndll (decimal_long_long_double q);

NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.


DESCRIPTION

Compute the complete elliptic integral function of the first kind, defined by
ellkn(q) = integral(t=0:pi/2) (1 / sqrt(1 - k**2 * sin(t)**2)) dt
where k is in [-1,+1], and the nome q is in [0,1].

Use this function in preference to ellk(3CW) when q is the given nome, and the modulus k is derived from it.

Equivalents in other systems are:

Abramowitz & Stegun NBS Handbook #55: K(m) = ellk(sqrt(m)) Mathematica: EllipticK[m] = ellk(sqrt(m)) Maple: EllipticK(k) = ellk(k)

RETURN VALUES

Return the complete elliptic integral function of the first kind.

ERRORS

If the argument is a NaN, return that argument and set errno to EDOM. If the argument is out of the range [-1,+1], return a NaN and set errno to EDOM. If the argument is +1 or -1, return Infinity and set errno to ERANGE.

SEE ALSO

agm(3CW), elk(3CW), elkm1(3CW), elle(3CW), ellec(3CW), ellk(3CW), ellkc(3CW), elq(3CW), elq1p(3CW), elqc(3CW), elqc1p(3CW).