Commit 449d8097 authored by Tomáš Oberhuber's avatar Tomáš Oberhuber
Browse files

Small fixes in documentation of lineat solvers.

parent 2be4c35a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ Solvers of linear systems are one of the most important algorithms in scientific

1. Stationary methods
   1. [Jacobi method](https://en.wikipedia.org/wiki/Jacobi_method) (\ref TNL::Solvers::Linear::Jacobi)
   2. [Successive-overrelaxation method, SOR]([https://en.wikipedia.org/wiki/Successive_over-relaxation]) (\ref TNL::Solvers::Linear::SOR) - CPU only currently
   2. [Successive-overrelaxation method, SOR]([https://en.wikipedia.org/wiki/Successive_over-relaxation]) (\ref TNL::Solvers::Linear::SOR)
2. Krylov subspace methods
   1. [Conjugate gradient method, CG](https://en.wikipedia.org/wiki/Conjugate_gradient_method) (\ref TNL::Solvers::Linear::CG)
   2. [Biconjugate gradient stabilized method, BICGStab](https://en.wikipedia.org/wiki/Biconjugate_gradient_stabilized_method) (\ref TNL::Solvers::Linear::BICGStab)
+1 −22
Original line number Diff line number Diff line
@@ -9,27 +9,6 @@
/* See Copyright Notice in tnl/Copyright */

/*
 * BICGStabL implements an iterative solver for non-symmetric linear systems,
 * using the BiCGstab(l) algorithm described in [1] and [2]. It is a
 * generalization of the stabilized biconjugate-gradient (BiCGstab) algorithm
 * proposed by van der Vorst [3]. BiCGstab(1) is equivalent to BiCGstab, and
 * BiCGstab(2) is a slightly more efficient version of the BiCGstab2 algorithm
 * by Gutknecht [4], while BiCGstab(l>2) is a further generalization.
 *
 * This code was implemented by: Jakub Klinkovsky <klinkjak@fjfi.cvut.cz>
 *
 * [1] Gerard L. G. Sleijpen and Diederik R. Fokkema, "BiCGstab(l) for linear
 *     equations involving unsymmetric matrices with complex spectrum",
 *     Electronic Trans. on Numerical Analysis 1, 11-32 (1993).
 * [2] Gerard L. G. Sleijpen, Henk A. van der Vorst, and Diederik R. Fokkema,
 *     "BiCGstab(l) and other Hybrid Bi-CG Methods", Numerical Algorithms 7,
 *     75-109 (1994).
 * [3] Henk A. van der Vorst, "Bi-CGSTAB: A fast and smoothly converging variant
 *     of Bi-CG for the solution of nonsymmetric linear systems, SIAM Journal on
 *     scientific and Statistical Computing 13.2, 631-644 (1992).
 * [4] Martin H. Gutknecht, "Variants of BiCGStab for matrices with complex
 *     spectrum", IPS Research Report No. 91-14 (1991).
 *
 * TODO: further variations to explore:
 *
 * [5] Gerard L. G. Sleijpen and Henk A. van der Vorst, "Reliable updated
+6 −7
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@

#include "Preconditioner.h"


namespace TNL {
   namespace Solvers {
      namespace Linear {
@@ -72,14 +73,14 @@ class Diagonal
      using typename Preconditioner< Matrix >::MatrixPointer;

      /**
       * \brief This methods update the preconditione with respect to given matrix.
       * \brief This method updates the preconditioner with respect to given matrix.
       *
       * \param matrixPointer smart pointer (\ref std::shared_ptr) to matrix the preconditioner is related to.
       */
      virtual void update( const MatrixPointer& matrixPointer ) override;

      /**
       * \brief This methods applies the preconditioner.
       * \brief This method applies the preconditioner.
       *
       * \param b is the input vector the preconditioner is applied on.
       * \param x is the result of the preconditioning.
@@ -139,21 +140,19 @@ class Diagonal< Matrices::DistributedMatrix< Matrix > >
      using typename Preconditioner< MatrixType >::ConstVectorViewType;

      /**
       * \brief This methods update the preconditione with respect to given matrix.
       *
       * \param matrixPointer smart pointer (\ref std::shared_ptr) to matrix the preconditioner is related to.
       * \brief Type of shared pointer to the matrix.
       */
      using typename Preconditioner< MatrixType >::MatrixPointer;

      /**
       * \brief This methods update the preconditione with respect to given matrix.
       * \brief This method updates the preconditioner with respect to given matrix.
       *
       * \param matrixPointer smart pointer (\ref std::shared_ptr) to matrix the preconditioner is related to.
       */
      virtual void update( const MatrixPointer& matrixPointer ) override;

      /**
       * \brief This methods applies the preconditioner.
       * \brief This method applies the preconditioner.
       *
       * \param b is the input vector the preconditioner is applied on.
       * \param x is the result of the preconditioning.
+2 −2
Original line number Diff line number Diff line
@@ -110,14 +110,14 @@ class ILU0_impl< Matrix, Real, Devices::Host, Index >
      using typename Preconditioner< Matrix >::MatrixPointer;

      /**
       * \brief This methods update the preconditione with respect to given matrix.
       * \brief This method updates the preconditioner with respect to given matrix.
       *
       * \param matrixPointer smart pointer (\ref std::shared_ptr) to matrix the preconditioner is related to.
       */
      virtual void update( const MatrixPointer& matrixPointer ) override;

      /**
       * \brief This methods applies the preconditioner.
       * \brief This method applies the preconditioner.
       *
       * \param b is the input vector the preconditioner is applied on.
       * \param x is the result of the preconditioning.
+2 −2
Original line number Diff line number Diff line
@@ -87,14 +87,14 @@ class ILUT
      }

      /**
       * \brief This methods update the preconditione with respect to given matrix.
       * \brief This method updates the preconditioner with respect to given matrix.
       *
       * \param matrixPointer smart pointer (\ref std::shared_ptr) to matrix the preconditioner is related to.
       */
      using Base::update;

      /**
       * \brief This methods applies the preconditioner.
       * \brief This method applies the preconditioner.
       *
       * \param b is the input vector the preconditioner is applied on.
       * \param x is the result of the preconditioning.
Loading