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

165 lines
7.0 KiB
Groff

.TH "serif::discretization::backend::mfem::DofSelection" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
.ad l
.nh
.SH NAME
serif::discretization::backend::mfem::DofSelection \- A selection of supported DOFs from a term binding, with boundary attribute information\&. The purpose here is to allow for the selection of a subset of DOFs from a term binding, such as those associated with a particular boundary, while still retaining the ability to validate the selection against the underlying mesh and term binding\&.
.SH SYNOPSIS
.br
.PP
.PP
\fR#include <dof_selection\&.hpp>\fP
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBDofSelection\fP (const \fBDofMap\fP &\fBbinding\fP, const ::mfem::Array< int > &\fBreduced_dofs\fP, const bool track_coordinates=false)"
.br
.RI "Construct a DOF selection from a term binding and a list of reduced DOFs\&. "
.ti -1c
.RI "const \fBDofMap\fP & \fBbinding\fP () const noexcept"
.br
.RI "Return the underlying term binding associated with this DOF selection\&. "
.ti -1c
.RI "const ::mfem::Array< int > & \fBreduced_dofs\fP () const noexcept"
.br
.RI "Return the list of reduced DOFs in this selection\&. "
.ti -1c
.RI "int \fBsize\fP () const noexcept"
.br
.RI "Return the number of selected DOFs in this selection\&. "
.ti -1c
.RI "const ::mfem::Array< int > & \fBboundary_attributes\fP () const noexcept"
.br
.RI "Return the list of boundary attributes associated with this selection\&. "
.ti -1c
.RI "bool \fBtracks_coordinates\fP () const noexcept"
.br
.RI "Report whether this selection becomes stale when the fixed mesh coordinates change\&. Point constraints require this tracking even when a caller supplies the selected DOFs explicitly\&. "
.ti -1c
.RI "void \fBvalidate\fP () const"
.br
.RI "Validate the DOF selection against the underlying term binding and mesh\&. This checks that the underlying term binding and mesh have not changed since the DOF selection was constructed\&. If they have changed, an exception is thrown\&. This is important to ensure that the DOF selection remains valid and consistent with the underlying data structures\&. "
.in -1c
.SS "Private Attributes"
.in +1c
.ti -1c
.RI "const \fBDofMap\fP & \fBm_binding\fP"
.br
.RI "Reference to the underlying term binding\&. This must outlive the DOF selection\&. "
.ti -1c
.RI "::mfem::Array< int > \fBm_dofs\fP"
.br
.RI "List of reduced DOFs in this selection\&. These are in the reduced space of the binding provided at construction time\&. "
.ti -1c
.RI "::mfem::Array< int > \fBm_boundary_attributes\fP"
.br
.RI "List of boundary attributes associated with this selection\&. These are in the same order as the boundaries in the underlying mesh\&. "
.ti -1c
.RI "long \fBm_nodes_sequence\fP"
.br
.RI "Coordinate revision, or -1 for selections independent of geometry\&. "
.in -1c
.SH "Detailed Description"
.PP
A selection of supported DOFs from a term binding, with boundary attribute information\&. The purpose here is to allow for the selection of a subset of DOFs from a term binding, such as those associated with a particular boundary, while still retaining the ability to validate the selection against the underlying mesh and term binding\&.
.SH "Constructor & Destructor Documentation"
.PP
.SS "serif::discretization::backend::mfem::DofSelection::DofSelection (const \fBDofMap\fP & binding, const ::mfem::Array< int > & reduced_dofs, const bool track_coordinates = \fRfalse\fP)\fR [inline]\fP"
.PP
Construct a DOF selection from a term binding and a list of reduced DOFs\&.
.PP
\fBParameters\fP
.RS 4
\fIbinding\fP A reference to the term binding from which the DOFs are selected\&. Further, this binding must outlive the DOF selection\&.
.br
\fIreduced_dofs\fP A list of reduced DOFs to select\&. This list should be in the reduced space of the term binding\&. Further, these must be sorted in a strictly increasing order and must be unique\&. This is enforced at construction time\&.
.RE
.PP
.SH "Member Function Documentation"
.PP
.SS "const \fBDofMap\fP & serif::discretization::backend::mfem::DofSelection::binding () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Return the underlying term binding associated with this DOF selection\&.
.PP
\fBReturns\fP
.RS 4
A reference to the underlying term binding\&.
.RE
.PP
.SS "const ::mfem::Array< int > & serif::discretization::backend::mfem::DofSelection::boundary_attributes () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Return the list of boundary attributes associated with this selection\&.
.PP
\fBReturns\fP
.RS 4
A reference to the list of boundary attributes\&. These are in the same order as the boundaries in the underlying mesh\&.
.RE
.PP
.SS "const ::mfem::Array< int > & serif::discretization::backend::mfem::DofSelection::reduced_dofs () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Return the list of reduced DOFs in this selection\&.
.PP
\fBReturns\fP
.RS 4
A reference to the list of reduced DOFs\&. Note these are in the reduced space of the binding provided at construction time\&.
.RE
.PP
.SS "int serif::discretization::backend::mfem::DofSelection::size () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Return the number of selected DOFs in this selection\&.
.PP
\fBReturns\fP
.RS 4
The number of selected DOFs\&.
.RE
.PP
.SS "bool serif::discretization::backend::mfem::DofSelection::tracks_coordinates () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Report whether this selection becomes stale when the fixed mesh coordinates change\&. Point constraints require this tracking even when a caller supplies the selected DOFs explicitly\&.
.PP
\fBReturns\fP
.RS 4
True if coordinate updates invalidate the selection\&.
.RE
.PP
.SS "void serif::discretization::backend::mfem::DofSelection::validate () const\fR [inline]\fP"
.PP
Validate the DOF selection against the underlying term binding and mesh\&. This checks that the underlying term binding and mesh have not changed since the DOF selection was constructed\&. If they have changed, an exception is thrown\&. This is important to ensure that the DOF selection remains valid and consistent with the underlying data structures\&.
.SH "Member Data Documentation"
.PP
.SS "const \fBDofMap\fP& serif::discretization::backend::mfem::DofSelection::m_binding\fR [private]\fP"
.PP
Reference to the underlying term binding\&. This must outlive the DOF selection\&.
.SS "::mfem::Array<int> serif::discretization::backend::mfem::DofSelection::m_boundary_attributes\fR [private]\fP"
.PP
List of boundary attributes associated with this selection\&. These are in the same order as the boundaries in the underlying mesh\&.
.SS "::mfem::Array<int> serif::discretization::backend::mfem::DofSelection::m_dofs\fR [private]\fP"
.PP
List of reduced DOFs in this selection\&. These are in the reduced space of the binding provided at construction time\&.
.SS "long serif::discretization::backend::mfem::DofSelection::m_nodes_sequence\fR [private]\fP"
.PP
Coordinate revision, or -1 for selections independent of geometry\&.
.SH "Author"
.PP
Generated automatically by Doxygen for SERiF from the source code\&.