This is the mail archive of the
gsl-discuss@sources.redhat.com
mailing list for the GSL project.
Re: [Bug-gsl] bug: gsl_sf_bessel_zero_Jnu(double nu, unsigned ints)
- From: Gerard Jungman <jungman at lanl dot gov>
- To: gsl-discuss at sources dot redhat dot com
- Cc: Michael Gilbert <gilbert dot 137 at osu dot edu>, bug-gsl at gnu dot org
- Date: 08 May 2003 15:34:15 -0600
- Subject: Re: [Bug-gsl] bug: gsl_sf_bessel_zero_Jnu(double nu, unsigned ints)
- Organization: Los Alamos National Laboratory
- References: <3EAEE884.7010405@osu.edu> <16058.49574.799681.87132@debian.local>
On Thu, 2003-05-08 at 14:44, Brian Gough wrote:
> Michael Gilbert writes:
> > Hi,
> >
> > If nu is negative, gsl_sf_bessel_zero_Jnu(nu, s) returns an error. This
> > is a trivial because Jnu(-x, s) = Jnu(x, s), so to handle the issue i
> > just do gsl_sf_bessel_zero_Jnu(fabs(x), s). I think this would be an
> > easy bug to fix.
J(-nu,x) != J(nu,x)
If nu is an integer, then J(-n,x) = (-1)^n J(n,x). If nu is not
an integer, the relation is less simple, involving Hankel functions.
In fact, it is known that complex zeroes occur for non-integral nu,
when nu < -1.
As I say in the code, it is possible to do. But if it were
simple, I would have done it.
It might be a good idea for me to add a function
gsl_sf_bessel_zero_Jn(int n, unsigned int s), for integer
order. The usefulness would have to be balanced against
the extra cruft.
> Thanks for the bug report. I found the following comment in
> the source code bessel_zero.c:
>
> else if(nu < 0.0) {
> /* This can be done, I'm just lazy now. */
> result->val = 0.0;
> result->err = 0.0;
> GSL_ERROR("unimplemented", GSL_EUNIMPL);
> }
>
> Until there is an implementation I will update the
> documentation to say that negative nu is not supported.
It is not clear what it would mean to support it, given that
complex zeroes occur.
--
Gerard Jungman <jungman@lanl.gov>
Los Alamos National Laboratory