bessel(3M)
NAME
j0, j1, jn, y0, y1, yn − Bessel functions
SYNOPSIS
#include <math.h>
double j0(double x);
double j1(double x);
double jn(int n, double x);
double y0(double x);
double y1(double x);
double yn(int n, double x);
DESCRIPTION
j0() and j1() return Bessel functions of x of the first kind of orders 0 and 1 respectively. jn() returns the Bessel function of x of the first kind of order n.
y0() and y1() return the Bessel functions of x of the second kind of orders 0 and 1 respectively. yn() returns the Bessel function of x of the second kind of order n. The value of x must be positive.
ERRORS
/lib/libm.a
Non-positive arguments cause y0(), y1(), and yn() to return the value -HUGE_VAL and to set errno to EDOM. They also cause a message indicating DOMAIN error to be printed on the standard error output.
Arguments too large in magnitude cause j0(), j1(), jn(), y0(), y1(), and yn() to return 0.0 and set errno to ERANGE. In addition, a message indicating TLOSS error is printed on the standard error output.
j0(), j1(), jn(), y0(), y1(), and yn() return NaN and set errno to EDOM when x is NaN or ±INFINITY. In addition, a message indicating DOMAIN error is printed on the standard error output.
These error-handling procedures can be changed with the function matherr(3M).
/lib/libM.a
No error messages are printed on the standard error output.
Non-positive arguments cause y0(), y1(), and yn() to return the value NaN and to set errno to EDOM.
Arguments too large in magnitude cause j0(), j1(), jn(), y0(), y1(), and yn() to return 0.0 and set errno to ERANGE.
j0(), j1(), jn(), y0(), y1(), and yn() return NaN and set errno to EDOM when x is NaN or ±INFINITY.
These error-handling procedures can be changed by using the _matherr() function (see matherr(3M)). Note that _matherr() is provided in order to assist in migrating programs from libm.a to libM.a and is not a part of XPG3, ANSI C, or POSIX.
SEE ALSO
isinf(3M), isnan(3M), matherr(3M).
STANDARDS CONFORMANCE
j0() in libm.a: AES, SVID2, XPG2, XPG3
j0() in libM.a: AES, XPG3, XPG4
j1() in libm.a: AES, SVID2, XPG2, XPG3
j1() in libM.a: AES, XPG3, XPG4
jn() in libm.a: AES, SVID2, XPG2, XPG3
jn() in libM.a: AES, XPG3, XPG4
y0() in libm.a: AES, SVID2, XPG2, XPG3
y0() in libM.a: AES, XPG3, XPG4
y1() in libm.a: AES, SVID2, XPG2, XPG3
y1() in libM.a: AES, XPG3, XPG4
yn() in libm.a: AES, SVID2, XPG2, XPG3
yn() in libM.a: AES, XPG3, XPG4
Hewlett-Packard Company — HP-UX Release 9.0: August 1992