|
| template<typename Row, typename Field, typename Strategy> |
| auto | serif::solver::preconditioner::detail::preconditioner_computations (const BlockPreconditioner< Row, Field, Strategy > &choice) |
| | Declare recursive recipe expansion before its composed overloads are defined.
|
| |
| template<typename First, typename Second, typename Policy> |
| auto | serif::solver::preconditioner::detail::preconditioner_computations (const CoupledPreconditioner< First, Second, Policy > &choice) |
| | Declare the composed recipe overload for recursive graph expansion.
|
| |
| template<typename Fields, typename Constraints> |
| auto | serif::solver::preconditioner::detail::preconditioner_computations (const BorderedPreconditioner< Fields, Constraints > &choice) |
| | Declare the composed recipe overload for recursive graph expansion.
|
| |
| template<typename Gradient, typename Potential, typename Mass, typename Schur, typename Policy> |
| auto | serif::solver::preconditioner::detail::preconditioner_computations (const GravityPreconditioner< Gradient, Potential, Mass, Schur, Policy > &choice) |
| | Declare the composed recipe overload for recursive graph expansion.
|
| |
| template<typename Field, typename Row, typename Strategy, typename Backend> |
| auto | serif::solver::preconditioner::detail::preconditioner_computations (const SurfacePreconditioner< Field, Row, Strategy, Backend > &choice) |
| | Declare the composed recipe overload for recursive graph expansion.
|
| |
| template<typename Field, typename Row, typename Strategy, typename Backend> |
| auto | serif::solver::preconditioner::detail::surface_inverse_computations (const SurfacePreconditioner< Field, Row, Strategy, Backend > &choice) |
| | List the surface fit and inverse stages separately from their direct or material-relaxed physical target.
|
| |
| template<typename Recipe> |
| auto | serif::solver::preconditioner::make_preconditioner_computations (const Recipe &choice) |
| | Declare a recipe's numerical stages for composition into one model dependency graph.
|
| |
| template<typename Recipe> |
| auto | serif::solver::preconditioner::make_preconditioner_graph (const Recipe &choice) |
| | Construct the complete preconditioner graph in one place, without preparing any numerical data.
|
| |
| template<typename Recipe, discretization::blocks::SystemLayoutType Layout, utils::dependencies::IsComputation... Additional> |
| auto | serif::solver::preconditioner::make_preconditioner_graph (const Recipe &choice, const Layout &, Additional... additional) |
| | Order the inverse in system coordinates, optionally including explicit upstream computations such as reference surface assembly.
|
| |
| template<utils::dependencies::IsKeyList CoarseRows, utils::dependencies::IsKeyList CoarseValues, typename Recipe, discretization::blocks::SystemLayoutType Layout> |
| auto | serif::solver::preconditioner::make_coarse_preconditioner_graph (const Recipe &unbordered, const Layout &, const strategies::inverse::DenseDirect &options={.minimum_reciprocal_condition=1.0e-14}) |
| | Assemble the optional coarse correction after ordering the original unbordered inverse into root coordinates.
|
| |