Opened 14 years ago

Closed 9 years ago

#4230 closed enhancement (duplicate)

implement arbitrary precision Bessel Y function

Reported by: AlexGhitza Owned by: burcin
Priority: minor Milestone: sage-duplicate/invalid/wontfix
Component: calculus Keywords:
Cc: kcrisman, benjaminfjones Merged in:
Authors: Reviewers: Karl-Dieter Crisman, Benjamin Jones
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges


At the moment, Sage uses Maxima to compute the Bessel Y function. This is slow and works only with the default 53 bits of precision. It would be fairly easy to implement this:

  • for integer values of the order nu, use the mpfr yn function
  • for non-integer values of nu, use the formula $Y_nu(z) = (J_nu(z)*cos(nu*pi) - J_{-nu}(z))/sin(nu*pi)$, where J is the Bessel J function.

Change History (9)

comment:1 Changed 14 years ago by ddrake

It would also be nice to be able to evaluate Bessel functions with complex, or at least purely imaginary, arguments.

comment:2 Changed 14 years ago by AlexGhitza

See #3426 (and review it!) for the Bessel functions other than Y. The code computes values at arbitrary complex coefficients.

comment:3 Changed 13 years ago by ddrake

Now that mpmath is included in Sage, why not just use mpmath's Bessel functions?

They seem to be very well-implemented, work to arbitrary precision, take complex arguments, and so on. Is this a good idea?

comment:4 Changed 11 years ago by kcrisman

  • Cc kcrisman added
  • Report Upstream set to N/A

comment:5 Changed 9 years ago by kcrisman

  • Cc benjaminfjones added

This would most likely be fixed by #4102.

comment:6 Changed 9 years ago by benjaminfjones

Yep, I'll add a related doctest in #4102 to address arbitrary precision numerical evaluation for bessel_Y.

comment:7 Changed 9 years ago by kcrisman

  • Milestone changed from sage-5.7 to sage-duplicate/invalid/wontfix
  • Reviewers set to Karl-Dieter Crisman, Benjamin Jones
  • Status changed from new to needs_review

Confirmed that this is doctested there.

Last edited 9 years ago by kcrisman (previous) (diff)

comment:8 Changed 9 years ago by kcrisman

  • Status changed from needs_review to positive_review

comment:9 Changed 9 years ago by jdemeyer

  • Resolution set to duplicate
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.