Skip to main content

2003 | Buch | 2. Auflage

Computational Partial Differential Equations

Numerical Methods and Diffpack Programming

verfasst von: Hans Petter Langtangen

Verlag: Springer Berlin Heidelberg

Buchreihe : Texts in Computational Science and Engineering

insite
SUCHEN

Über dieses Buch

The second edition features lots of improvements and new material. The most significant additions include - finite difference methods and implementations for a 1D time-dependent heat equation (Chapter 1. 7. 6), - a solver for vibration of elastic structures (Chapter 5. 1. 6), - a step-by-step instruction of how to develop and test Diffpack programs for a physical application (Chapters 3. 6 and 3. 13), - construction of non-trivial grids using super elements (Chapters 3. 5. 4, 3. 6. 4, and 3. 13. 4), - additional material on local mesh refinements (Chapter 3. 7), - coupling of Diffpack with other types of software (Appendix B. 3) - high-level programming offinite difference solvers utilizing the new stencil (finite difference operator) concept in Diffpack (Appendix D. 8). Many of the examples, projects, and exercises from the first edition have been revised and improved. Some new exercises and projects have also been added. A hopefully very useful new feature is the compact overview of all the program examples in the book and the associated software files, presented in Chapter 1. 2. Errors have been corrected, many explanations have been extended, and the text has been upgraded to be compatible with Diffpack version 4. 0. The major difficulty when developing programs for numerical solution of partial differential equations is to debug and verify the implementation. This requires an interplay between understanding the mathematical model,the in­ volved numerics, and the programming tools.

Inhaltsverzeichnis

Frontmatter
Chapter 1. Getting Started
Abstract
This chapter introduces the reader to various basic aspects of numerical simulation, including derivation of partial differential equations, construction of finite difference schemes, implementation in Diffpack, and visualization of the simulation results. Particular attention is paid to fundamental concepts in Diffpack and C++ programming that will be needed for further reading of the book.
Hans Petter Langtangen
Chapter 2. Introduction to Finite Element Discretization
Abstract
The finite element method is a flexible numerical approach for solving partial differential equations. One of the most attractive features of the method is the straightforward handling of geometrically complicated domains. It is also easy to construct higher-order approximations. The present chapter gives an introduction to the basic ideas of finite elements and associated computational algorithms. No previous knowledge of the method is assumed.
Hans Petter Langtangen
Chapter 3. Programming of Finite Element Solvers
Abstract
The present chapter explains the usage of Diffpack’s finite element toolbox. The model problems are kept quite simple in order to concentrate on programming details. In Chapters 3.1–3.8 we deal with the Poisson equation. A trivial extension to the convection-diffusion equation is exemplified in Chapter 3.9. Chapters 3.10–3.13 demonstrate that only minor extensions of the Poisson equation solvers are needed to handle time-dependent problems, in this case the heat equation. Finally, Chapter 3.15 brings in some new tools for particularly efficient solution of PDEs with time-independent coefficients. The required background for working with this chapter is knowledge of the finite element method (at least the material corresponding to Chapters 2.1–2.7) and basic concepts in C++ and Diffpack (at least Chapters 1.1–1.4, 1.6.1–1.6.3, and 1.6.5; Chapter 1.7 is also useful).
Hans Petter Langtangen
Chapter 4. Nonlinear Problems
Abstract
This chapter extends the numerical methods and software tools from Chapters 1–3 to nonlinear partial differential equations. Chapter 4.1 deals with discretization techniques for nonlinear terms in PDEs and algorithms for solving systems of nonlinear algebraic equations. Software tools supporting the implementation of the methods in Chapter 4.1 are described in Chapter 4.2. The application are as are limited to scalar PDEs, but the methodology in this chapter is straightforwardly applied to systems of PDEs and more challenging applications in Chapters 5.2, 6.3, and 7.
Hans Petter Langtangen
Chapter 5. Solid Mechanics Applications
Abstract
The deformation of solid materials is a subject of importance in many fields of science and engineering. For example, t he models and software in t his chapter have applications in structural engineering, material science, seismology, geology, sensor technology, and bioengineering. The present chapter covers two mathematical models: (i) elastic deformations with thermal expansion effect s and (ii) combined elast ic and plastic deformations.
Hans Petter Langtangen
Chapter 6. Fluid Mechanics Applications
Abstract
This chapter brings together numerical and implementational topics from the previous chapters in three application areas taken from fluid mechanics. First we present a solver for a general time-dependent and possibly nonlinear convection-diffusion equation, where the implementation constitutes a synthesis of most of the Diffpack tools mentioned in Chapters 3 and 4.2. The next application concerns waves in shallow water. We first treat finite difference methods for the system of PDEs on staggered grids in space and time. Thereafter we describe suitable finite element methods for weakly nonlinear and dispersive shallow water waves. The rest of the chapter is devoted to incompressible viscous flow governed by the Navier-Stokes equations. A classical finite difference method on staggered grid in 3D extends the ideas of the finite difference-based numerical model for shallow water waves. A penalty method for the Navier-Stokes equations, in combination with finite element discretization, demonstrates how numerical and implementational tools from the Poisson2, NlHeat1, and Elasticity1 solvers in previous chapters can be combined to solve a time-dependent nonlinear vector PDE. Another finite element method for the Navier-Stokes equations, based on operator splitting, is also discussed, with special emphasis on efficient implementation.
Hans Petter Langtangen
Chapter 7. Coupled Problems
Abstract
This chapter deals with two specific examples on systems of PDEs concerning fluid-structure interaction and coupled heat and fluid flow. The exposition includes derivation of the PDEs, precise description of the numerical solution algorithms, and software design principles based on object-oriented programming and Diffpack tools. Contrary to Chapters 5 and 6, where vector PDEs were in main focus, we now address systems of PDEs where the different equations reflect different fundamental physical principles. Each scalar equation in the PDE system then has a life on its own. For example, the system treated in Chapter 7.2 consists of a momentum equation and an energy equation. From an implementational point of view, it would be advantagous to realize the compound solver for the system of PDEs as a simple combination of well-tested stand-alone solvers for the various scalar PDEs in the system. We shall pursue this idea in the present chapter.
Hans Petter Langtangen
Backmatter
Metadaten
Titel
Computational Partial Differential Equations
verfasst von
Hans Petter Langtangen
Copyright-Jahr
2003
Verlag
Springer Berlin Heidelberg
Electronic ISBN
978-3-642-55769-9
Print ISBN
978-3-642-62811-5
DOI
https://doi.org/10.1007/978-3-642-55769-9