[localresidual] Make CRTP explicit, remove BaseLocalResidual, reduce LocalResidual property usage
These are some efforts within the larger goal to be able to specify the localoperator directly in the main file. This would make it much more transparent to know how and which equations are assembled. This MR essentially removed the need for a property LocalResidual
and makes the assembler the only injection point of the type.
- Add
Implementation
template arg toFVLocalResidual
and the more disc-scheme-specific child classes (which forward it toFVLocalResidual
) -
FVAssembler
receivesLocalResidual
as template arg as well, default comes from property system. -
BaseLocalResidual
property is removed and substituted by selector traitDiscretizationDefaultLocalOperator
- The property
LocalResidual
persists in order to keep theFVAssembler
bw-compatible
TODO
-
Add changelog entry -
Add an example that passes the local residual in the main file -
Fix NavierStokesLocalResidualImpl -
Fix multidomain -
This does not work(fixed) with FacetCoupling, because it uses a customBaseLocalResidual
which is injected via the property system.
Edited by Timo Koch