Hermes Project

Last updated
Stable release
3.1 / 2015;9 years ago (2015)
Operating system Linux, Unix, Windows, Mac OS X
Available inC++, Python
Type Scientific simulation software
License GNU Lesser General Public License
Website www.hpfem.org/hermes/

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

Contents

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. [3]

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.

See also

Related Research Articles

Numerical methods for partial differential equations is the branch of numerical analysis that studies the numerical solution of partial differential equations (PDEs).

The boundary element method (BEM) is a numerical computational method of solving linear partial differential equations which have been formulated as integral equations, including fluid mechanics, acoustics, electromagnetics, fracture mechanics, and contact mechanics.

<span class="mw-page-title-main">Mesh generation</span> Subdivision of space into cells

Mesh generation is the practice of creating a mesh, a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form a simplicial complex. Usually the cells partition the geometric input domain. Mesh cells are used as discrete local approximations of the larger domain. Meshes are created by computer algorithms, often with human guidance through a GUI, depending on the complexity of the domain and the type of mesh desired. A typical goal is to create a mesh that accurately captures the input domain geometry, with high-quality (well-shaped) cells, and without so many cells as to make subsequent calculations intractable. The mesh should also be fine in areas that are important for the subsequent calculations.

<span class="mw-page-title-main">Computational electromagnetics</span> Branch of physics

Computational electromagnetics (CEM), computational electrodynamics or electromagnetic modeling is the process of modeling the interaction of electromagnetic fields with physical objects and the environment using computers.

<span class="mw-page-title-main">Meshfree methods</span> Methods in numerical analysis not requiring knowledge of neighboring points

In the field of numerical analysis, meshfree methods are those that do not require connection between nodes of the simulation domain, i.e. a mesh, but are rather based on interaction of each node with all its neighbors. As a consequence, original extensive properties such as mass or kinetic energy are no longer assigned to mesh elements but rather to the single nodes. Meshfree methods enable the simulation of some otherwise difficult types of problems, at the cost of extra computing time and programming effort. The absence of a mesh allows Lagrangian simulations, in which the nodes can move according to the velocity field.

In the numerical solution of partial differential equations, a topic in mathematics, the spectral element method (SEM) is a formulation of the finite element method (FEM) that uses high-degree piecewise polynomials as basis functions. The spectral element method was introduced in a 1984 paper by A. T. Patera. Although Patera is credited with development of the method, his work was a rediscovery of an existing method

<span class="mw-page-title-main">Finite element method</span> Numerical method for solving physical or engineering problems

The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the traditional fields of structural analysis, heat transfer, fluid flow, mass transport, and electromagnetic potential.

hp-FEM is a generalization of the finite element method (FEM) for solving partial differential equations numerically based on piecewise-polynomial approximations. hp-FEM originates from the discovery by Barna A. Szabó and Ivo Babuška that the finite element method converges exponentially fast when the mesh is refined using a suitable combination of h-refinements and p-refinements .The exponential convergence of hp-FEM has been observed by numerous independent researchers.

Smoothed finite element methods (S-FEM) are a particular class of numerical simulation algorithms for the simulation of physical phenomena. It was developed by combining meshfree methods with the finite element method. S-FEM are applicable to solid mechanics as well as fluid dynamics problems, although so far they have mainly been applied to the former.

Weakened weak form is used in the formulation of general numerical methods based on meshfree methods and/or finite element method settings. These numerical methods are applicable to solid mechanics as well as fluid dynamics problems.

deal.II is a free, open-source library to solve partial differential equations using the finite element method. The current release is version 9.5, released in July 2023. The founding authors of the project — Wolfgang Bangerth, Ralf Hartmann, and Guido Kanschat — won the 2007 J. H. Wilkinson Prize for Numerical Software for deal.II. However, it is a worldwide project with around a dozen "Principal Developers", but over the years several hundred people have contributed substantial pieces of code or documentation to the project.

Fluid motion is governed by the Navier–Stokes equations, a set of coupled and nonlinear partial differential equations derived from the basic laws of conservation of mass, momentum and energy. The unknowns are usually the flow velocity, the pressure and density and temperature. The analytical solution of this equation is impossible hence scientists resort to laboratory experiments in such situations. The answers delivered are, however, usually qualitatively different since dynamical and geometric similitude are difficult to enforce simultaneously between the lab experiment and the prototype. Furthermore, the design and construction of these experiments can be difficult, particularly for stratified rotating flows. Computational fluid dynamics (CFD) is an additional tool in the arsenal of scientists. In its early days CFD was often controversial, as it involved additional approximation to the governing equations and raised additional (legitimate) issues. Nowadays CFD is an established discipline alongside theoretical and experimental methods. This position is in large part due to the exponential growth of computer power which has allowed us to tackle ever larger and more complex problems.

MoFEM is an open source finite element analysis code developed and maintained at the University of Glasgow. MoFEM is tailored for the solution of multi-physics problems with arbitrary levels of approximation, different levels of mesh refinement and optimised for high-performance computing. MoFEM is the blend of the Boost MultiIndex containers, MOAB and PETSc. MoFEM is developed in C++ and it is open-source software under the GNU Lesser General Public License (GPL).

<span class="mw-page-title-main">GetFEM++</span>

GetFEM++ is a generic finite element C++ library with interfaces for Python, Matlab and Scilab. It aims at providing finite element methods and elementary matrix computations for solving linear and non-linear problems numerically. Its flexibility in choosing among different finite element approximations and numerical integration methods is one of its distinguishing characteristics.

<span class="mw-page-title-main">Agros2D</span>

Agros2D is an open-source code for numerical solutions of 2D coupled problems in technical disciplines. Its principal part is a user interface serving for complete preprocessing and postprocessing of the tasks. The processor is based on the library Hermes containing the most advanced numerical algorithms for monolithic and fully adaptive solution of systems of generally nonlinear and nonstationary partial differential equations (PDEs) based on hp-FEM. Both parts of the code are written in C++.

Model order reduction (MOR) is a technique for reducing the computational complexity of mathematical models in numerical simulations. As such it is closely related to the concept of metamodeling, with applications in all areas of mathematical modelling.

p-FEM or the p-version of the finite element method is a numerical method for solving partial differential equations. It is a discretization strategy in which the finite element mesh is fixed and the polynomial degrees of elements are increased such that the lowest polynomial degree, denoted by , approaches infinity. This is in contrast with the "h-version" or "h-FEM", a widely used discretization strategy, in which the polynomial degrees of elements are fixed and the mesh is refined such that the diameter of the largest element, denoted by approaches zero.

<span class="mw-page-title-main">FEATool Multiphysics</span>

FEATool Multiphysics is a physics, finite element analysis (FEA), and partial differential equation (PDE) simulation toolbox. FEATool Multiphysics features the ability to model fully coupled heat transfer, fluid dynamics, chemical engineering, structural mechanics, fluid-structure interaction (FSI), electromagnetics, as well as user-defined and custom PDE problems in 1D, 2D (axisymmetry), or 3D, all within a graphical user interface (GUI) or optionally as script files. FEATool has been employed and used in academic research, teaching, and industrial engineering simulation contexts.

<span class="mw-page-title-main">MFEM</span> Open-source C++ library

MFEM is an open-source C++ library for solving partial differential equations using the finite element method, developed and maintained by researchers at the Lawrence Livermore National Laboratory and the MFEM open-source community on GitHub. MFEM is free software released under a BSD license.

References

  1. P.Solin, K. Segeth, I. Dolezel: Higher-Order Finite Element Methods, CRC Press, 2003.
  2. I. Babuska, B.Q. Guo: The h, p and h-p version of the finite element method: basis theory and applications, Advances in Engineering Software, Volume 15, Issue 3-4, 1992.
  3. L. Dubcova, P. Solin, J. Cerveny, P. Kus: Space and Time Adaptive Two-Mesh hp-FEM for Transient Microwave Heating Problems, submitted to Electromagnetics