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

Steve Kargl sgk at troutmask.apl.washington.edu
Sat Sep 8 04:49:39 UTC 2018


On Fri, Sep 07, 2018 at 10:54:06AM -0700, Steve Kargl wrote:
> 
> I'll probably try a different approach tomorrow.  j0(x),
> cc, and ss are smoothly varying functions of x.  u and v
> appear to be slowly varying (in small intervals), so we can
> have
> 
> j0(x)   = sqrt(1/pi) * (cc(x)  *u-ss(x)  *v) / sqrt(x).
> j0(x+e) = sqrt(1/pi) * (cc(x+e)*u-ss(x+e)*v) / sqrt(x+e).
>  
> where e is some small perturbution.  Two equation and two
> unknowns is easily solved.  Simply need to do this across
> the interval to generate u(x) and v(x).
> 

I may have have a better approach!

j0(x) = sqrt(1/pi) * (cc(x) * u - ss(x) * v) / sqrt(x)
y0(x) = sqrt(1/pi) * (cc(x) * u + ss(x) * v) / sqrt(x)

j0(x) + y0(x) =   2 * sqrt(1/pi) * cc(x) * u
j0(x) - y0(x) = - 2 * sqrt(1/pi) * ss(x) * v

So, we have

u = (j0 + y0) / (2 * sqrt(1/pi) * cc)
v = (y0 - j0) / (s * sqrt(1/pi) * ss)

Thus, we can find u = r/s or u = 1 + r/s and v = r/s.

-- 
Steve


More information about the freebsd-numerics mailing list