Firedrake is an automated system for the solution of partial differential equations using the finite element method (FEM). Firedrake uses sophisticated code generation to provide mathematicians, scientists, and engineers with a very high productivity way to create sophisticated high performance simulations.


  • Expressive specification of any PDE using the Unified Form Language from the FEniCS Project.
  • Sophisticated, programmable solvers through seamless coupling with PETSc.
  • Triangular, quadrilateral, and tetrahedral unstructured meshes.
  • Layered meshes of triangular wedges or hexahedra.
  • Vast range of finite element spaces.
  • Sophisticated automatic optimisation, including sum factorisation for high order elements, and vectorisation.
  • Geometric multigrid.
  • Customisable operator preconditioners.
  • Support for hydridisation, and HDG methods.