cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ] #include <mathcw.h> extern float ellkcf (float x); extern double ellkc (double x); extern long double ellkcl (long double x); extern __float80 ellkcw (__float80 x); extern __float128 ellkcq (__float128 x); extern long_long_double ellkcll (long_long_double x); extern decimal_float ellkcdf (decimal_float x); extern decimal_double ellkcd (decimal_double x); extern decimal_long_double ellkcdl (decimal_long_double x); extern decimal_long_long_double ellkcdll (decimal_long_long_double x);
NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.
ellkc(x) = integral(t=0:pi/2) (1 / sqrt(1 - (1 - x**2) * sin(t)**2)) dtwhere x is in [-1,+1].
Equivalents in other systems are:
Abramowitz & Stegun NBS Handbook #55: K'(m) = ellkc(sqrt(m)) Mathematica: EllipticK[x] = ellkc(sqrt(1 - x)) Maple: EllipticCK(x) = ellkc(x)