From 6c71fecba185ab099a41585d49d4c52b7910a587 Mon Sep 17 00:00:00 2001 From: Thomas Fischer <thomas.fischer@ufz.de> Date: Mon, 20 Dec 2021 08:46:59 +0100 Subject: [PATCH] [A/AppLib/ProjectData] Adjustments for LinearSolverOptionsParser. Use LinearSolverOptionsParser to construct linear solver object instead of passing ConfigTree to constructor. --- Applications/ApplicationsLib/ProjectData.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Applications/ApplicationsLib/ProjectData.cpp b/Applications/ApplicationsLib/ProjectData.cpp index 434869390cd..cecca9cbdd1 100644 --- a/Applications/ApplicationsLib/ProjectData.cpp +++ b/Applications/ApplicationsLib/ProjectData.cpp @@ -1142,10 +1142,16 @@ void ProjectData::parseLinearSolvers(BaseLib::ConfigTree const& config) { //! \ogs_file_param{prj__linear_solvers__linear_solver__name} auto const name = conf.getConfigParameter<std::string>("name"); + auto const linear_solver_parser = + MathLib::LinearSolverOptionsParser<GlobalLinearSolver>{}; + auto const solver_options = + linear_solver_parser.parseNameAndOptions("", &conf); + BaseLib::insertIfKeyUniqueElseError( _linear_solvers, name, - std::make_unique<GlobalLinearSolver>("", &conf), + std::make_unique<GlobalLinearSolver>(std::get<0>(solver_options), + std::get<1>(solver_options)), "The linear solver name is not unique"); } } -- GitLab