|
| void | serif::solver::normalization::detail::require_normalization_size (std::size_t received, std::size_t expected) |
| | Require matching coordinate sizes before any output is modified.
|
| |
| void | serif::solver::normalization::detail::apply_normalization (std::span< const double > factors, std::span< const double > input, std::span< double > output, bool inverse) |
| | Apply a diagonal in place or to disjoint storage, rejecting partial overlap.
|
| |
| std::expected< double, std::string > | serif::solver::normalization::make_riesz_factor (discretization::blocks::RepresentedValueKind kind, double metric, double physical_scale) |
| | Prepare one primal sqrt(metric)/scale or dual 1/(scale sqrt(metric)) factor.
|
| |
| std::expected< std::vector< double >, std::string > | serif::solver::normalization::make_riesz_factors (discretization::blocks::RepresentedValueKind kind, std::span< const double > metric, double physical_scale) |
| | Prepare diagonal Riesz factors, reporting which coordinate has invalid data.
|
| |
| std::expected< DiagonalNormalization, std::string > | serif::solver::normalization::make_diagonal_normalization (std::vector< double > state, std::vector< double > residual) |
| | Validate and freeze independent coordinate factors, including empty or rectangular systems.
|
| |