serif::model::normalization serif::model::normalization::Configuration serif::model::normalization::InfinityRows serif::model::normalization::PreparedSystem serif::model::normalization::SurfaceRows serif::model::normalization::detail typename Selection typename Coordinates typename Bound typename detail::SelectPlan< Selection, Coordinates, Bound >::Type using serif::model::normalization::PlanFor = typename detail::SelectPlan<Selection, Coordinates, Bound>::Type PlanFor serif::model::normalization::PlanFor Compile automatic physics-aware rules or retain the user's complete explicit plan. typename Plan utils::dependencies::CombinedKeyList< typename detail::RuleMetrics< typename Plan::Values >::Type, typename detail::RuleMetrics< typename Plan::Residuals >::Type > using serif::model::normalization::MetricsFor = utils::dependencies::CombinedKeyList<typename detail::RuleMetrics<typename Plan::Values>::Type, typename detail::RuleMetrics<typename Plan::Residuals>::Type> MetricsFor serif::model::normalization::MetricsFor Assemble each metric once even when several state and residual rules share it. typename Options typename Discretization typename... Metrics Metrics auto auto serif::model::normalization::make_inputs (std::shared_ptr< const Options > options, const Discretization &discretization, utils::dependencies::KeyList< Metrics... >) make_inputs serif::model::normalization::make_inputs std::shared_ptr< const Options > options const Discretization & discretization utils::dependencies::KeyList< Metrics... > Keep the immutable configuration alive and reference metrics separate from candidate coefficients. typename NormalizationPlan typename Bound typename Options typename Layout typename... Metrics Metrics auto auto serif::model::normalization::make_computations (const Bound &bound, const Options &options, const Layout &layout, utils::dependencies::KeyList< Metrics... >) make_computations serif::model::normalization::make_computations const Bound & bound const Options & options const Layout & layout utils::dependencies::KeyList< Metrics... > Compose normalization into the physical graph, including the selected surface row replacement. typename Mass typename Density StellarModelType Model Model auto auto serif::model::normalization::resolve_reference (const solver::normalization::LaneEmdenApproximation< Mass, Density > &scheme, const Model &model) resolve_reference serif::model::normalization::resolve_reference const solver::normalization::LaneEmdenApproximation< Mass, Density > & scheme const Model & model detail::ReferenceAvailable<Mass, Model, FixedTotalMass> && std::same_as<Density, dimensions::DensityValue> Resolve the Lane–Emden reference from explicit inputs or the model's mass target; no model prescribes central density. solver::normalization::ReferenceScheme Scheme Scheme StellarModelType Model Model Scheme Scheme serif::model::normalization::resolve_reference (const Scheme &scheme, const Model &) resolve_reference serif::model::normalization::resolve_reference const Scheme & scheme const Model & Explicit or custom reference schemes need no model-specific defaults. typename Options StellarModelType Model Model auto auto serif::model::normalization::resolve_configuration (Options options, const Model &model) resolve_configuration serif::model::normalization::resolve_configuration Options options const Model & model ReferenceResolvable<Options, Model> Freeze resolved reference choices while retaining the deduced coordinate and plan types.