mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-01-13 09:51:57 -06:00
add the parameters which were introduced by the MILU PR
i.e., make it possible to specify them via the eWoms parameter system.
This commit is contained in:
parent
61650a22df
commit
0714ab5930
@ -46,6 +46,9 @@ NEW_PROP_TAG(FlowLinearSolverMaxIter);
|
||||
NEW_PROP_TAG(FlowLinearSolverRestart);
|
||||
NEW_PROP_TAG(FlowLinearSolverVerbosity);
|
||||
NEW_PROP_TAG(FlowIluFillinLevel);
|
||||
NEW_PROP_TAG(FlowMIluVariant);
|
||||
NEW_PROP_TAG(FlowIluRedblack);
|
||||
NEW_PROP_TAG(FlowIluReorderSpheres);
|
||||
NEW_PROP_TAG(FlowUseGmres);
|
||||
NEW_PROP_TAG(FlowLinearSolverRequireFullSparsityPattern);
|
||||
NEW_PROP_TAG(FlowLinearSolverIgnoreConvergenceFailure);
|
||||
@ -58,6 +61,9 @@ SET_INT_PROP(FlowIstlSolverParams, FlowLinearSolverMaxIter, 150);
|
||||
SET_INT_PROP(FlowIstlSolverParams, FlowLinearSolverRestart, 40);
|
||||
SET_INT_PROP(FlowIstlSolverParams, FlowLinearSolverVerbosity, 0);
|
||||
SET_INT_PROP(FlowIstlSolverParams, FlowIluFillinLevel, 0);
|
||||
SET_STRING_PROP(FlowIstlSolverParams, FlowMIluVariant, "ILU");
|
||||
SET_BOOL_PROP(FlowIstlSolverParams, FlowIluRedblack, false);
|
||||
SET_BOOL_PROP(FlowIstlSolverParams, FlowIluReorderSpheres, false);
|
||||
SET_BOOL_PROP(FlowIstlSolverParams, FlowUseGmres, false);
|
||||
SET_BOOL_PROP(FlowIstlSolverParams, FlowLinearSolverRequireFullSparsityPattern, false);
|
||||
SET_BOOL_PROP(FlowIstlSolverParams, FlowLinearSolverIgnoreConvergenceFailure, false);
|
||||
@ -97,6 +103,9 @@ namespace Opm
|
||||
linear_solver_restart_ = EWOMS_GET_PARAM(TypeTag, int, FlowLinearSolverRestart);
|
||||
linear_solver_verbosity_ = EWOMS_GET_PARAM(TypeTag, int, FlowLinearSolverVerbosity);
|
||||
ilu_fillin_level_ = EWOMS_GET_PARAM(TypeTag, int, FlowIluFillinLevel);
|
||||
ilu_milu_ = convertString2Milu(EWOMS_GET_PARAM(TypeTag, std::string, FlowMIluVariant));
|
||||
ilu_redblack_ = EWOMS_GET_PARAM(TypeTag, bool, FlowIluRedblack);
|
||||
ilu_reorder_sphere_ = EWOMS_GET_PARAM(TypeTag, bool, FlowIluReorderSpheres);
|
||||
newton_use_gmres_ = EWOMS_GET_PARAM(TypeTag, bool, FlowUseGmres);
|
||||
require_full_sparsity_pattern_ = EWOMS_GET_PARAM(TypeTag, bool, FlowLinearSolverRequireFullSparsityPattern);
|
||||
ignoreConvergenceFailure_ = EWOMS_GET_PARAM(TypeTag, bool, FlowLinearSolverIgnoreConvergenceFailure);
|
||||
@ -113,6 +122,9 @@ namespace Opm
|
||||
EWOMS_REGISTER_PARAM(TypeTag, int, FlowLinearSolverRestart, "The number of iterations after which GMRES is restarted");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, int, FlowLinearSolverVerbosity, "The verbosity level of the linear solver (0: off, 2: all)");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, int, FlowIluFillinLevel, "The fill-in level of the linear solver's ILU preconditioner");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, std::string, FlowMIluVariant, "Specify which variant of the modified-ILU preconditioner ought to be used");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, FlowIluRedblack, "Use red-black partioning for the ILU preconditioner");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, FlowIluReorderSpheres, "Reorder the entries of the matrix in the ILU preconditioner");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, FlowUseGmres, "Use GMRES as the linear solver");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, FlowLinearSolverRequireFullSparsityPattern, "Produce the full sparsity pattern for the linear solver");
|
||||
EWOMS_REGISTER_PARAM(TypeTag, bool, FlowLinearSolverIgnoreConvergenceFailure, "Continue with the simulation like nothing happened after the linear solver did not converge");
|
||||
|
Loading…
Reference in New Issue
Block a user