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)
329 lines
40 KiB
TeX
329 lines
40 KiB
TeX
\doxysection{serif\+::solver\+::normalization Namespace Reference}
|
||
\hypertarget{namespaceserif_1_1solver_1_1normalization}{}\label{namespaceserif_1_1solver_1_1normalization}\index{serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection*{Namespaces}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1backend}{backend}}
|
||
\item
|
||
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1checks}{checks}}
|
||
\item
|
||
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1detail}{detail}}
|
||
\item
|
||
namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1keys}{keys}}
|
||
\end{DoxyCompactItemize}
|
||
\doxysubsubsection*{Classes}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_automatic_plan}{Automatic\+Plan}}
|
||
\begin{DoxyCompactList}\small\item\em Derive the coordinate rules from the selected fields, equations and boundary formulation. \end{DoxyCompactList}\item
|
||
class \mbox{\hyperlink{classserif_1_1solver_1_1normalization_1_1_diagonal_normalization}{Diagonal\+Normalization}}
|
||
\begin{DoxyCompactList}\small\item\em Own the frozen, independent state and residual transformations used by one solve. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless}{Dimensionless}}
|
||
\begin{DoxyCompactList}\small\item\em Remove physical and geometric units from the solver\textquotesingle{}s coordinates and norms. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless_metric_geometry}{Dimensionless\+Metric\+Geometry}}
|
||
\begin{DoxyCompactList}\small\item\em Require custom metrics to declare their geometric convention explicitly. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless_metric_geometry_3_01geometry_1_1deforma6be1597e60f90b119b47e9401d531cd8}{Dimensionless\+Metric\+Geometry$<$ geometry\+::deformation\+::keys\+::\+Surface\+Metric $>$}}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless_metric_geometry_3_01_reference_volume_metric_3_01_term_t_01_4_01_4}{Dimensionless\+Metric\+Geometry$<$ Reference\+Volume\+Metric$<$ Term\+T $>$ $>$}}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless_metric_geometry_3_01_unit_metric_01_4}{Dimensionless\+Metric\+Geometry$<$ Unit\+Metric $>$}}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_dimensionless_riesz_coordinate}{Dimensionless\+Riesz\+Coordinate}}
|
||
\begin{DoxyCompactList}\small\item\em Measure coordinates using dimensionless physical fields and reference geometry. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_from_model}{From\+Model}}
|
||
\begin{DoxyCompactList}\small\item\em Obtain a reference value from the corresponding descriptive model prescription. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_identity_coordinate}{Identity\+Coordinate}}
|
||
\begin{DoxyCompactList}\small\item\em Leave the declared coordinates unchanged, including their physical units. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_lane_emden_approximation}{Lane\+Emden\+Approximation}}
|
||
\begin{DoxyCompactList}\small\item\em Estimate a reference radius from a Lane–\+Emden shape, mass and central density. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_metric_coordinates}{Metric\+Coordinates}}
|
||
\begin{DoxyCompactList}\small\item\em Metric keys advertise the coordinate identities they measure; a same-\/sized unrelated metric is insufficient. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_metric_coordinates_3_01geometry_1_1deformation_1_1keys_1_1_surface_metric_01_4}{Metric\+Coordinates$<$ geometry\+::deformation\+::keys\+::\+Surface\+Metric $>$}}
|
||
\begin{DoxyCompactList}\small\item\em Consume deformation\textquotesingle{}s existing metric directly in both native shape-\/coordinate roles. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_metric_coordinates_3_01_metric_t_00_01std_1_1void__t_7159054dec962eec3c70ff59a02679f9}{Metric\+Coordinates$<$ Metric\+T, std\+::void\+\_\+t$<$ typename Metric\+T\+::\+Coordinates $>$ $>$}}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_metric_coordinates_3_01_unit_metric_01_4}{Metric\+Coordinates$<$ Unit\+Metric $>$}}
|
||
\begin{DoxyCompactList}\small\item\em Permit a Euclidean norm of algebraic surface moments after their measure is made dimensionless. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_normalization_options}{Normalization\+Options}}
|
||
\begin{DoxyCompactList}\small\item\em Declare normalization without evaluating a reference star or allocating coordinate factors. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_normalization_plan}{Normalization\+Plan}}
|
||
\begin{DoxyCompactList}\small\item\em Independent term-\/to-\/method and row-\/to-\/method maps; their order does not define the packed layout. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_normalization_prescription_tag}{Normalization\+Prescription\+Tag}}
|
||
\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_physical_riesz_coordinate}{Physical\+Riesz\+Coordinate}}
|
||
\begin{DoxyCompactList}\small\item\em Measure a physical quantity with the named reference Gram diagonal. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_reference_volume_metric}{Reference\+Volume\+Metric}}
|
||
\begin{DoxyCompactList}\small\item\em Identify a reference volume metric by its physical term, including its support and FE representation. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_runtime_prepared_coordinate}{Runtime\+Prepared\+Coordinate}}
|
||
\begin{DoxyCompactList}\small\item\em Identify the exact prescription supplying positive factors; this never claims identity scaling. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}
|
||
\begin{DoxyCompactList}\small\item\em Fixed reference scales used throughout a solve, independent of its candidate state. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_unit_metric}{Unit\+Metric}}
|
||
\begin{DoxyCompactList}\small\item\em A unit Gram metric for algebraic coordinates, still subject to physical scaling. \end{DoxyCompactList}\item
|
||
struct \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_with_point_rows}{With\+Point\+Rows}}
|
||
\begin{DoxyCompactList}\small\item\em Replace selected volume residual rows by point residuals with their own physical quantity. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
\doxysubsubsection*{Concepts}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_normalization_preparable}{Normalization\+Preparable}}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_reference_scheme}{Reference\+Scheme}}
|
||
\begin{DoxyCompactList}\small\item\em A custom stellar reference strategy supplies the same typed scales and ordinary failure value. \end{DoxyCompactList}\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_coordinate_layout_type}{Coordinate\+Layout\+Type}}
|
||
\begin{DoxyCompactList}\small\item\em Normalization consumes the same coordinate representation as physical operators and solvers. \end{DoxyCompactList}\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_metric_for}{Metric\+For}}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_normalization_prescription}{Normalization\+Prescription}}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_normalization_plan_type}{Normalization\+Plan\+Type}}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_complete_normalization_for}{Complete\+Normalization\+For}}
|
||
\item
|
||
concept \mbox{\hyperlink{conceptserif_1_1solver_1_1normalization_1_1_stellar_scale_quantity}{Stellar\+Scale\+Quantity}}
|
||
\begin{DoxyCompactList}\small\item\em Quantities whose characteristic scales follow from reference mass, radius, and G alone. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
\doxysubsubsection*{Typedefs}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
{\footnotesize template$<$utils\+::dependencies\+::\+Is\+Key\+List Values, utils\+::dependencies\+::\+Is\+Key\+List Residuals$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a8b854a2e50341cf923faee8adcc03903}{Coordinate\+Layout}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1_system_layout}{discretization\+::blocks\+::\+System\+Layout}}$<$Values, Residuals$>$
|
||
\begin{DoxyCompactList}\small\item\em Compatibility spelling for the shared discretization layout. \end{DoxyCompactList}\item
|
||
{\footnotesize template$<$discretization\+::blocks\+::\+Has\+Quantity TermT$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a72b7fb70be44d723b1115bd0561de14a}{Physical\+Value\+Rule}} = \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_binding}{utils\+::dependencies\+::\+Binding}}$<$TermT, \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_physical_riesz_coordinate}{Physical\+Riesz\+Coordinate}}$<$typename Term\+T\+::\+Quantity, typename decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1detail_aa52112c59b823c93a41498c9b4d2f39b}{detail\+::default\+\_\+metric}}$<$TermT$>$())\+::type$>$$>$
|
||
\begin{DoxyCompactList}\small\item\em Describe an unknown from its existing quantity, support, and functional-\/space metadata. \end{DoxyCompactList}\item
|
||
{\footnotesize template$<$typename EquationT$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a487b77abc2a4a2b63e10a7c95ddfc0a1}{Physical\+Residual\+Rule}} = \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_binding}{utils\+::dependencies\+::\+Binding}}$<$EquationT, \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_physical_riesz_coordinate}{Physical\+Riesz\+Coordinate}}$<$typename Equation\+T\+::\+Residual\+Quantity, typename decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1detail_aa52112c59b823c93a41498c9b4d2f39b}{detail\+::default\+\_\+metric}}$<$EquationT$>$())\+::type$>$$>$
|
||
\begin{DoxyCompactList}\small\item\em Describe a residual using the equation\textquotesingle{}s declared quantity, which may differ from the unknown it closes. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
\doxysubsubsection*{Enumerations}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
enum class \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9}{Reference\+Geometry}} \{ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9a210ab9e731c9c36c2c38db15c28a8d1c}{volume}}
|
||
, \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ad302e976c9dd527a9521a88c012437c5}{surface}}
|
||
, \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ac7f6ad568392380a8f4b4cecbaccb64c}{algebraic}}
|
||
\}
|
||
\begin{DoxyCompactList}\small\item\em Identify the geometric convention of a reference coordinate metric. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||
\doxysubsubsection*{Functions}
|
||
\begin{DoxyCompactItemize}
|
||
\item
|
||
{\footnotesize template$<$typename PlanT, typename ScalesT = Stellar\+Reference\+Scales, typename LayoutT$>$ \newline
|
||
requires Normalization\+Preparable$<$PlanT, LayoutT, ScalesT$>$}\\auto \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a7540a7b41f57c928bae80c99d29f0706}{make\+\_\+normalization\+\_\+computations}} (const LayoutT \&)
|
||
\begin{DoxyCompactList}\small\item\em Declare normalization as ordinary dependency computations; no metrics or factors are prepared here. \end{DoxyCompactList}\item
|
||
{\footnotesize template$<$typename Scheme, typename Coordinates, typename Plan, typename Sources, typename Computations$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a58791243c886657505170066c10584ab}{make\+\_\+normalization}} (\mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_normalization_options}{Normalization\+Options}}$<$ Scheme, Coordinates, Plan, Sources, Computations $>$ options)
|
||
\begin{DoxyCompactList}\small\item\em Preserve the deduced numerical choices for later preparation with a model and discretization. \end{DoxyCompactList}\item
|
||
auto \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_aabc0313890d07ed3a2e0afd47597dcef}{make\+\_\+normalization}} ()
|
||
\begin{DoxyCompactList}\small\item\em Select the usual dimensionless Lane–\+Emden reference; supply its central density before resolving it against a model. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a1a787fb498a34fbc3def51c8bfddde35}{prepare\+\_\+reference\+\_\+scales}} (const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_lane_emden_approximation}{Lane\+Emden\+Approximation}}$<$ \mbox{\hyperlink{namespaceserif_1_1dimensions_a66499323cee57a1033e7b203a9198c24}{dimensions\+::\+Mass\+Value}}, \mbox{\hyperlink{namespaceserif_1_1dimensions_af7f8c68a704a7bf475c60dbad5f98d78}{dimensions\+::\+Density\+Value}} $>$ \&scheme, \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$ gravitational\+\_\+constant)
|
||
\begin{DoxyCompactList}\small\item\em Derive the shared stellar scales after both dimensional reference inputs have been resolved. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac1e9d275253e074720b819188ef1b8c6}{prepare\+\_\+reference\+\_\+scales}} (const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}} \&reference, \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$ gravitational\+\_\+constant)
|
||
\begin{DoxyCompactList}\small\item\em Use explicitly prepared reference scales through the same graph as estimated references. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ double, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a8e6459e314714cea6cad28808cd4b598}{make\+\_\+riesz\+\_\+factor}} (\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}} kind, double metric, double physical\+\_\+scale)
|
||
\begin{DoxyCompactList}\small\item\em Prepare one primal sqrt(metric)/scale or dual 1/(scale sqrt(metric)) factor. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac6e625b3ce743074b92dd17eaef58b9a}{make\+\_\+riesz\+\_\+factors}} (\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}} kind, std\+::span$<$ const double $>$ metric, double physical\+\_\+scale)
|
||
\begin{DoxyCompactList}\small\item\em Prepare diagonal Riesz factors, reporting which coordinate has invalid data. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ \mbox{\hyperlink{classserif_1_1solver_1_1normalization_1_1_diagonal_normalization}{Diagonal\+Normalization}}, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_aabf5cac29f49d4d8d91c3f3725c8abfd}{make\+\_\+diagonal\+\_\+normalization}} (std\+::vector$<$ double $>$ state, std\+::vector$<$ double $>$ residual)
|
||
\begin{DoxyCompactList}\small\item\em Validate and freeze independent coordinate factors, including empty or rectangular systems. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a2b4fefc2ef0c9b127e218f1dbcec5996}{make\+\_\+point\+\_\+replaced\+\_\+residual\+\_\+factors}} (std\+::span$<$ const double $>$ volume\+\_\+metric, double volume\+\_\+scale, std\+::span$<$ const int $>$ selected\+\_\+rows, double point\+\_\+scale)
|
||
\begin{DoxyCompactList}\small\item\em Measure volume and replacement point residuals in their independently specified physical units. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ae1f83b0a78860b4a776e9aeca1641e87}{prepare\+\_\+stellar\+\_\+reference\+\_\+scales}} (\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass}{dimensions\+::\+Mass}} $>$ mass, \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_length}{dimensions\+::\+Length}} $>$ radius, \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$ gravitational\+\_\+constant=\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$\{1.\+0\})
|
||
\begin{DoxyCompactList}\small\item\em Derive gravitational stellar scales from a finite, positive reference mass, radius, and G. \end{DoxyCompactList}\item
|
||
{\footnotesize template$<$Stellar\+Scale\+Quantity Quantity$>$ }\\\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ Quantity $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a74d0b96b4c77b8bb83c994bb15152cf8}{characteristic\+\_\+scale}} (const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}} \&scales, Quantity)
|
||
\begin{DoxyCompactList}\small\item\em Select a typed scale; temperature and other unrelated quantities require an explicit prescription. \end{DoxyCompactList}\item
|
||
std\+::expected$<$ double, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a42f566c3c71f2e32f0e59c75e965ddd0}{make\+\_\+riesz\+\_\+factor}} (Kind kind, double metric, double physical\+\_\+scale)
|
||
\item
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_aa7c88e620e5229286c5fbc3ac824e9fa}{make\+\_\+riesz\+\_\+factors}} (Kind kind, std\+::span$<$ const double $>$ metric, double physical\+\_\+scale)
|
||
\end{DoxyCompactItemize}
|
||
|
||
|
||
\doxysubsection{Typedef Documentation}
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a8b854a2e50341cf923faee8adcc03903}\index{serif::solver::normalization@{serif::solver::normalization}!CoordinateLayout@{CoordinateLayout}}
|
||
\index{CoordinateLayout@{CoordinateLayout}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{CoordinateLayout}{CoordinateLayout}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a8b854a2e50341cf923faee8adcc03903}
|
||
template$<$utils\+::dependencies\+::\+Is\+Key\+List Values, utils\+::dependencies\+::\+Is\+Key\+List Residuals$>$ \\
|
||
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a8b854a2e50341cf923faee8adcc03903}{serif\+::solver\+::normalization\+::\+Coordinate\+Layout}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1_system_layout}{discretization\+::blocks\+::\+System\+Layout}}$<$Values, Residuals$>$}
|
||
|
||
|
||
|
||
Compatibility spelling for the shared discretization layout.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a487b77abc2a4a2b63e10a7c95ddfc0a1}\index{serif::solver::normalization@{serif::solver::normalization}!PhysicalResidualRule@{PhysicalResidualRule}}
|
||
\index{PhysicalResidualRule@{PhysicalResidualRule}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{PhysicalResidualRule}{PhysicalResidualRule}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a487b77abc2a4a2b63e10a7c95ddfc0a1}
|
||
template$<$typename EquationT$>$ \\
|
||
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a487b77abc2a4a2b63e10a7c95ddfc0a1}{serif\+::solver\+::normalization\+::\+Physical\+Residual\+Rule}} = \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_binding}{utils\+::dependencies\+::\+Binding}}$<$EquationT, \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_physical_riesz_coordinate}{Physical\+Riesz\+Coordinate}}$<$typename Equation\+T\+::\+Residual\+Quantity, typename decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1detail_aa52112c59b823c93a41498c9b4d2f39b}{detail\+::default\+\_\+metric}}$<$EquationT$>$())\+::type$>$$>$}
|
||
|
||
|
||
|
||
Describe a residual using the equation\textquotesingle{}s declared quantity, which may differ from the unknown it closes.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a72b7fb70be44d723b1115bd0561de14a}\index{serif::solver::normalization@{serif::solver::normalization}!PhysicalValueRule@{PhysicalValueRule}}
|
||
\index{PhysicalValueRule@{PhysicalValueRule}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{PhysicalValueRule}{PhysicalValueRule}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a72b7fb70be44d723b1115bd0561de14a}
|
||
template$<$discretization\+::blocks\+::\+Has\+Quantity TermT$>$ \\
|
||
using \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_a72b7fb70be44d723b1115bd0561de14a}{serif\+::solver\+::normalization\+::\+Physical\+Value\+Rule}} = \mbox{\hyperlink{structserif_1_1utils_1_1dependencies_1_1_binding}{utils\+::dependencies\+::\+Binding}}$<$TermT, \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_physical_riesz_coordinate}{Physical\+Riesz\+Coordinate}}$<$typename Term\+T\+::\+Quantity, typename decltype(\mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_1_1detail_aa52112c59b823c93a41498c9b4d2f39b}{detail\+::default\+\_\+metric}}$<$TermT$>$())\+::type$>$$>$}
|
||
|
||
|
||
|
||
Describe an unknown from its existing quantity, support, and functional-\/space metadata.
|
||
|
||
|
||
|
||
\doxysubsection{Enumeration Type Documentation}
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9}\index{serif::solver::normalization@{serif::solver::normalization}!ReferenceGeometry@{ReferenceGeometry}}
|
||
\index{ReferenceGeometry@{ReferenceGeometry}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{ReferenceGeometry}{ReferenceGeometry}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9}
|
||
enum class \mbox{\hyperlink{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9}{serif\+::solver\+::normalization\+::\+Reference\+Geometry}}\hspace{0.3cm}{\ttfamily [strong]}}
|
||
|
||
|
||
|
||
Identify the geometric convention of a reference coordinate metric.
|
||
|
||
\begin{DoxyEnumFields}[2]{Enumerator}
|
||
\raisebox{\heightof{T}}[0pt][0pt]{\index{volume@{volume}!serif::solver::normalization@{serif::solver::normalization}}\index{serif::solver::normalization@{serif::solver::normalization}!volume@{volume}}}\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9a210ab9e731c9c36c2c38db15c28a8d1c}\label{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9a210ab9e731c9c36c2c38db15c28a8d1c}
|
||
volume&\\
|
||
\hline
|
||
|
||
\raisebox{\heightof{T}}[0pt][0pt]{\index{surface@{surface}!serif::solver::normalization@{serif::solver::normalization}}\index{serif::solver::normalization@{serif::solver::normalization}!surface@{surface}}}\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ad302e976c9dd527a9521a88c012437c5}\label{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ad302e976c9dd527a9521a88c012437c5}
|
||
surface&\\
|
||
\hline
|
||
|
||
\raisebox{\heightof{T}}[0pt][0pt]{\index{algebraic@{algebraic}!serif::solver::normalization@{serif::solver::normalization}}\index{serif::solver::normalization@{serif::solver::normalization}!algebraic@{algebraic}}}\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ac7f6ad568392380a8f4b4cecbaccb64c}\label{namespaceserif_1_1solver_1_1normalization_ac75238439fd5d1610b177bf85e9376d9ac7f6ad568392380a8f4b4cecbaccb64c}
|
||
algebraic&\\
|
||
\hline
|
||
|
||
\end{DoxyEnumFields}
|
||
|
||
|
||
\doxysubsection{Function Documentation}
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a74d0b96b4c77b8bb83c994bb15152cf8}\index{serif::solver::normalization@{serif::solver::normalization}!characteristic\_scale@{characteristic\_scale}}
|
||
\index{characteristic\_scale@{characteristic\_scale}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{characteristic\_scale()}{characteristic\_scale()}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a74d0b96b4c77b8bb83c994bb15152cf8}
|
||
template$<$Stellar\+Scale\+Quantity Quantity$>$ \\
|
||
\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ Quantity $>$ serif\+::solver\+::normalization\+::characteristic\+\_\+scale (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}} \&}]{scales}{, }\item[{Quantity}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Select a typed scale; temperature and other unrelated quantities require an explicit prescription.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_aabf5cac29f49d4d8d91c3f3725c8abfd}\index{serif::solver::normalization@{serif::solver::normalization}!make\_diagonal\_normalization@{make\_diagonal\_normalization}}
|
||
\index{make\_diagonal\_normalization@{make\_diagonal\_normalization}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_diagonal\_normalization()}{make\_diagonal\_normalization()}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_aabf5cac29f49d4d8d91c3f3725c8abfd}
|
||
std\+::expected$<$ \mbox{\hyperlink{classserif_1_1solver_1_1normalization_1_1_diagonal_normalization}{Diagonal\+Normalization}}, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+diagonal\+\_\+normalization (\begin{DoxyParamCaption}\item[{std\+::vector$<$ double $>$}]{state}{, }\item[{std\+::vector$<$ double $>$}]{residual}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Validate and freeze independent coordinate factors, including empty or rectangular systems.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_aabc0313890d07ed3a2e0afd47597dcef}\index{serif::solver::normalization@{serif::solver::normalization}!make\_normalization@{make\_normalization}}
|
||
\index{make\_normalization@{make\_normalization}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_normalization()}{make\_normalization()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_aabc0313890d07ed3a2e0afd47597dcef}
|
||
auto serif\+::solver\+::normalization\+::make\+\_\+normalization (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Select the usual dimensionless Lane–\+Emden reference; supply its central density before resolving it against a model.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a58791243c886657505170066c10584ab}\index{serif::solver::normalization@{serif::solver::normalization}!make\_normalization@{make\_normalization}}
|
||
\index{make\_normalization@{make\_normalization}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_normalization()}{make\_normalization()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a58791243c886657505170066c10584ab}
|
||
template$<$typename Scheme, typename Coordinates, typename Plan, typename Sources, typename Computations$>$ \\
|
||
auto serif\+::solver\+::normalization\+::make\+\_\+normalization (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_normalization_options}{Normalization\+Options}}$<$ Scheme, Coordinates, Plan, Sources, Computations $>$}]{options}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Preserve the deduced numerical choices for later preparation with a model and discretization.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a7540a7b41f57c928bae80c99d29f0706}\index{serif::solver::normalization@{serif::solver::normalization}!make\_normalization\_computations@{make\_normalization\_computations}}
|
||
\index{make\_normalization\_computations@{make\_normalization\_computations}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_normalization\_computations()}{make\_normalization\_computations()}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a7540a7b41f57c928bae80c99d29f0706}
|
||
template$<$typename PlanT, typename ScalesT = Stellar\+Reference\+Scales, typename LayoutT$>$ \newline
|
||
requires Normalization\+Preparable$<$PlanT, LayoutT, ScalesT$>$\\
|
||
auto serif\+::solver\+::normalization\+::make\+\_\+normalization\+\_\+computations (\begin{DoxyParamCaption}\item[{const LayoutT \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Declare normalization as ordinary dependency computations; no metrics or factors are prepared here.
|
||
|
||
\begin{DoxyNote}{Note}
|
||
Supply \doxylink{namespaceserif_1_1solver_1_1normalization_1_1keys_a01d33c80ce728df0cb2687eebe9ea921}{keys\+::\+Layout}, \doxylink{structserif_1_1solver_1_1normalization_1_1keys_1_1_scales}{keys\+::\+Scales}, and the plan\textquotesingle{}s metric/selection/prescription sources. Copy the accepted \doxylink{classserif_1_1solver_1_1normalization_1_1_diagonal_normalization}{Diagonal\+Normalization} to freeze one solve before preparing later candidates.
|
||
\end{DoxyNote}
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a2b4fefc2ef0c9b127e218f1dbcec5996}\index{serif::solver::normalization@{serif::solver::normalization}!make\_point\_replaced\_residual\_factors@{make\_point\_replaced\_residual\_factors}}
|
||
\index{make\_point\_replaced\_residual\_factors@{make\_point\_replaced\_residual\_factors}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_point\_replaced\_residual\_factors()}{make\_point\_replaced\_residual\_factors()}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a2b4fefc2ef0c9b127e218f1dbcec5996}
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+point\+\_\+replaced\+\_\+residual\+\_\+factors (\begin{DoxyParamCaption}\item[{std\+::span$<$ const double $>$}]{volume\+\_\+metric}{, }\item[{double}]{volume\+\_\+scale}{, }\item[{std\+::span$<$ const int $>$}]{selected\+\_\+rows}{, }\item[{double}]{point\+\_\+scale}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Measure volume and replacement point residuals in their independently specified physical units.
|
||
|
||
\begin{DoxyNote}{Note}
|
||
Only replaced rows may have a zero or otherwise unusable volume metric. No bulk factor is evaluated for them.
|
||
\end{DoxyNote}
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a8e6459e314714cea6cad28808cd4b598}\index{serif::solver::normalization@{serif::solver::normalization}!make\_riesz\_factor@{make\_riesz\_factor}}
|
||
\index{make\_riesz\_factor@{make\_riesz\_factor}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_riesz\_factor()}{make\_riesz\_factor()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a8e6459e314714cea6cad28808cd4b598}
|
||
std\+::expected$<$ double, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+riesz\+\_\+factor (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}}}]{kind}{, }\item[{double}]{metric}{, }\item[{double}]{physical\+\_\+scale}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Prepare one primal sqrt(metric)/scale or dual 1/(scale sqrt(metric)) factor.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a42f566c3c71f2e32f0e59c75e965ddd0}\index{serif::solver::normalization@{serif::solver::normalization}!make\_riesz\_factor@{make\_riesz\_factor}}
|
||
\index{make\_riesz\_factor@{make\_riesz\_factor}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_riesz\_factor()}{make\_riesz\_factor()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a42f566c3c71f2e32f0e59c75e965ddd0}
|
||
std\+::expected$<$ double, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+riesz\+\_\+factor (\begin{DoxyParamCaption}\item[{Kind}]{kind}{, }\item[{double}]{metric}{, }\item[{double}]{physical\+\_\+scale}{}\end{DoxyParamCaption})}
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac6e625b3ce743074b92dd17eaef58b9a}\index{serif::solver::normalization@{serif::solver::normalization}!make\_riesz\_factors@{make\_riesz\_factors}}
|
||
\index{make\_riesz\_factors@{make\_riesz\_factors}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_riesz\_factors()}{make\_riesz\_factors()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_ac6e625b3ce743074b92dd17eaef58b9a}
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+riesz\+\_\+factors (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceserif_1_1discretization_1_1blocks_aca74ff25d2168fcdec080e03ebc023ea}{discretization\+::blocks\+::\+Represented\+Value\+Kind}}}]{kind}{, }\item[{std\+::span$<$ const double $>$}]{metric}{, }\item[{double}]{physical\+\_\+scale}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Prepare diagonal Riesz factors, reporting which coordinate has invalid data.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_aa7c88e620e5229286c5fbc3ac824e9fa}\index{serif::solver::normalization@{serif::solver::normalization}!make\_riesz\_factors@{make\_riesz\_factors}}
|
||
\index{make\_riesz\_factors@{make\_riesz\_factors}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{make\_riesz\_factors()}{make\_riesz\_factors()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_aa7c88e620e5229286c5fbc3ac824e9fa}
|
||
std\+::expected$<$ std\+::vector$<$ double $>$, std\+::string $>$ serif\+::solver\+::normalization\+::make\+\_\+riesz\+\_\+factors (\begin{DoxyParamCaption}\item[{Kind}]{kind}{, }\item[{std\+::span$<$ const double $>$}]{metric}{, }\item[{double}]{physical\+\_\+scale}{}\end{DoxyParamCaption})}
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_a1a787fb498a34fbc3def51c8bfddde35}\index{serif::solver::normalization@{serif::solver::normalization}!prepare\_reference\_scales@{prepare\_reference\_scales}}
|
||
\index{prepare\_reference\_scales@{prepare\_reference\_scales}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{prepare\_reference\_scales()}{prepare\_reference\_scales()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_a1a787fb498a34fbc3def51c8bfddde35}
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ serif\+::solver\+::normalization\+::prepare\+\_\+reference\+\_\+scales (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_lane_emden_approximation}{Lane\+Emden\+Approximation}}$<$ \mbox{\hyperlink{namespaceserif_1_1dimensions_a66499323cee57a1033e7b203a9198c24}{dimensions\+::\+Mass\+Value}}, \mbox{\hyperlink{namespaceserif_1_1dimensions_af7f8c68a704a7bf475c60dbad5f98d78}{dimensions\+::\+Density\+Value}} $>$ \&}]{scheme}{, }\item[{\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$}]{gravitational\+\_\+constant}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Derive the shared stellar scales after both dimensional reference inputs have been resolved.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_ac1e9d275253e074720b819188ef1b8c6}\index{serif::solver::normalization@{serif::solver::normalization}!prepare\_reference\_scales@{prepare\_reference\_scales}}
|
||
\index{prepare\_reference\_scales@{prepare\_reference\_scales}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{prepare\_reference\_scales()}{prepare\_reference\_scales()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_ac1e9d275253e074720b819188ef1b8c6}
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ serif\+::solver\+::normalization\+::prepare\+\_\+reference\+\_\+scales (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}} \&}]{reference}{, }\item[{\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$}]{gravitational\+\_\+constant}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Use explicitly prepared reference scales through the same graph as estimated references.
|
||
|
||
\Hypertarget{namespaceserif_1_1solver_1_1normalization_ae1f83b0a78860b4a776e9aeca1641e87}\index{serif::solver::normalization@{serif::solver::normalization}!prepare\_stellar\_reference\_scales@{prepare\_stellar\_reference\_scales}}
|
||
\index{prepare\_stellar\_reference\_scales@{prepare\_stellar\_reference\_scales}!serif::solver::normalization@{serif::solver::normalization}}
|
||
\doxysubsubsection{\texorpdfstring{prepare\_stellar\_reference\_scales()}{prepare\_stellar\_reference\_scales()}}
|
||
{\footnotesize\ttfamily \label{namespaceserif_1_1solver_1_1normalization_ae1f83b0a78860b4a776e9aeca1641e87}
|
||
std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1normalization_1_1_stellar_reference_scales}{Stellar\+Reference\+Scales}}, std\+::string $>$ serif\+::solver\+::normalization\+::prepare\+\_\+stellar\+\_\+reference\+\_\+scales (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass}{dimensions\+::\+Mass}} $>$}]{mass}{, }\item[{\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_length}{dimensions\+::\+Length}} $>$}]{radius}{, }\item[{\mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$ \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}} $>$}]{gravitational\+\_\+constant}{ = {\ttfamily \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{dimensions\+::\+Quantity\+Value}}$<$\mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{dimensions\+::\+Gravitational\+Constant}}$>$\{1.0\}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
||
|
||
|
||
|
||
Derive gravitational stellar scales from a finite, positive reference mass, radius, and G.
|
||
|