xiv Preface
The book has two interrelated parts. The rst part consists of seven chapters, which intro-
duce the fundamentals of Mathematica’s syntax and a subset of commands useful in solving
engineering problems. The second part makes extensive use of the material in these seven
chapters to show how, in a straightforward manner, one can obtain numerical solutions in
a wide range of engineering specialties: vibrations, uid mechanics and aerodynamics, heat
transfer, controls and signal processing, optimization, structures, and engineering statistics. In
this part of the book, the vast majority of the solutions are presented as interactive graphics
from which one can explore the results parametrically.
In Chapter 1, the basic syntax of Mathematica is introduced and it is shown how to inter-
mingle symbolic and numerical calculations, how to use elementary mathematical functions
and constants, and how to create and manipulate complex numbers. Several notational pro-
gramming constructs are both illustrated and tabulated and examples are given on how to
attach physical units to numerical and symbolic quantities. The basic structure of the notebook
interface and its customization are presented. In addition, the various templates that can be
used to simplify the integration of Greek letters, superscripts and subscripts, and other mathe-
matical symbols into the programming process, and the commands that represent many basic
mathematical functions and mathematical constants are illustrated.
In Chapter 2, the commands that can be used to create lists are discussed in detail and
their special construction to form vectors and matrices composed of numerical and/or sym-
bolic elements that are commonly employed to obtain solutions engineering applications are
introduced. The use of vectors and matrices is discussed in two distinctly different types of
applications: to perform operations on an element-by-element basis or to use them as entities
in linear algebra operations.
In Chapter 3, ways to create functions, exercise program control, and perform repetitive
operations are discussed. The concept of local and global variables is introduced and its
implications with respect to programming are illustrated.
In Chapter 4, two types of symbolic manipulations are illustrated. The rst is the simpli-
cation and manipulation of symbolic expressions to attain a compact form of the result. The
second is to perform a mathematical operation on a symbolic expression. The mathematical
operations considered are: differentiation, integration, limit, solutions to ordinary and partial
differential equations, power series expansion, and the Laplace transform.
In Chapter 5, several Mathematica functions that have a wide range of uses in obtaining
numerical solutions to engineering applications are presented: integration, solution to linear
and nonlinear ordinary and partial differential equations, solution of equations, determination
of the roots of transcendental equations, determining the minimum or maximum of a function,
tting curves and functions to data, and obtaining the discrete Fourier transform.
In Chapter 6, a broad range of 2D and 3D plotting functions are introduced and illus-
trated using numerous tables and examples from engineering topics. It is shown how to
display discrete data values and values obtained from analytical expressions in different
ways; that is, by displaying them using logarithmic compression, in polar coordinates, as
contours, or as surfaces. The emphasis is on the ways that the basic gure can be modied,
enhanced, and individualized to improve its visual impact by using color, inset gures and
text, gure titles, axes labels, curve labels, legends, combining gures, lled plot regions, and
tooltips.
In Chapter 7, the creation and implementation of interactive graphics and animations are
introduced and discussed in detail and illustrated with many examples. The control devices