- Remove two unused parameters. CprEllSolvetype is never used, and CprEllMaxIter
is not used correctly as is (if used, it should change the maximum iterations of
the coarse solver, not the repeats of the preconditioner) and is better left for
JSON file customization.
- Make the default AMG setup for "cpr" (including "cpr_trueimpes" and "cpr_quasiimpes")
match the setup for "cprw". In particular, beta = 0.0 (not 1e-4) and
prolongationdamping = 1.0 (not 1.6).
- Just as we override the default maximum number of linear iterations for cpr and cprw
(unless the user actually specified on the command line) to 20 instead of 100, we
change the default reduction to be 0.005 instead of 0.01.
Previously, passing --use-gmres=true had now effect. Probably was lost
when introducing FlexibleSolver. With this change the FlexibleSolver
will now use GMRes if the option is true.
Closes#4240
Previously, the user had to specify it in the json file read from the
FlexibleSolver or 1 was used. Unfortunately, the index depends on the
model used and it seem rather opaque to a user what that index is.
With this commit we determine the pressure index from the model.
In OPM the matrix graph might be unsymmetric as we do not store
the full sparsity pattern for copy rows but only the diagonal.
Unfortunately, DUNE assumes that matrices from finite elements and
finite volumes have a symmetric sparsity pattern for copy rows to
and uses this assumption to create the graphs for PTScotch/ParMETIS
more easily. But PTScotch/ParMetis assume a symmetric graph.
If no LinearSolverConfiguration is specified but UseCpr is true we
use cpr_quasiimpess. If the user does not specify the maximum
iteration number we use 20 for cpr.
Also use it in flow_blackoil_dunecpr.cpp. Adds new command-line parameter,
--linear-solver-configuration-json-file, to read linear solver config from
JSON-format file at runtime.