Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] acph_v1_0.gz(17 Kbytes)
Manuscript Title: Bessel functions Jn(z) and Yn(z) of integer order and complex argument.
Authors: C.F. du Toit
Program title: BESCJY
Catalogue identifier: ACPH_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 78(1993)181
Programming language: Pascal.
Computer: IBM PC.
Operating system: DOS 3.3.
RAM: 10K words
Word size: 16
Keywords: General purpose, Bessel, Backward recurrence, Asymptotic expansion, Neumann, Hankel, Cylindrical, Complex functions, Stationary phase.
Classification: 4.7.

Nature of problem:
Bessel functions arise in the mathematical solution of physical problems, formulated in cylindrical and spherical coordinate systems. The CBESJY subroutine computes Jn(z) and Yn(z) for complex argument z and a sequence of integer orders n from M to N, where N >= 1 and M <= 0.

Solution method:
For small arguments, Du Toit's [1] algorithm is used to calculate Jn and Yn. For large arguments, these functions are computed using forward recurrence, starting with Jo, J1, Yo and Y1, which are determined from Hankel's asymptotic expansions [2, eqs. 9.2.5, 9.2.6].

The range of orders (n=M, M+1,..., N) is restricted by 1<= N - M<= 4095 and -N<=M<=0. The imaginary part of z is limited between -333 and 333, which creates an upper bound of 10**145 for the magnitude of the function values. The maximum computable order is limited by small values of z, since |Yn(z)| tends to infinity if z becomes small.

Running time:
On a IBM personal computer based on an INTEL 80486 microprocessor running at a clock frequency of 33 MHz, 4000 orders of both Jn and Yn are computed typically within 0.3 seconds.

[1] C.F. du Toit, IEEE Trans. Antennas & Propagat. 38 (1990) 1341.
[2] M. Abramowitz and I.A. Stegun, Eds., Handbook of Mathematical Functions, (NBS, Washington DC, 1964), Chap. 9.