The FEniCS Project Version 1.5

Martin Alnæs, Jan Blechta, Johan Hake, August Johansson, Benjamin Kehlet, Anders Logg, Chris Richardson, Johannes Ring, Marie E Rognes, Garth N Wells


The FEniCS Project is a collaborative project for the development of
innovative concepts and tools for automated scientific computing,
with a particular focus on the solution of differential equations by
finite element methods. The FEniCS Projects software consists of a
collection of interoperable software components, including DOLFIN,
FFC, FIAT, Instant, UFC, UFL, and mshr. This note describes the new
features and changes introduced in the release of FEniCS
version 1.5.

Full Text:



D. N. Arnold and A. Logg. Periodic table of the finite elements. SIAM News, 2014.

D. N. Arnold, R. S. Falk, and R. Winther. Finite element exterior calculus, homological techniques,

and applications. Acta numerica, 15:1–155, 2006.

S. Balay, W. D. Gropp, L. C. McInnes, and B. F. Smith. Efficient management of parallelism in object oriented numerical software libraries. In E. Arge, A. M. Bruaset, and H. P. Langtangen, editors, Modern Software Tools in Scientific Computing, pages 163–202. Birkhäuser Press, 1997.

S. Balay, S. Abhyankar, M. F. Adams, J. Brown, P. Brune, K. Buschelman, V. Eijkhout, W. D. Gropp, D. Kaushik, M. G. Knepley, L. C. McInnes, K. Rupp, B. F. Smith, and H. Zhang. PETSc users manual. Technical Report ANL-95/11 - Revision 3.5, Argonne National Laboratory, 2014a. URL

S. Balay, S. Abhyankar, M. F. Adams, J. Brown, P. Brune, K. Buschelman, V. Eijkhout, W. D. Gropp, D. Kaushik, M. G. Knepley, L. C. McInnes, K. Rupp, B. F. Smith, and H. Zhang. PETSc Web page., 2014b. URL

Y. Chen, T. A. Davis, W. W. Hager, and S. Rajamanickam. Algorithm 887: Cholmod, supernodal sparse cholesky factorization and update/downdate. ACM Trans. Math. Softw., 35(3):22:1–22:14, Oct. 2008. ISSN 0098-3500. doi: 10.1145/1391989.1391995. URL 1391989.1391995.

C. Chevalier and F. Pellegrini. Pt-scotch: A tool for efficient parallel graph ordering. In 4th International Workshop on Parallel Matrix Algorithms and Applications (PMAA’06), IRISA, Rennes, France, Sept. 2006.

L. D. Dalcin, R. R. Paz, P. A. Kler, and A. Cosimo. Parallel distributed computing using python. Advances in Water Resources, 34(9):1124 – 1139, 2011. ISSN 0309-1708. doi: 1016/j.advwatres.2011.04.013. URL S0309170811000777. New Computational Methods and Software Tools.

T. A. Davis. Algorithm 832: Umfpack v4.3—an unsymmetric-pattern multifrontal method. ACM Trans. Math. Softw., 30(2):196–199, June 2004. ISSN 0098-3500. doi: 10.1145/992200.992206. URL

L. Fousse, G. Hanrot, V. Lefèvre, P. Pélissier, and P. Zimmermann. MPFR: A multiple-precision binary floating-point library with correct rounding. ACM Transactions on Mathematical Software, 33(2):13:1–13:15, June 2007. URL

T. Granlund and the GMP development team. GNU MP: The GNU Multiple Precision Arithmetic

Library, 6.0.0 edition, 2014.

G. Guennebaud, B. Jacob, et al. Eigen v3., 2015.

P. Hénon, P. Ramet, and J. Roman. PaStiX: A High-Performance Parallel Direct Solver for Sparse Symmetric Definite Systems. Parallel Computing, 28(2):301–321, Jan. 2002.

V. Hernandez, J. E. Roman, and V. Vidal. SLEPc: A scalable and flexible toolkit for the solution of eigenvalue problems. ACM Trans. Math. Software, 31(3):351–362, 2005.

M. A. Heroux, R. A. Bartlett, V. E. Howle, R. J. Hoekstra, J. J. Hu, T. G. Kolda, R. B. Lehoucq, K. R. Long, R. P. Pawlowski, E. T. Phipps, A. G. Salinger, H. K. Thornquist, R. S. Tuminaro, J. M. Willenbring, A. Williams, and K. S. Stanley. An overview of the trilinos project. ACM Trans. Math. Softw., 31(3):397–423, 2005. ISSN 0098-3500. doi:

A. Johansson, M. G. Larson, and A. Logg. High order cut finite element methods for the Stokes problem., 2015.

G. Karypis and V. Kumar. MeTis: Unstructured Graph Partitioning and Sparse Matrix Ordering System, Version 4.0., 2009.

A. Plaza and G. Carey. Local refinement of simplicial grids based on the skeleton. Applied Numerical Mathematics, 32:195–218, 2000.

C. N. Richardson and G. N. Wells. Parallel scaling of DOLFIN on ARCHER.,, 2015. URL

S. Rush and H. Larsen. A practical algorithm for solving dynamic membrane equations. IEEE Trans Biomed Eng, 25(4):389–392, Jul 1978. doi: 10.1109/TBME.1978.326270. URL http://dx.

B. Schling. The Boost C++ Libraries. XML Press, 2011. ISBN 0982219199, 9780982219195.

H. Si. Tetgen, a delaunay-based quality tetrahedral mesh generator. ACM Trans. Math. Softw., 41 (2):11:1–11:36, Feb. 2015. ISSN 0098-3500. doi: 10.1145/2629697. URL 10.1145/2629697.

J. Sundnes, R. Artebrant, O. Skavhaug, and A. Tveito. A second-order algorithm for solving dynamic cell membrane equations. IEEE Trans Biomed Eng, 56(10):2546–2548, Oct 2009. doi: 10.1109/TBME.2009.2014739. URL

SymPy Development Team. SymPy: Python library for symbolic mathematics, 2014. URL http: //

The CGAL Project. CGAL User and Reference Manual. CGAL Editorial Board, 4.6 edition, 2015. URL

The HDF Group. Hierarchical data format, version 5, 2015.

S. van der Walt, S. Colbert, and G. Varoquaux. The NumPy Array: A structure for efficient numerical computation. Computing in Science Engineering, 13(2):22–30, March 2011. ISSN 1521- 9615.