Complex arg-trig functions

Steve Kargl sgk at troutmask.apl.washington.edu
Wed Aug 15 16:45:36 UTC 2012


On Wed, Aug 15, 2012 at 10:58:21AM -0500, Stephen Montgomery-Smith wrote:
> On 08/15/12 10:19, Bruce Evans wrote:
> 
> >Though sin() doesn't lose precision at large or not so large zeros, Bessel
> >functions probably do.  I think no one knows where many of their zeros
> >near DBL_MAX are, since they are not evenly spaced like multiples of pi
> >are, so every one needs an individual calculation.  pari become incredibly
> >slow at just finding them after the first few hundred, at least using the
> >following perhaps too simple script:
> >
> >       for (i = 0, 999, print(solve(x=i*Pi, (i+1)*Pi, besselj(0,x))))
> 
> 
> 
> >
> >This gets slower and slower as i increases and takes about 1 second
> >per zero starting at i = 900.  But after pari takes a few minutes to
> >generate 1000 zeros, FreeBSD libm j0 and j0f pass checks of them all
> >in 1.5 msec.  The check is that there is a sign change on each side
> >of the supposed zero.  So FreeBSD j0 and j0f get at least 1 bit right
> >(the sign bit) for the first 1000 zeros.
> 
> There are asymptotic formulas for the Bessel Functions for large x.  So 
> surely one could get very accurate formulas for the large roots.

Well, there is http://dlmf.nist.gov/10.21
and in particular, http://dlmf.nist.gov/10.21#vi

-- 
Steve


More information about the freebsd-numerics mailing list