Add a generic factory for solver setup using configuration from a ParameterTree
The idea is to allow creating solvers / preconditioners from ParameterTrees.
A solver (including preconditioner) should be configurable via an ini file, similar to (we might want to change the semantics slightly in some places...):
[solver] precond = SeqSSOR solver = CGSolver [SeqSSOR] iterations = 1 relaxation = 1.8 [CGSolver] reduction=1e-9 maxit = 5000 verbose = 3
- make interface classes really dynamic (see !84 (merged))
add constructors taking a
ParameterTree(see !315 (merged))
- use these new constructors in a solver factory (see !312)
rewrite the factories to use the
review and cleanup the
- remove static AMG configurations (coarse solver, smoother, etc), making it dynamic using the factories
std::unique_ptrfor internal memory management instead of manual
delete)(see !274 (merged) and !333 (merged))
- introduce a value semantics wrapper class for the polymorphic interface classes
- add concepts for simple precompilation for a range of field types, e.g. vectorized data.
- review the concepts of how to instantiate and pre-compile the factories