"Hans Petter Langtangen's spirit and passion for computational science, education, and interdisciplinary collaboration continues to manifest through a text that is lively, conversational, informative, approachable, and interactive." (Akil Narayan, SIAM Review, Vol. 62 (4), 2020)
"Introduction to Numerical Methods for Variational Problems is well-suited for undergraduate or beginning graduate students in applied mathematics, physics, or engineering that want to begin to learn about the numerical analysis of or scientific computing with PDEs. ... Introduction to Numerical Methods for Variational Problems seems to me like a very good place to start." (MAA Reviews, March 5, 2020)
Preface.- Quick overview of the finite element method.- Function approximation by global functions.- Function approximation by finite elements.- Variational formulations with global elements.- Variational formulations with finite elements.- Time-dependent variational forms.- Variational forms for systems of PDEs.- Nonlinear Problems.- Variational forms for linear systems.- Useful formulas.
Hans Petter Langtangen (1962 - 2016) was a professor of computer science at the University of Oslo. He was formerly a professor of mechanics and was the Director of "Center for Biomedical Computing", a Norwegian Center of Excellence at the Simula Research Laboratory in Oslo. Langtangen has more than 100 scientific publications, including journal papers and many books, e.g., the bestseller TCSE 6 "A Primer on Scientific Programming with Python" (editions 1 - 5). He has also developed open source and commercial software systems for computational sciences.”
Kent-Andre Mardal is a professor of mechanics at the University of Oslo and an adjunct research scientist at Simula Research Laboratory. He has published more than 80 scientific publications, including journal papers, one co-authored book and the co-edited the book about the FEniCS project, for which he was a core developer for many years.
This textbook teaches finite element methods from a computational point of view. It focuses on how to develop flexible computer programs with Python, a programming language in which a combination of symbolic and numerical tools is used to achieve an explicit and practical derivation of finite element algorithms. The finite element library FEniCS is used throughout the book, but the content is provided in sufficient detail to ensure that students with less mathematical background or mixed programming-language experience will equally benefit. All program examples are available on the Internet.