© 2012

Automated Solution of Differential Equations by the Finite Element Method

The FEniCS Book

  • Anders Logg
  • Kent-Andre Mardal
  • Garth Wells


  • Unique synthesis of theory and computer code

  • Takes readers from an introductory tutorial through to cutting-edge research in scientific computing

  • Demonstrates a modern software approach to solving problems spanning fluid flow, solid mechanics, electromagnetics and geophysics


Part of the Lecture Notes in Computational Science and Engineering book series (LNCSE, volume 84)

Table of contents

  1. Front Matter
    Pages I-XIII
  2. Hans Petter Langtangen
    Pages 1-73
  3. Methodology

    1. Front Matter
      Pages 75-75
    2. Robert C. Kirby, Anders Logg
      Pages 77-94
    3. Robert C. Kirby, Anders Logg, Marie E. Rognes, Andy R. Terrel
      Pages 95-119
    4. Robert C. Kirby, Kent-Andre Mardal
      Pages 121-132
    5. Robert C. Kirby, Anders Logg
      Pages 133-140
    6. Anders Logg, Kent-Andre Mardal, Garth N. Wells
      Pages 141-146
    7. Kristian B. Ølgaard, Garth N. Wells
      Pages 147-158
    8. Robert C. Kirby, Anders Logg
      Pages 159-162
    9. Robert C. Kirby, Matthew Gregg Knepley, Anders Logg, L. Ridgway Scott, Andy R. Terrel
      Pages 163-169
  4. Implementation

    1. Front Matter
      Pages 171-171
    2. Anders Logg, Garth N. Wells, Johan Hake
      Pages 173-225
    3. Anders Logg, Kristian B. Ølgaard, Marie E. Rognes, Garth N. Wells
      Pages 227-238
    4. Robert C. Kirby, Anders Logg
      Pages 239-246
    5. Ilmar M. Wilbers, Kent-Andre Mardal, Martin S. Alnæs
      Pages 257-272
    6. Martin Sandve Alnæs, Kent-Andre Mardal
      Pages 273-282
    7. Martin Sandve Alnæs, Anders Logg, Kent-Andre Mardal
      Pages 283-302
    8. Martin Sandve Alnæs
      Pages 303-338

About this book


This book is written by researchers and developers behind the FEniCS Project and explores an advanced, expressive approach to the development of mathematical software. The presentation spans mathematical background, software design and the use of FEniCS in applications. Theoretical aspects are complemented with computer code which is available as free/open source software. The book begins with a tutorial for readers who are new to the topic. Following the tutorial, chapters in Part I address fundamental aspects of the approach to automating the creation of finite element solvers. Chapters in Part II address the design and implementation of the FEnicS software. Chapters in Part III present the application of FEniCS to a wide range of applications, including fluid flow, solid mechanics, electromagnetics and geophysics.


Automated computing Code generation Domain-specific languages Finite element methods Scientific computing

Editors and affiliations

  • Anders Logg
    • 1
  • Kent-Andre Mardal
    • 2
  • Garth Wells
    • 3
  1. 1.Simula Research LaboratoryLysakerNorway
  2. 2.Simula Research LaboratoryUniversity of OsloLysakerNorway
  3. 3., Department of EngineeringUniversity of CambridgeCambridgeUnited Kingdom

Bibliographic information