Hermes2D hp-FEM & hp-DG library
Top ↑
Top ↑
Top ↑
Top ↑
Top ↑
Hermes is being developed by a community around the hp-FEM group at the University of West Bohemia and the University of Nevada, Reno (UNR). Everybody is welcome to contribute.
Each successful contributor becomes a co-author of the library.
The code is distributed under the GNU Lesser General Public License (LGPL).
For bug tracking, we very much like Github's issues.
Top ↑
1. Overview
Quick description
Hermes2D 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.
Highlights of Hermes capabilities
- mathematical point of view
- L2, H1, HCurl, HDiv Sobolev spaces approximation with element-wise polynomial degree up to 10
- Hanging nodes of arbitrary order
- Multimesh = assembling over component-specific meshes without projections or interpolations in multiphysics problems
- Time-adaptive capabilities with a large number (~30) of pre-implemented Runge-Kutta methods
- Coupled problems solved together with hp-DG and hp-FEM
- Adaptivity based on reference solution and local projections
- Calculations with physical quantities defined in different subdomains
- implementation point of view
- OpenMP parallelization
- Unified library for handling both real and complex problems using advanced C++ templating
- Own OpenGl based visualization & VTK outputs of meshes, spaces, solutions
- Division of the library's code into easy-to-manage namespaces
- XML save / load of the most important classes using provided XML schemas
- Well arranged doxygen documentation
- Exception safe API
2. Current release
Hermes 2.0 released on February 19th, 2013
- Rapid speedup of assembling and I/O
- Cleaner, well-documented code
- New way of testing, memory-leaks detection, speed optimizations
- Exception-safe API, bugfixes, etc..
3. Download
1. Get git (the best version-control there is)
2. Clone the library repository
- Execute "git clone git@github.com:hpfem/hermes.git"
- How: http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository
- You can also browse through the repository at
4. Getting Started & Installation
Top ↑5. Library documentation
(open in new tabs)
Top ↑
- There is the common code's documentation
- Linear algebra, I/O, time measurement
- Mixin classes, utility classes
- ...
- And there is the 2d specific documentation
- hp-FEM assembling
- Adaptivity algorithms
- Nonlinear solvers
- ...
6. Tutorial & Examples
- Clone the repositories:
- Run "git clone git@github.com:hpfem/hermes-tutorial.git"
- Run "git clone git@github.com:hpfem/hermes-examples.git"
- Browse the repositories online:
- Browse online through the extensive documentation :
7. Get news & collaborate
Get news & collaborate
Hermes has an active User's Group where questions get answered quickly.Hermes is being developed by a community around the hp-FEM group at the University of West Bohemia and the University of Nevada, Reno (UNR). Everybody is welcome to contribute.
Each successful contributor becomes a co-author of the library.
The code is distributed under the GNU Lesser General Public License (LGPL).
For bug tracking, we very much like Github's issues.
Hermes 3D - legacy code
Hermes 3D is a legacy code whose development is suspended, but it will become our focus in the forthcoming year 2013.
Latest News
-
Feburary 2013: New Hermes website, documentation & more
- Visit the site
-
Feburary 2013: Hermes 2.0 released
- Available from the Github repository
-
2013: In 2013, we prepare three international conferences:
- FEMTEC 2013
- AMTEE/CPEE
- ISTET
- August 2012: Presentation of hp-DG, Butcher's tables & adaptive time stepping at Moselle seminar.
- August 2012: Presentation of NCLab at Moselle seminar.
- June 2012: Presentation of Hermes: hp-DG & hp-FEM coupling, Butcher's tables & adaptive time stepping at ESCO 2012.
- June 2012: Presentation of NCLab at ESCO 2012.
- April 2012: Presentation of Hermes: hp-DG & hp-FEM coupling, Butcher's tables & adaptive time stepping at SCA 2012.
- April 2012: Presentation of Hermes modules in NCLab at SCA 2012.
- March 2012: First Hermes2D modules developed.
- January 2012: Hermes2D parallelized.
- November 2011: Abstract Submission for ESCO 2012 Open,
- September 2011: Hermes Version 1.0 Released! Read more here.
- August 2011: The next ESCO 2012 will be organized by FEMhub Inc.
- July 2011: Hermes was presented at invited lectures (Erlangen, Rome, INRIA). Several new people migrated from Comsol to Hermes mostly to use hp-adaptivity with dynamical meshes for transient problems.
- June, 2011: Templating of Hermes2D in progress. The goal is to have only one version of the library (not real and complex versions).
- May 9 -13, 2011: FEMTEC 2011 takes place.
Idaho National Laboratory (INL) grant to explore the potential of adaptive multimesh hp-FEM for nuclear fuel performance analysis.
Major DoE grant for advanced multiphysics computer simulations of nuclear reactor processes in Nevada News.












