Draft: Make localView_ and localDoFs_ of DiscreteGlobalBasisFunction::LocalFunction accessible
Hi!
I want some feedback on this little detail.
I need some local information of a DiscreteGlobalBasisFunction
. To be precise: I want a directional derivative of one the local finite elements. Therefore, I need the local basis and the local dofs.
Currently, DiscreteGlobalBasisFunction
and its internal class LocalFunction
can only return the bound element and have a local point-wise operator()
evaluation.
Pros of making the information accessible:
- The user can do whatever (s)he wants with access to the local information
- A generic (currently
NotImplemented
)derivative
method may be too much: what if I only need a special partial derivative? - The user can select which finite element is picked in a composite basis, etc.
Con:
- The interface is pretty clean: we have the grid element and nothing more, the rest is internal information
For me, the clean interface is does not suffer from access to the LocalView
and the LocalDoFs
. , since the types are already public information. Every dune-functions
object has a LocalView
, so this can be assumed. The local degrees of freedom are always a flat std::vector
, so there is also no further internal-only information there.
Edit: LocalView
is in fact a private type of LocalFunction
There are already some MR/Issues related to derivatives of DiscreteGlobalBasisFunction
(!57 (closed) !188 (closed)) but they are stuck for some time now. May this can be a compromise to let the user decide what there is to derive.