Hermes hp-FEM & hp-DG Library
Hermes is a C++ library for rapid development of adaptive hp-FEM / hp-DG solvers. Novel hp-adaptivity algorithms help solve a large variety of problems ranging from ODE and stationary linear PDE to complex time-dependent nonlinear multiphysics PDE systems.
Hermes version 3.1 (bugfix release) has been released.
It contains the 3.0 features, such as DG limiters, Taylor L2 shapeset, MATIO import / export of algebraic structures, as well as lots of optimizations, both CPU-related, and memory-related.
This is primarily a bugfix, stable release, with all examples, tutorials, documentation etc.
See the section Download below for download.
git clone https://github.com/hpfem/hermes.git
git clone https://github.com/hpfem/hermes-tutorial.git
git clone https://github.com/hpfem/hermes-examples.git
Windows prebuilt dependencies and libraries
git clone https://github.com/l-korous/hermes-windows.git
Debian package download
Instructions for building and using Hermes on Windows
- Tutorial & Examples:
- Doxygen Documentation:
- L2, H1, HCurl, HDiv Sobolev spaces, polynomial degree up to 10
- Hanging nodes of arbitrary order
- Multimesh: component-specific meshes w/o projections or interpolations
- Time-adaptivity with multitude of pre-implemented Runge-Kutta methods
- Coupled problems solved together with hp-DG and hp-FEM
- hp-Adaptivity based on reference solution and local projections
|Space-time adaptivity||Dynamical meshes||Curved elements||Adaptive multimesh|
|See more in the Gallery.|
- OpenMP parallelization
- C++ templates for unified handling of real and complex problems
- Own OpenGL visualization & VTK outputs of meshes, spaces, solutions
- User-friendly written easy-to-grasp code
- XML, BSON save / load of the most important classes
- Solvers interfaces: UMFPACK, PARALUTION, PETSc, MUMPS, …
- GMSH, ExodusII mesh formats
- Matlab, MatrixMarket matrix exports
- Well arranged doxygen documentation
- Exception safe API