#include <lcmath.h> double yn(int n, double x);
yn
computes the order n
Bessel function of the second kind of
the value x
.
The CPU time required to compute the Bessel function increases with increasing
values for n
. For very large values of n
, the time can be quite
large.
yn
returns the order n
Bessel function of the second kind of
the argument x
, provided that this value is computable.
x
is 0.0, a diagnostic message is written to the standard
error file (stderr
) and the function returns -HUGE_VAL
, the
largest negative floating-point number that can be represented.
If the magnitude of x
is too large (|x| >= 6.7465e9), yn
returns
0.0. In this case, the message "total loss of significance" is written to
stderr
.
If the magnitude of x
is too close to 0, an overflow error occurs during
computation of yn
. The limiting value for x
depends on the value
for n
. If n
is 1, the limiting value is approximately 8.032e-77.
The limiting value increases with increasing values of n
. When x
is too small, a diagnostic message is written to stderr
, and yn
returns -HUGE_VAL
.
If an error occurs in yn
, the _matherr
routine is called.
You can supply your own version of _matherr
to suppress the diagnostic
message or modify the value returned.
#include <stdio.h> #include <lcmath.h> main() { double y; y = yn(7, 5.); printf("yn(7, 5.) = %lfn", y); }
j0
, j1
, jn
, _matherr
, y0
, y1
Copyright (c) 1998 SAS Institute Inc. Cary, NC, USA. All rights reserved.