MR description (based on !2213 (merged)):
norm
linearSolver->norm(r)
if available otherwise call assembler->residualNorm();
(depends on !2311 (merged) to be merged)Depends on !3385 (merged) to be merged
The matrix and vector type now have to be known to construct the solver. This was previously delayed until the solve call but made the structure kind of intransparent because it wasn't really clear which vector type has to come in but only specific types work anyway.
Hard coding the solver hopefully reduces compile times wrt the factory. Also the implementation should be
more compact than the old backends
have more runtime option due to parameter tree-based params
work in parallel as well
We could deprecated the old solver backends? (not the entire header though) different MR
Updated version as replacement for !2113 (closed).