Table of contents

  1. Front Matter
    Pages i-xiv
  2. Joe Pitt-Francis, Jonathan Whiteley
    Pages 1-26
  3. Joe Pitt-Francis, Jonathan Whiteley
    Pages 27-45
  4. Joe Pitt-Francis, Jonathan Whiteley
    Pages 47-58
  5. Joe Pitt-Francis, Jonathan Whiteley
    Pages 59-73
  6. Joe Pitt-Francis, Jonathan Whiteley
    Pages 75-97
  7. Joe Pitt-Francis, Jonathan Whiteley
    Pages 99-128
  8. Joe Pitt-Francis, Jonathan Whiteley
    Pages 129-143
  9. Joe Pitt-Francis, Jonathan Whiteley
    Pages 145-161
  10. Joe Pitt-Francis, Jonathan Whiteley
    Pages 163-181
  11. Joe Pitt-Francis, Jonathan Whiteley
    Pages 183-196
  12. Joe Pitt-Francis, Jonathan Whiteley
    Pages 197-224
  13. Joe Pitt-Francis, Jonathan Whiteley
    Pages 225-244
  14. Back Matter
    Pages 245-287

About this book

Introduction

This simple-to-follow textbook/reference provides an invaluable guide to object-oriented C++ programming for scientific computing. Through a series of clear and concise discussions, the key features most useful to the novice programmer are explored, enabling the reader to quickly master the basics and build the confidence to investigate less well-used features when needed. The text presents a hands-on approach that emphasizes the benefits of learning by example, stressing the importance of a clear programming style to minimise the introduction of errors into the code, and offering an extensive selection of practice exercises.

This updated and enhanced new edition includes additional material on software testing, and on some new features introduced in modern C++ standards such as C++11.

Topics and features:

  • Presents a practical treatment of the C++ programming language for applications in scientific computing
  • Reviews the essentials of procedural programming in C++, covering variables, flow of control, input and output, pointers, functions and reference variables
  • Introduces the concept of classes, showcasing the main features of object-orientation, and discusses such advanced C++ features as templates and exceptions
  • Examines the development of a collection of classes for linear algebra calculations, and presents an introduction to parallel computing using MPI
  • Describes how to construct an object-oriented library for solving second order differential equations
  • Contains appendices reviewing linear algebra and useful programming constructs, together with solutions to selected exercises
  • Provides exercises and programming tips at the end of every chapter, and supporting code at an associated website

This accessible 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.

Dr. Joe Pitt-Francis is a Departmental Lecturer at the Department of Computer Science and teaches Computer Science at Exeter College, the University of Oxford, UK. Prof. Jonathan Whiteley is Associate Professor at the Department of Computer Science and Governing Body Fellow of Linacre College, the University of Oxford, UK.

Keywords

C++ Programming MPI Numerical Methods Object-Oriented Programming Parallel Programming Scientific Computing

Authors and affiliations

  • Joe Pitt-Francis
    • 1
  • Jonathan Whiteley
    • 2
  1. 1.University of OxfordOxfordUnited Kingdom
  2. 2.University of OxfordOxfordUnited Kingdom

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-319-73132-2
  • Copyright Information Springer International Publishing AG, part of Springer Nature 2017
  • Publisher Name Springer, Cham
  • eBook Packages Computer Science
  • Print ISBN 978-3-319-73131-5
  • Online ISBN 978-3-319-73132-2
  • Series Print ISSN 1863-7310
  • Series Online ISSN 2197-1781
  • About this book
Industry Sectors
Electronics
Telecommunications
Aerospace