cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ] #include <mathcw.h> extern float bk1f (float x); extern double bk1 (double x); extern long double bk1l (long double x); extern __float80 bk1w (__float80 x); extern __float128 bk1q (__float128 x); extern long_long_double bk1ll (long_long_double x); extern decimal_float bk1df (decimal_float x); extern decimal_double bk1d (decimal_double x); extern decimal_long_double bk1dl (decimal_long_double x); extern decimal_long_long_double bk1dll (decimal_long_long_double x);
NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.
The modified Bessel functions provided by these software implementations are defined according to Chapter 9, Bessel Functions of Integer Order, of the Handbook of Mathematical Functions, edited by Milton Abramowitz and Irene A. Stegun, National Bureau of Standards Applied Mathematics Series #55, US Department of Commerce, Washington, DC (1964).
The K(n,x) functions fall exponentially with increasing x, and underflow even with moderate x values. For that reason, there is a related family of functions that return values of this Bessel function increased by a factor of exp(x); see bks1(3CW).
If the argument is negative, errno is set to EDOM, and a quiet NaN is returned.
If the argument is zero, errno is set to ERANGE, and a positive Infinity (or the largest floating-point magnitude, if Infinity is not available) is returned.