Files
MeanField_SERiF/docs/man/man3/surface_boundary.cpp.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

244 lines
12 KiB
Groff

.TH "src/compile_time_checks/serif/geometry/surface_boundary.cpp" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
.ad l
.nh
.SH NAME
src/compile_time_checks/serif/geometry/surface_boundary.cpp
.SH SYNOPSIS
.br
.PP
\fR#include <concepts>\fP
.br
\fR#include <type_traits>\fP
.br
\fR#include <utility>\fP
.br
\fR#include 'serif/discretization/domain/schema/schemas\&.hpp'\fP
.br
\fR#include 'serif/backend/mfem/geometry/surface/boundary_computations\&.hpp'\fP
.br
\fR#include 'serif/geometry/surface/automatic\&.hpp'\fP
.br
\fR#include 'serif/eos/models/polytropic\&.hpp'\fP
.br
\fR#include 'serif/utils/dependencies/computation_cache\&.hpp'\fP
.br
.SS "Classes"
.in +1c
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::ScalarTerm< QuantityT, Space >\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::ScalarTerm< QuantityT, Space >::value\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::ScalarTerm< QuantityT, Space >::residual\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::UniformTemperature\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::Gas\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::CentralMultiplier\fP"
.br
.RI "An enthalpy-dimensioned global multiplier must not be mistaken for the enthalpy carrier\&. "
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::ForwardOnly\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::MissingPartials\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::MissingInversePartial\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::OtherTemperature\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::OtherDensity\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::TwoInverseRelations\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::ReversedInverseRelations\fP"
.br
.ti -1c
.RI "struct \fBserif::compile_time_checks::surface_boundary::SymbolicEOS\fP"
.br
.in -1c
.SS "Namespaces"
.in +1c
.ti -1c
.RI "namespace \fBserif\fP"
.br
.ti -1c
.RI "namespace \fBserif::compile_time_checks\fP"
.br
.ti -1c
.RI "namespace \fBserif::compile_time_checks::surface_boundary\fP"
.br
.in -1c
.SS "Concepts"
.in +1c
.ti -1c
.RI "concept \fBserif::compile_time_checks::surface_boundary::BuildsTrace\fP"
.br
.ti -1c
.RI "concept \fBserif::compile_time_checks::surface_boundary::BuildsTemporaryTrace\fP"
.br
.ti -1c
.RI "concept \fBserif::compile_time_checks::surface_boundary::BuildsBoundary\fP"
.br
.ti -1c
.RI "concept \fBserif::compile_time_checks::surface_boundary::BuildsInputs\fP"
.br
.in -1c
.SS "Typedefs"
.in +1c
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Density\fP = \fBScalarTerm\fP<quantities::MassDensity, spaces::DiscreteFunctionalSpace<spaces::H1, 1, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DiscontinuousDensity\fP = \fBScalarTerm\fP<quantities::MassDensity, spaces::DiscreteFunctionalSpace<spaces::L2, 2, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Temperature\fP = \fBScalarTerm\fP<quantities::Temperature, spaces::DiscreteFunctionalSpace<spaces::H1, 2, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DiscontinuousTemperature\fP = \fBScalarTerm\fP<quantities::Temperature, spaces::DiscreteFunctionalSpace<spaces::L2, 2, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DensityRelation\fP = \fBeos::relations::Relation\fP<quantities::MassDensity, quantities::Pressure, quantities::Temperature>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::PressureRelation\fP = \fBeos::relations::Relation\fP<quantities::Pressure, quantities::MassDensity, quantities::Temperature>"
.br
.ti -1c
.RI "template<typename DensityTerm = Density, typename TemperatureTerm = Temperature> using \fBserif::compile_time_checks::surface_boundary::State\fP = dependencies::Bindings<dependencies::Binding<quantities::MassDensity, DensityTerm>, dependencies::Binding<quantities::Temperature, TemperatureTerm>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Formulation\fP = surface::PressureSurfaceFormulation<\fBGas\fP, \fBState\fP<>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GlobalInput\fP = surface::PressureSurfaceFormulation<\fBGas\fP, \fBState\fP<\fBDensity\fP, \fBUniformTemperature\fP>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DiscontinuousInput\fP = surface::PressureSurfaceFormulation<\fBGas\fP, \fBState\fP<\fBDensity\fP, \fBDiscontinuousTemperature\fP>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DiscontinuousRow\fP = surface::PressureSurfaceFormulation<\fBGas\fP, \fBState\fP<\fBDiscontinuousDensity\fP>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Direct\fP = surface::DirectPressureSurfaceFormulation<\fBGas\fP, \fBState\fP<>, quantities::Temperature, \fBPressureRelation\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GlobalRow\fP = surface::DirectPressureSurfaceFormulation<\fBGas\fP, \fBState\fP<\fBDensity\fP, \fBUniformTemperature\fP>, quantities::Temperature, \fBPressureRelation\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Schema\fP = \fBdiscretization::domain::schema::CoreEnvelopeVacuumDomainSchema\fP"
.br
.ti -1c
.RI "template<typename Term> using \fBserif::compile_time_checks::surface_boundary::View\fP = coefficients::CoefficientView<finite_elements::TermBinding<Term, \fBSchema\fP>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Coefficients\fP = decltype(coefficients::make_term_coefficients(std::declval<\fBView\fP<\fBDensity\fP>>(), std::declval<\fBView\fP<\fBTemperature\fP>>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::MissingColumn\fP = decltype(coefficients::make_term_coefficients(std::declval<\fBView\fP<\fBDensity\fP>>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Boundary\fP = decltype(backend::make_pressure_boundary<\fBFormulation\fP>(std::declval<const \fBCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::EOSResource\fP = decltype(dependencies::own<surface::keys::EquationOfState>(\fBGas\fP{}))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::WrongEOS\fP = decltype(dependencies::own<surface::keys::EquationOfState>(0))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::WrongEOSKey\fP = decltype(dependencies::own<\fBGas\fP>(\fBGas\fP{}))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Inputs\fP = decltype(backend::make_pressure_boundary_inputs(std::declval<\fBBoundary\fP>(), std::declval<\fBEOSResource\fP>(), std::declval<surface::IsobaricSurface>(), std::declval<const \fBCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Graph\fP = decltype(backend::make_pressure_boundary_graph<\fBFormulation\fP>())"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::MissingEOS\fP = decltype(std::declval<const \fBInputs\fP&>()\&.select(dependencies::KeyList<backend::keys::BoundaryDiscretization, surface::keys::PressureCondition, \fBDensity\fP, \fBTemperature\fP>{}))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::MissingState\fP = decltype(std::declval<const \fBInputs\fP&>()\&.select(dependencies::KeyList<backend::keys::BoundaryDiscretization, surface::keys::EquationOfState, surface::keys::PressureCondition, \fBDensity\fP>{}))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GlobalCoefficients\fP = decltype(coefficients::make_term_coefficients(std::declval<\fBView\fP<\fBDensity\fP>>(), std::declval<\fBView\fP<\fBUniformTemperature\fP>>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GlobalBoundary\fP = decltype(backend::make_pressure_boundary<\fBGlobalInput\fP>(std::declval<const \fBGlobalCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GlobalInputs\fP = decltype(backend::make_pressure_boundary_inputs(std::declval<\fBGlobalBoundary\fP>(), std::declval<\fBEOSResource\fP>(), std::declval<surface::IsobaricSurface>(), std::declval<const \fBGlobalCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DirectBoundary\fP = decltype(backend::make_pressure_boundary<\fBDirect\fP>(std::declval<const \fBCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DirectInputs\fP = decltype(backend::make_pressure_boundary_inputs(std::declval<\fBDirectBoundary\fP>(), std::declval<\fBEOSResource\fP>(), std::declval<surface::IsobaricSurface>(), std::declval<const \fBCoefficients\fP&>()))"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DensitySampling\fP = Graph::ComputationAt<Graph::index<backend::keys::BoundarySamples<\fBDensity\fP>>()>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::TemperatureSampling\fP = Graph::ComputationAt<Graph::index<backend::keys::BoundarySamples<\fBTemperature\fP>>()>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Enthalpy\fP = \fBScalarTerm\fP<quantities::SpecificEnthalpy, spaces::DiscreteFunctionalSpace<spaces::H1, 3, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::Pressure\fP = \fBScalarTerm\fP<quantities::Pressure, spaces::DiscreteFunctionalSpace<spaces::H1, 1, 0>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::BernoulliConstant\fP = blocks::barotropic_constant::mass_normalization"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GasFields\fP = dependencies::KeyList<\fBDensity\fP, \fBTemperature\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GasRows\fP = dependencies::KeyList<\fBDensity\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::GasSelection\fP = surface::AutomaticPressureSurface<\fBGas\fP, \fBGasFields\fP, \fBGasRows\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::ForwardFallback\fP = surface::AutomaticPressureSurface<\fBMissingInversePartial\fP, \fBGasFields\fP, \fBGasRows\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DensityFromPressure\fP = \fBeos::relations::Relation\fP<quantities::MassDensity, quantities::Pressure>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::DirectSelection\fP = surface::AutomaticPressureSurface<\fBForwardOnly\fP, \fBGasFields\fP, \fBGasRows\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::PolytropicFields\fP = dependencies::KeyList<\fBEnthalpy\fP, blocks::density::mass, \fBBernoulliConstant\fP, \fBCentralMultiplier\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::PolytropicSelection\fP = surface::AutomaticPressureSurface<\fBeos::models::Polytrope\fP, \fBPolytropicFields\fP, dependencies::KeyList<\fBEnthalpy\fP, \fBBernoulliConstant\fP>>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::PressureFields\fP = dependencies::KeyList<\fBPressure\fP, \fBDensity\fP, \fBTemperature\fP>"
.br
.ti -1c
.RI "using \fBserif::compile_time_checks::surface_boundary::PressureSelection\fP = surface::AutomaticPressureSurface<\fBSymbolicEOS\fP, \fBPressureFields\fP, dependencies::KeyList<\fBPressure\fP>>"
.br
.in -1c
.SH "Author"
.PP
Generated automatically by Doxygen for SERiF from the source code\&.