nag_specfun_bessel_zeros (s17al) attempts to find the leading
zeros of one of the Bessel functions
,
,
or
, where
is real. When
is real, these functions each have an infinite number of real zeros, all of which are simple with the possible exception of
. If
, the
th positive zero is denoted by
and
, respectively, for
, except that
is counted as the first zero of
when
. Since
, it therefore follows that
and
for
. Further details can be found in Section 9.5 of
Abramowitz and Stegun (1972).
nag_specfun_bessel_zeros (s17al) is based on Algol 60 procedures given by
Temme (1979). Initial approximations to the zeros are computed from asymptotic expansions. These are then improved by higher-order Newton iteration making use of the differential equation for the Bessel functions.
Temme N M (1976) On the numerical evaluation of the ordinary Bessel function of the second kind J. Comput. Phys. 21 343–350
Temme N M (1979) An algorithm with Algol 60 program for the computation of the zeros of ordinary Bessel functions and those of their derivatives J. Comput. Phys. 32 270–279
If the value of
rel is set to
, then the required zeros should have approximately
correct significant digits.
None.
function s17al_example
fprintf('s17al example results\n\n');
a = 0;
n = int64(5);
mode = int64(1);
[result, ifail] = s17al(a, n, mode);
fprintf('Leading %2d zeros of J_0(x)\n',n);
fprintf('%12.4f\n',result);