Files
MeanField_SERiF/docs/latex/namespaceserif_1_1model_1_1checks.tex
Emily Boudreaux 6b57738330 docs(docs): built docs
Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
2026-11-09 14:09:44 -05:00

244 lines
30 KiB
TeX

\doxysection{serif\+::model\+::checks Namespace Reference}
\hypertarget{namespaceserif_1_1model_1_1checks}{}\label{namespaceserif_1_1model_1_1checks}\index{serif::model::checks@{serif::model::checks}}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_binding}{Binding}}
\begin{DoxyCompactList}\small\item\em Only the binding\textquotesingle{}s physical identity is needed to check public overload constraints. \end{DoxyCompactList}\item
struct \mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan}{Fixed\+Plan}}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_moving_plan}{Moving\+Plan}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Concepts}
\begin{DoxyCompactItemize}
\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1checks_1_1_reads_field}{Reads\+Field}}
\begin{DoxyCompactList}\small\item\em Check field availability and owner lifetime without instantiating a getter body. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1checks_1_1_reads_values}{Reads\+Values}}
\begin{DoxyCompactList}\small\item\em Packed views must remain tied to an lvalue owning state. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1checks_1_1_reads_layout}{Reads\+Layout}}
\begin{DoxyCompactList}\small\item\em Layout references cannot survive destruction of a temporary owning state. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1checks_1_1_can_evaluate}{Can\+Evaluate}}
\begin{DoxyCompactList}\small\item\em Unsupported state and prescribed-\/field combinations must fail during overload selection. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1checks_1_1_can_prepare_linear_system}{Can\+Prepare\+Linear\+System}}
\begin{DoxyCompactList}\small\item\em Linear preparation needs both a selected recipe and a valid candidate binding. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}} = blocks\+::density\+::mass
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}} = blocks\+::rotation\+::angular\+\_\+velocity
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}} = blocks\+::surface\+\_\+deformation\+::coefficients
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}{Shape\+Row}} = blocks\+::surface\+\_\+deformation\+::shape\+\_\+equilibrium
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}{Values}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{Rows}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}{Shape\+Row}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}{Layout}} = blocks\+::\+System\+Layout$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}{Values}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{Rows}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a335a55b91174c009b17de5f19d4bab9e}{State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}{Layout}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}} = dependencies\+::\+Dependency\+Context$<$$>$
\item
{\footnotesize template$<$typename Key, typename Term = Key$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}} = decltype(dependencies\+::own$<$Key$>$(std\+::declval$<$\mbox{\hyperlink{structserif_1_1operators_1_1backend_1_1mfem_1_1_coefficient_view}{operators\+::backend\+::mfem\+::\+Coefficient\+View}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_binding}{Binding}}$<$Term$>$$>$$>$()))
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a532eb432037ebaa8679c5d4c5cb6ae71}{Rotation\+Inputs}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_accd5eafc530dfeee6fbc87f79474f5c9}{Wrong\+Identity}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a48e974054ad97d32febb3a913be4e97a}{Wrong\+Value}} = decltype(dependencies\+::make\+\_\+dependency\+\_\+context(dependencies\+::own$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$(1.\+0)))
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a449d520183c36c926a0f4cef0fd48353}{Overlap}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a8f1b88e6af4b309b466eb4909596eb36}{Shape\+Overlap}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a8e51a63a5ebe4ab762eb9ceea5c55106}{Complete\+Fields}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{Graph}}
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_af5e8e21f9a309a234c23039c133fe9a6}{Moving\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_moving_plan}{Moving\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a83a7493d4c7760c566e4245af2706d53}{Fixed\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan}{Fixed\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{Prepared\+Graph}}
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a46d916c4508a99bba62e58d429980d5e}{Moving\+Prepared\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_moving_plan}{Moving\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{Prepared\+Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_acc3e76ae08e20b2c3a5cf3a1820e4619}{Fixed\+Prepared\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan}{Fixed\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{Prepared\+Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a447eafad85777c436b94d244938c9d21}{Fixed\+State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan_ad2907b7a085de29ee1eb711a0ebc2253}{Fixed\+Plan\+::\+Layout}}$>$
\item
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a06c2ca9588c23b311e36451e21e3e6a3}{Other\+State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$blocks\+::\+System\+Layout$<$dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{Rows}}$>$$>$
\end{DoxyCompactItemize}
\doxysubsection{Typedef Documentation}
\Hypertarget{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}\index{serif::model::checks@{serif::model::checks}!CoefficientSource@{CoefficientSource}}
\index{CoefficientSource@{CoefficientSource}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{CoefficientSource}{CoefficientSource}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}
template$<$typename Key, typename Term = Key$>$ \\
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{serif\+::model\+::checks\+::\+Coefficient\+Source}} = decltype(dependencies\+::own$<$Key$>$(std\+::declval$<$\mbox{\hyperlink{structserif_1_1operators_1_1backend_1_1mfem_1_1_coefficient_view}{operators\+::backend\+::mfem\+::\+Coefficient\+View}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_binding}{Binding}}$<$Term$>$$>$$>$()))}
\Hypertarget{namespaceserif_1_1model_1_1checks_a8e51a63a5ebe4ab762eb9ceea5c55106}\index{serif::model::checks@{serif::model::checks}!CompleteFields@{CompleteFields}}
\index{CompleteFields@{CompleteFields}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{CompleteFields}{CompleteFields}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a8e51a63a5ebe4ab762eb9ceea5c55106}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a8e51a63a5ebe4ab762eb9ceea5c55106}{serif\+::model\+::checks\+::\+Complete\+Fields}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}\index{serif::model::checks@{serif::model::checks}!Density@{Density}}
\index{Density@{Density}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Density}{Density}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{serif\+::model\+::checks\+::\+Density}} = blocks\+::density\+::mass}
\Hypertarget{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}\index{serif::model::checks@{serif::model::checks}!EmptyInputs@{EmptyInputs}}
\index{EmptyInputs@{EmptyInputs}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{EmptyInputs}{EmptyInputs}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{serif\+::model\+::checks\+::\+Empty\+Inputs}} = dependencies\+::\+Dependency\+Context$<$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a83a7493d4c7760c566e4245af2706d53}\index{serif::model::checks@{serif::model::checks}!FixedEvaluator@{FixedEvaluator}}
\index{FixedEvaluator@{FixedEvaluator}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{FixedEvaluator}{FixedEvaluator}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a83a7493d4c7760c566e4245af2706d53}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a83a7493d4c7760c566e4245af2706d53}{serif\+::model\+::checks\+::\+Fixed\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan}{Fixed\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_acc3e76ae08e20b2c3a5cf3a1820e4619}\index{serif::model::checks@{serif::model::checks}!FixedPreparedEvaluator@{FixedPreparedEvaluator}}
\index{FixedPreparedEvaluator@{FixedPreparedEvaluator}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{FixedPreparedEvaluator}{FixedPreparedEvaluator}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_acc3e76ae08e20b2c3a5cf3a1820e4619}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_acc3e76ae08e20b2c3a5cf3a1820e4619}{serif\+::model\+::checks\+::\+Fixed\+Prepared\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan}{Fixed\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{Prepared\+Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a447eafad85777c436b94d244938c9d21}\index{serif::model::checks@{serif::model::checks}!FixedState@{FixedState}}
\index{FixedState@{FixedState}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{FixedState}{FixedState}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a447eafad85777c436b94d244938c9d21}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a447eafad85777c436b94d244938c9d21}{serif\+::model\+::checks\+::\+Fixed\+State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_fixed_plan_ad2907b7a085de29ee1eb711a0ebc2253}{Fixed\+Plan\+::\+Layout}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}\index{serif::model::checks@{serif::model::checks}!Graph@{Graph}}
\index{Graph@{Graph}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Graph}{Graph}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{serif\+::model\+::checks\+::\+Graph}}}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{\ \textcolor{keyword}{decltype}(dependencies::make\_computation\_graph(}
\DoxyCodeLine{\ \ \ \ \ \ \ \ dependencies::make\_computation<\mbox{\hyperlink{structserif_1_1model_1_1keys_1_1_physical_system}{keys::PhysicalSystem}},\ dependencies::InputList<>>([]()\ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \})))}
\end{DoxyCode}
\Hypertarget{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}\index{serif::model::checks@{serif::model::checks}!Layout@{Layout}}
\index{Layout@{Layout}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Layout}{Layout}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}{serif\+::model\+::checks\+::\+Layout}} = blocks\+::\+System\+Layout$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}{Values}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{Rows}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_af5e8e21f9a309a234c23039c133fe9a6}\index{serif::model::checks@{serif::model::checks}!MovingEvaluator@{MovingEvaluator}}
\index{MovingEvaluator@{MovingEvaluator}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{MovingEvaluator}{MovingEvaluator}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_af5e8e21f9a309a234c23039c133fe9a6}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_af5e8e21f9a309a234c23039c133fe9a6}{serif\+::model\+::checks\+::\+Moving\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_moving_plan}{Moving\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a1f24fce060f149d5c4cfa79d234244be}{Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a46d916c4508a99bba62e58d429980d5e}\index{serif::model::checks@{serif::model::checks}!MovingPreparedEvaluator@{MovingPreparedEvaluator}}
\index{MovingPreparedEvaluator@{MovingPreparedEvaluator}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{MovingPreparedEvaluator}{MovingPreparedEvaluator}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a46d916c4508a99bba62e58d429980d5e}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a46d916c4508a99bba62e58d429980d5e}{serif\+::model\+::checks\+::\+Moving\+Prepared\+Evaluator}} = execution\+::\+Equilibrium\+Evaluator$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_bound}{Bound}}$<$\mbox{\hyperlink{structserif_1_1model_1_1checks_1_1_moving_plan}{Moving\+Plan}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{Prepared\+Graph}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0bf4c43c2062e41e83bb79d1f37db6d4}{Empty\+Inputs}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a06c2ca9588c23b311e36451e21e3e6a3}\index{serif::model::checks@{serif::model::checks}!OtherState@{OtherState}}
\index{OtherState@{OtherState}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{OtherState}{OtherState}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a06c2ca9588c23b311e36451e21e3e6a3}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a06c2ca9588c23b311e36451e21e3e6a3}{serif\+::model\+::checks\+::\+Other\+State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$blocks\+::\+System\+Layout$<$dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{Rows}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a449d520183c36c926a0f4cef0fd48353}\index{serif::model::checks@{serif::model::checks}!Overlap@{Overlap}}
\index{Overlap@{Overlap}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Overlap}{Overlap}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a449d520183c36c926a0f4cef0fd48353}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a449d520183c36c926a0f4cef0fd48353}{serif\+::model\+::checks\+::\+Overlap}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}\index{serif::model::checks@{serif::model::checks}!PreparedGraph@{PreparedGraph}}
\index{PreparedGraph@{PreparedGraph}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{PreparedGraph}{PreparedGraph}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0c15395b83c58d8179dba45c1a029b03}{serif\+::model\+::checks\+::\+Prepared\+Graph}}}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{\ \textcolor{keyword}{decltype}(dependencies::make\_computation\_graph(}
\DoxyCodeLine{\ \ \ \ \ \ \ \ dependencies::make\_computation<\mbox{\hyperlink{structserif_1_1model_1_1keys_1_1_physical_system}{keys::PhysicalSystem}},\ dependencies::InputList<>>([]()\ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \}),\ dependencies::make\_computation<preconditioning::PreparedSystem,\ dependencies::InputList<keys::PhysicalSystem>>([](\textcolor{keywordtype}{int}\ value)\ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ value;}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \})))}
\end{DoxyCode}
\Hypertarget{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}\index{serif::model::checks@{serif::model::checks}!Rotation@{Rotation}}
\index{Rotation@{Rotation}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Rotation}{Rotation}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{serif\+::model\+::checks\+::\+Rotation}} = blocks\+::rotation\+::angular\+\_\+velocity}
\Hypertarget{namespaceserif_1_1model_1_1checks_a532eb432037ebaa8679c5d4c5cb6ae71}\index{serif::model::checks@{serif::model::checks}!RotationInputs@{RotationInputs}}
\index{RotationInputs@{RotationInputs}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{RotationInputs}{RotationInputs}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a532eb432037ebaa8679c5d4c5cb6ae71}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a532eb432037ebaa8679c5d4c5cb6ae71}{serif\+::model\+::checks\+::\+Rotation\+Inputs}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}\index{serif::model::checks@{serif::model::checks}!Rows@{Rows}}
\index{Rows@{Rows}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Rows}{Rows}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a68a6e5b462c5a29e862b40d6e6ddb977}{serif\+::model\+::checks\+::\+Rows}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}{Shape\+Row}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}\index{serif::model::checks@{serif::model::checks}!Shape@{Shape}}
\index{Shape@{Shape}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Shape}{Shape}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{serif\+::model\+::checks\+::\+Shape}} = blocks\+::surface\+\_\+deformation\+::coefficients}
\Hypertarget{namespaceserif_1_1model_1_1checks_a8f1b88e6af4b309b466eb4909596eb36}\index{serif::model::checks@{serif::model::checks}!ShapeOverlap@{ShapeOverlap}}
\index{ShapeOverlap@{ShapeOverlap}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{ShapeOverlap}{ShapeOverlap}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a8f1b88e6af4b309b466eb4909596eb36}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a8f1b88e6af4b309b466eb4909596eb36}{serif\+::model\+::checks\+::\+Shape\+Overlap}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}$>$, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}\index{serif::model::checks@{serif::model::checks}!ShapeRow@{ShapeRow}}
\index{ShapeRow@{ShapeRow}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{ShapeRow}{ShapeRow}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_aee1c40955bf65f7effa23bcfa0c48503}{serif\+::model\+::checks\+::\+Shape\+Row}} = blocks\+::surface\+\_\+deformation\+::shape\+\_\+equilibrium}
\Hypertarget{namespaceserif_1_1model_1_1checks_a335a55b91174c009b17de5f19d4bab9e}\index{serif::model::checks@{serif::model::checks}!State@{State}}
\index{State@{State}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{State}{State}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a335a55b91174c009b17de5f19d4bab9e}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a335a55b91174c009b17de5f19d4bab9e}{serif\+::model\+::checks\+::\+State}} = \mbox{\hyperlink{structserif_1_1model_1_1_stellar_state}{Stellar\+State}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a25b09ef80aa03c71690f75564edb5cba}{Layout}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}\index{serif::model::checks@{serif::model::checks}!Values@{Values}}
\index{Values@{Values}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{Values}{Values}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a64f7be84d64cb0d2bd45448160d2be00}{serif\+::model\+::checks\+::\+Values}} = dependencies\+::\+Key\+List$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ac0d3ec42b0ba8c641587dacbda968b0d}{Shape}}$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_accd5eafc530dfeee6fbc87f79474f5c9}\index{serif::model::checks@{serif::model::checks}!WrongIdentity@{WrongIdentity}}
\index{WrongIdentity@{WrongIdentity}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{WrongIdentity}{WrongIdentity}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_accd5eafc530dfeee6fbc87f79474f5c9}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_accd5eafc530dfeee6fbc87f79474f5c9}{serif\+::model\+::checks\+::\+Wrong\+Identity}} = dependencies\+::\+Dependency\+Context$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a05db01a3848b8701da4156ee4b7b5743}{Coefficient\+Source}}$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}, \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a0f801ed67f347eac5044c9400d863209}{Density}}$>$$>$}
\Hypertarget{namespaceserif_1_1model_1_1checks_a48e974054ad97d32febb3a913be4e97a}\index{serif::model::checks@{serif::model::checks}!WrongValue@{WrongValue}}
\index{WrongValue@{WrongValue}!serif::model::checks@{serif::model::checks}}
\doxysubsubsection{\texorpdfstring{WrongValue}{WrongValue}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1checks_a48e974054ad97d32febb3a913be4e97a}
using \mbox{\hyperlink{namespaceserif_1_1model_1_1checks_a48e974054ad97d32febb3a913be4e97a}{serif\+::model\+::checks\+::\+Wrong\+Value}} = decltype(dependencies\+::make\+\_\+dependency\+\_\+context(dependencies\+::own$<$\mbox{\hyperlink{namespaceserif_1_1model_1_1checks_ab56460b20c275d11bb144559357f18c9}{Rotation}}$>$(1.\+0)))}