Topic #8 -------------- OP-SF NET 5.3 ------------- May 15, 1998 ~~~~~~~~~~~~~ From: Nico Temme
Subject: Book Review of "Computation of Special Functions" Editor's note: The book "Computation of special functions" by S. Zhang and J. Jin was announced in OP-SF NET 4,3, Topic #10. The following review by Nico Temme of this book has also appeared in the April 1998 issue of the Dutch journal Mededelingen van het Wiskundig Genootschap. S. Zhang and J. Jin, Computation of Special Functions. John Wiley & Sons, Inc., New York, 1996. 717 p., price $70.- (hc). ISBN 0-471-11963-6. Disk with software included. A great number of special functions are considered here: Bernoulli and Euler numbers, orthogonal polynomials, gamma and related functions, Legendre, Bessel, Airy and Struve functions, integrals of Bessel functions, hypergeometric and confluent hypergeometric functions, parabolic cylinder functions, Mathieu functions, spheroidal wave functions, error functions and Fresnel integrals, cosine and sine integrals, elliptic integrals, Jacobian elliptic functions and exponential integrals. There is short chapter with some remarks on methods for computing special functions. There is an appendix containing the formulas for separating the Helmholtz equation in several kinds of coordinate systems, and another appendix on root-finding methods. An general author index is missing; each chapter has a separate list of references. Each chapter treats a group of functions. In a first section the major properties of the functions are given and some of the important formulas needed for their computation. This information is included to make the book self-contained. Next the algorithms and the software (Fortran-77) for the group of functions are described, and many numerical tables are included. A disk is provided giving over 100 programs for computing the functions. The tables give about 8 significant decimal digits. It is stated that the programs aim at double precision. I have not tested the software or compared this with other recent publications; see for example the books mentioned below, of which Baker and Moshier give C-programs; Press et al. give several software packages. Thompson's book appears in two versions with a CD-ROM for the software. By choosing Fortran-77 only, the present book does not keep up with modern programming environments. The authors are well aware of all kind of pitfalls and instabilities that may occur in certain algorithms. In many cases the approach is sound; an error analysis is incidentally given. In some cases just a certain loss of accuracy is accepted without choosing a different, more robust, approach. The book treats a rather complete selection of special functions. By taking into account so many functions, the authors could not avoid a certain loss of quality in the software. Many high quality approaches in the literature are not mentioned. I cannot see the use of so many tables; some of them are very trivial.  L. Baker (1992), C Mathematical function handbook, McGraw-Hill, New York.  S.L. Moshier (1989), Methods and programs for mathematical functions, Ellis Horwood Limited, New York.  W.H. Press, S.A. Teukolsky, W.T. Vetterling and B.P. Flannery (1992), Numerical recipes. The art of scientific computing, Cambridge University Press, second edition.  W.J. Thompson (1997), Atlas for Computing Mathematical Functions: An illustrated guide for practitioners. The book appears in two versions: one with programs in C and Mathematica, and one with programs in Fortran 90 and Mathematica; both editions have a CD-ROM included for software. John Wiley & Sons, New York.