Springer eBooks may be purchased by end-customers only and are sold without copy protection (DRM free). Instead, all eBooks include personalized watermarks. This means you can read the Springer eBooks across numerous devices such as Laptops, eReaders, and tablets.
You can pay for Springer eBooks with Visa, Mastercard, American Express or Paypal.
After the purchase you can directly download the eBook file or read it online in our Springer eBook Reader. Furthermore your eBook will be stored in your MySpringer account. So you can always re-download your eBooks.
With an emphasis on the modularity of C++ programming
Includes an introduction to parallel programming using MPI
Covers the object-oriented design of a numerical library for solving differential equations
Provides numerous examples, chapter-ending exercises, and code available to download
The computational demands of modern-day simulation software needed across a range of diverse scientific disciplines lead many programmers to write their code in an object-oriented language such as C++.
This easy-to-read textbook/reference presents an essential guide to object-oriented C++ programming for scientific computing. With a practical focus on learning by example, the theory is supported by numerous exercises. Features of both the C++ language and standard libraries are highlighted via the development of classes of vectors and matrices, allowing demonstration of key concepts. The text then explains how these classes can be adapted for parallel computing, before demonstrating how a flexible, extensible library can be written for the numerical solution of differential equations.
Topics and features:
Provides a specific focus on the application of C++ to scientific computing, including parallel computing using MPI
Stresses the importance of a clear programming style to minimize the introduction of errors into code
Presents a practical introduction to procedural programming in C++, covering variables, flow of control, input and output, pointers, functions, and reference variables
Exhibits the efficacy of classes, highlighting the main features of object-orientation
Examines more advanced C++ features, such as templates and exceptions
Supplies useful tips and examples throughout the text, together with chapter-ending exercises, and code available to download from http://www.springer.com/978-1-4471-2735-2
This clearly written textbook is a “must-read” for programmers of all levels of expertise. Basic familiarity with concepts such as operations between vectors and matrices, and the Newton-Raphson method for finding the roots of non-linear equations, would be an advantage, but extensive knowledge of the underlying mathematics is not assumed.