Abstract

A MATLAB toolbox, IIPBF , for calculating infinite integrals involving a product of two Bessel functions J a (ρ x ) J b (τ x ), J a (ρ x ) Y b (τ x ) and Y a (ρ x ) Y b (τ x ), for non-negative integers a , b , and a well-behaved function f ( x ), is described. Based on the Lucas algorithm previously developed for J a (ρ x ) J b (τ x ) only, IIPBF recasts each product as the sum of two functions whose oscillatory behavior is exploited in the three-step procedure of adaptive integration, summation, and extrapolation. The toolbox uses customised QUADPACK and IMSL functions from a MATLAB conversion of the SLATEC library. In addition, MATLAB 's own quadgk function for adaptive Gauss-Kronrod quadrature results in a significant speed up compared with the original algorithm. Usage of IIPBF is described and eighteen test cases illustrate the robustness of the toolbox; five additional ones are used to compare IIPBF with the BESSELINT code for rational and exponential forms of f ( x ) with J a (ρ x ) J b (τ x ). Reliability for a broad range of values of ρ and τ for the three different product types as well as different orders in one case is demonstrated. An electronic appendix provides a novel derivation of formulae for five cases.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call