From 7608d75fe26aff46fb79c7d464a90e5fdb60a820 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Fri, 24 Oct 2014 21:37:52 -0500 Subject: [PATCH] Document in classes derived from Solver that they use the signal/slot mechanism. --- include/deal.II/lac/solver_bicgstab.h | 10 +++++++++- include/deal.II/lac/solver_cg.h | 11 ++++++++++- include/deal.II/lac/solver_gmres.h | 14 ++++++++++++-- include/deal.II/lac/solver_minres.h | 17 ++++++++++++----- include/deal.II/lac/solver_qmrs.h | 10 +++++++++- include/deal.II/lac/solver_relaxation.h | 10 +++++++++- include/deal.II/lac/solver_richardson.h | 10 +++++++++- 7 files changed, 70 insertions(+), 12 deletions(-) diff --git a/include/deal.II/lac/solver_bicgstab.h b/include/deal.II/lac/solver_bicgstab.h index bde7fc7353..8e0c03e492 100644 --- a/include/deal.II/lac/solver_bicgstab.h +++ b/include/deal.II/lac/solver_bicgstab.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 1998 - 2013 by the deal.II authors +// Copyright (C) 1998 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -61,6 +61,14 @@ DEAL_II_NAMESPACE_OPEN * The second parameter is the size of a breakdown criterion. It is * difficult to find a general good criterion, so if things do not * work for you, try to change this value. + * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * */ template > class SolverBicgstab : public Solver diff --git a/include/deal.II/lac/solver_cg.h b/include/deal.II/lac/solver_cg.h index 515af42a24..aff541ab58 100644 --- a/include/deal.II/lac/solver_cg.h +++ b/include/deal.II/lac/solver_cg.h @@ -55,6 +55,7 @@ class PreconditionIdentity; * Elements". It requires a symmetric preconditioner (i.e., for example, SOR * is not a possible choice). * + * *

Eigenvalue computation

* * The cg-method performs an orthogonal projection of the original @@ -75,9 +76,17 @@ class PreconditionIdentity; * sqrt(beta_0)/alpha_0, ..., sqrt(beta_{m-2)/alpha_{m-2}}. * The eigenvalues of this matrix can be computed by postprocessing. * - * See Y. Saad: "Iterative methods for Sparse Linear Systems", section + * @see Y. Saad: "Iterative methods for Sparse Linear Systems", section * 6.7.3 for details. * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * + * * @author W. Bangerth, G. Kanschat, R. Becker and F.-T. Suttmeier */ template > diff --git a/include/deal.II/lac/solver_gmres.h b/include/deal.II/lac/solver_gmres.h index d01eeb84ef..ee750f1ecb 100644 --- a/include/deal.II/lac/solver_gmres.h +++ b/include/deal.II/lac/solver_gmres.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 1998 - 2013 by the deal.II authors +// Copyright (C) 1998 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -112,7 +112,8 @@ namespace internal * preconditioning. The default is left preconditioning. Finally it * includes a flag indicating whether or not the default residual is * used as stopping criterion. - + * + * *

Left versus right preconditioning

* * @p AdditionalData allows you to choose between left and right @@ -132,6 +133,7 @@ namespace internal * residuals have to be computed in this case, impeding the overall * performance of the solver. * + * *

The size of the Arnoldi basis

* * The maximal basis size is controlled by @@ -150,6 +152,14 @@ namespace internal * For the requirements on matrices and vectors in order to work with * this class, see the documentation of the Solver base class. * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * + * * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann. */ template > diff --git a/include/deal.II/lac/solver_minres.h b/include/deal.II/lac/solver_minres.h index 66bbf5ae5d..f919bf3cfe 100644 --- a/include/deal.II/lac/solver_minres.h +++ b/include/deal.II/lac/solver_minres.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2000 - 2013 by the deal.II authors +// Copyright (C) 2000 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -51,10 +51,17 @@ DEAL_II_NAMESPACE_OPEN * * The preconditioner has to be positive definite and symmetric * - * The algorithm is taken from the Master thesis of Astrid Batterman - * with some changes. - * The full text can be found at - * http://scholar.lib.vt.edu/theses/public/etd-12164379662151/etd-title.html + * The algorithm is taken from the Master thesis of Astrid Battermann + * with some changes. The full text can be found at + * http://scholar.lib.vt.edu/theses/public/etd-12164379662151/etd-title.html + * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * * * @author Thomas Richter, 2000, Luca Heltai, 2006 */ diff --git a/include/deal.II/lac/solver_qmrs.h b/include/deal.II/lac/solver_qmrs.h index cbd3234c1c..743e665dc4 100644 --- a/include/deal.II/lac/solver_qmrs.h +++ b/include/deal.II/lac/solver_qmrs.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 1999 - 2013 by the deal.II authors +// Copyright (C) 1999 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -60,6 +60,14 @@ DEAL_II_NAMESPACE_OPEN * has a default argument, so you may call it without the additional * parameter. * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * + * * @author Guido Kanschat, 1999 */ template > diff --git a/include/deal.II/lac/solver_relaxation.h b/include/deal.II/lac/solver_relaxation.h index 22e40e8e2a..2f38c8c8e9 100644 --- a/include/deal.II/lac/solver_relaxation.h +++ b/include/deal.II/lac/solver_relaxation.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2010 - 2013 by the deal.II authors +// Copyright (C) 2010 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -42,6 +42,14 @@ DEAL_II_NAMESPACE_OPEN * solver changes. AdditionalData of this class currently does not * contain any data. * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * + * * @ingroup Solvers * @author Guido Kanschat * @date 2010 diff --git a/include/deal.II/lac/solver_richardson.h b/include/deal.II/lac/solver_richardson.h index 9e2938227a..8e389ef04c 100644 --- a/include/deal.II/lac/solver_richardson.h +++ b/include/deal.II/lac/solver_richardson.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 1999 - 2013 by the deal.II authors +// Copyright (C) 1999 - 2014 by the deal.II authors // // This file is part of the deal.II library. // @@ -48,6 +48,14 @@ DEAL_II_NAMESPACE_OPEN * which is the only content of the @p AdditionalData structure. By default, * the constructor of the structure sets it to one. * + * + *

Observing the progress of linear solver iterations

+ * + * The solve() function of this class uses the mechanism described + * in the Solver base class to determine convergence. This mechanism + * can also be used to observe the progress of the iteration. + * + * * @author Ralf Hartmann */ template > -- 2.39.5