1Y0(3)                      Linux Programmer's Manual                     Y0(3)
2
3
4

NAME

6       y0, y0f, y0l, y1, y1f, y1l, yn, ynf, ynl - Bessel functions of the sec‐
7       ond kind
8

SYNOPSIS

10       #include <math.h>
11
12       double y0(double x);
13       double y1(double x);
14       double yn(int n, double x);
15
16       float y0f(float x);
17       float y1f(float x);
18       float ynf(int n, float x);
19
20       long double y0l(long double x);
21       long double y1l(long double x);
22       long double ynl(int n, long double x);
23
24       Link with -lm.
25
26   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
27
28       y0(), y1(), yn(): _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE
29       y0f(), y0l(), y1f(), y1l(), ynf(), ynl(): _SVID_SOURCE || _BSD_SOURCE
30       || _XOPEN_SOURCE >= 600
31

DESCRIPTION

33       The  y0() and y1() functions return Bessel functions of x of the second
34       kind of orders 0 and 1, respectively.  The yn()  function  returns  the
35       Bessel function of x of the second kind of order n.
36
37       The value of x must be positive.
38
39       The  y0f()  etc.  and  y0l()  etc. functions are versions that take and
40       return float and long double values, respectively.
41

RETURN VALUE

43       On success, these functions return the appropriate Bessel value of  the
44       second kind for x.
45
46       If x is a NaN, a NaN is returned.
47
48       If  x  is  negative,  a  domain  error occurs, and the functions return
49       -HUGE_VAL, -HUGE_VALF, or -HUGE_VALL, respectively.  (POSIX.1-2001 also
50       allows a NaN return for this case.)
51
52       If  x  is 0.0, a pole error occurs, and the functions return -HUGE_VAL,
53       -HUGE_VALF, or -HUGE_VALL, respectively.
54
55       If the result underflows, a  range  error  occurs,  and  the  functions
56       return 0.0
57
58       If the result overflows, a range error occurs, and the functions return
59       -HUGE_VAL, -HUGE_VALF, or -HUGE_VALL, respectively.  (POSIX.1-2001 also
60       allows a 0.0 return for this case.)
61

ERRORS

63       See  math_error(7) for information on how to determine whether an error
64       has occurred when calling these functions.
65
66       The following errors can occur:
67
68       Domain error: x is negative
69              errno is set  to  EDOM.   An  invalid  floating-point  exception
70              (FE_INVALID) is raised.
71
72       Pole error: x is 0.0
73              errno  is  set to ERANGE (but see BUGS).  No FE_DIVBYZERO excep‐
74              tion is returned by fetestexcept(3) for this case.
75
76       Range error: result underflow
77              errno is set to ERANGE.  No FE_UNDERFLOW exception  is  returned
78              by fetestexcept(3) for this case.
79
80       Range error: result overflow
81              errno  is  not  set  for  this case.  An overflow floating-point
82              exception (FE_OVERFLOW) is raised.
83

CONFORMING TO

85       The functions returning double conform to SVr4,  4.3BSD,  POSIX.1-2001.
86       The others are non-standard functions that also exist on the BSDs.
87

BUGS

89       On  a  pole error, these functions set errno to EDOM, instead of ERANGE
90       as POSIX.1-2004 requires.
91
92       In glibc version 2.3.2 and earlier, these functions  do  not  raise  an
93       invalid  floating-point  exception  (FE_INVALID)  when  a  domain error
94       occurs.
95

SEE ALSO

97       j0(3)
98

COLOPHON

100       This page is part of release 3.22 of the Linux  man-pages  project.   A
101       description  of  the project, and information about reporting bugs, can
102       be found at http://www.kernel.org/doc/man-pages/.
103
104
105
106                                  2008-08-10                             Y0(3)
Impressum