Main       Download       Commercial support       FAQ       Forum       About Us

Bessel functions of integer order

Bessel functions are defined as linear independent solutions of equation

This equation often arises when solving Laplas and Helmholtz equations in spherical or cylindric coordinates (electromagnetic wave transmission, transmission of heat and diffusion).

Bessel functions of the first kind, denoted as Jα (x), are solutions of Bessel's differential equation that are finite at the origin (x = 0) for non-negative integer α, and diverge as x approaches zero for negative non-integer α. α is referred to as the order of the Bessel function. Bessel function of the second kind is the second solution of Bessel's differential equation (the solutions are linear independent). Bessel functions could be extended on a complex plane. The important special case are modified Bessel functions Iα (x) and Kα (x) - linear combinations of pure imaginary arguments which possess real values.

Subroutines in this module calculate the values of Bessel functions of integer order. Bessel functions of fractional order could be calculated by using the subroutines from another module.

BesselJ0, BesselJ1 and BesselJN subroutines calculate the Bessel functions of the first kind of 0th, 1st and N-th order. BesselY0, BesselY1 and BesselYN subroutines calculate the Bessel functions of the second kind of 0th, 1st and N-th order. BesselI0 and BesselI1 subroutines calculate the modified Bessel functions of the first kind of 0th and 1st order. BesselK0, BesselK1 and BesselKN subroutines calculate the modified Bessel functions of the second kind of 0th, 1st and N-th order.

Piecewise rational approximation and Chebyshev polynomial approximation are used to calculate functions of 0th and 1st order, forward and backward recurrence and series expansion are used for higher order functions.

This article is intended for personal use only.

Download ALGLIB

C#

C# source.

Downloads page

 

C++

C++ source.

Downloads page

 

C++, multiple precision arithmetic

C++ source. MPFR/GMP is used.

GMP source is available from gmplib.org. MPFR source is available from www.mpfr.org.

Downloads page

 

FreePascal

FreePascal version.

Downloads page

 

Delphi

Delphi version.

Downloads page

 

VB.NET

VB.NET version.

Downloads page

 

VBA

VBA version.

Downloads page

 

Python

Python version (CPython and IronPython are supported).

Downloads page

 

 

ALGLIB® - numerical analysis library, 1999-2012.
ALGLIB is a registered trademark of the ALGLIB Project.