Files
MeanField_SERiF/docs/latex/namespaceserif_1_1model_1_1normalization.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

137 lines
13 KiB
TeX
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
\doxysection{serif\+::model\+::normalization Namespace Reference}
\hypertarget{namespaceserif_1_1model_1_1normalization}{}\label{namespaceserif_1_1model_1_1normalization}\index{serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_1_1detail}{detail}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1_configuration}{Configuration}}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1_infinity_rows}{Infinity\+Rows}}
\begin{DoxyCompactList}\small\item\em Potential rows replaced by the zero trace at compactified infinity. \end{DoxyCompactList}\item
struct \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1_prepared_system}{Prepared\+System}}
\item
struct \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1_surface_rows}{Surface\+Rows}}
\begin{DoxyCompactList}\small\item\em Reduced equation rows whose volume residual is replaced by the selected surface condition. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Concepts}
\begin{DoxyCompactItemize}
\item
concept \mbox{\hyperlink{conceptserif_1_1model_1_1normalization_1_1_reference_resolvable}{Reference\+Resolvable}}
\begin{DoxyCompactList}\small\item\em Check model-\/provided reference requirements before instantiating numerical preparation. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item
{\footnotesize template$<$typename Selection, typename Coordinates, typename Bound$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_a20221d8368d5bf0b36f03e7755fc6d64}{Plan\+For}} = typename \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1detail_1_1_select_plan}{detail\+::\+Select\+Plan}}$<$Selection, Coordinates, Bound$>$\+::\+Type
\begin{DoxyCompactList}\small\item\em Compile automatic physics-\/aware rules or retain the user\textquotesingle{}s complete explicit plan. \end{DoxyCompactList}\item
{\footnotesize template$<$typename Plan$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_a9bca7844875f31e08df105bc8da44c69}{Metrics\+For}}
\begin{DoxyCompactList}\small\item\em Assemble each metric once even when several state and residual rules share it. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
{\footnotesize template$<$typename Options, typename Discretization, typename... Metrics$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_abadff187532235162a96bd1da3f76730}{make\+\_\+inputs}} (std\+::shared\+\_\+ptr$<$ const Options $>$ options, const Discretization \&discretization, \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Metrics... $>$)
\begin{DoxyCompactList}\small\item\em Keep the immutable configuration alive and reference metrics separate from candidate coefficients. \end{DoxyCompactList}\item
{\footnotesize template$<$typename Normalization\+Plan, typename Bound, typename Options, typename Layout, typename... Metrics$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_afa784ae747a3faf8c4b595119d2fb151}{make\+\_\+computations}} (const Bound \&bound, const Options \&options, const Layout \&layout, \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Metrics... $>$)
\begin{DoxyCompactList}\small\item\em Compose normalization into the physical graph, including the selected surface row replacement. \end{DoxyCompactList}\item
{\footnotesize template$<$typename Mass, typename Density, Stellar\+Model\+Type Model$>$ \newline
requires detail\+::\+Reference\+Available$<$Mass, Model, \mbox{\hyperlink{classserif_1_1model_1_1_fixed_total_mass}{Fixed\+Total\+Mass}}$>$ \&\& std\+::same\+\_\+as$<$Density, \mbox{\hyperlink{namespaceserif_1_1dimensions_af7f8c68a704a7bf475c60dbad5f98d78}{dimensions\+::\+Density\+Value}}$>$}\\auto \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_aad8500244bb5debae8de93881311505c}{resolve\+\_\+reference}} (const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_lane_emden_approximation}{solver\+::normalization\+::\+Lane\+Emden\+Approximation}}$<$ Mass, Density $>$ \&scheme, const Model \&model)
\begin{DoxyCompactList}\small\item\em Resolve the Lane–\+Emden reference from explicit inputs or the model\textquotesingle{}s mass target; no model prescribes central density. \end{DoxyCompactList}\item
{\footnotesize template$<$solver\+::normalization\+::\+Reference\+Scheme Scheme, Stellar\+Model\+Type Model$>$ }\\Scheme \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_af1f75aeb12a566859ea4dbd2ed52cdc4}{resolve\+\_\+reference}} (const Scheme \&scheme, const Model \&)
\begin{DoxyCompactList}\small\item\em Explicit or custom reference schemes need no model-\/specific defaults. \end{DoxyCompactList}\item
{\footnotesize template$<$typename Options, Stellar\+Model\+Type Model$>$ \newline
requires Reference\+Resolvable$<$Options, Model$>$}\\auto \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_a1ed5daad7a452214875d436c7ae8f289}{resolve\+\_\+configuration}} (Options options, const Model \&model)
\begin{DoxyCompactList}\small\item\em Freeze resolved reference choices while retaining the deduced coordinate and plan types. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Typedef Documentation}
\Hypertarget{namespaceserif_1_1model_1_1normalization_a9bca7844875f31e08df105bc8da44c69}\index{serif::model::normalization@{serif::model::normalization}!MetricsFor@{MetricsFor}}
\index{MetricsFor@{MetricsFor}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{MetricsFor}{MetricsFor}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_a9bca7844875f31e08df105bc8da44c69}
template$<$typename Plan$>$ \\
using \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_a9bca7844875f31e08df105bc8da44c69}{serif\+::model\+::normalization\+::\+Metrics\+For}}}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{\ \mbox{\hyperlink{namespaceserif_1_1utils_1_1dependencies_a4b225a37465f007a877f89860d3627c1}{utils::dependencies::CombinedKeyList<typename\ detail::RuleMetrics<typename\ Plan::Values>::Type}},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keyword}{typename}\ \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1detail_1_1_rule_metrics}{detail::RuleMetrics<typename\ Plan::Residuals>::Type}}>}
\end{DoxyCode}
Assemble each metric once even when several state and residual rules share it.
\Hypertarget{namespaceserif_1_1model_1_1normalization_a20221d8368d5bf0b36f03e7755fc6d64}\index{serif::model::normalization@{serif::model::normalization}!PlanFor@{PlanFor}}
\index{PlanFor@{PlanFor}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{PlanFor}{PlanFor}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_a20221d8368d5bf0b36f03e7755fc6d64}
template$<$typename Selection, typename Coordinates, typename Bound$>$ \\
using \mbox{\hyperlink{namespaceserif_1_1model_1_1normalization_a20221d8368d5bf0b36f03e7755fc6d64}{serif\+::model\+::normalization\+::\+Plan\+For}} = typename \mbox{\hyperlink{structserif_1_1model_1_1normalization_1_1detail_1_1_select_plan}{detail\+::\+Select\+Plan}}$<$Selection, Coordinates, Bound$>$\+::\+Type}
Compile automatic physics-\/aware rules or retain the user\textquotesingle{}s complete explicit plan.
\doxysubsection{Function Documentation}
\Hypertarget{namespaceserif_1_1model_1_1normalization_afa784ae747a3faf8c4b595119d2fb151}\index{serif::model::normalization@{serif::model::normalization}!make\_computations@{make\_computations}}
\index{make\_computations@{make\_computations}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{make\_computations()}{make\_computations()}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_afa784ae747a3faf8c4b595119d2fb151}
template$<$typename Normalization\+Plan, typename Bound, typename Options, typename Layout, typename... Metrics$>$ \\
auto serif\+::model\+::normalization\+::make\+\_\+computations (\begin{DoxyParamCaption}\item[{const Bound \&}]{bound}{, }\item[{const Options \&}]{options}{, }\item[{const Layout \&}]{layout}{, }\item[{\mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Metrics... $>$}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
Compose normalization into the physical graph, including the selected surface row replacement.
\Hypertarget{namespaceserif_1_1model_1_1normalization_abadff187532235162a96bd1da3f76730}\index{serif::model::normalization@{serif::model::normalization}!make\_inputs@{make\_inputs}}
\index{make\_inputs@{make\_inputs}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{make\_inputs()}{make\_inputs()}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_abadff187532235162a96bd1da3f76730}
template$<$typename Options, typename Discretization, typename... Metrics$>$ \\
auto serif\+::model\+::normalization\+::make\+\_\+inputs (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ const Options $>$}]{options}{, }\item[{const Discretization \&}]{discretization}{, }\item[{\mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_key_list}{utils\+::dependencies\+::\+Key\+List}}$<$ Metrics... $>$}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
Keep the immutable configuration alive and reference metrics separate from candidate coefficients.
\Hypertarget{namespaceserif_1_1model_1_1normalization_a1ed5daad7a452214875d436c7ae8f289}\index{serif::model::normalization@{serif::model::normalization}!resolve\_configuration@{resolve\_configuration}}
\index{resolve\_configuration@{resolve\_configuration}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{resolve\_configuration()}{resolve\_configuration()}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_a1ed5daad7a452214875d436c7ae8f289}
template$<$typename Options, Stellar\+Model\+Type Model$>$ \newline
requires Reference\+Resolvable$<$Options, Model$>$\\
auto serif\+::model\+::normalization\+::resolve\+\_\+configuration (\begin{DoxyParamCaption}\item[{Options}]{options}{, }\item[{const Model \&}]{model}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
Freeze resolved reference choices while retaining the deduced coordinate and plan types.
\Hypertarget{namespaceserif_1_1model_1_1normalization_af1f75aeb12a566859ea4dbd2ed52cdc4}\index{serif::model::normalization@{serif::model::normalization}!resolve\_reference@{resolve\_reference}}
\index{resolve\_reference@{resolve\_reference}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{resolve\_reference()}{resolve\_reference()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_af1f75aeb12a566859ea4dbd2ed52cdc4}
template$<$solver\+::normalization\+::\+Reference\+Scheme Scheme, Stellar\+Model\+Type Model$>$ \\
Scheme serif\+::model\+::normalization\+::resolve\+\_\+reference (\begin{DoxyParamCaption}\item[{const Scheme \&}]{scheme}{, }\item[{const Model \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
Explicit or custom reference schemes need no model-\/specific defaults.
\Hypertarget{namespaceserif_1_1model_1_1normalization_aad8500244bb5debae8de93881311505c}\index{serif::model::normalization@{serif::model::normalization}!resolve\_reference@{resolve\_reference}}
\index{resolve\_reference@{resolve\_reference}!serif::model::normalization@{serif::model::normalization}}
\doxysubsubsection{\texorpdfstring{resolve\_reference()}{resolve\_reference()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \label{namespaceserif_1_1model_1_1normalization_aad8500244bb5debae8de93881311505c}
template$<$typename Mass, typename Density, Stellar\+Model\+Type Model$>$ \newline
requires detail\+::\+Reference\+Available$<$Mass, Model, \mbox{\hyperlink{classserif_1_1model_1_1_fixed_total_mass}{Fixed\+Total\+Mass}}$>$ \&\& std\+::same\+\_\+as$<$Density, \mbox{\hyperlink{namespaceserif_1_1dimensions_af7f8c68a704a7bf475c60dbad5f98d78}{dimensions\+::\+Density\+Value}}$>$\\
auto serif\+::model\+::normalization\+::resolve\+\_\+reference (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_lane_emden_approximation}{solver\+::normalization\+::\+Lane\+Emden\+Approximation}}$<$ Mass, Density $>$ \&}]{scheme}{, }\item[{const Model \&}]{model}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
Resolve the Lane–\+Emden reference from explicit inputs or the model\textquotesingle{}s mass target; no model prescribes central density.