Van Loan’s goal is to help students learn about computational science while developing their programming skills. The book focuses on building intuition in certain key areas by studying selected examples. The material is organized into 24 interesting chapters, a review of mathematical facts, and an appendix that provides a “Synopsis of Think Pascal Units.”
The author discusses the concept of “From Formula to Program” in the first chapter. This chapter describes a small example, sines and cosines, maxes and mins, and quotients and remainders. The second chapter is devoted to numerical exploration, including discovering limits, confirming conjectures, floating-point terrain, and interactive frameworks. The next chapter discusses “Elementary Graphics” in three sections: “Grids,” “Rectangles and Ovals,” and “Granularity.” Chapter 4 describes “Sequences” in two sections, “Summation” and “Recursions.” Chapter 5 discusses “Random Simulations” in three parts, “Generating Random Reals and Integers,” “Estimating Probabilities and Averages,” and “Monte Carlo Technique.” Chapter 6 describes benchmarking and the efficiency of running a computer program. Benchmarking can be used to identify program bottlenecks and to determine whether one solution process is better than another.
Chapter 7 covers “Exponential Growth” by discussing powers and binomial coefficients. Chapters 8 and 9 discuss “Patterns” and “Proximity,” respectively. The next two chapters present quadratic equations, the method of bisection, the method of Newton, triangulation, tiling, and integration. Chapters 12 through 16 discuss “Visualization,” “Points in the Plane,” “Tables,” “Divisors,” and the “Second Dimension.” Chapters 18 through 21 describe “Polygons,” “Special Arithmetics,” “Polynomials,” and “Permutations.” The last three chapters are devoted to “Optimization,” “Divide and Conquer,” and “Models and Simulation.”
This is a well-organized textbook. Many teachers, computational scientists, researchers, and, most important, students will find the material valuable. The author has done a great job of presenting the necessary mathematical formulas and converting them into programs to arrive at the solution as efficiently as possible. The programs in the text are written in Think Pascal. The Think Pascal environment is effective when teaching these concepts to undergraduates.