-
- Downloads
[constraints] Add constraints support for dune-functions basis
This adds a class `AffineConstraints` for storing contraints for general dune-functions bases and a method `makeContinuityConstraints()` for computing the constraints for the H^1-conforming subspace for classical FE spaces on grid with hanging nodes. This is experimental and the interface may change. Also some features are still missing: * The code is generic and should work with nested bases and subspace bases. But this has not been tested so far. * One may want to generalize `makeContinuityConstraints()` such that one can extend an existing constraints object. This way one could add constraints for different branches in the tree one after the other. * Currently constraints are stored in a simple `std::unordered_map<std::map<Index,Coeff>>` data structure. Maybe this could be more efficient in a vector-based data structure or a sparse matrix. I had a compress method in mind that transforms into a more efficient storage once the contraints are fully build. But in my tests copying into a vector-bases data structure did not improve significantly, probably because the number of entries is relatively small. * The constraints class is called `AffineConstraints` because it is intended to also hold Dirichlet constraints. This feature is currently missing.
Showing
- doc/doxygen/modules.md 4 additions, 0 deletionsdoc/doxygen/modules.md
- dune/fufem/CMakeLists.txt 1 addition, 0 deletionsdune/fufem/CMakeLists.txt
- dune/fufem/constraints/CMakeLists.txt 4 additions, 0 deletionsdune/fufem/constraints/CMakeLists.txt
- dune/fufem/constraints/affineconstraints.hh 347 additions, 0 deletionsdune/fufem/constraints/affineconstraints.hh
- dune/fufem/constraints/continuityconstraints.hh 167 additions, 0 deletionsdune/fufem/constraints/continuityconstraints.hh
Loading
Please register or sign in to comment