72 lines
6.7 KiB
TeX
72 lines
6.7 KiB
TeX
|
|
\doxysection{src/include/serif/backend/mfem/solver/preconditioner/computations/ordering.hpp File Reference}
|
||
|
|
\hypertarget{ordering_8hpp}{}\label{ordering_8hpp}\index{src/include/serif/backend/mfem/solver/preconditioner/computations/ordering.hpp@{src/include/serif/backend/mfem/solver/preconditioner/computations/ordering.hpp}}
|
||
|
|
{\ttfamily \#include $<$limits$>$}\newline
|
||
|
|
{\ttfamily \#include $<$vector$>$}\newline
|
||
|
|
{\ttfamily \#include "{}serif/backend/mfem/operators/linearized\+\_\+block.\+hpp"{}}\newline
|
||
|
|
{\ttfamily \#include "{}serif/operators/linearized\+\_\+system\+\_\+view.\+hpp"{}}\newline
|
||
|
|
{\ttfamily \#include "{}serif/discretization/blocks/system\+\_\+layout.\+hpp"{}}\newline
|
||
|
|
{\ttfamily \#include "{}serif/discretization/blocks/keys.\+hpp"{}}\newline
|
||
|
|
{\ttfamily \#include "{}serif/backend/mfem/solver/preconditioner/border.\+hpp"{}}\newline
|
||
|
|
{\ttfamily \#include "{}serif/utils/dependencies/computation.\+hpp"{}}\newline
|
||
|
|
Include dependency graph for ordering.\+hpp\+:
|
||
|
|
\nopagebreak
|
||
|
|
\begin{figure}[H]
|
||
|
|
\begin{center}
|
||
|
|
\leavevmode
|
||
|
|
\includegraphics[width=350pt]{ordering_8hpp__incl}
|
||
|
|
\end{center}
|
||
|
|
\end{figure}
|
||
|
|
This graph shows which files directly or indirectly include this file\+:
|
||
|
|
\nopagebreak
|
||
|
|
\begin{figure}[H]
|
||
|
|
\begin{center}
|
||
|
|
\leavevmode
|
||
|
|
\includegraphics[height=550pt]{ordering_8hpp__dep__incl}
|
||
|
|
\end{center}
|
||
|
|
\end{figure}
|
||
|
|
\doxysubsubsection*{Classes}
|
||
|
|
\begin{DoxyCompactItemize}
|
||
|
|
\item
|
||
|
|
struct \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1keys_1_1_preconditioner}{serif\+::solver\+::preconditioner\+::keys\+::\+Preconditioner}}
|
||
|
|
\item
|
||
|
|
struct \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1computations_1_1detail_1_1_physical_sources_3_01utils1a1f8ff6c1c7a9455aff8e4b497b2009}{serif\+::solver\+::preconditioner\+::computations\+::detail\+::\+Physical\+Sources$<$ utils\+::dependencies\+::\+Key\+List$<$ Keys... $>$ $>$}}
|
||
|
|
\end{DoxyCompactItemize}
|
||
|
|
\doxysubsubsection*{Namespaces}
|
||
|
|
\begin{DoxyCompactItemize}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif}{serif}}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1solver}{serif\+::solver}}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner}{serif\+::solver\+::preconditioner}}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1keys}{serif\+::solver\+::preconditioner\+::keys}}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations}{serif\+::solver\+::preconditioner\+::computations}}
|
||
|
|
\item
|
||
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_1_1detail}{serif\+::solver\+::preconditioner\+::computations\+::detail}}
|
||
|
|
\end{DoxyCompactItemize}
|
||
|
|
\doxysubsubsection*{Typedefs}
|
||
|
|
\begin{DoxyCompactItemize}
|
||
|
|
\item
|
||
|
|
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1keys_a51c4360b9a88a40c2171089db75a643a}{serif\+::solver\+::preconditioner\+::keys\+::\+Layout}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1keys_1_1_layout}{discretization\+::blocks\+::keys\+::\+Layout}}
|
||
|
|
\begin{DoxyCompactList}\small\item\em Preconditioning consumes the same coordinate layout as every other numerical service. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
|
|
\doxysubsubsection*{Functions}
|
||
|
|
\begin{DoxyCompactItemize}
|
||
|
|
\item
|
||
|
|
{\footnotesize template$<$\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}} Kind, typename Layout, typename... Coordinates$>$ }\\std\+::size\+\_\+t \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_a0b5442f7837137f112bc8a5d80956b78}{serif\+::solver\+::preconditioner\+::computations\+::selected\+\_\+size}} (const Layout \&layout, \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Coordinates... $>$)
|
||
|
|
\begin{DoxyCompactList}\small\item\em Count the declared coordinates of a selected physical block. \end{DoxyCompactList}\item
|
||
|
|
{\footnotesize template$<$typename Key, typename Layout$>$ }\\std\+::expected$<$ void, \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1_failure}{Failure}} $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_af2c8198f4a2f0aaabe4dbcfa97110e1c}{serif\+::solver\+::preconditioner\+::computations\+::validate\+\_\+physical\+\_\+layout}} (const Layout \&layout, const \mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{operators\+::backend\+::mfem\+::\+Linearized\+Block}} \&block)
|
||
|
|
\begin{DoxyCompactList}\small\item\em Detect incorrect per-\/field sizes even when the total packed dimensions happen to agree. \end{DoxyCompactList}\item
|
||
|
|
{\footnotesize template$<$\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}} Kind, typename Layout, typename... Coordinates$>$ }\\std\+::expected$<$ std\+::vector$<$ int $>$, \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1_failure}{Failure}} $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_a2baa22db93917a92523fc5c5d323db78}{serif\+::solver\+::preconditioner\+::computations\+::ordered\+\_\+indices}} (const Layout \&layout, \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Coordinates... $>$)
|
||
|
|
\begin{DoxyCompactList}\small\item\em Map each root coefficient to the recipe\textquotesingle{}s explicit subsystem ordering. \end{DoxyCompactList}\item
|
||
|
|
{\footnotesize template$<$typename Recipe, typename Layout, typename... Physical\+Keys$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_a93a14d176124c789b6d75a9a3a4e4d5c}{serif\+::solver\+::preconditioner\+::computations\+::ordering}} (\mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Physical\+Keys... $>$)
|
||
|
|
\begin{DoxyCompactList}\small\item\em Bind one inverse to independently ordered state and residual vectors through the common layout. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
|
|
\doxysubsubsection*{Variables}
|
||
|
|
\begin{DoxyCompactItemize}
|
||
|
|
\item
|
||
|
|
{\footnotesize template$<$typename Key$>$ }\\constexpr bool \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_1_1detail_afcae4dbd9e6d48ee20ff826aa3f63d6d}{serif\+::solver\+::preconditioner\+::computations\+::detail\+::is\+\_\+physical\+\_\+block}} = false
|
||
|
|
\item
|
||
|
|
{\footnotesize template$<$typename Rows, typename Values$>$ }\\constexpr bool \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1computations_1_1detail_a9c1fdb229c4eec4c2e766153a2d123d0}{serif\+::solver\+::preconditioner\+::computations\+::detail\+::is\+\_\+physical\+\_\+block$<$ operators\+::\+Physical\+Block$<$ Rows, Values $>$ $>$}} = true
|
||
|
|
\end{DoxyCompactItemize}
|