Hermes Project

Hermes2D (Higher-order modular finite element system) is a C++/Python library of algorithms for rapid development of adaptive hp-FEM solvers. hp-FEM is a modern version of the finite element method (FEM) that is capable of extremely fast, exponential convergence.

Main features of the library
The Hermes library can be used for a large variety of PDE problems ranging from linear elliptic equations to time-dependent nonlinear multi-physics PDE systems arising in elasticity, structural mechanics, fluid mechanics, acoustics, electromagnetics, and other fields of computational engineering and science. The Hermes libraries are available for download under the GNU Lesser General Licence Terms as a means of providing open-source software for the development of Computational Scientific Research. Hermes implementation of adaptive hp-FEM for improved convergence and accuracy in non-linear systems is featured in the software. The software and underlying numerical methods are developed by an international hp-FEM group at the University of Nevada at Reno (United States), University of West Bohemia in Plzeň and Institute of Thermomechanics in Prague (Czech Republic). Hermes is based on space- and space-time adaptive multi-mesh hp-FEM algorithms working with highly irregular meshes. The mesh generation is designed using arbitrary-level hanging nodes.

Documentation
The Documentation for the Hermes libraries is an extensive set of instructions, information and tutorials related to the use of Hermes and the Finite Element Method. Hermes includes instructions for the installation of collaborating Third Party Libraries (TPLs) as well as an introduction to the mathematics behind the hp-FEM method and detailed instructions on the use and modification of the code. Any user who wished to add to the capabilities of Hermes can find instructions on how to submit their work directly to the authors via GitHub. The documentation includes tutorials for the download and compilation of Hermes on multiple operating systems, as well as example problems and tests for each software package.