File Exchange

image thumbnail


version (3.44 KB) by David E. Horsley
A function to find the roots of the Bessel function cross products.

1 Download

Updated 15 Jun 2016

View License

*Outdated* Please use the 'specialzeros' package instead. Left here for backwards compatibility.

The Bessel function cross product arise in problems on an annulus, and the roots of these need to be found to solve certain boundary value problems.
This function uses Olver's uniform asymptotic expansion to find an initial guess at the roots of the desired Bessel function cross product, then updates via Newton's method. The method works over a large range of radius ratio and order.

Cite As

David E. Horsley (2020). ZeroBessCross (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (0)


Retired package

2 Feb 15: Now uses a better method to calculate the phase functions, so no auxiliary root finding is needed. This should give about a 2x speed-up.

Minor improvement of theta phase function approximation for small order. The initial guess for early roots when order is near zero now have a worst case relative error less than 10^(-2) rather than ~10^(-1).

File no longer requires zerobess.

25/07/14 update: The script now uses a new method based on Olver's asymptotics to generate initial guess. This fixes some missed roots when the order is very large or very small.

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags