j0 (and y0) in the range 2 <= x < (p/2)*log(2)

Steve Kargl sgk at troutmask.apl.washington.edu
Tue Sep 4 21:22:04 UTC 2018

On Mon, Sep 03, 2018 at 09:10:10PM -0700, Steve Kargl wrote:
> On Tue, Sep 04, 2018 at 03:56:28AM +0000, Montgomery-Smith, Stephen wrote:
> > A quick google search turned up this
> > 
> > https://www.cl.cam.ac.uk/~jrh13/papers/bessel.pdf
> > 
> > which has the functions p0 and q0.  Maybe this was the basis of this code.
> I've read that paper.  It uses |x| > 45 for the cut over 
> to the large argument asymptotic expansion.  One of the
> primary results for that paper is the development of 
> new approximations that are robust near zeros of Jn(x).
> In the the discussion of the results, the paper notes
> the use of a double-double representation for intermediate
> results.
> A&S claims that the remainder in truncating the series
> does not exceed the magnitude of the first neglected
> term.  If you set x = 2 and compute the terms in 
> p0(x), one finds the smallest term is about |pk| = 1e-4.

To follow-up, here the individual terms and the estimated
value of j0(x).  pk and qk are the terms and p0(n,x) and 
q0(n,x) are the accumulated sum.

In p0(n,x)
 k      pk                      p0(n,x)
 0  1.000000000000000e+00  1.000000000000000e+00
 1 -1.757812500000000e-02  9.824218750000000e-01
 2  2.574920654296875e-03  9.849967956542969e-01
 3 -1.026783138513565e-03  9.839700125157833e-01
 4  7.959574759297539e-04  9.847659699917131e-01
 5 -1.015778544477541e-03  9.837501914472355e-01
 6  1.931887598216261e-03  9.856820790454518e-01
 7 -5.124164754615886e-03  9.805579142908359e-01
 8  1.807719255473622e-02  9.986351068455721e-01
In q0(n,x)
 k      qk                      q0(n,x)
 0 -6.250000000000000e-02 -6.250000000000000e-02
 1  4.943847656250000e-03 -5.755615234375000e-02
 2 -1.341104507446289e-03 -5.889725685119629e-02
 3  7.861308404244483e-04 -5.811112601077184e-02
 4 -8.059069443788758e-04 -5.891703295515072e-02
 5  1.280304207101901e-03 -5.763672874804882e-02
 6 -2.915080393737037e-03 -6.055180914178585e-02
 7  9.007320857723237e-03 -5.154448828406261e-02
 8 -3.627992116888033e-02 -8.782440945294294e-02

    x           libm j0(x)              A&S
  2.000000  2.238907791412357e-01  2.429095124592851e-01

As k increases above k=8, one sees the divergence
of the asymptotic series.

More information about the freebsd-numerics mailing list