Make local solver in NLDD a runtime specified ISTLSolver

This commit is contained in:
jakobtorben
2024-05-13 13:46:03 +02:00
parent 1615719993
commit 1f285ae0d5
4 changed files with 41 additions and 12 deletions

View File

@@ -160,14 +160,11 @@ public:
// only. This must be addressed before going parallel.
const auto& eclState = model_.simulator().vanguard().eclState();
FlowLinearSolverParameters loc_param;
loc_param.is_nldd_local_solver_ = true;
loc_param.init(eclState.getSimulationConfig().useCPR());
// Override solver type with umfpack if small domain.
// Otherwise hardcode to ILU0
if (domains_[index].cells.size() < 200) {
loc_param.linsolver_ = "umfpack";
} else {
loc_param.linsolver_ = "ilu0";
loc_param.linear_solver_reduction_ = 1e-2;
}
loc_param.linear_solver_print_json_definition_ = false;
const bool force_serial = true;