“…One of the most popular approaches undertaken is the development of sophisticated finite element packages like FEniCS/Dolfin [4,30], deal.II [3,9], Firedrake [35], LibMesh [25], and MOOSE [21] which provide application scientists the necessary scientific tools to quickly address their specific needs. Alternatively, stand alone finite element computational frameworks built on top of parallel linear algebra libraries like PETSc [7,8] may need to be developed to address specific technical problems such as enforcing maximum principles in subsurface flow and transport modeling [14,15,31] or modeling atmospheric and other geophysical phenomena [13,32], all of which could require field-scale or even global-scale resolutions. As scientific problems grow increasingly complex, the software and algorithms used must be fast, scalable, and efficient across a wide range of hardware architectures and scientific applications, and new algorithms and numerical discretizations may need to be introduced.…”