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 (FE), Finite Volumes (FV), and also Finite Differences (FD).
DUNE is free software licensed under the GPL (version 2) with a so called “runtime exception” (see license). This licence is similar to the one under which the libstdc++ libraries are distributed. Thus it is possible to use DUNE even in proprietary software.
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 very different implementations of the same concept using a common interface at a very low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications.
Particular highlights are
- a generic grid interface, allowing to interface a range of very different grid implementations
- the Iterative Solver Template Library, featuring an algebraic multigrid preconditioner
- Highlevel interfaces for trial and test functions and generic discretization modules
- Python binding for the full grid interface and a flexible concept to provide bindings for user modules.
Virtual DUNE/PDELab Course (March 8 - March 12, 2021)
The annual DUNE/PDELab course typically hosted by the Interdisciplinary Center for Scientific Computing in Heidelberg will be held virtually this year. It is scheduled for March 8 - March 12, 2021.
This one week course provides an introduction to the most important DUNE modules and especially to DUNE-PDELab. At the end the attendees will have a solid knowledge of the simulation workflow from mesh generation and implementation of finite element and finite volume methods to visualization of the results. Topics covered are the solution of stationary and time-dependent problems, as well as local adaptivity, the use of parallel computers and the solution of non-linear PDEs and systems of PDEs.
March 8 - March 12, 2020
The application deadline is February 21, 2021. For further information, see the course homepage.
Dune Developer online Meeting Jan. 8, 19, 22, 2020
We are holding a developer meeting on January 8, 19, and 22, 2021. It will be an online meeting using a private JitSi instance; the password is shared on the Dune devel mailing list. Developers and contributors are invited to register and make proposals on the meeting page.
Sorry for the short notice period, the overall situation and the holiday season made the coordination more difficult. If questions remain, do not hesitate to write an email to the mailing list or directly to Christoph Grüninger or Simon Praetorius .
Install Dune modules from PyPI
Dune modules can now be installed via
pip using the Python package
index (PyPI). The module and the modules it depends on are downloaded, build, and
installed either into the system or into a python virtual environment (the latter
might be of more interest as it is an option to install Dune without root privileges).
This could also be of interest for C++ users of Dune as Python bindings are not mandatory.
dunecontrol can be used the same way as with a system installation so that
installed and source modules can easily be used together.
More details on how to add this installation option to existing Dune modules is
available here. Details will be added to the
The Dune book is published
Springer has published a book about Dune. You can get it at their online store. The book explains the ideas and concepts underlying Dune, shows the main interfaces, and discusses several complete examples. We hope that it will be helpful to beginners and experienced Dune users alike.
Dune 2.7.1 Released
We released DUNE
2.7.1. You can download the tarballs or checkout the
tag via Git.
The release covers the core modules (dune-common, dune-geometry, dune-grid, dune-grid-howto, dune-istl, dune-localfunctions).
Further we released the staging modules dune-uggrid, dune-typetree, and dune-functions in the compatible version 2.7.1.