Numerical Recipes in Fortran 90


By William Press, Saul Teukolsky, William Vetterling, and Brian Flannery
Published by Cambridge University Press, 1996. 550 pages. $49.00

Fortran 90 is not just the updating of Fortran to modern computing practices. It is at the cutting edge of a much wider revolution in computing, that of multiprocessor computers and widespread parallel programming, a revolution rapidly moving to the desktop.

Numerical Recipes in Fortran 90, as Volume 2 of the Fortran Numerical Recipes series, takes up where Volume 1 (now available as Numerical Recipes in Fortran 77) leaves off. Volume 2 begins with three completely new chapters that provide a detailed introduction to the Fortran 90 language and then present the basic concepts of parallel programming, all with the same clarity and good cheer for which Numerical Recipes is famous.

The authors explain why Fortran 90, and the general approach of ``thinking parallel'' that they advocate, is of immediate benefit to all scientific programmers, even on today's single-processor PCs and workstations, and even before multiprocessor machines arrive on the desktop. Routines coded with parallel language features are usually shorter, clearer, and closer to the underlying scientific ideas than their traditionally coded, do-loop laden counterparts.

All 350+ routines from the second edition of Numerical Recipes are in this volume, almost all of them completely reworked algorithmically so as to be ``parallel ready'' and to utilize Fortran 90's advanced language features. The introductory discussions and mathematical derivations of Volume 1 are not repeated in this volume (it is assumed that the reader will use this volume in conjunction with Volume 1), so the text discussion that accompanies the individual routines focuses instead on Fortran 90 language tips, and on conceptual ``parallel hints.'' Numerous such discussions are sprinkled throughout this volume. Also included is a foreword by Michael Metcalf, on of Fortran 90's original designers.

Numerical Recipes in Fortran 90 is an excellent guide for Fortran programmers interested in moving up to Fortran 90, and it is also a useful reference for C or C++ programmers interested in learning about parallel programming techniques.

``... this present volume will contribute decisively to a significant breakthrough, as it provides models not only of the numerical algorithms for which previous editions are already famed, but also of an excellent Fortran 90 style ...'' from the Foreword by Michael Metcalf