Distributed and Unified Numerics Environment (DUNE)
DUNE is a modular toolbox for solving PDEs with grid-based methods.
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations (PDEs) with grid-based methods. It supports the easy implementation of methods like Finite Elements, Discontinuous Galerkin, Finite Volumes, and Finite Differences.
The underlying idea of DUNE is to create slim interfaces allowing an efficient use of legacy and/or new libraries. Modern C++ programming techniques enable different implementations of the same concept, i.e. grids or solvers, using a common interface at a low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications.
DUNE developers are professors, graduate students, post-docs, or people working in industry (e.g. as freelancers or consultants), currently located in Germany, UK, and Norway. With DUNE being a scientific software, they all share a scientific education and background. But their background differs (Mathematics, Computer Science, and Physics) as well as their application area (flow through porous media, linear elasticity, computational fluid dynamics, electro-magnetism, …).
DUNE started with an inaugurating meeting in February 2002. People from different German research groups of Universities in Bonn, Freiburg, and Heidelberg shared a common interest: developing an clean, slim, and modern open source framework for the parallel solution of PDEs which would allow reusing existent legacy software via a common interface based on generic programming techniques.
DUNE's main principles
- Separation of data structures and algorithms by abstract interfaces. This provides more functionality with less code and ensures maintainability and extendability of the framework.
- Static polymorphism allows the compiler to do more optimizations, in particular function inlining, which in turn allows the interface to have very small functions without a severe performance penalty.
Distributed and Unified Numerics Environment (DUNE) 2016 Projects
Python bindings for the DUNE grid interfaceDUNE, the Distributed and Unified Numerics Environment, is a modular toolbox to solve partial differential equation with grid-based methods. Thus,...
Spline geometries for isogeometric analysisIsogeometric analysis is a finite element technique that allows to solve partial differential equations defined on spline surfaces. This is useful...