Files
MeanField_SERiF/docs/man/man3/serif_solver_normalization_checks.3
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

503 lines
23 KiB
Groff

.TH "serif::solver::normalization::checks" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
.ad l
.nh
.SH NAME
serif::solver::normalization::checks
.SH SYNOPSIS
.br
.PP
.SS "Classes"
.in +1c
.ti -1c
.RI "struct \fBAliasesOnlyLayout\fP"
.br
.ti -1c
.RI "struct \fBBorrowedPreparationResult\fP"
.br
.ti -1c
.RI "struct \fBCentralRow\fP"
.br
.ti -1c
.RI "struct \fBConvertiblePrescription\fP"
.br
.ti -1c
.RI "struct \fBCustomDensityMetric\fP"
.br
.ti -1c
.RI "struct \fBCustomMetric\fP"
.br
.ti -1c
.RI "struct \fBDerivedPrescription\fP"
.br
.ti -1c
.RI "struct \fBDuplicateMetricCoordinates\fP"
.br
.ti -1c
.RI "struct \fBFirstResidual\fP"
.br
.ti -1c
.RI "struct \fBFirstValue\fP"
.br
.ti -1c
.RI "struct \fBForeignCoordinate\fP"
.br
.ti -1c
.RI "struct \fBMalformedMetric\fP"
.br
.ti -1c
.RI "struct \fBMassRow\fP"
.br
.ti -1c
.RI "struct \fBMissingMetricMetadata\fP"
.br
.ti -1c
.RI "struct \fBMoveOnlyPrescription\fP"
.br
.ti -1c
.RI "struct \fBPreparedPrescription\fP"
.br
.ti -1c
.RI "struct \fBPressureRow\fP"
.br
.ti -1c
.RI "struct \fBPretendRieszMethod\fP"
.br
.ti -1c
.RI "struct \fBSecondResidual\fP"
.br
.ti -1c
.RI "struct \fBSecondValue\fP"
.br
.ti -1c
.RI "struct \fBSelectedSurfaceRows\fP"
.br
.ti -1c
.RI "struct \fBSelection\fP"
.br
.ti -1c
.RI "struct \fBSharedFieldMetric\fP"
.br
.ti -1c
.RI "struct \fBStateOnlyPrescription\fP"
.br
.ti -1c
.RI "struct \fBTemperatureCoordinate\fP"
.br
.ti -1c
.RI "struct \fBTemperatureMetric\fP"
.br
.ti -1c
.RI "struct \fBTemperatureScales\fP"
.br
.ti -1c
.RI "struct \fBUntypedTemperatureScales\fP"
.br
.ti -1c
.RI "struct \fBWrongPreparationResult\fP"
.br
.in -1c
.SS "Concepts"
.in +1c
.ti -1c
.RI "concept \fBHasDefaultDimensionlessGeometry\fP"
.br
.RI "Custom metrics must state their coordinate convention instead of silently assuming volume weighting\&. "
.ti -1c
.RI "concept \fBCanDeclareLayout\fP"
.br
.RI "Keep invalid layout declarations safely testable without instantiating their storage\&. "
.ti -1c
.RI "concept \fBCanDeclareRuntimeMethod\fP"
.br
.RI "Require explicit policy identity rather than accepting unrelated preparation-like objects\&. "
.in -1c
.SS "Typedefs"
.in +1c
.ti -1c
.RI "using \fBDensity\fP = \fBdiscretization::blocks::density::mass\fP"
.br
.ti -1c
.RI "using \fBPotential\fP = \fBdiscretization::blocks::gravity::potential\fP"
.br
.ti -1c
.RI "using \fBShape\fP = \fBdiscretization::blocks::surface_deformation::coefficients\fP"
.br
.ti -1c
.RI "using \fBShapeRow\fP = \fBdiscretization::blocks::surface_deformation::shape_equilibrium\fP"
.br
.ti -1c
.RI "using \fBMassConstant\fP = \fBdiscretization::blocks::barotropic_constant::mass_normalization\fP"
.br
.ti -1c
.RI "using \fBSurfaceMetric\fP = \fBgeometry::deformation::keys::SurfaceMetric\fP"
.br
.ti -1c
.RI "using \fBDensityMethod\fP = \fBDimensionlessRieszCoordinate\fP<\fBdimensions::MassDensity\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.br
.ti -1c
.RI "using \fBDensityLayout\fP = \fBCoordinateLayout\fP<dependencies::KeyList<\fBDensity\fP>, dependencies::KeyList<\fBDensity\fP>>"
.br
.ti -1c
.RI "using \fBDensityPlan\fP"
.br
.ti -1c
.RI "using \fBPressurePlan\fP"
.br
.ti -1c
.RI "using \fBSelectedMethod\fP = \fBWithPointRows\fP<\fBDensityMethod\fP, \fBdimensions::Pressure\fP, \fBSelection\fP>"
.br
.ti -1c
.RI "using \fBSurfacePlan\fP"
.br
.ti -1c
.RI "using \fBScalarPlan\fP"
.br
.ti -1c
.RI "using \fBCustomPlan\fP"
.br
.ti -1c
.RI "using \fBDisplacement\fP = blocks::displacement::vector"
.br
.ti -1c
.RI "using \fBAngularVelocity\fP = blocks::rotation::angular_velocity"
.br
.ti -1c
.RI "using \fBCentralBorder\fP = blocks::frame_acceleration::component<0>"
.br
.ti -1c
.RI "using \fBSurfaceCoefficients\fP = blocks::surface_deformation::coefficients"
.br
.ti -1c
.RI "using \fBSurfaceEquilibrium\fP = blocks::surface_deformation::shape_equilibrium"
.br
.ti -1c
.RI "using \fBValues\fP = KeyList<\fBFirstValue\fP, \fBSecondValue\fP>"
.br
.ti -1c
.RI "using \fBResiduals\fP = KeyList<\fBFirstResidual\fP, \fBSecondResidual\fP>"
.br
.ti -1c
.RI "using \fBValueRules\fP = Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBSecondValue\fP, \fBIdentityCoordinate\fP>>"
.br
.ti -1c
.RI "using \fBResidualRules\fP = Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBSecondResidual\fP, \fBIdentityCoordinate\fP>>"
.br
.ti -1c
.RI "using \fBCompletePlan\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, \fBResidualRules\fP>"
.br
.ti -1c
.RI "using \fBReorderedPlan\fP"
.br
.ti -1c
.RI "using \fBMissingValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.br
.ti -1c
.RI "using \fBMissingResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>>>"
.br
.ti -1c
.RI "using \fBDuplicateValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.br
.ti -1c
.RI "using \fBDuplicateResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>>>"
.br
.ti -1c
.RI "using \fBForeignValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBForeignCoordinate\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.br
.ti -1c
.RI "using \fBForeignResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBForeignCoordinate\fP, \fBIdentityCoordinate\fP>>>"
.br
.ti -1c
.RI "using \fBLayout\fP = \fBCoordinateLayout\fP<const \fBValues\fP&, volatile \fBResiduals\fP&&>"
.br
.ti -1c
.RI "using \fBDensityRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::MassDensity\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.br
.ti -1c
.RI "using \fBDisplacementRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::Length\fP, \fBReferenceVolumeMetric\fP<\fBDisplacement\fP>>"
.br
.ti -1c
.RI "using \fBPhysicalValues\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBDensity\fP, \fBDensityRiesz\fP>, Binding<\fBDisplacement\fP, \fBDisplacementRiesz\fP>>, Bindings<>>"
.br
.ti -1c
.RI "using \fBPressureRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::Pressure\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.br
.ti -1c
.RI "using \fBPotentialRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::GravitationalPotential\fP, \fBReferenceVolumeMetric\fP<\fBPotential\fP>>"
.br
.ti -1c
.RI "using \fBHybridResidual\fP = \fBWithPointRows\fP<\fBPotentialRiesz\fP, \fBdimensions::Pressure\fP, \fBSelectedSurfaceRows\fP>"
.br
.ti -1c
.RI "using \fBScalarValues\fP = KeyList<\fBMassConstant\fP, \fBAngularVelocity\fP, \fBCentralBorder\fP>"
.br
.ti -1c
.RI "using \fBCustomMethod\fP = \fBRuntimePreparedCoordinate\fP<const \fBMoveOnlyPrescription\fP&>"
.br
.ti -1c
.RI "template<typename Policy> using \fBPolicyPlan\fP"
.br
.RI "Apply one declared policy independently to state and residual coordinates\&. "
.ti -1c
.RI "using \fBPolicyLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBDensity\fP>, KeyList<\fBPressureRow\fP>>"
.br
.ti -1c
.RI "using \fBQualifiedPolicyComputation\fP = decltype(\fBdetail::coordinate_computation\fP<blocks::RepresentedValueKind::value, \fBDensity\fP, \fBPolicyLayout\fP, \fBStellarReferenceScales\fP>(\fBRuntimePreparedCoordinate\fP<const \fBPreparedPrescription\fP&>{}))"
.br
.ti -1c
.RI "using \fBTemperaturePlan\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBTemperatureCoordinate\fP, \fBPhysicalRieszCoordinate\fP<\fBdimensions::Temperature\fP, \fBTemperatureMetric\fP>>>, Bindings<>>"
.br
.ti -1c
.RI "using \fBTemperatureLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBTemperatureCoordinate\fP>, KeyList<>>"
.br
.ti -1c
.RI "template<typename Key, typename Value> using \fBOwnedSource\fP = decltype(dependencies::own<Key>(std::declval<Value>()))"
.br
.RI "Describe an explicitly owned source using the same factory as runtime clients\&. "
.ti -1c
.RI "using \fBMetricLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBDensity\fP, \fBDisplacement\fP>, KeyList<>>"
.br
.ti -1c
.RI "using \fBMetricComputations\fP = decltype(\fBmake_normalization_computations\fP<const \fBPhysicalValues\fP&>(std::declval<const \fBMetricLayout\fP&>()))"
.br
.ti -1c
.RI "using \fBMetricGraph\fP = decltype(\fBgraph_type\fP(std::declval<\fBMetricComputations\fP>()))"
.br
.ti -1c
.RI "using \fBLayoutSource\fP = \fBOwnedSource\fP<\fBkeys::Layout\fP, \fBMetricLayout\fP>"
.br
.ti -1c
.RI "using \fBScaleSource\fP = \fBOwnedSource\fP<\fBkeys::Scales\fP, \fBStellarReferenceScales\fP>"
.br
.ti -1c
.RI "using \fBDensityMetricSource\fP = \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDensity\fP>, std::vector<double>>"
.br
.ti -1c
.RI "using \fBDisplacementMetricSource\fP = \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDisplacement\fP>, std::vector<double>>"
.br
.ti -1c
.RI "using \fBCompleteMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP, \fBDisplacementMetricSource\fP>"
.br
.ti -1c
.RI "using \fBMissingMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP>"
.br
.ti -1c
.RI "using \fBWrongMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP, \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDisplacement\fP>, std::vector<int>>>"
.br
.ti -1c
.RI "using \fBPolicyComputations\fP = decltype(\fBmake_normalization_computations\fP<\fBPolicyPlan\fP<\fBPreparedPrescription\fP>>(std::declval<const \fBPolicyLayout\fP&>()))"
.br
.ti -1c
.RI "using \fBPolicyGraph\fP = decltype(\fBgraph_type\fP(std::declval<\fBPolicyComputations\fP>()))"
.br
.ti -1c
.RI "template<typename SuppliedPrescription> using \fBPolicyContext\fP = dependencies::DependencyContext<\fBOwnedSource\fP<\fBkeys::Layout\fP, \fBPolicyLayout\fP>, \fBOwnedSource\fP<\fBkeys::Prescription\fP<\fBPreparedPrescription\fP>, SuppliedPrescription>>"
.br
.RI "Vary the supplied resource type while keeping the plan's prescription key unchanged\&. "
.in -1c
.SS "Functions"
.in +1c
.ti -1c
.RI "\fBdimensions::QuantityValue\fP< \fBdimensions::Temperature\fP > \fBcharacteristic_scale\fP (const \fBTemperatureScales\fP &, \fBdimensions::Temperature\fP)"
.br
.RI "External thermodynamic scales participate through their own typed ADL provider\&. "
.ti -1c
.RI "double \fBcharacteristic_scale\fP (const \fBUntypedTemperatureScales\fP &, \fBdimensions::Temperature\fP)"
.br
.RI "A raw number cannot silently stand in for a scale carrying the requested quantity\&. "
.ti -1c
.RI "template<typename\&.\&.\&. Computations> auto \fBgraph_type\fP (std::tuple< Computations\&.\&.\&. >) \-> decltype(dependencies::make_computation_graph(std::declval< Computations >()\&.\&.\&.))"
.br
.RI "Inspect the public graph's type without constructing or preparing numerical objects\&. "
.in -1c
.SH "Typedef Documentation"
.PP
.SS "using \fBserif::solver::normalization::checks::AngularVelocity\fP = blocks::rotation::angular_velocity"
.SS "using \fBserif::solver::normalization::checks::CentralBorder\fP = blocks::frame_acceleration::component<0>"
.SS "using \fBserif::solver::normalization::checks::CompleteMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP, \fBDisplacementMetricSource\fP>"
.SS "using \fBserif::solver::normalization::checks::CompletePlan\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, \fBResidualRules\fP>"
.SS "using \fBserif::solver::normalization::checks::CustomMethod\fP = \fBRuntimePreparedCoordinate\fP<const \fBMoveOnlyPrescription\fP&>"
.SS "using \fBserif::solver::normalization::checks::CustomPlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<dependencies::Bindings<dependencies::Binding<Density,
DimensionlessRieszCoordinate<dimensions::MassDensity, CustomMetric, ReferenceGeometry::volume>>>, dependencies::Bindings<>>
.PP
.fi
.SS "typedef blocks::density::mass \fBserif::solver::normalization::checks::Density\fP = \fBdiscretization::blocks::density::mass\fP"
.SS "using \fBserif::solver::normalization::checks::DensityLayout\fP = \fBCoordinateLayout\fP<dependencies::KeyList<\fBDensity\fP>, dependencies::KeyList<\fBDensity\fP>>"
.SS "using \fBserif::solver::normalization::checks::DensityMethod\fP = \fBDimensionlessRieszCoordinate\fP<\fBdimensions::MassDensity\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.SS "using \fBserif::solver::normalization::checks::DensityMetricSource\fP = \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDensity\fP>, std::vector<double>>"
.SS "using \fBserif::solver::normalization::checks::DensityPlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<dependencies::Bindings<dependencies::Binding<Density, DensityMethod>>,
dependencies::Bindings<dependencies::Binding<Density, DensityMethod>>>
.PP
.fi
.SS "using \fBserif::solver::normalization::checks::DensityRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::MassDensity\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.SS "using \fBserif::solver::normalization::checks::Displacement\fP = blocks::displacement::vector"
.SS "using \fBserif::solver::normalization::checks::DisplacementMetricSource\fP = \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDisplacement\fP>, std::vector<double>>"
.SS "using \fBserif::solver::normalization::checks::DisplacementRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::Length\fP, \fBReferenceVolumeMetric\fP<\fBDisplacement\fP>>"
.SS "using \fBserif::solver::normalization::checks::DuplicateResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>>>"
.SS "using \fBserif::solver::normalization::checks::DuplicateValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.SS "using \fBserif::solver::normalization::checks::ForeignResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBForeignCoordinate\fP, \fBIdentityCoordinate\fP>>>"
.SS "using \fBserif::solver::normalization::checks::ForeignValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBForeignCoordinate\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.SS "using \fBserif::solver::normalization::checks::HybridResidual\fP = \fBWithPointRows\fP<\fBPotentialRiesz\fP, \fBdimensions::Pressure\fP, \fBSelectedSurfaceRows\fP>"
.SS "using \fBserif::solver::normalization::checks::Layout\fP = \fBCoordinateLayout\fP<const \fBValues\fP&, volatile \fBResiduals\fP&&>"
.SS "using \fBserif::solver::normalization::checks::LayoutSource\fP = \fBOwnedSource\fP<\fBkeys::Layout\fP, \fBMetricLayout\fP>"
.SS "typedef blocks::barotropic_constant::mass_normalization \fBserif::solver::normalization::checks::MassConstant\fP = \fBdiscretization::blocks::barotropic_constant::mass_normalization\fP"
.SS "using \fBserif::solver::normalization::checks::MetricComputations\fP = decltype(\fBmake_normalization_computations\fP<const \fBPhysicalValues\fP&>(std::declval<const \fBMetricLayout\fP&>()))"
.SS "using \fBserif::solver::normalization::checks::MetricGraph\fP = decltype(\fBgraph_type\fP(std::declval<\fBMetricComputations\fP>()))"
.SS "using \fBserif::solver::normalization::checks::MetricLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBDensity\fP, \fBDisplacement\fP>, KeyList<>>"
.SS "using \fBserif::solver::normalization::checks::MissingMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP>"
.SS "using \fBserif::solver::normalization::checks::MissingResidual\fP = \fBNormalizationPlan\fP<\fBValueRules\fP, Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>>>"
.SS "using \fBserif::solver::normalization::checks::MissingValue\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>>, \fBResidualRules\fP>"
.SS "template<typename Key, typename Value> using \fBserif::solver::normalization::checks::OwnedSource\fP = decltype(dependencies::own<Key>(std::declval<Value>()))"
.PP
Describe an explicitly owned source using the same factory as runtime clients\&.
.SS "using \fBserif::solver::normalization::checks::PhysicalValues\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBDensity\fP, \fBDensityRiesz\fP>, Binding<\fBDisplacement\fP, \fBDisplacementRiesz\fP>>, Bindings<>>"
.SS "using \fBserif::solver::normalization::checks::PolicyComputations\fP = decltype(\fBmake_normalization_computations\fP<\fBPolicyPlan\fP<\fBPreparedPrescription\fP>>(std::declval<const \fBPolicyLayout\fP&>()))"
.SS "template<typename SuppliedPrescription> using \fBserif::solver::normalization::checks::PolicyContext\fP = dependencies::DependencyContext<\fBOwnedSource\fP<\fBkeys::Layout\fP, \fBPolicyLayout\fP>, \fBOwnedSource\fP<\fBkeys::Prescription\fP<\fBPreparedPrescription\fP>, SuppliedPrescription>>"
.PP
Vary the supplied resource type while keeping the plan's prescription key unchanged\&.
.SS "using \fBserif::solver::normalization::checks::PolicyGraph\fP = decltype(\fBgraph_type\fP(std::declval<\fBPolicyComputations\fP>()))"
.SS "using \fBserif::solver::normalization::checks::PolicyLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBDensity\fP>, KeyList<\fBPressureRow\fP>>"
.SS "template<typename Policy> using \fBserif::solver::normalization::checks::PolicyPlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<
Bindings<Binding<Density, RuntimePreparedCoordinate<Policy>>>,
Bindings<Binding<PressureRow, RuntimePreparedCoordinate<Policy>>>>
.PP
.fi
.PP
Apply one declared policy independently to state and residual coordinates\&.
.SS "typedef blocks::gravity::potential \fBserif::solver::normalization::checks::Potential\fP = \fBdiscretization::blocks::gravity::potential\fP"
.SS "using \fBserif::solver::normalization::checks::PotentialRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::GravitationalPotential\fP, \fBReferenceVolumeMetric\fP<\fBPotential\fP>>"
.SS "using \fBserif::solver::normalization::checks::PressurePlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<dependencies::Bindings<>, dependencies::Bindings<dependencies::Binding<PressureRow,
DimensionlessRieszCoordinate<dimensions::Pressure, ReferenceVolumeMetric<Density>>>>>
.PP
.fi
.SS "using \fBserif::solver::normalization::checks::PressureRiesz\fP = \fBPhysicalRieszCoordinate\fP<\fBdimensions::Pressure\fP, \fBReferenceVolumeMetric\fP<\fBDensity\fP>>"
.SS "using \fBserif::solver::normalization::checks::QualifiedPolicyComputation\fP = decltype(\fBdetail::coordinate_computation\fP<blocks::RepresentedValueKind::value, \fBDensity\fP, \fBPolicyLayout\fP, \fBStellarReferenceScales\fP>(\fBRuntimePreparedCoordinate\fP<const \fBPreparedPrescription\fP&>{}))"
.SS "using \fBserif::solver::normalization::checks::ReorderedPlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<
Bindings<Binding<SecondValue, IdentityCoordinate>, Binding<FirstValue, IdentityCoordinate>>,
Bindings<Binding<SecondResidual, IdentityCoordinate>, Binding<FirstResidual, IdentityCoordinate>>>
.PP
.fi
.SS "using \fBserif::solver::normalization::checks::ResidualRules\fP = Bindings<Binding<\fBFirstResidual\fP, \fBIdentityCoordinate\fP>, Binding<\fBSecondResidual\fP, \fBIdentityCoordinate\fP>>"
.SS "using \fBserif::solver::normalization::checks::Residuals\fP = KeyList<\fBFirstResidual\fP, \fBSecondResidual\fP>"
.SS "using \fBserif::solver::normalization::checks::ScalarPlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<dependencies::Bindings<dependencies::Binding<MassConstant, DimensionlessRieszCoordinate<dimensions::GravitationalPotential, UnitMetric>>>,
dependencies::Bindings<dependencies::Binding<MassConstant, DimensionlessRieszCoordinate<dimensions::Mass, UnitMetric>>>>
.PP
.fi
.SS "using \fBserif::solver::normalization::checks::ScalarValues\fP = KeyList<\fBMassConstant\fP, \fBAngularVelocity\fP, \fBCentralBorder\fP>"
.SS "using \fBserif::solver::normalization::checks::ScaleSource\fP = \fBOwnedSource\fP<\fBkeys::Scales\fP, \fBStellarReferenceScales\fP>"
.SS "using \fBserif::solver::normalization::checks::SelectedMethod\fP = \fBWithPointRows\fP<\fBDensityMethod\fP, \fBdimensions::Pressure\fP, \fBSelection\fP>"
.SS "using \fBserif::solver::normalization::checks::Shape\fP = \fBdiscretization::blocks::surface_deformation::coefficients\fP"
.SS "using \fBserif::solver::normalization::checks::ShapeRow\fP = \fBdiscretization::blocks::surface_deformation::shape_equilibrium\fP"
.SS "using \fBserif::solver::normalization::checks::SurfaceCoefficients\fP = blocks::surface_deformation::coefficients"
.SS "using \fBserif::solver::normalization::checks::SurfaceEquilibrium\fP = blocks::surface_deformation::shape_equilibrium"
.SS "using \fBserif::solver::normalization::checks::SurfaceMetric\fP = \fBgeometry::deformation::keys::SurfaceMetric\fP"
.SS "using \fBserif::solver::normalization::checks::SurfacePlan\fP"
\fBInitial value:\fP
.nf
NormalizationPlan<dependencies::Bindings<dependencies::Binding<Shape, DimensionlessRieszCoordinate<dimensions::Length, SurfaceMetric>>>,
dependencies::Bindings<dependencies::Binding<ShapeRow, DimensionlessRieszCoordinate<dimensions::Force, SurfaceMetric>>>>
.PP
.fi
.SS "using \fBserif::solver::normalization::checks::TemperatureLayout\fP = \fBCoordinateLayout\fP<KeyList<\fBTemperatureCoordinate\fP>, KeyList<>>"
.SS "using \fBserif::solver::normalization::checks::TemperaturePlan\fP = \fBNormalizationPlan\fP<Bindings<Binding<\fBTemperatureCoordinate\fP, \fBPhysicalRieszCoordinate\fP<\fBdimensions::Temperature\fP, \fBTemperatureMetric\fP>>>, Bindings<>>"
.SS "using \fBserif::solver::normalization::checks::ValueRules\fP = Bindings<Binding<\fBFirstValue\fP, \fBIdentityCoordinate\fP>, Binding<\fBSecondValue\fP, \fBIdentityCoordinate\fP>>"
.SS "using \fBserif::solver::normalization::checks::Values\fP = KeyList<\fBFirstValue\fP, \fBSecondValue\fP>"
.SS "using \fBserif::solver::normalization::checks::WrongMetricContext\fP = dependencies::DependencyContext<\fBLayoutSource\fP, \fBScaleSource\fP, \fBDensityMetricSource\fP, \fBOwnedSource\fP<\fBReferenceVolumeMetric\fP<\fBDisplacement\fP>, std::vector<int>>>"
.SH "Function Documentation"
.PP
.SS "\fBdimensions::QuantityValue\fP< \fBdimensions::Temperature\fP > serif::solver::normalization::checks::characteristic_scale (const \fBTemperatureScales\fP & , \fBdimensions::Temperature\fP )\fR [nodiscard]\fP"
.PP
External thermodynamic scales participate through their own typed ADL provider\&.
.SS "double serif::solver::normalization::checks::characteristic_scale (const \fBUntypedTemperatureScales\fP & , \fBdimensions::Temperature\fP )\fR [nodiscard]\fP"
.PP
A raw number cannot silently stand in for a scale carrying the requested quantity\&.
.SS "template<typename\&.\&.\&. Computations> auto serif::solver::normalization::checks::graph_type (std::tuple< Computations\&.\&.\&. > ) \-> decltype(dependencies::make_computation_graph(std::declval< Computations >()\&.\&.\&.))"
.PP
Inspect the public graph's type without constructing or preparing numerical objects\&.
.SH "Author"
.PP
Generated automatically by Doxygen for SERiF from the source code\&.