\doxysection{gko::\+stop::\+Residual\+Norm\texorpdfstring{$<$}{<} Value\+Type \texorpdfstring{$>$}{>} Class Template Reference}
\hypertarget{classgko_1_1stop_1_1ResidualNorm}{}\label{classgko_1_1stop_1_1ResidualNorm}\index{gko::stop::ResidualNorm$<$ ValueType $>$@{gko::stop::ResidualNorm$<$ ValueType $>$}}


The \doxylink{classgko_1_1stop_1_1ResidualNorm}{Residual\+Norm} class is a stopping criterion which stops the iteration process when the actual residual norm is below a certain threshold relative to.  




{\ttfamily \+\#include $<$ginkgo/\+core/\+stop/\+residual\+\_\+norm.\+hpp$>$}



Inheritance diagram for gko::\+stop::\+Residual\+Norm\texorpdfstring{$<$}{<} Value\+Type \texorpdfstring{$>$}{>}:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classgko_1_1stop_1_1ResidualNorm__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for gko::\+stop::\+Residual\+Norm\texorpdfstring{$<$}{<} Value\+Type \texorpdfstring{$>$}{>}:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classgko_1_1stop_1_1ResidualNorm__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \doxymbox{\hyperlink{structgko_1_1stop_1_1ResidualNorm_1_1parameters__type}{parameters\+\_\+type}}
\item 
class \doxymbox{\hyperlink{classgko_1_1stop_1_1ResidualNorm_1_1Factory}{Factory}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classgko_1_1stop_1_1ResidualNorm_a978c5334f502ea6abf656fc6d36032df}\label{classgko_1_1stop_1_1ResidualNorm_a978c5334f502ea6abf656fc6d36032df} 
using {\bfseries Complex\+Vector} = \doxymbox{\hyperlink{classgko_1_1matrix_1_1Dense}{matrix::\+\+Dense}}$<$\doxymbox{\hyperlink{namespacegko_a4ad20e5381a84928753efde0b2bc7f85}{to\+\_\+complex}}$<$Value\+Type$>$$>$
\item 
\Hypertarget{classgko_1_1stop_1_1ResidualNorm_ab02febc49dca5c37e68e5e03de2443d3}\label{classgko_1_1stop_1_1ResidualNorm_ab02febc49dca5c37e68e5e03de2443d3} 
using {\bfseries Norm\+Vector} = \doxymbox{\hyperlink{classgko_1_1matrix_1_1Dense}{matrix::\+\+Dense}}$<$\doxymbox{\hyperlink{namespacegko_a107302a750bfa82a2107c77293f791c9}{remove\+\_\+complex}}$<$Value\+Type$>$$>$
\item 
\Hypertarget{classgko_1_1stop_1_1ResidualNorm_aac0bd59ac7da605a9005b3a905d6abd7}\label{classgko_1_1stop_1_1ResidualNorm_aac0bd59ac7da605a9005b3a905d6abd7} 
using {\bfseries Vector} = \doxymbox{\hyperlink{classgko_1_1matrix_1_1Dense}{matrix::\+\+Dense}}$<$Value\+Type$>$
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classgko_1_1stop_1_1ResidualNorm_a5f065c36eed09e58b32acc9b9bcfb732}\label{classgko_1_1stop_1_1ResidualNorm_a5f065c36eed09e58b32acc9b9bcfb732} 
const \doxymbox{\hyperlink{structgko_1_1stop_1_1ResidualNorm_1_1parameters__type}{parameters\+\_\+type}} \& {\bfseries get\+\_\+parameters} () const
\end{DoxyCompactItemize}
\doxysubsubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classgko_1_1stop_1_1ResidualNorm_a6dde20251b0c960b8830c319f62622b5}\label{classgko_1_1stop_1_1ResidualNorm_a6dde20251b0c960b8830c319f62622b5} 
static auto {\bfseries build} () -\/$>$ decltype(\doxymbox{\hyperlink{classgko_1_1EnableDefaultFactory_a1d077101d9e788e6c65f088612d14cc3}{Factory::\+create}}())
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Value\+Type = default\+\_\+precision$>$\newline
class gko::\+stop::\+\+Residual\+Norm$<$ Value\+Type $>$}
The \doxylink{classgko_1_1stop_1_1ResidualNorm}{Residual\+Norm} class is a stopping criterion which stops the iteration process when the actual residual norm is below a certain threshold relative to. 


\begin{DoxyEnumerate}
\item the norm of the right-\/hand side, norm(residual) $\leq$ \texorpdfstring{$<$}{<} threshold \texorpdfstring{$\ast$}{*} norm(right\+\_\+hand\+\_\+side).
\item the initial residual, norm(residual) $\leq$ threshold \texorpdfstring{$\ast$}{*} norm(initial\+\_\+residual).
\item one, norm(residual) $\leq$ threshold.
\end{DoxyEnumerate}

For better performance, the checks are run on the executor where the algorithm is executed.

\begin{DoxyNote}{Note}
To use this stopping criterion there are some dependencies. The constructor depends on either {\ttfamily b} or the {\ttfamily initial\+\_\+residual} in order to compute their norms. If this is not correctly provided, an exception ::\+gko::\+\+Not\+Supported() is thrown. 
\end{DoxyNote}


The documentation for this class was generated from the following file:\+\begin{DoxyCompactItemize}
\item 
ginkgo/\+core/\+stop/\+residual\+\_\+norm.\+hpp\end{DoxyCompactItemize}
