Dune Developer Meeting 2026
Date and Location
The developer meeting is held on 29.09-01.10, 2026 at the Technische Universität Dresden.
Participants
TBD
Proposed topics
general
- SP: Packaging infrastructure of dune (various implementations: spack, pip, vcpkg, easybuild, debian; little overlap, python integration; dunecontrol redesign; duneproject update)
- Mailing list discussion:
- Existing efforts: Debian, OpenSuse, PyPi, Spack (
spack/dune-spack), EasyBuild (dune-easybuild), vcpkg (vcpkg-ports) - Proposal for central GitLab group for packaging recipes (
packaging/orpkg/) - Common patterns: naming, versioning (e.g., year-based instead of
2.x.x), module separation, Python bindings integration - Automation: generate Spack/EasyBuild recipes from PyPi packages; EasyBuild 2.8/2.9 exists but maintenance is difficult
- PyPi packaging automated on GitHub due to GitLab CI restrictions
- Integrate packaging into release pipeline and system tests
- Consider Common Package Specification (CPS) for future compatibility
- Existing efforts: Debian, OpenSuse, PyPi, Spack (
- Open Issues and Merge-Requests:
- core/dune-common#410 — pip installed module build fails
- core/dune-common#408 — [Python] failure with setuptools >= 80
- core/dune-common#401 — dunecontrol cannot read opts files created on Windows
- core/dune-common#390 — [python] PyPi Method from DUNE Website throws error on Debian Container
- core/dune-common#382 — DESTDIR not honored for Python
- core/dune-common#380 — Installation seems to fail due to python as a normal user
- core/dune-common#360 — dunecontrol does not manage installed modules correctly
- core/dune-common#358 — dune-common installs Python packages and fails
- core/dune-common#338 — [Python] Create Python bindings when Python package has different name to dune module
- core/dune-common#330 — [discussion] drop or simplify pip & venv magic during configure
- core/dune-common#256 — Installed packages causing cmake trouble for source build
- core/dune-common#247 — Overhaul of the Python-CMake integration
- core/dune-common#221 — Future direction of dunecontrol
- core/dune-common!1528 — Add BUILD_INTERFACE to paths registered on the package registry
- core/dune-common!958 — WIP: Change the way dune module versions are checked in cmake
- core/dune-common!892 — Draft: Replace the duneproject script with a more flexible template repository
- Mailing list discussion:
- SP: Tutorials/Examples for dune (how to get started with the various modules? simple problems solved with the core modules; developer documentation: e.g. how to write python bindings; what is the focus of the discretization modules: differences/similarities/design - this is more about improving the content of the documentation, not about the technical aspect of the documentation provider; can we use AI tools to improve the documentation; can we get some inspiration by other frameworks)
- Open Issues and Merge-Requests:
- core/dune-common#329 — Build requirements are not properly documented
- core/dune-localfunctions#10 — doxygen documentation is currently toatally useless
- staging/dune-functions!577 — [cmake] Use local MathJax version if available
- infrastructure/dune-website!553 — Draft: Introduce a new section for tutorials, and a first tutorial
- infrastructure/dune-website!603 — Draft: Improve the installation instructions
- Existing tutorial attempts (mostly discretization-specific):
- The DUNE Book
- dune-pdelab course
- AMDiS workshop
- dune-fem tutorial
- Core tutorial draft
- Documented examples in
staging/dune-functions - Current website tutorials page is sparse and lacks clear onboarding path
- Question: Where do new users start? Directly in a discretization module? I got feedback from researcher who wanted to try Dune, but didn’t know how to get started or which discretization module to choose for their purpose.
- External inspiration: Gridap tutorials
- Open Issues and Merge-Requests:
- SP: Community: My impression is that dune community is dying out. What can we do against this? GSoC redesign, Master/PhD projects, tasks for young students, early developers to contribute, merchandising (what happened to the new dune logo design?), Maybe we can apply for a DFG funded project or research group together? What about the software-infrastructure funding?
- Dune logo redesign discussed in 2017 dev meeting; current logo is >20y old, need modern design not just high-res/rectangular version!
- GSoC 2025: More creative topics and detailed project descriptions, but application not accepted by Google. Why? What was missing? Why are other projects accepted instead?
- DFG research software infrastructure funding program was considered but no action taken
- SP: Publication of dune papers: release notes as zenodo publication or in Journal of Numerical Mathematics? Citation recommendations in each dune module, better visibility of publications - each module should be citeable somehow.
- Dune 2.10 release notes paper rejected/needs major rewrite after ~1 year delay; journal scope mismatch not communicated early
- Release notes become outdated quickly due to long review cycles; alternative venues: arXiv, technical reports, or JNMA (published Deal.II release papers in similar format)
- Strong proposal: Use Zenodo for each release (used by FEniCS, MFEM, Gridap, ngsolve, DuMux, AMDiS)
- Low effort, no review delay, provides DOI for each version and combined versions
- Can combine paper and software, link DOIs bidirectionally
- Create a “Dune” Zenodo community to centralize publications
- Need consistent future strategy:
- Publish release notes for each version via Zenodo?
- Write a general overview paper every ~5 years covering multiple versions
- Ask JNMA editorial board if release notes papers are welcome
- Update the 2.10 paper for the next release if pursuing journal publication
dune-common
- SP: Tensor data structures in dune-common (self-developed, e.g., based on dune-tensor, or external library, e.g. Blaze-lib, Eigen, kokkos…)
- Discussion:
- We see the need for tensor generalizations of
FieldVector/FieldMatrix - Infrastructure based on (backported)
std::mdspanprovided - Needs an enrichted interface - Experimental development in user module dune-tensor, includes test-suite, benchmarks, extensions in several directions, generalization to sparse tensors…
- We need a discussion to the envisioned interface and implementation pattern.
- Alternatively: Choose to include an external tensor library already in dune-common (maybe with own interface on top)
- We see the need for tensor generalizations of
- Open Issues and Merge-Requests:
- core/dune-common!1644 — Add bounds-checked
at()access tomdspanandmdarray - core/dune-common!1641 — Add Padded
mdspanLayout Mappings - core/dune-common!1639 — Add
Dune::Std::submdspan - core/dune-common!1642 — Draft: Return Padded Layouts From
Dune::Std::submdspan - core/dune-common!1623 — Deprecate all special methods for FieldVector objects of size 1
- staging/dune-functions#95 — Discussion: Tensor-like output arguments for local basis evaluation
- core/dune-localfunctions!321 — Draft: Experimental evolution of the local-basis interface
- core/dune-localfunctions!285 — Draft: Add a fallback implementation for Hessian computation
- core/dune-geometry!262 — Draft: Add a reference implementation for geometry Hessians based on the Tensor datastructures
- core/dune-geometry!228 — Draft: Add second order derivative to geometry class
- core/dune-common!1644 — Add bounds-checked
- Discussion:
- SP: Threading and GPU parallelization (link dependency to TBB is annoying, thread-safety guarantees, GPU-based linear solvers, assemblers?)
- Open Issues and Merge-Requests:
- core/dune-common#198 — Status of TBB
- core/dune-common#423 — The MPI tag numbers in VariableSizeCommunicator are too big
- core/dune-common#407 — How to use MPI_Waitall
- core/dune-localfunctions#22 — Thread safety
- Open Issues and Merge-Requests:
- SO: [hands-on session]: Fix
add_*_falgs(...)CMake functions to handle variables in global properties so that super builds can handle them correctly.- core/dune-common#412 — Using
add_dune_XXX_flagswith interface targets
- core/dune-common#412 — Using
- PB: Redesign of parallel index sets.
dune-grid
- SO: Missing geometry information. If the grid has more than one geometry type per codimensoin, the information of
indexSet().subIndex(...)is useless as one cannot know for which of the index sets the returned index belongs to. This is specially bad if a grid does not provide entities, for which the subentity indices are only accessible through this interface. - SO: Generic code when there is no reference element. A lot of code relies on the assumption that there exist a reference element, however, several implementations may actualy return a
GeometryType::none, for which there is no reference element. Do we perhaps need a capability that give us the guarantee that every entity of the grid has a reference element? For instanceCapabilities::alwaysHaveReferenceElements<GridView,Codim>.
dune-localfunctions
- SP: Evolution/Revolution of the localfunctions interface (evaluation of various derivatives, filling a tensor instead of a vector
, scalar types for scalar basis functions) - Open Issues and Merge-Requests:
- core/dune-localfunctions#27 — Issues with Pyramid elements
- core/dune-localfunctions#25 — LagrangeSimplex does not implement partial() for dim=1
- core/dune-localfunctions#22 — Thread safety
- core/dune-localfunctions#16 — Cleanup LagrangeSimplexLocalCoefficients
- core/dune-localfunctions#14 — Generic finite element implementations rely on undefined behaviour
- core/dune-localfunctions#6 — Provide dynamic information of derivatives implemented by
partial() - core/dune-localfunctions!321 — Draft: Experimental evolution of the local-basis interface
- core/dune-localfunctions!313 — Draft: [feature][BDM] Add BDM(1) for tetrahedron and cleanup of existing implementation
- core/dune-localfunctions!312 — Draft: [feature][BDFM] Add missing simplex implementations for order 0 and 1
- core/dune-localfunctions!302 — SIMD interpolation
- core/dune-localfunctions!285 — Draft: Add a fallback implementation for Hessian computation
- core/dune-localfunctions!284 — Draft: Remove FieldMatrix/Vector scalar specialization
- core/dune-localfunctions!275 — Draft: Provide a local finite-element build by prismatic-product of two LFEs
- core/dune-localfunctions!272 — Draft: Add integration of fenix-basix finite-element library
- core/dune-localfunctions!253 — Draft: Feature/linear transformed finite elements
- core/dune-localfunctions!203 — WIP: lobatto shape functions
- staging/dune-functions#95 — Discussion: Tensor-like output arguments for local basis evaluation
- staging/dune-functions#77 — Open questions regarding bases for non-affine equivalent families
- staging/dune-functions!595 — Draft: Unified transformed local finite elements
- staging/dune-functions!596 — Draft: HHJ with unified transformation
- staging/dune-functions!588 — Draft: Feature/hellan hermann johnson element
- staging/dune-functions!553 — [draft] An attempt to the arnold winther element
- Open Issues and Merge-Requests:
dune-istl
- SO: Discussion on an improved implmentation of the block sparse matrix format:
IBCRSMatrix.
|
Legal Statements / Impressum |
Hosted by TU Dresden & Uni Heidelberg |
generated with Hugo v0.131.0
(Jul 27, 22:23, 2026)