Automated Solution of Differential Equations by the Finite Element Method

The FEniCS Book

  • Anders Logg
  • Kent-Andre Mardal
  • Garth Wells

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
    9. Johan Hoffman, Johan Jansson, Cem Degirmenci, Niclas Jansson, Murtazo Nazarov
      Pages 339-361
    10. Johan Hake, Kent-Andre Mardal
      Pages 363-381
  5. Applications

    1. Front Matter
      Pages 383-383
    2. Andy R. Terrel, L. Ridgway Scott, Matthew Gregg Knepley, Robert C. Kirby, Garth N. Wells
      Pages 385-397
    3. Kristian Valen-Sendstad, Anders Logg, Kent-Andre Mardal, Harish Narayanan, Mikael Mortensen
      Pages 399-420
    4. Mikael Mortensen, Kent-Andre Mardal, Hans Petter Langtangen
      Pages 421-440
    5. Kristian Valen-Sendstad, Kent-Andre Mardal, Anders Logg
      Pages 441-454
    6. Susanne Støle-Hentschel, Svein Linge, Alf Emil Løvgren, Kent-Andre Mardal
      Pages 455-470
    7. Nuno D. Lopes, Pedro J. S. Pereira, Luís Trabucho
      Pages 471-504
    8. Kristian B. Ølgaard, Garth N. Wells
      Pages 505-524
    9. Johan Hoffman, Johan Jansson, Niclas Jansson, Claes Johnson, Rodrigo Vilela De Abreu
      Pages 543-552
    10. Mehdi Nikbakht, Garth N. Wells
      Pages 571-583
    11. Lyudmyla Vynnytska, Stuart R. Clark, Marie E. Rognes
      Pages 585-600
    12. Hans Joachim Schroll
      Pages 601-609
    13. Evan Lezar, David B. Davidson
      Pages 629-642
    14. Kent-Andre Mardal, Joachim Berdal Haga
      Pages 643-655
  6. Back Matter
    Pages 673-723

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