Issue No.04 - July/August (2009 vol.11)
Published by the IEEE Computer Society
Norman Chonacky , Yale University
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MCSE.2009.114
Norman Chonacky reviews Computation in Modern Physics.
My first reaction upon examining Computation in Modern Physics was that a better title might have been Modern Scientific Computing with Applications to Computational Nuclear Physics. As such, if you expect this book to treat applications of computation to modern physics beyond nuclear physics, you'll probably be disappointed. But it does represent a serious step toward integrating computation into physics education. In this review, I wish to address whether this limitation helps or hurts its intended purpose, which the editor states in the preface of this third edition as "a preparation for research in the physical sciences … [having] an orientation toward [computation] …." My response to this question will revolve around two issues: its content and organization as a two-part package and its suitability for use as an instructional resource.
The first of its two logical parts, "eight chapters [treating] techniques of value to many fields of science," as characterized in the third edition's preface, are topics dealing with what we could call scientific computation. This part has an unusually broad scope and includes several topics not normally found under the same tent, as it were. Thus, in addition to chapters on integration, Monte Carlo, and differential and finite element methods, it includes chapters on computer hardware and digital signal processing. Tipping a hat to modern physics, it also includes a chapter on chaos. A separate chapter on linear algebra—material more normally injected piecemeal into such textbooks—rounds out the roster.
The second part of the book, the "final four chapters dealing with solutions to problems in quantum mechanics," deals with applications of these methods to computational problems in quantum physics and, as such, is an example of computational science. It's here that the notion of modern physics narrows to numerical solutions of Schrödinger's equation, the N-body ground state, and scattering in N-body systems. Narrower still is a chapter on methods for treating divergent series, which is arguably of importance mainly to nuclear physicists and which logic dictates belongs to the first part of the book.
This book's major strengths are its content and organization. It collects diverse but related topics under one cover—for example, in part one, I was struck to see machine architecture in the same text as signal processing. The former is important for efficient parallel programming and the latter for any experimental science. I agree with the author's assertion that understanding both of these is essential to building a solid foundation as a modern computational scientist in any field. Most computational scientists have to deal with hardware and programming choices—hence, the need to understand how computer architecture relates to its performance efficiency for particular computational tasks. Similarly, most computational scientists have to deal with experimental data—hence, the need to understand how sampling and noise affect the information content of measurement values. The inclusion of computational physics applications—part two—in the same book as scientific computing techniques—part one—has an advantage of consistency in terminology and notation. It also has the advantage of completeness in that all the techniques necessary to treat the selected applications are included.
However, the content and organization also have a glaring limitation if this is to serve as a textbook for preparing a cadre of computationally oriented research scientists, not just physicists. Part one of this book serves this wider purpose, whereas part two is only suitable for physicists whose main concern is quantum physics. My caveat: the treatment of content, especially in part one, is so condensed it suggests a reference manual rather than a textbook. A possible resolution to these problems of scope and detail is found on the back cover in an (unsigned) assertion that this book is "suitable for two courses in computational physics. The first … at the advanced introductory level … for seniors or first-year graduate students." In my judgment, part one would best benefit undergraduate students of all sciences at a pace and with such supplementary material as is suitable to illustrate a variety of applications. Part two could be the basis for a graduate physics course in computational quantum physics. For other sciences, a comparable graduate course for each science could be based on part one of this text but stress field-specific applications.
To illustrate the effect of condensation in the second part, I had to rely on the testimony of an expert in the field of computational nuclear physics, who wrote a review of an earlier edition of this book: 1
The second half of Computation in Modern Physics is strikingly different from the first and might be renamed Some Problems in Quantum Theory of Few-Body Systems. It contains what I find to be fascinating materials for a graduate level specialty course, but not materials for a general CP course. Specifically, the 50 pages of Chapter 10 give a review of Schrödinger theory that usually would occupy four to five chapters in a quantum mechanics text, and I would venture to predict that unless the reader has already learned the material someplace else, reading this chapter will not do the job. In particular, there is a lot of background needed to do and understand problems at the end of the chapters, some of which are significant enough as a term or a summer research project, and students may be best advised to do the project as a way of familiarizing themselves with the material.
As a physics educator, I'm convinced of the wisdom and virtue of integrating computation into all of undergraduate physics. This book represents a laudable effort at integrating computation into the upper-division part of a physics curriculum and as such contributes to the cause of providing one model, of which many are needed. At the present time, other than a few notable examples in the introductory course sequence, 2 computation is injected into undergraduate physics predominantly as a special course, segregated from those courses in the regular major curriculum. 3
Major challenges exist with redesigning these courses to provide computational enrichment throughout the curriculum. 4 A fundamental challenge is coordinating the computation from one course to another, and, to make this work, departments must realize that numerical computation and mathematical analysis are of equal importance in understanding and working with physics. Another challenge is to reposition, rather than eliminate, the special computational course earlier in the course sequence where students can learn both parts of the computational skill set: scientific computation and computational physics.
Perhaps this book—especially part one—could serve as such a reference and coordinating force via shared assignment across all such courses. This deployment might both provide a consistent background of scientific computational methods and solve the problem of overly condensed content.
In closing, I would like to convey that this book is a welcome contribution to computational science literature. We need models for resources that integrate computation into physics at all levels and that recognize that a combination of—and balance -between—scientific computational skills and computational science skills is essential in that enterprise. This book serves that higher purpose.
Norman Chonacky served as CiSE's editor in chief from 2004 to 2008. Contact him at firstname.lastname@example.org.