toms597, a FORTRAN90 code which evaluates Bessel functions I of real, non-integer order, by William Cody. This is a version of ACM TOMS Algorithm 597;


The computer code and data files made available on this web page are distributed under the GNU LGPL license.


toms597 is available in a FORTRAN90 version.

Related Data and Programs:


fn, a FORTRAN90 code which approximates elementary and special functions using Chebyshev polynomials; functions include Airy, Bessel I, J, K and Y, beta, confluent hypergeometric, error, gamma, log gamma, Pochhammer, Spence; integrals include hyperbolic cosine, cosine, Dawson, exponential, logarithmic, hyperbolic sine, sine; by Wayne Fullerton.

specfun, a FORTRAN90 code which computes special functions, including Bessel I, J, K and Y functions, and the Dawson, E1, EI, Erf, Gamma, log Gamma, Psi/Digamma functions, by William Cody and Laura Stoltz;

special_functions, a FORTRAN90 code which computes the Beta, Error, Gamma, Lambda, Psi functions, the Airy, Bessel I, J, K and Y, Hankel, Jacobian elliptic, Kelvin, Mathieu, Struve functions, spheroidal angular functions, parabolic cylinder functions, hypergeometric functions, the Bernoulli and Euler numbers, the Hermite, Laguerre and Legendre polynomials, the cosine, elliptic, exponential, Fresnel and sine integrals, by Shanjie Zhang, Jianming Jin;

toms715, a FORTRAN90 code which evaluates special functions, including the Bessel I, J, K, and Y functions of order 0, of order 1, and of any real order, Dawson's integral, the error function, exponential integrals, the gamma function, the normal distribution function, the psi function. This is a version of ACM TOMS algorithm 715.


  1. William Cody,
    Sequence of modified Bessel functions of the first kind,
    ACM Transactions on Mathematical Software,
    Volume 9, Number 2, June 1983, page 242-245.

Source Code:

Last revised on 16 June 2021.