I’m experimenting with how to create the easiest possible route for FEniCS users to get FEniCS onto their systems. My current bet is on Docker. Docker images have existed for FEniCS for about a year now but haven’t been advertised hard before due to the perceived complexity. I recently figured out it’s really not that complex but still complex enough that most users (?) would be reluctant to try it out.

However, now there’s a simple way to use FEniCS with Docker on any operating system. To get started, install Docker┬áthen run this “one-click install” of FEniCS:

curl -s | sh

This will download and install a script aptly named fenicsproject. This script can then be used to run FEniCS Docker sessions, for example

fenicsproject run

Or run with a specific image:

fenicsproject run dev

Or create a persistent session/container, then (re)start it:

fenicsproject init myproject [image]

fenicsproject start myproject

We want the installation process/experience to be as simple/pleasant as possible. Can it be improved – feedback welcome!


Recent Posts

Recent Comments


logg Written by:

Anders Logg is Professor of Computational Mathematics at Chalmers University of Technology. His research interests are adaptive finite element methods, high-level automating software systems for solution of PDE, domain-specific languages and compilers in scientific computing, and applications in biomedicine, general relativity, and architecture. Logg is head of the unit for Computational Mathematics and excellence profile leader within Chalmers Area of Advance the Built Environment. He is director of the Swedish Network for Mathematics in Industry and member of the EMS Applied Mathematics Committee and the Swedish National Committee for Mathematics. He is co-founder and a core developer of the FEniCS Project, a leading open-source software for automated solution of PDE. Logg works part-time as scientific advisor to Fraunhofer-Chalmers Centre and Simula Research Laboratory.

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *