Files
MeanField_SERiF/docs/latex/layout_8cpp.tex

108 lines
12 KiB
TeX
Raw Normal View History

\doxysection{src/compile\+\_\+time\+\_\+checks/serif/solver/preconditioner/layout.cpp File Reference}
\hypertarget{layout_8cpp}{}\label{layout_8cpp}\index{src/compile\_time\_checks/serif/solver/preconditioner/layout.cpp@{src/compile\_time\_checks/serif/solver/preconditioner/layout.cpp}}
{\ttfamily \#include $<$concepts$>$}\newline
{\ttfamily \#include $<$array$>$}\newline
{\ttfamily \#include $<$span$>$}\newline
{\ttfamily \#include $<$type\+\_\+traits$>$}\newline
{\ttfamily \#include $<$utility$>$}\newline
{\ttfamily \#include $<$vector$>$}\newline
{\ttfamily \#include "{}serif/discretization/blocks/fields.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/discretization/blocks/vector\+\_\+view.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/operators/linearized\+\_\+system\+\_\+view.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/solver/normalization/layout.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/solver/normalization/keys.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/backend/mfem/solver/preconditioner/computations/ordering.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/solver/preconditioner/default\+\_\+preconditioners.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/utils/dependencies/dependencies.\+hpp"{}}\newline
Include dependency graph for layout.\+cpp\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{layout_8cpp__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
struct \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1checks_1_1_extra_field}{serif\+::solver\+::preconditioner\+::checks\+::\+Extra\+Field}}
\item
struct \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1checks_1_1_extra_value}{serif\+::solver\+::preconditioner\+::checks\+::\+Extra\+Value}}
\item
struct \mbox{\hyperlink{structserif_1_1solver_1_1preconditioner_1_1checks_1_1_extra_row}{serif\+::solver\+::preconditioner\+::checks\+::\+Extra\+Row}}
\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_1checks}{serif\+::solver\+::preconditioner\+::checks}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Concepts}
\begin{DoxyCompactItemize}
\item
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1preconditioner_1_1checks_1_1_reads_coordinate}{serif\+::solver\+::preconditioner\+::checks\+::\+Reads\+Coordinate}}
\begin{DoxyCompactList}\small\item\em Detection of an absent coordinate must fail in constraints instead of instantiating a function body. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1preconditioner_1_1checks_1_1_reads_block}{serif\+::solver\+::preconditioner\+::checks\+::\+Reads\+Block}}
\begin{DoxyCompactList}\small\item\em Only declared equation/unknown pairs are exposed by a borrowed linearization. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1preconditioner_1_1checks_1_1_has_offset}{serif\+::solver\+::preconditioner\+::checks\+::\+Has\+Offset}}
\begin{DoxyCompactList}\small\item\em Malformed coordinate requests remain detection-\/safe on the owning metadata as well. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1preconditioner_1_1checks_1_1_has_primal_preconditioner}{serif\+::solver\+::preconditioner\+::checks\+::\+Has\+Primal\+Preconditioner}}
\begin{DoxyCompactList}\small\item\em Keep unsupported coordinate sets out of the primal recipe before its body is instantiated. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_ae448d9c52432cf59dd1795980f1829bc}{serif\+::solver\+::preconditioner\+::checks\+::\+Kind}} = blocks\+::\+Represented\+Value\+Kind
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a078a73213b02df0577774643995c87bf}{serif\+::solver\+::preconditioner\+::checks\+::\+Mass}} = blocks\+::barotropic\+\_\+constant\+::mass\+\_\+normalization
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a73960fb3033e1ba0ad73dede87e96633}{serif\+::solver\+::preconditioner\+::checks\+::\+Reaction}} = blocks\+::frame\+\_\+acceleration\+::component$<$0$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a318cb3e924cf595bb09ff5bd8cfe7fdb}{serif\+::solver\+::preconditioner\+::checks\+::\+Density}} = blocks\+::density\+::mass
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_aa3fc96739043ce941add04cc5d6d67fb}{serif\+::solver\+::preconditioner\+::checks\+::\+Keys}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a078a73213b02df0577774643995c87bf}{Mass}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a73960fb3033e1ba0ad73dede87e96633}{Reaction}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_afb0e84193f3983f6a397af3c0813eb46}{serif\+::solver\+::preconditioner\+::checks\+::\+Layout}} = blocks\+::\+System\+Layout$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_aa3fc96739043ce941add04cc5d6d67fb}{Keys}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_aa3fc96739043ce941add04cc5d6d67fb}{Keys}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a7abff0667b7366d788c4672ebe9b9027}{serif\+::solver\+::preconditioner\+::checks\+::\+State}} = blocks\+::\+State\+View$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_afb0e84193f3983f6a397af3c0813eb46}{Layout}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a3cd5e0d76dcea813a4fe80b4eb8d9b91}{serif\+::solver\+::preconditioner\+::checks\+::\+Constant\+State}} = blocks\+::\+State\+View$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_afb0e84193f3983f6a397af3c0813eb46}{Layout}}, const double$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a0176b5eefc9e8f15ba17e40c9016798e}{serif\+::solver\+::preconditioner\+::checks\+::\+Physical}} = \mbox{\hyperlink{structserif_1_1operators_1_1_physical_block}{operators\+::\+Physical\+Block}}$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a078a73213b02df0577774643995c87bf}{Mass}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a73960fb3033e1ba0ad73dede87e96633}{Reaction}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_ad330485dd536c6eb6c00f5c04fcde58c}{serif\+::solver\+::preconditioner\+::checks\+::\+Sources}} = decltype(dependencies\+::make\+\_\+dependency\+\_\+context(dependencies\+::own$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a0176b5eefc9e8f15ba17e40c9016798e}{Physical}}$>$(1)))
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a4596c30faf0855227abbabd465a0f883}{serif\+::solver\+::preconditioner\+::checks\+::\+System}} = \mbox{\hyperlink{classserif_1_1operators_1_1_linearized_system_view}{operators\+::\+Linearized\+System\+View}}$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_afb0e84193f3983f6a397af3c0813eb46}{Layout}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_ad330485dd536c6eb6c00f5c04fcde58c}{Sources}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a0441f130ee842cf62915bab9ef87a299}{serif\+::solver\+::preconditioner\+::checks\+::\+Reordered\+Layout}} = blocks\+::\+System\+Layout$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_aa3fc96739043ce941add04cc5d6d67fb}{Keys}}, dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a73960fb3033e1ba0ad73dede87e96633}{Reaction}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a078a73213b02df0577774643995c87bf}{Mass}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_af109bec3cd4a26fe8b234f9c538df4ef}{serif\+::solver\+::preconditioner\+::checks\+::\+Potential}} = blocks\+::gravity\+::potential
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_abc0b1c6b549265466b1b52f6b71718bd}{serif\+::solver\+::preconditioner\+::checks\+::\+Rotation}} = blocks\+::rotation\+::angular\+\_\+velocity
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a320deada98c3f56528915540045f0ca2}{serif\+::solver\+::preconditioner\+::checks\+::\+Shape}} = blocks\+::surface\+\_\+deformation\+::coefficients
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a0122c390aa87e00c661cc7e360f94578}{serif\+::solver\+::preconditioner\+::checks\+::\+Shape\+Row}} = blocks\+::surface\+\_\+deformation\+::shape\+\_\+equilibrium
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a41d58fd871f120699f3d0a8d36bf0c9a}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Fields}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a318cb3e924cf595bb09ff5bd8cfe7fdb}{Density}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_af109bec3cd4a26fe8b234f9c538df4ef}{Potential}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a6fc13921980fa8ab9664beee17e7a9c8}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Fixed\+Layout}} = blocks\+::\+System\+Layout$<$\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a41d58fd871f120699f3d0a8d36bf0c9a}{Primal\+Fields}}, \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a41d58fd871f120699f3d0a8d36bf0c9a}{Primal\+Fields}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a9b252a067432f9ccd1c0a3565c75a94e}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Moving\+Layout}}
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a75c9b522ea43c52ef0427b328ac03caf}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Recipe}} = decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_aa5c6d8ad540ecaca25de3555918566f3}{make\+\_\+primal\+\_\+preconditioner}}(std\+::declval$<$const \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a9b252a067432f9ccd1c0a3565c75a94e}{Primal\+Moving\+Layout}}\&$>$()))
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a4ad89e1c6094b31366bbe5c12da9ef5a}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Extra\+Layout}}
\item
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_adc27368f10f2bf26c1be45125e6e9140}{serif\+::solver\+::preconditioner\+::checks\+::\+Primal\+Extra\+Recipe}} = decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_aa5c6d8ad540ecaca25de3555918566f3}{make\+\_\+primal\+\_\+preconditioner}}(std\+::declval$<$const \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a4ad89e1c6094b31366bbe5c12da9ef5a}{Primal\+Extra\+Layout}}\&$>$()))
\end{DoxyCompactItemize}
\doxysubsubsection*{Variables}
\begin{DoxyCompactItemize}
\item
constexpr \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a0441f130ee842cf62915bab9ef87a299}{Reordered\+Layout}} \mbox{\hyperlink{namespaceserif_1_1solver_1_1preconditioner_1_1checks_a5aa91ea04af2f811d8939d28f645d1f3}{serif\+::solver\+::preconditioner\+::checks\+::resolved\+\_\+layout}}
\end{DoxyCompactItemize}