This book is targeted primarily toward engineers and engineering students of advanced
standing (sophomores, seniors and graduate students). Familiarity with a
computer language is required; knowledge of basic engineering subjects is useful, but
The text attempts to place emphasis on numerical methods, not programming.
Most engineers are not programmers, but problem solvers. They want to know what
methods can be applied to a given problem, what are their strengths and pitfalls and
howto implement them. Engineers are not expected to write computer code for basic
tasks from scratch; they are more likely to utilize functions and subroutines that have
been already written and tested. Thus programming by engineers is largely confined
to assembling existing pieces of code into a coherent package that solves the problem
The “piece” of code is usually a function that implements a specific task. For the
user the details of the code are unimportant. What matters is the interface (what goes
in and what comes out) and an understanding of the method on which the algorithm
is based. Since no numerical algorithm is infallible, the importance of understanding
the underlying method cannot be overemphasized; it is, in fact, the rationale behind
learning numerical methods.