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