j0, j0f,
j1, j1f,
jn, jnf,
y0, y0f,
y1, y1f,
yn, ynf —
Bessel functions of first and second kind
#include
<math.h>
double
j0(double
x);
float
j0f(float
x);
double
j1(double
x);
float
j1f(float
x);
double
jn(int
n, double x);
float
jnf(int
n, float x);
double
y0(double
x);
float
y0f(float
x);
double
y1(double
x);
float
y1f(float
x);
double
yn(int
n, double x);
float
ynf(int
n, float x);
The functions
j0(),
j0f(),
j1(),
and
j1f()
compute the Bessel function of the first kind of orders 0 and 1 for the real
value x; the functions
jn() and
jnf()
compute the Bessel function of the first kind of the integer order
n for the real value x.
The functions
y0(),
y0f(),
y1(),
and
y1f()
compute the linearly independent Bessel function of the second kind of
orders 0 and 1 for the positive real value
x; the functions
yn() and
ynf()
compute the Bessel function of the second kind for the integer order
n for the positive real value
x.
These routines return values of their respective Bessel functions.
For large positive inputs, they may underflow and return ±0.
The following applies to y0(),
y0f(), y1(),
y1f(), yn(), and
ynf(). If x is negative,
including -infinity, these routines will generate an invalid exception and
return NaN. If x is ±0, these routines will
generate a divide-by-zero exception and return -infinity. If
x is a sufficiently small positive number, then
y1(), y1f(),
yn(), and ynf() will
generate an overflow exception and return -infinity.
The j0(), j1(),
jn(), y0(),
y1(), and yn() functions
conform to IEEE Std 1003.1-2001
(“POSIX.1”). The float versions
are extensions.
This set of functions appeared in
Version 7 AT&T UNIX.