Files
MeanField_SERiF/docs/latex/ordering_8hpp.tex

72 lines
6.7 KiB
TeX
Raw Normal View History

\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}