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)
167 lines
5.2 KiB
Groff
167 lines
5.2 KiB
Groff
.TH "src/compile_time_checks/serif/solver/preconditioner/layout.cpp" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
src/compile_time_checks/serif/solver/preconditioner/layout.cpp
|
|
.SH SYNOPSIS
|
|
.br
|
|
.PP
|
|
\fR#include <concepts>\fP
|
|
.br
|
|
\fR#include <array>\fP
|
|
.br
|
|
\fR#include <span>\fP
|
|
.br
|
|
\fR#include <type_traits>\fP
|
|
.br
|
|
\fR#include <utility>\fP
|
|
.br
|
|
\fR#include <vector>\fP
|
|
.br
|
|
\fR#include 'serif/discretization/blocks/fields\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/discretization/blocks/vector_view\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/operators/linearized_system_view\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/solver/normalization/layout\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/solver/normalization/keys\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/backend/mfem/solver/preconditioner/computations/ordering\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/solver/preconditioner/default_preconditioners\&.hpp'\fP
|
|
.br
|
|
\fR#include 'serif/utils/dependencies/dependencies\&.hpp'\fP
|
|
.br
|
|
|
|
.SS "Classes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "struct \fBserif::solver::preconditioner::checks::ExtraField\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "struct \fBserif::solver::preconditioner::checks::ExtraValue\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "struct \fBserif::solver::preconditioner::checks::ExtraRow\fP"
|
|
.br
|
|
.in -1c
|
|
.SS "Namespaces"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "namespace \fBserif\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "namespace \fBserif::solver\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "namespace \fBserif::solver::preconditioner\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "namespace \fBserif::solver::preconditioner::checks\fP"
|
|
.br
|
|
.in -1c
|
|
.SS "Concepts"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "concept \fBserif::solver::preconditioner::checks::ReadsCoordinate\fP"
|
|
.br
|
|
.RI "Detection of an absent coordinate must fail in constraints instead of instantiating a function body\&. "
|
|
.ti -1c
|
|
.RI "concept \fBserif::solver::preconditioner::checks::ReadsBlock\fP"
|
|
.br
|
|
.RI "Only declared equation/unknown pairs are exposed by a borrowed linearization\&. "
|
|
.ti -1c
|
|
.RI "concept \fBserif::solver::preconditioner::checks::HasOffset\fP"
|
|
.br
|
|
.RI "Malformed coordinate requests remain detection-safe on the owning metadata as well\&. "
|
|
.ti -1c
|
|
.RI "concept \fBserif::solver::preconditioner::checks::HasPrimalPreconditioner\fP"
|
|
.br
|
|
.RI "Keep unsupported coordinate sets out of the primal recipe before its body is instantiated\&. "
|
|
.in -1c
|
|
.SS "Typedefs"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Kind\fP = blocks::RepresentedValueKind"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Mass\fP = blocks::barotropic_constant::mass_normalization"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Reaction\fP = blocks::frame_acceleration::component<0>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Density\fP = blocks::density::mass"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Keys\fP = dependencies::KeyList<\fBMass\fP, \fBReaction\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Layout\fP = blocks::SystemLayout<\fBKeys\fP, \fBKeys\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::State\fP = blocks::StateView<\fBLayout\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::ConstantState\fP = blocks::StateView<\fBLayout\fP, const double>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Physical\fP = \fBoperators::PhysicalBlock\fP<\fBMass\fP, \fBReaction\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Sources\fP = decltype(dependencies::make_dependency_context(dependencies::own<\fBPhysical\fP>(1)))"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::System\fP = \fBoperators::LinearizedSystemView\fP<\fBLayout\fP, \fBSources\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::ReorderedLayout\fP = blocks::SystemLayout<\fBKeys\fP, dependencies::KeyList<\fBReaction\fP, \fBMass\fP>>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Potential\fP = blocks::gravity::potential"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Rotation\fP = blocks::rotation::angular_velocity"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::Shape\fP = blocks::surface_deformation::coefficients"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::ShapeRow\fP = blocks::surface_deformation::shape_equilibrium"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalFields\fP = dependencies::KeyList<\fBDensity\fP, \fBPotential\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalFixedLayout\fP = blocks::SystemLayout<\fBPrimalFields\fP, \fBPrimalFields\fP>"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalMovingLayout\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalRecipe\fP = decltype(\fBmake_primal_preconditioner\fP(std::declval<const \fBPrimalMovingLayout\fP&>()))"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalExtraLayout\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBserif::solver::preconditioner::checks::PrimalExtraRecipe\fP = decltype(\fBmake_primal_preconditioner\fP(std::declval<const \fBPrimalExtraLayout\fP&>()))"
|
|
.br
|
|
.in -1c
|
|
.SS "Variables"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "constexpr \fBReorderedLayout\fP \fBserif::solver::preconditioner::checks::resolved_layout\fP"
|
|
.br
|
|
.in -1c
|
|
.SH "Author"
|
|
.PP
|
|
Generated automatically by Doxygen for SERiF from the source code\&.
|