From 3388797f1e2c13f309da5a3f962f52e9d55f2ab6 Mon Sep 17 00:00:00 2001 From: joerg <joerg.buchwald@ufz.de> Date: Mon, 27 Apr 2020 14:23:00 +0200 Subject: [PATCH] add documentation --- .../prj/linear_solvers/linear_solver/eigen/t_restart.md | 7 +++++++ MathLib/LinAlg/Eigen/EigenLinearSolver.cpp | 1 + MathLib/LinAlg/Eigen/EigenOption.h | 1 + 3 files changed, 9 insertions(+) create mode 100644 Documentation/ProjectFile/prj/linear_solvers/linear_solver/eigen/t_restart.md diff --git a/Documentation/ProjectFile/prj/linear_solvers/linear_solver/eigen/t_restart.md b/Documentation/ProjectFile/prj/linear_solvers/linear_solver/eigen/t_restart.md new file mode 100644 index 00000000000..1bed86bb5fa --- /dev/null +++ b/Documentation/ProjectFile/prj/linear_solvers/linear_solver/eigen/t_restart.md @@ -0,0 +1,7 @@ +Sets the number of iterations after which a restart of the GMRES method is performed. +Default value is 30. +This option is only available for the GMRES solver which is part of the unsupported Eigen modules that are available +through OGS_USE_EIGEN_UNSUPPORTED cmake option. + +See following links for detail description: + - "Detailed Description" in https://eigen.tuxfamily.org/dox/unsupported/classEigen_1_1GMRES.html diff --git a/MathLib/LinAlg/Eigen/EigenLinearSolver.cpp b/MathLib/LinAlg/Eigen/EigenLinearSolver.cpp index a2a9bb3ac5d..3e930861d29 100644 --- a/MathLib/LinAlg/Eigen/EigenLinearSolver.cpp +++ b/MathLib/LinAlg/Eigen/EigenLinearSolver.cpp @@ -124,6 +124,7 @@ private: } }; +/// Specialization for (all) three preconditioners separately template <> void EigenIterativeLinearSolver< Eigen::GMRES<EigenMatrix::RawMatrixType, diff --git a/MathLib/LinAlg/Eigen/EigenOption.h b/MathLib/LinAlg/Eigen/EigenOption.h index c40b6e89ed9..786c7d4f0c5 100644 --- a/MathLib/LinAlg/Eigen/EigenOption.h +++ b/MathLib/LinAlg/Eigen/EigenOption.h @@ -47,6 +47,7 @@ struct EigenOption final #ifdef USE_EIGEN_UNSUPPORTED /// Scaling the coefficient matrix and the RHS bector bool scaling; + /// Restart value for the GMRES solver int restart; #endif -- GitLab