Numerical and Analytical Methods for Scientists and Engineers Using Mathematica Daniel Dubin Wiley, Hoboken, NJ, 2003. $120.00 (633 pp.). ISBN 0-471-26610-8, CD-ROM
Like Daniel Dubin, author of Numerical and Analytical Methods for Scientists and Engineers Using Mathematica, I find myself using this technical computing software nearly every day to perform routine mathematical drudgery, such as analytical differentiation, integration, and series summation. I also employ Mathematica as a sophisticated graphical tool. I was therefore interested to see how Dubin would use the program to teach mathematics.
In the preface, addressed to the student, he explains how the book was developed from lecture courses aimed at advanced undergraduates and graduates studying the physical sciences or engineering. His informal style, generally clear and concise, is continued throughout the book and will probably be appreciated by the intended audience. Extensive exercises that appear at regular intervals in the text also clearly mark Dubin’s work as a textbook.
Although the title appears more general, the motivation and focus of this book from start to finish is solving differential equations. The emphasis is clear from the table of contents: Five of the eight chapters have the words “differential equations” in their titles. The other three chapters, on Fourier series and transforms, eigenmode analysis, and random processes, are also inspired by applications that involve solving differential equations. The coverage of methods for solving both ordinary and partial differential equations probably extends well beyond most introductory courses, and thus the book is a potentially useful reference for research applications. An introductory chapter with references to other textbooks and online collections of numerical software might have been helpful, because those sources are likely to be the best places to turn for additional information—or when Mathematica runs out of steam and specialized programs are needed.
The book assumes that readers have already had introductory courses in calculus. From the very beginning, the text presents Mathematica program examples and exercises. Accompanying the book is a CD-ROM featuring a supplementary chapter with a useful guide that includes the most commonly used Mathematica routines and exercises, plus an explanation of potential error messages. Readers who are new to the program should work through this chapter first.
The entire book is also on the accompanying CD-ROM, which enables readers to come to grips with the content first hand and should be especially valuable to students. Working examples that can be adapted for related problems of particular interest will help readers to avoid the frustration that may result from making common syntactical mistakes. Examples include a wide range of standard problems from physics and engineering, such as initial- and boundary-value problems involving the Poisson, wave, Schrödinger, heat, diffusion, Fokker-Planck, and Laplace equations and problems concerning geometric optics.
There are probably fewer examples of direct interest to chemists, although the chapter on stochastic processes provides useful prerequisites for electronic structure methods, such as the diffusion Monte Carlo approach. Molecular dynamics is introduced in this chapter in the context of solving the differential equations that correspond to many-body systems obeying Newton’s laws.
A particular strength of this book is its coverage of both analytical and numerical methods. Chapter 1 acknowledges that most differential equations do not possess closed-form solutions and may exhibit chaos. Using a numerical tool like Mathematica to analyze such situations seems highly appropriate. The author includes definitions and example calculations of Lyapunov exponents to illustrate the effect of chaos. Graphical illustrations of how solutions diverge are used to good effect in this chapter—and also in chapter 2, where the accuracy of Fourier series representations is considered. Dubin’s approach should enable students to understand such topics without becoming bogged down in routine but potentially errorprone algebra, and hence obtain physical insight much more rapidly.
Unfortunately, some of the illustrations in the book use features that are not implemented in the older versions of Mathematica that I have access to. For example, Mathematica 4.1 is required to run all the examples in the book, although most should work with version 4.0. The novelty of audible comparisons between time signals and their Fourier series representations is very entertaining. The coverage of special functions in the context of differential equations is also worthwhile—particularly the discussions of the Dirac delta function.
Although the range of topics covered in the book is not as wide as I had expected from the title, I was pleased to pick up some useful tips. Overall, I recommend Numerical and Analytical Methods for Scientists and Engineers Using Mathematica because it provides a wealth of Mathematica examples and resources, as well as an insightful way to treat a multitude of differential equations.