\doxysection{gko::\+factorization::\+Ilu\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+parameters\+\_\+type Struct Reference}
\hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type}{}\label{structgko_1_1factorization_1_1Ilu_1_1parameters__type}\index{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}}


Inheritance diagram for gko::\+factorization::\+Ilu\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+parameters\+\_\+type:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=253pt]{structgko_1_1factorization_1_1Ilu_1_1parameters__type__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for gko::\+factorization::\+Ilu\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+parameters\+\_\+type:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{structgko_1_1factorization_1_1Ilu_1_1parameters__type__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a61d238cb59eb7215b01d73fb42965fbf}\label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a61d238cb59eb7215b01d73fb42965fbf} 
{\footnotesize template$<$typename... Args$>$ }\\auto {\bfseries with\+\_\+l\+\_\+strategy} (Args \&\&... \+\_\+value) -\/$>$ std::\+decay\+\_\+t$<$ decltype(\texorpdfstring{$\ast$}{*}(this-\/$>$self()))$>$ \&
\item 
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a71c764fad418039c2de52d6cb543969d}\label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a71c764fad418039c2de52d6cb543969d} 
{\footnotesize template$<$typename... Args$>$ }\\auto {\bfseries with\+\_\+u\+\_\+strategy} (Args \&\&... \+\_\+value) -\/$>$ std::\+decay\+\_\+t$<$ decltype(\texorpdfstring{$\ast$}{*}(this-\/$>$self()))$>$ \&
\item 
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_ad6f563857dfa4598dd7fb47daaf1e890}\label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_ad6f563857dfa4598dd7fb47daaf1e890} 
{\footnotesize template$<$typename... Args$>$ }\\auto {\bfseries with\+\_\+skip\+\_\+sorting} (Args \&\&... \+\_\+value) -\/$>$ std::\+decay\+\_\+t$<$ decltype(\texorpdfstring{$\ast$}{*}(this-\/$>$self()))$>$ \&
\item 
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a16738ba6cd22e2101f758a2e6d9d4319}\label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a16738ba6cd22e2101f758a2e6d9d4319} 
{\footnotesize template$<$typename... Args$>$ }\\auto {\bfseries with\+\_\+algorithm} (Args \&\&... \+\_\+value) -\/$>$ std::\+decay\+\_\+t$<$ decltype(\texorpdfstring{$\ast$}{*}(this-\/$>$self()))$>$ \&
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions inherited from \doxymbox{\hyperlink{classgko_1_1enable__parameters__type}{gko::\+enable\+\_\+parameters\+\_\+type$<$ parameters\+\_\+type, Factory $>$}}}
\begin{DoxyCompactItemize}
\item 
parameters\+\_\+type \& {\bfseries with\+\_\+loggers} (Args \&\&... \+\_\+value)
\begin{DoxyCompactList}\small\item\em Provides the loggers to be added to the factory and its generated objects in a fluent interface. \end{DoxyCompactList}\item 
std::\+unique\+\_\+ptr$<$ Factory $>$ \doxymbox{\hyperlink{classgko_1_1enable__parameters__type_a65a5adc4eb7078475d26e7991efae64d}{on}} (std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1Executor}{Executor}} $>$ exec) const
\begin{DoxyCompactList}\small\item\em Creates a new factory on the specified executor. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
std::\+shared\+\_\+ptr$<$ typename matrix\+\_\+type::\+strategy\+\_\+type $>$ \doxymbox{\hyperlink{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a78cb05198d399f30b435626048c23415}{l\+\_\+strategy}} \{nullptr\}
\begin{DoxyCompactList}\small\item\em Strategy which will be used by the L matrix. \end{DoxyCompactList}\item 
std::\+shared\+\_\+ptr$<$ typename matrix\+\_\+type::\+strategy\+\_\+type $>$ \doxymbox{\hyperlink{structgko_1_1factorization_1_1Ilu_1_1parameters__type_ae39206eef0cd32835df5b636e1a60236}{u\+\_\+strategy}} \{nullptr\}
\begin{DoxyCompactList}\small\item\em Strategy which will be used by the U matrix. \end{DoxyCompactList}\item 
bool \doxymbox{\hyperlink{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a12cbd76c5a9cce1814fd5c2dc918323f}{skip\+\_\+sorting}} \{false\}
\begin{DoxyCompactList}\small\item\em The {\ttfamily system\+\_\+matrix}, which will be given to this factory, must be sorted (first by row, then by column) in order for the algorithm to work. \end{DoxyCompactList}\item 
\doxymbox{\hyperlink{namespacegko_1_1factorization_a42430a5d93539c24303273804684ef67}{incomplete\+\_\+algorithm}} \doxymbox{\hyperlink{structgko_1_1factorization_1_1Ilu_1_1parameters__type_accc8821162d5eab103579d606ca8ff32}{algorithm}} \{incomplete\+\_\+algorithm::\+sparselib\}
\begin{DoxyCompactList}\small\item\em Select the implementation which is supposed to be used for the incomplete factorization. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Additional Inherited Members}
\doxysubsection*{Public Types inherited from \doxymbox{\hyperlink{classgko_1_1enable__parameters__type}{gko::\+enable\+\_\+parameters\+\_\+type$<$ parameters\+\_\+type, Factory $>$}}}
\begin{DoxyCompactItemize}
\item 
using {\bfseries factory}
\end{DoxyCompactItemize}


\label{doc-variable-members}
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_doc-variable-members}
\doxysubsection{Member Data Documentation}
\Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_accc8821162d5eab103579d606ca8ff32}\index{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}!algorithm@{algorithm}}
\index{algorithm@{algorithm}!gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}}
\doxysubsubsection{\texorpdfstring{algorithm}{algorithm}}
{\footnotesize\ttfamily \label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_accc8821162d5eab103579d606ca8ff32} 
template$<$typename Value\+Type = gko::\+default\+\_\+precision, typename Index\+Type = gko::\+int32$>$ \\
\doxymbox{\hyperlink{namespacegko_1_1factorization_a42430a5d93539c24303273804684ef67}{incomplete\+\_\+algorithm}} \doxymbox{\hyperlink{classgko_1_1factorization_1_1Ilu}{gko::\+factorization::\+\+Ilu}}$<$ Value\+Type, Index\+Type $>$::\+parameters\+\_\+type::\+algorithm \{incomplete\+\_\+algorithm::\+sparselib\}}



Select the implementation which is supposed to be used for the incomplete factorization. 

This only matters for the CUDA/\+\+HIP/\+\+REFERENCE executor where the choice is between the Ginkgo (syncfree) and the cu\+SPARSE/\+hip\+SPARSE/\+reference (sparselib) implementation. Default is sparselib. \Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a78cb05198d399f30b435626048c23415}\index{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}!l\_strategy@{l\_strategy}}
\index{l\_strategy@{l\_strategy}!gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}}
\doxysubsubsection{\texorpdfstring{l\_strategy}{l\_strategy}}
{\footnotesize\ttfamily \label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a78cb05198d399f30b435626048c23415} 
template$<$typename Value\+Type = gko::\+default\+\_\+precision, typename Index\+Type = gko::\+int32$>$ \\
std::\+shared\+\_\+ptr$<$typename matrix\+\_\+type::\+strategy\+\_\+type$>$ \doxymbox{\hyperlink{classgko_1_1factorization_1_1Ilu}{gko::\+factorization::\+\+Ilu}}$<$ Value\+Type, Index\+Type $>$::\+parameters\+\_\+type::\+l\+\_\+strategy \{nullptr\}}



Strategy which will be used by the L matrix. 

The default value {\ttfamily nullptr} will result in the strategy {\ttfamily classical}. \Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a12cbd76c5a9cce1814fd5c2dc918323f}\index{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}!skip\_sorting@{skip\_sorting}}
\index{skip\_sorting@{skip\_sorting}!gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}}
\doxysubsubsection{\texorpdfstring{skip\_sorting}{skip\_sorting}}
{\footnotesize\ttfamily \label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_a12cbd76c5a9cce1814fd5c2dc918323f} 
template$<$typename Value\+Type = gko::\+default\+\_\+precision, typename Index\+Type = gko::\+int32$>$ \\
bool \doxymbox{\hyperlink{classgko_1_1factorization_1_1Ilu}{gko::\+factorization::\+\+Ilu}}$<$ Value\+Type, Index\+Type $>$::\+parameters\+\_\+type::\+skip\+\_\+sorting \{false\}}



The {\ttfamily system\+\_\+matrix}, which will be given to this factory, must be sorted (first by row, then by column) in order for the algorithm to work. 

If it is known that the matrix will be sorted, this parameter can be set to {\ttfamily true} to skip the sorting (therefore, shortening the runtime). However, if it is unknown or if the matrix is known to be not sorted, it must remain {\ttfamily false}, otherwise, this factorization might be incorrect. \Hypertarget{structgko_1_1factorization_1_1Ilu_1_1parameters__type_ae39206eef0cd32835df5b636e1a60236}\index{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}!u\_strategy@{u\_strategy}}
\index{u\_strategy@{u\_strategy}!gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type@{gko::factorization::Ilu$<$ ValueType, IndexType $>$::parameters\_type}}
\doxysubsubsection{\texorpdfstring{u\_strategy}{u\_strategy}}
{\footnotesize\ttfamily \label{structgko_1_1factorization_1_1Ilu_1_1parameters__type_ae39206eef0cd32835df5b636e1a60236} 
template$<$typename Value\+Type = gko::\+default\+\_\+precision, typename Index\+Type = gko::\+int32$>$ \\
std::\+shared\+\_\+ptr$<$typename matrix\+\_\+type::\+strategy\+\_\+type$>$ \doxymbox{\hyperlink{classgko_1_1factorization_1_1Ilu}{gko::\+factorization::\+\+Ilu}}$<$ Value\+Type, Index\+Type $>$::\+parameters\+\_\+type::\+u\+\_\+strategy \{nullptr\}}



Strategy which will be used by the U matrix. 

The default value {\ttfamily nullptr} will result in the strategy {\ttfamily classical}. 

The documentation for this struct was generated from the following file:\+\begin{DoxyCompactItemize}
\item 
ginkgo/\+core/\+factorization/\+ilu.\+hpp\end{DoxyCompactItemize}
