cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ] #include <mathcw.h> extern float jnf (int n, float x); extern double jn (int n, double x); extern long double jnl (int n, long double x); extern __float80 jnw (int n, __float80 x); extern __float128 jnq (int n, __float128 x); extern long_long_double jnll (int n, long_long_double x); extern decimal_float jndf (int n, decimal_float x); extern decimal_double jnd (int n, decimal_double x); extern decimal_long_double jndl (int n, decimal_long_double x); extern decimal_long_long_double jndll (int n, decimal_long_long_double x);
NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.
This function is not required by ISO Standard C (1989 or 1999), but it is part of IEEE Std 1003.1-2001, informally known as POSIX 2001. Implementations of this function are also available in most Unix C math libraries (-lm).
The ordinary 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).
In decimal arithmetic, the lack of an exact argument trigonometric reduction algorithm means that cos(x) and sin(x) may return a NaN when |x| >> 1, and that NaN propagates to the J(n,x) Bessel function family.