SIAM Homepage | Search Catalog | New Books | Author Index | Series Index | Title Index | View My Shopping Cart



The catalog and shopping cart are hosted for SIAM by EasyCart. Your transaction is secure. If you have any questions about your order, contact siambooks@siam.org.

Purchase Now!

Solving PDEs in C++: Numerical Methods in a Unified Object-Oriented Approach
Solving PDEs in C++: Numerical Methods in a Unified Object-Oriented Approach

Yair Shapira



Computational Science and Engineering 1


There are dozens of excellent books on C++ and object-oriented programming, but very few of them put the language into the perspective of scientific computing. The introductory part of the present book acts as a language introduction, while the main contents focus on how C++ can be used to implement numerical algorithms. I would say that this is a long-awaited type of textbook in the scientific computing community. -- Hans Petter Langtangen, Professor, Simula Research Laboratory and University of Oslo, Norway.


This comprehensive book not only introduces the C and C++ programming languages but also shows how to use them in the numerical solution of partial differential equations (PDEs). It leads the reader through the entire solution process, from the original PDE, through the discretization stage, to the numerical solution of the resulting algebraic system. The well-debugged and tested code segments implement the numerical methods efficiently and transparently. Basic and advanced numerical methods are introduced and implemented easily and efficiently in a unified object-oriented approach.

The high level of abstraction available in C++ is particularly useful in the implementation of complex mathematical objects, such as unstructured mesh, sparse matrix, and multigrid hierarchy, often used in numerical modeling. This book introduces a unified approach for the implementation of these objects. The code segments and their detailed explanations clearly show how easy it is to implement advanced algorithms in C++.

Solving PDEs in C++ contains all the required background in programming, PDEs, and numerical methods; only an elementary background in linear algebra and calculus is required. Useful exercises and solutions conclude each chapter. For the more advanced reader, there is also material on stability analysis and weak formulation. The final parts of the book demonstrate the object-oriented approach in advanced applications.

Audience

The book is written for researchers, engineers, and advanced students who wish to increase their familiarity with numerical methods and to implement them in modern programming tools. Solving PDEs in C++ can be used as a textbook in courses in C++ with applications, C++ in engineering, numerical analysis, and numerical PDEs at the advanced undergraduate and graduate levels. Because it is self-contained, the book is also suitable for self-study by researchers and students in applied and computational science and engineering.

Contents

List of Figures; List of Tables; Preface; Part I: Programming. Chapter 1: Introduction to C; Chapter 2: Introduction to C++; Chapter 3: Data Structures; Part II: The Object-Oriented Approach. Chapter 4: Object-Oriented Programming; Chapter 5: Algorithms and Their Object-Oriented Implementation; Chapter 6: Object-Oriented Analysis; Part III: Partial Differential Equations and Their Discretization. Chapter 7: The Convection-Diffusion Equation; Chapter 8: Stability Analysis; Chapter 9: Nonlinear Equations; Chapter 10: Application in Image Processing; Part IV: The Finite-Element Discretization Method. Chapter 11: The Weak Formulation; Chapter 12: Linear Finite Elements; Chapter 13: Unstructured Finite-Element Meshes; Chapter 14: Adaptive Mesh Refinement; Chapter 15: High-Order Finite Elements; Part V: The Numerical Solution of Large Sparse Linear Systems of Equations. Chapter 16: Sparse Matrices and Their Implementation; Chapter 17: Iterative Methods for Large Sparse Linear Systems; Chapter 18: Parallelism; Part VI: Applications. Chapter 19: Diffusion Equations; Chapter 20: The Linear Elasticity Equations; Chapter 21: The Stokes Equations; Chapter 22: Electromagnetic Waves; Appendix; Bibliography; Index.

See Sample Chapter:
http://www.siam.org/books/textbooks/cs01sample.pdf

To request an examination copy or desk copy of this book, please use our online request form at www.siam.org/catalog/adopt.php.

2006 / xxiv + 508 / Softcover / ISBN-13: 978-0-898716-01-6 / ISBN-10: 0-89871-601-2 /
List Price $125.00 / SIAM Member Price $87.50 / Order Code CS01
Price
Quantity desired
   



Search our catalog for:

Shopping cart provided by: EasyCart.com
Select quantity and list or member price and then click the "Click to Order" button to add books to your shopping cart.