j0(3)


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
     These functions calculate Bessel functions of the first and second  kinds
     for real arguments and integer orders.

DIAGNOSTICS
     j0(NaN) = j1(NaN) = jn(n, NaN) = NaN.
     j0(0) = jn(0, 0) = 1.
     j1(0) = jn(n, 0) = 0 with n > 1.
     j0(Inf) = j1(Inf) = jn(n, Inf) = 0.

     y0(0) = y1(0) = yn(n, 0) = -Inf with signal.
     y0(x) = y1(x) = yn(n, x) = NaN with signal if x < 0.
     y0(Inf) = y1(Inf) = yn(n, Inf) = 0.

NOTES
     About jn(n, x):
     For n=0, j0(x) is called,
     for n=1, j1(x) is called,
     for n<x, forward recursion is used starting  from  values  of  j0(x)  and
     j1(x).
     for  n>x,  a  continued  fraction  approximation  to  j(n,x)/j(n-1,x)  is
     evaluated  and  then  backward recursion is used starting from a supposed
     value for j(n,x). The resulting value of  j(0,x)  is  compared  with  the
     actual value to correct the supposed value of j(n,x).

     yn(n,x) is similar in all respects, except that forward recursion is used
     for all values of n>1.

SEE ALSO
     math(3).