Yair Shapira
Computational Science and Engineering 09
In this much-expanded second edition, author Yair Shapira presents new applications and a substantial extension of the original object-oriented framework to make this popular and comprehensive book even easier to understand and use. It 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).
New material in this edition includes new chapters on 3-D nonlinear applications and image processing applications; new sections on cryptography applications; and even more new sections, many including additional algorithms.
The book leads readers through the entire solution process, from the original PDE, through the discretization stage, to the numerical solution of the resulting algebraic system. 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. The well-debugged and tested code segments implement the numerical methods efficiently and transparently in a unified object-oriented approach.
Audience The book is written for researchers, engineers, and advanced students who wish to increase their familiarity with numerical methods and to implement them using 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.
About the Author Yair Shapira is engaged in research in the Computer Science Department, Technion-Israel Institute of Technology, Haifa, Israel. His main research interests are multigrid, preconditioning, and numerical methods. He is author of the books Matrix-Based Multigrid: Theory and Applications, Second Edition (Springer, 2008) and Mathematical Objects in C++: Computational Tools in a Unified Object-Oriented Approach (CRC, 2009).
Contents
List of Figures; List of Tables; Preface;
Part I: Elementary Background in Programming; Chapter 1: Concise Introduction to C; Chapter 2: Concise Introduction to C++; Chapter 3: Data Structures Used in the Present Algorithms;
Part II: Object-Oriented Programming; Chapter 4: From WittgensteinLacans Theory to the Object-Oriented Implementation of Graphs and Matrices; Chapter 5: FFT and Other Algorithms in Numerics and Cryptography; Chapter 6: Object-Oriented Analysis of Nonlinear Ordinary Differential Equations;
Part III: Partial Differential Equations and Their Discretization; Chapter 7: The Convection-Diffusion Equation; Chapter 8: Some Stability Analysis; Chapter 9: About Nonlinear Conservation Laws; Chapter 10: Application in Image Processing;
Part IV: Finite Elements; Chapter 11: About the Weak Formulation; Chapter 12: Some Background in Linear Finite Elements; Chapter 13: Unstructured Finite-Element Meshes; Chapter 14: Adaptive Mesh Refinement; Chapter 15: Towards High-Order Finite Elements;
Part V: The Numerical Solution of Large Sparse Linear Systems of Algebraic Equations; Chapter 16: Sparse Matrices and Their Object-Oriented Implementation; Chapter 17: Iterative Methods for the Numerical Solution of Large Sparse Linear Systems of Algebraic Equations; Chapter 18: Towards Parallelism;
Part VI: Applications in Two Spatial Dimensions; Chapter 19: Diffusion Equations; Chapter 20: The Linear Elasticity Equations; Chapter 21: The Stokes Equations; Chapter 22: Application in Electromagnetic Waves; Chapter 23: Multigrid for Nonlinear Equations and for the Fusion Problem in Image Processing;
Part VII: Applications in Three Spatial Dimensions; Chapter 24: Polynomials in Three Independent Variables; Chapter 25: The Helmholtz Equation: Error Estimate; Chapter 26: Adaptive Finite Elements in Three Spatial Dimensions; Chapter 27: Application in Nonlinear Optics: The Nonlinear Helmholtz Equation in Three Spatial Dimensions; Chapter 28: High-Order Finite Elements in Three Spatial Dimensions; Chapter 29: Application in the Nonlinear Maxwell Equations; Chapter 30: Towards Inverse Problems; Chapter 31: Application in the NavierStokes Equations;
Appendix A: Solutions to Selected Exercises;
Bibliography; Index.
To request an examination copy or desk copy of this book, please use our online request form at www.siam.org/catalog/adopt.php.
Keywords PDE, C++, object-oriented programming, numerical method
June 2012 / approx. xxxii + 765 / Softcover / ISBN 978-1-611972-16-0 List Price $139.00 / SIAM Member Price $97.30 / Order Code CS09
|