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 (i.e. grids, solvers, …) using a common interface at a very low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications.
For many years, the power of the grid manager from the venerable UG finite element code has been available in Dune as the UGGrid grid implementation. For this, you had to build and install UG as a separate library, and dune-grid used it as an external dependencies.
Now, UG has always been much more than a grid data structure, but only the grid data structure was used in dune-grid. To make bugfixes and general maintenance of UG easier, we have now forked UG, and turned the result into a genuine Dune module called dune-uggrid. The new code has already seen considerable cleanup, and nontrivial bugfixes.
In the short run, there are very few changes for users of dune-grid. If you want to use UGGrid with the git master of dune-grid, you now have to install the dune-uggrid module instead of the entire UG software. If present, dunecontrol will find and build it just like any other module.
A one week Dune and Dune::Fem school will be hosted at the IANS/University of Stuttgart. The intended audience of the course are M.Sc. and PhD students.
The course will give an introduction to the Dune core modules including the Dune grid interface. It will then proceed to the discretization of PDEs with the Dune::Fem toolbox. Further topics include the simulation of stationary and transient problems, including essentials of mesh-adaptivity and parallel computing.
Dates: September 26 - 30, 2016 (Mo - Fr)
Registration: Participants should register until end of August (see course page below).
Fees: Workshop fees are 50 Euro in order to cover expenses for coffee breaks and course material.
Course venue: Institute for Applied Analysis and Numerical Simulation (IANS) Pfaffenwaldring 57, 70569 Stuttgart, Germany.
Further information and a registration form can be found at the course page http://www.ians.uni-stuttgart.de/events/dune-fem-school-2016.
We just finished the first half of this year’s Google Summer of Code program, called mid-term. It is used to evaluate both the mentors and the student for Google. Two projects show great progress, one did not take off and we had to fail the student:
- Xinyun’s grid with spline geometries reached a milestone, the B-spline and NURBS geometry interfaces are almost done. Checkout the screenshots with according surfaces. Usually we don’t see such smooth output with our methods. Blog: http://gsoc2016xinyun.blogspot.de Code repository: https://gitlab.dune-project.org/Xinyun.Li/dune-iga
- Michael’s Python bindings for the DUNE grid interface have progressed to far that a simple numerical scheme runs. Inspired by the cell-centered finite volume method described in the DUNE grid how-to, Michael re-implemented the scheme in Python using DUNE grids via his bindings. Blog: http://misg.github.io/ Code repository: https://gitlab.dune-project.org/michael.sghaier/dune-corepy
- The third project aiming to implement dynamic load-balancing for UGGrid saw no major development and we had to fail the student.