Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ bessel(3M) — HP-UX 9.10

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

isinf(3M)

isnan(3M)

matherr(3M)

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.10: April 1995

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026