Fix dummy reduction that does not holds for general cases of the one step method
requested to merge bigfix/dummy-reduction-is-a-bad-default-for-a-general-explicit-one-step-solver into master
Summary
The current settings for the explicit one-step method is performing a dummy reduction of 0.99
for the linear solver for each stage of the RK method. This is only valid under certain assumptions, namely when the mass matrix created by the temporal local operator is (block)-diagonal (e.g. finite volumes, discontinuous Galerkin, special quadrature are chosen for low order finite elements, etc) and when the linear solver is suitable for such matrix (e.g. (block)-jacobi, gauß-seidel, direct solvers, etc). Since the ExplicitOneStepMethod
class accepts any linear solver and any instationary grid operator, the current behaviour is clearly a bug and should be corrected as soon as possible.
Proposal
Set a default value that is suitable for any mass matrix (e.g.1e-3
) and allow the user of the class to modify it in the case the usage falls under the special cases described above.- Deprecate the current constructor and require the user to provide a proper reduction.
Edited by Santiago Ospina De Los Ríos