Preliminaries
“The purpose of computing is insight, not numbers.”
— Richard W. Hamming, 1962
This book rests on two choices. The first is the language: forces, positions, velocities and accelerations are vectors from the outset, expressed in component form relative to explicit coordinate systems. We never reduce a three-dimensional problem to a collection of ad-hoc scalar equations and angle sketches; we write the vector relations directly and let the algebra follow.
The second is that symbolic and numerical computation are part of the modelling, not a check on hand calculation. Python, with SymPy for symbolic mathematics and NumPy for numerical work, is our tool throughout the book. It solves systems of equations exactly when possible and integrates differential equations numerically when not.
We first establish the vector notation and conventions that later chapters rely on, then work through an example that combines vectors and code. The remaining chapters cover the tools: a guide to SymPy, NumPy and Matplotlib, instructions for installing Python, and the case for computer-supported mechanics as a method for teaching and for engineering.