Re: computation of zeros of Bessel functions
- From: Michael Press <jack@xxxxxxx>
- Date: Wed, 15 Nov 2006 23:16:05 GMT
In article
<1163108881.909740.259940@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
,
mrdarrett@xxxxxxxxx wrote:
Andrew Boniface wrote:
On Nov 9, 2:57 pm, mrdarr...@xxxxxxxxx wrote:
I wrote a simple program to calculate Jm(x), J_minus_m(x), and Ym(x) to
help me to solve a partial differential equation in cylindrical
coordinates.
Then I realized, whoops, the solution of this PDE requires the ZEROs of
the Bessel functions J and Y, not just J and Y themselves.
What are the usual methods to compute the zeros? I suppose I could
just zoom along on the x axis, looking for abs(Jm(x)) < tolerance, but
I'm sure a much more elegant solution exists.
You wish to find intervals within which the Bessel functions change
sign. If a continuous function chages sign on an interval contained in
its domain has a zero on that interval. The error of estimation of the
zero is the length of the interval.
For the method you outlined, the relation between the tolerance
specified and the error of estimation is complex. Too small a
tolerance and one might never find a zero, too large a tolerance, and
the estimate of the zero's location is too inaccurate to use.
If one has an interval where the function changes sign, but the
interval is too large, one can bisect the interval, evaluate the
function, and choose the subinterval on which the function changes
sign. This is called <surprize> The Method of Bisection </surprize>.
I f the focus of ones interest is zeroes far away from the origin,
there are formulas giving the approximate location of the zeroes that
may be used. This would be relevant to the high overtones of a
drumbeat.
Thanks for the information. Looks like solving for the zeros will be
the most difficult part of the project...!
The classic non-linear solver in one dimension is
Brent's. It is an adaptive method switching between
bisection and quadratic interpolation. C version here.
<http://gams.nist.gov/serve.cgi/Module/C/BRENT/11665/>
You pass it two arguments that bracket the root and a
pointer to a function that evaluates the expression for
which you seek a zero.
--
Michael Press
.
- References:
- computation of zeros of Bessel functions
- From: mrdarrett
- Re: computation of zeros of Bessel functions
- From: Andrew Boniface
- Re: computation of zeros of Bessel functions
- From: mrdarrett
- computation of zeros of Bessel functions
- Prev by Date: Re: The Qur'ân and Science
- Next by Date: Re: Cantor set = irrationals
- Previous by thread: Re: computation of zeros of Bessel functions
- Next by thread: Solve x^(y-1)=z/y for x
- Index(es):
Relevant Pages
|