.TH "serif::geometry::surface::backend::mfem" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*- .ad l .nh .SH NAME serif::geometry::surface::backend::mfem .SH SYNOPSIS .br .PP .SS "Namespaces" .in +1c .ti -1c .RI "namespace \fBdetail\fP" .br .ti -1c .RI "namespace \fBkeys\fP" .br .in -1c .SS "Classes" .in +1c .ti -1c .RI "struct \fBPressureBoundary\fP" .br .RI "The selected equation rows and the finite-element traces supplying their physical state\&. " .in -1c .SS "Concepts" .in +1c .ti -1c .RI "concept \fBPressureBoundaryFormulation\fP" .br .RI "Isobaric rows are scalar nodal H1 equations with continuous scalar or global EOS inputs\&. " .in -1c .SS "Functions" .in +1c .ti -1c .RI "template auto \fBmake_pressure_boundary_computations\fP ()" .br .RI "Combine finite-element sampling with the unchanged thermodynamic graph; coefficient sources can also feed volume equations\&. " .ti -1c .RI "template auto \fBmake_pressure_boundary_graph\fP ()" .br .RI "Construct a standalone isobaric boundary graph with the ordinary dependency-cache lifecycle\&. " .ti -1c .RI "template .br requires utils::dependencies::SatisfiesKeyListauto \fBmake_pressure_boundary\fP (const Coefficients &coefficients)" .br .RI "Compile nodal boundary traces explicitly; this does not sample coefficients or evaluate the EOS\&. " .ti -1c .RI "template auto \fBmake_pressure_boundary_metadata\fP (std::shared_ptr< const Boundary > boundary, EOSResource equation_of_state, \fBIsobaricSurface\fP condition)" .br .RI "Share boundary metadata with a model's common coefficient context\&. " .ti -1c .RI "template .br requires std::same_as && std::same_as, typename Boundary::Formulation::EquationOfState> && utils::dependencies::SatisfiesKeyListauto \fBmake_pressure_boundary_inputs\fP (std::shared_ptr< const Boundary > boundary, EOSResource equation_of_state, \fBIsobaricSurface\fP condition, const Coefficients &coefficients)" .br .RI "Bind the physical condition, explicitly tracked EOS, and borrowed field coefficients without evaluating them\&. " .ti -1c .RI "template void \fBapply_residual_rows\fP (const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > &linearizations, ::mfem::Vector &result)" .br .RI "Replace selected residual rows with a prepared isobaric equation, preserving all interior rows\&. " .ti -1c .RI "template .br requires utils::dependencies::SatisfiesKeyListvoid \fBapply_jacobian_rows\fP (const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > &linearizations, const Directions &directions, ::mfem::Vector &result)" .br .RI "Replace full Jacobian rows, including every EOS input; directions may alias the output\&. " .ti -1c .RI "template void \fBmask_residual_dual\fP (const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const ::mfem::Vector &dual, ::mfem::Vector &volume_dual)" .br .RI "Remove the replaced rows before applying the volume Jacobian transpose\&. " .ti -1c .RI "template .br requires utils::dependencies::BindingsWithBindingvoid \fBadd_jacobian_transpose_rows\fP (const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > &linearizations, const ::mfem::Vector &dual, ::mfem::Vector &result)" .br .RI "Add one physical term's constrained-row transpose to its existing volume contribution\&. " .ti -1c .RI "template .br requires utils::dependencies::ContainsKeystd::shared_ptr< const ::mfem::SparseMatrix > \fBpressure_field_trace\fP (const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > &linearizations)" .br .RI "Freeze one EOS partial times its finite-element trace in selected boundary-row coordinates\&. " .ti -1c .RI "template \fBoperators::backend::mfem::LinearizedBlock\fP \fBpressure_field_block\fP (\fBoperators::backend::mfem::LinearizedBlock\fP volume, const \fBPressureBoundary\fP< Formulation, Traces > &boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > &linearizations)" .br .RI "Install one field's accepted isobaric derivative rows on its physical volume block\&. " .in -1c .SH "Function Documentation" .PP .SS "template .br requires utils::dependencies::BindingsWithBindingvoid serif::geometry::surface::backend::mfem::add_jacobian_transpose_rows (const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > & linearizations, const ::mfem::Vector & dual, ::mfem::Vector & result)" .PP Add one physical term's constrained-row transpose to its existing volume contribution\&. .PP \fBNote\fP .RS 4 The caller supplies the same accepted linearizations as the forward action\&. Discard the output if a non-finite action throws\&. .RE .PP .SS "template .br requires utils::dependencies::SatisfiesKeyListvoid serif::geometry::surface::backend::mfem::apply_jacobian_rows (const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > & linearizations, const Directions & directions, ::mfem::Vector & result)" .PP Replace full Jacobian rows, including every EOS input; directions may alias the output\&. .SS "template void serif::geometry::surface::backend::mfem::apply_residual_rows (const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > & linearizations, ::mfem::Vector & result)" .PP Replace selected residual rows with a prepared isobaric equation, preserving all interior rows\&. .SS "template .br requires utils::dependencies::SatisfiesKeyListauto serif::geometry::surface::backend::mfem::make_pressure_boundary (const Coefficients & coefficients)\fR [nodiscard]\fP" .PP Compile nodal boundary traces explicitly; this does not sample coefficients or evaluate the EOS\&. .SS "template auto serif::geometry::surface::backend::mfem::make_pressure_boundary_computations ()\fR [nodiscard]\fP" .PP Combine finite-element sampling with the unchanged thermodynamic graph; coefficient sources can also feed volume equations\&. .SS "template auto serif::geometry::surface::backend::mfem::make_pressure_boundary_graph ()\fR [nodiscard]\fP" .PP Construct a standalone isobaric boundary graph with the ordinary dependency-cache lifecycle\&. .SS "template .br requires std::same_as && std::same_as, typename Boundary::Formulation::EquationOfState> && utils::dependencies::SatisfiesKeyListauto serif::geometry::surface::backend::mfem::make_pressure_boundary_inputs (std::shared_ptr< const Boundary > boundary, EOSResource equation_of_state, \fBIsobaricSurface\fP condition, const Coefficients & coefficients)\fR [nodiscard]\fP" .PP Bind the physical condition, explicitly tracked EOS, and borrowed field coefficients without evaluating them\&. .PP \fBNote\fP .RS 4 Inputs may be reused while coefficient vectors change\&. The caller's bindings, vectors and borrowed EOS must remain alive\&. .RE .PP .SS "template auto serif::geometry::surface::backend::mfem::make_pressure_boundary_metadata (std::shared_ptr< const Boundary > boundary, EOSResource equation_of_state, \fBIsobaricSurface\fP condition)\fR [nodiscard]\fP" .PP Share boundary metadata with a model's common coefficient context\&. .SS "template void serif::geometry::surface::backend::mfem::mask_residual_dual (const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const ::mfem::Vector & dual, ::mfem::Vector & volume_dual)" .PP Remove the replaced rows before applying the volume Jacobian transpose\&. .SS "template \fBoperators::backend::mfem::LinearizedBlock\fP serif::geometry::surface::backend::mfem::pressure_field_block (\fBoperators::backend::mfem::LinearizedBlock\fP volume, const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > & linearizations)\fR [nodiscard]\fP" .PP Install one field's accepted isobaric derivative rows on its physical volume block\&. .PP \fBNote\fP .RS 4 Every EOS input uses its own interpolation\&. Absent fields receive zero constrained rows\&. Copied derivative-weighted traces keep this accepted block independent of later EOS candidates and of the boundary object's lifetime\&. .RE .PP .SS "template .br requires utils::dependencies::ContainsKeystd::shared_ptr< const ::mfem::SparseMatrix > serif::geometry::surface::backend::mfem::pressure_field_trace (const \fBPressureBoundary\fP< Formulation, Traces > & boundary, const std::vector< \fBSurfaceLinearization\fP< Formulation > > & linearizations)\fR [nodiscard]\fP" .PP Freeze one EOS partial times its finite-element trace in selected boundary-row coordinates\&. .SH "Author" .PP Generated automatically by Doxygen for SERiF from the source code\&.