›
54
TheStructuralEngineer
November 2015
Opinion
Book review
Review
Colin Caprani enjoys this introduction to MATLAB, which would make an ideal
companion for engineers interested in starting to program.
An Introduction
to MATLAB
Programming and
Numerical Methods
for Engineers
Authors: T. Siauw and A. M. Bayen
Publisher: Academic Press
Price: £48.99
ISBN: 978-0-124202-28-3
With increasingly complicated algorithms
becoming a feature of modern engineering,
the numerical tools that engineers use are
evolving accordingly. For many routine
calculations, spreadsheet programs, most
notably Microsoft Excel, are ubiquitous
in the design office. However, for more
advanced work Excel (even when coupled
with VBA) can run out of steam. Typical
problems requiring more advanced
computational power include large datasets
with millions of entries, matrix computations,
numerical differentiation and integration, and
parsing of files (text or binary) with a known
structure. Many of these problems will be
found in engineering projects requiring
advanced or first-principles work for which a
spreadsheet or bespoke software package
may not be available or is unsuited.
In the last decade or so, MATLAB (matrix
laboratory, Mathworks, Inc) has become
one of the most used tools for high-level
computation (along with its open-source
clone, Octave). It has a relatively easy
programming language to learn, but is
backed with incredibly powerful built-in
functions (e.g. fft) and add-on toolboxes (e.g.
wavelets). Indeed, reading many of the latest
journal articles reveals that MATLAB is the
tool of choice for many researchers. This is
because its combination of ease of use and
power is hard to beat.
Against this backdrop, undergraduate
programs are increasingly using MATLAB as
the reference program for students to use
throughout their course. Indeed, this book
by Siauw and Bayen emerged from teaching
a common first-year module to students
of different science and engineering
disciplines at the University of California,
Berkeley. As such, the book assumes no
"IN SHORT THEN, THIS
IS AN EXCELLENT FIRST
BOOK"
knowledge of MATLAB, or programming,
or of numerical methods. It is very well
targeted then at those who wish to learn
from scratch. And there are many interesting
teaching approaches taken in the book to
help readers of different learning styles.
Features like “Try It!”, “Tip!”, numerous
examples, program patterns, end-of-chapter
summaries, and an operators section all
make it easy to pick up the concepts. The
real gem though is the end-of-chapter
problems: there is a wide range of problem
difficulties and a range of ways of tackling
them. Some are to be handwritten, others
are command prompt entries (>>), programs
(*.m files), and a real bonus is the problems
that intentionally cause an error – exposing
the reader to common errors that without
prior notice could confound.
Part 1 of the book gives an introduction
to programming concepts. Given the ease
of the MATLAB language, this section could
easily be a gateway to programming in all
languages, since the constructs are often
common, if not the syntax of commands.
Part 2 gives an overview of numerical
methods that engineers may often need to
use. Indeed, many of these will already be
familiar to the mature reader, but application
in MATLAB serves to show the power of the
program.
There are many introductory books
about MATLAB and numerical methods in
engineering, but one aspect that appeals
about this book is the depth and wide
interest displayed by the authors, most
www.thestructuralengineer.org
55
notably in the problems. Often constrained
by the target audience in the main text,
the authors hint at far wider applications
in the problems section. For example, the
mathematician Ramanujan’s approximation
for pi is found at the end of Chapter 1!
Of relevance to structural engineers, the
basic single-degree-of-freedom model in
structural dynamics is given an outing in the
last chapter on solving ordinary differential
equations.
As an experienced MATLAB
programmer, I was really pleased to see
addressed many of the key areas of
difficulty for students. Highlights in this
regard include Chapters 7–9 covering
good coding practice, the way a computer
actually stores numbers, common errors,
and debugging approaches. These are
key skills often overlooked. In contrast,
Part 2 does not sparkle quite as much as
Part 1, and can meander sometimes into
detailed derivations. It’s a difficult line
for any author – too much depth versus
enough depth, especially given the target
level – and the authors cross this line and
back again a few times. A fairly gentle
criticism then is that the authors could
have included a ‘further reading’ section at
the end of each chapter, thereby avoiding
derivations, and pointing the interested
reader to more in-depth work on a
particular topic.
In summary, to engineers interested in
starting to program, both MATLAB and
this book are ideal companions. For those
with programming experience in another
language, you’ll find Part 1 a good gateway
to MATLAB. For an initial introduction to
numerical methods, Part 2 is also very
good, and MATLAB a very good way to
start. In short then, this is an excellent
first book, but as you need to deepen
your knowledge into specific topics, other
resources will be required.
Colin Caprani
DipEng, BScEng, PhD, CEng, CPEng, MIStructE,
MIEI, MIEAust, MASCE, MIABSE
Colin Caprani is a lecturer in structural engineering at Monash
University, Melbourne, Australia. He was a lecturer at Dublin
Institute of Technology, Ireland, from 2006–13. Before that he
completed his PhD at University College Dublin after a few years in structural design
practice. He is a member of Council for 2015–16 and the Australian Regional Group,
having previously served the Institution as Secretary of the Republic of Ireland Regional
Group.
Coming soon: Stability of buildings Part 4: Moment frames
Together with the recent publication of both Stability of buildings Parts 1 and 2, and Stability of buildings
Part 3, this Guide completes the series. Here, the design concepts, thoughts and detail surrounding the
LNLDMSEQ@LD@R@RS@AHKHSXDKDLDMS@QDDWOK@HMDC@MCRHLOKHjDC
The moment frame can be a complex structural element and this Guide seeks to cover the diverse range
of single- and multi-frame types, by drawing on particular situations faced by designers and constructors,
and by advising on best practice in terms of analysis; to ensure all aspects are considered and modelled
correctly. As stated previously in the series, as-built records are important to ensure the provision is
understood when the existing structure is demolished and/or renewed. This is especially relevant when a
moment frame is incorporated into the existing structure.
As with Stability of buildings Part 3, this Guide has been produced to assist structural engineers in the
development of a moment frame element within the schemes they develop - illustrating the choices
available both in design (especially analysis) and construction - from in situ reinforced concrete, precast
and steel variants, as well as the array of both design development and detailing processes to consider
VGDM@RRDRRHMFSGDHMkTDMBDNERTA BNMSQ@BSNQCDRHFMDKDLDMSR (MO@QSHBTK@Q /@QSHRHMSDMCDCOQHL@QHKX
for both structural engineers working for the consulting engineer as well as specialist sub-contractors, at
all levels of the industry - illustrating best practice where moment frames are adopted.
The other titles available in this series are:
–
Parts 1 and 2: General philosophy and framed bracing (combined)
–
Part 3: Shear walls
All four parts will also be available to purchase as a
Stability of buildings package at shop.istructe.org
Institution member price: £45
Non-member price: £70