pylevin: Efficient numerical integration of integrals containing up to three Bessel functions
Robert Reischke

TL;DR
pylevin is a Python package that efficiently computes highly oscillatory integrals with up to three Bessel functions, outperforming standard methods in speed and stability for complex integrals.
Contribution
The paper introduces pylevin, a novel Python tool that extends efficient numerical integration to integrals with multiple Bessel functions, surpassing existing methods in speed and stability.
Findings
pylevin achieves comparable speed to specialized packages for single Bessel integrals.
It is up to 10,000 times faster than standard adaptive quadrature for multiple Bessel functions.
pylevin exhibits improved stability for large argument integrals.
Abstract
Integrals involving highly oscillatory Bessel functions are notoriously challenging to compute using conventional integration techniques. While several methods are available, they predominantly cater to integrals with at most a single Bessel function, resulting in specialised yet highly optimised solutions. Here we present pylevin, a Python package to efficiently compute integrals containing up to three Bessel functions of arbitrary order and arguments. The implementation makes use of Levin's method and allows for accurate and fast integration of these highly oscillatory integrals. In benchmarking pylevin against existing software for single Bessel function integrals, we find its speed comparable, usually within a factor of two, to specialised packages such as FFTLog. Furthermore, when dealing with integrals containing two or three Bessel functions, pylevin delivers performance up to…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMathematical functions and polynomials
