Perfectly Python
Perfectly Python
SECTION
REVIEWS
TITLE
Editor: Michael Jay Schillaci, [email protected]
Perfectly Python
Michael Jay Schillaci | Harris Corporation
W
ritten in a no-nonsense style, Jay Wang’s The introductory chapter provides a wealth of infor-
Computational Modeling and Visualization of mation for the novice programmer. It begins with an over-
Physical Systems with Python provides the ever- view of the syntax and control structures of the interpretive
growing community of Python learners and language and also discusses file handling, compatibility
users with a thorough text and valuable resource. Ideally concerns for 2.7x and 3.xx conversion, and speed and exten-
suited for use as a course text in advanced undergraduate or sibility (via Numba, Cython, F2Py, and so on), issues that
graduate curricula, this relatively slim volume offers coverage will appeal to the Python acolyte. All programmers will be
that is broad and deep, and the presentation is well thought happy that the text also includes material on plotting with
out. With standard topics ranging from planetary motion, Matplotlib and Numpy arrays with explicit code examples
dynamics, and chaos to oscillation, waves, electricity, and for creation, indexing, and slicing. The discussion on mul-
magnetism, the text also includes excellent chapters on sim- tidimensional arrays and universal functions is terse, but its
ple random problems and thermal systems. It distinguishes inclusion points to the volume’s usefulness as both a text-
itself from others by also covering both time-dependent and book and as a handy reference resource for programmers
November/December 2017 Copublished by the IEEE CS and the AIP 1521-9615/17/$33.00 © 2017 IEEE Computing in Science & Engineering 51
BOOK REVIEWS
52 November/December 2017
It’s also worth noting that the text’s material on simple undergraduate and graduate curricula where scientific com-
random systems does a great job of introducing a stochastic puting plays a role. Its collection of expertly documented
model for Brownian motion and also discusses importance and written Python code also makes it an ideal desk refer-
sampling methods. The text illustrates its depth here by ence for programmers and researchers alike that is, in short,
delving into statistical theory and giving a comprehensive perfectly Python.
treatment of nonuniform distributions, providing a guided
project to show how these can be generated via the rejec- Michael Jay Schillaci is the former managing director of the
tion method. With similar completeness, the author covers McCausland Center for Brain Imaging at the University of South
more advanced material on thermodynamic and scattering Carolina, served as associate professor of physics at Roberts Wes-
processes, and develops code that’s relevant to many areas of leyan College, and currently works as an imaging scientist and
pure and applied research. software engineer in the geospatial systems division at Harris Cor-
poration. His research interests include computational physics,
cognitive neuroscience, and classical theories of gravity. Schillaci
JULY/AUGUST 2016
IEEE SOFTWARE
July/August 2016
pioneering ideas,
IEEE SOFTWARE
SOFTWARE QUALITY
WWW.COMPUTER.ORG/SOFTWARE
software professionals
WHY LARGE IT PROJECTS FAIL // 117
WWW.COMPUTER.ORG/SOFTWARE
on translating software
& SOCIAL RESPONSIBILITY // 109
MARCH/APRIL 2016
IEEE SOFTWARE
WWW.COMPUTER.ORG/SOFTWARE
www.computer.org/
Volume 33 Number 1
March/April 2016
www.computer.org/cise 53