\doxysubsection{Preconditioners }
\hypertarget{group__precond}{}\label{group__precond}\index{Preconditioners@{Preconditioners}}


A module dedicated to the implementation and usage of the Preconditioners in Ginkgo.  


Collaboration diagram for Preconditioners:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__precond}
\end{center}
\end{figure}
\doxysubsubsubsection*{Topics}
\begin{DoxyCompactItemize}
\item 
\doxymbox{\hyperlink{group__jacobi}{Jacobi Preconditioner}}
\begin{DoxyCompactList}\small\item\em A module dedicated to the implementation and usage of the Jacobi Preconditioner in Ginkgo. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
namespace \doxymbox{\hyperlink{namespacegko_1_1experimental_1_1distributed_1_1preconditioner}{gko::\+experimental::\+distributed::\+preconditioner}}
\begin{DoxyCompactList}\small\item\em The Preconditioner namespace. \end{DoxyCompactList}\item 
namespace \doxymbox{\hyperlink{namespacegko_1_1preconditioner}{gko::\+preconditioner}}
\begin{DoxyCompactList}\small\item\em The Preconditioner namespace. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \doxymbox{\hyperlink{classgko_1_1Preconditionable}{gko::\+\+Preconditionable}}
\begin{DoxyCompactList}\small\item\em A \doxylink{classgko_1_1LinOp}{Lin\+Op} implementing this interface can be preconditioned. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1experimental_1_1distributed_1_1preconditioner_1_1Schwarz}{gko::\+experimental::\+distributed::\+preconditioner::\+\+Schwarz$<$ Value\+Type, Local\+Index\+Type, Global\+Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em A \doxylink{classgko_1_1experimental_1_1distributed_1_1preconditioner_1_1Schwarz}{Schwarz} preconditioner is a simple domain decomposition preconditioner that generalizes the Block Jacobi preconditioner, incorporating options for different local subdomain solvers and overlaps between the subdomains. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1batch_1_1preconditioner_1_1Jacobi}{gko::\+batch::\+preconditioner::\+\+Jacobi$<$ Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em A block-\/\+Jacobi preconditioner is a block-\/diagonal linear operator, obtained by inverting the diagonal blocks (stored in a dense row major fashion) of the source operator. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1GaussSeidel}{gko::\+preconditioner::\+\+Gauss\+Seidel$<$ Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em This class generates the Gauss-\/\+Seidel preconditioner. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1Ic}{gko::\+preconditioner::\+\+Ic$<$ LSolver\+Type\+Or\+Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em The Incomplete Cholesky (IC) preconditioner solves the equation $LL^H*x = b$ for a given lower triangular matrix L and the right hand side b (can contain multiple right hand sides). \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1Ilu}{gko::\+preconditioner::\+\+Ilu$<$ LSolver\+Type\+Or\+Value\+Type, USolver\+Type\+Or\+Value\+Type, Reverse\+Apply, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em The Incomplete LU (ILU) preconditioner solves the equation $LUx = b$ for a given lower triangular matrix L, an upper triangular matrix U and the right hand side b (can contain multiple right hand sides). \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1Isai}{gko::\+preconditioner::\+\+Isai$<$ Isai\+Type, Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em The Incomplete Sparse Approximate Inverse (ISAI) Preconditioner generates an approximate inverse matrix for a given square matrix A, lower triangular matrix L, upper triangular matrix U or symmetric positive (spd) matrix B. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1Jacobi}{gko::\+preconditioner::\+\+Jacobi$<$ Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em A block-\/\+Jacobi preconditioner is a block-\/diagonal linear operator, obtained by inverting the diagonal blocks of the source operator. \end{DoxyCompactList}\item 
class \doxymbox{\hyperlink{classgko_1_1preconditioner_1_1Sor}{gko::\+preconditioner::\+\+Sor$<$ Value\+Type, Index\+Type $>$}}
\begin{DoxyCompactList}\small\item\em This class generates the (S)SOR preconditioner. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsubsection{Detailed Description}
A module dedicated to the implementation and usage of the Preconditioners in Ginkgo. 

\input{group__jacobi}
