Solving PDEs in Python
The Simula SpringerBriefs on Computing aims to provide introductions to select areas of research in computing. Each volume aims to provide an introduction to, and overview over, research fields that can otherwise be inaccessible. This is the third volume in this series.
Solving PDEs in Python - The FEniCS Tutorial I, by Hans Petter Langtangen and Anders Logg, offers a concise and gentle introduction to finite element programming in Python based on the popular FEniCS software library. Using a series of examples, including the Poisson equation, the equations of linear elasticity, the incompressible Navier–Stokes equations, and systems of nonlinear advection–diffusion–reaction equations, it guides readers through the essential steps to quickly solving a PDE in FEniCS, such as how to define a finite variational problem, how to set boundary conditions, how to solve linear and nonlinear systems, and how to visualize solutions and structure finite element Python programs.
This book is open access under a CC BY license.
About the Authors
Hans Petter Langtangen is a professor of computer science at the University of Oslo. He has formerly been a professor of mechanics and is now the director of a Norwegian Center of Excellence: "Center for Biomedical Computing", at Simula Research Laboratory. Langtangen has written several books, and published over 100 scientific publications on topics ranging from physics and medicine to design of software systems. He has also developed open source and commercial software systems for computational sciences.
Anders Logg is a professor of mathematical sciences and acting director for the Area of Advance Building Futures at Chalmers University of Technology. His research is concerned with the numerical solution of partial differential equations, in particular adaptive finite element methods and the development of efficient computer programs for automated multiphysics simulation. He is one of the founders and core developers of FEniCS, an international project for the development of free software for automated solution of differential equations.