From The FEniCS project

DOLFIN is the C++/Python interface of FEniCS, providing a consistent PSE (Problem Solving Environment) for ordinary and partial differential equations.

Contents

Features

  • Simple, consistent and intuitive object-oriented API in C++ or Python
  • Automatic and efficient evaluation of finite element variational forms through FFC or SyFi
  • Automatic and efficient assembly of linear systems
  • General families of finite elements, including arbitrary order continuous and discontinuous Lagrange finite elements, BDM elements, RT elements, BDFM elements, Nedelec elements and Crouzeix-Raviart
  • Arbitrary mixed elements as combination of basic elements, including for example Taylor-Hood
  • Discontinuous Galerkin methods including jump terms, averages, and integrals over interior mesh facets
  • High-performance linear algebra through uBLAS, PETSc, Trilinos and MTL4 (experimental) with simple C++ and Python wrappers
  • Parallel assembly and solve
  • Simplex meshes in 1D, 2D (triangles), and 3D (tetrahedra), including adaptive mesh refinement
  • Multi-adaptive mcG(q)/mdG(q) and mono-adaptive cG(q)/dG(q) ODE solvers
  • Support for a range of input/output formats, including DOLFIN XML, VTK, Octave, MATLAB, Diffpack, Exodus II
Image:dolfin-small.png

Main authors

DOLFIN is developed and maintained by Anders Logg and Garth N. Wells with the help of many others.

DOLFIN was originally developed in 2002 by Johan Hoffman and Anders Logg. Other significant contributors (with more than 100 changesets) include Johan Jansson, Johan Hake, Ola Skavhaug, Kent-Andre Mardal, Johannes Ring, Martin Sandve Alnaes and Benjamin Kehlet.

License

DOLFIN is licensed under the GNU LGPL.

Installation

Chances are you can simply use our prebuilt packages for Debian and Ubuntu available here.

For other operating systems, read on below.

Installing DOLFIN on Debian-based GNU/Linux systems

Installing DOLFIN on Mac OS X

Installing DOLFIN on Windows (Experimental)

DOLFIN dependencies (Suitable for modern, Debian-based GNU/Linux systems)

A detailed guide to installing DOLFIN (Suitable for older GNU/Linux or UNIX systems)

Howtos, third party manuals

Detailed installation notes (Notes from a new user)

Meshes

A collection of meshes for DOLFIN can be found here.

Personal tools