Project Status: Active – The project has reached a stable, usable state and is being actively developed. Build status Codecov Latest documentation

Elfel.jl: Extensible library for finite element methods

G. adjective. different, like something else, unique, unparalled


This package provides support for the development of Finite Element Method applications, especially in continuum mechanics. Mixed methods with cooperating finite element spaces are supported. High performance is one of the focus points. Check out the tutorials to get a feel for the functionality of this package.


The library relies on mesh support from the following suite of small mesh-management packages: MeshCore, MeshSteward.


Clone the repository, and execute

using Pkg; Pkg.activate("."); Pkg.instantiate()

in the Elfel folder.

The user can either use/import individual functions from Elfel like so:

using Elfel.FElements: FEH1_T6, FEH1_T3, refshape, Jacobian

or all exported symbols maybe made available in the user's context as

using Elfel.Exports

The examples folder can be explored by simply running the files with include().


  • 07/15/2020: Implemented geometry carrier for finite elements that are not isoparametric.
  • 07/11/2020: Tutorial structure added.
  • 07/06/2020: Exports have been added to facilitate use of the library.
  • 07/05/2020: Vector finite element spaces tested.
  • 06/26/2020: L2 elements implemented, Stokes problem example.
  • 06/19/2020: Example of a mixed method for the discrete Stokes problem added.
  • 05/25/2020: Firmed up the concept of iterators for access to element and quadrature point data.