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

247 lines
8.0 KiB
Groff

.TH "serif::mapping::DMWorkspace" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
.ad l
.nh
.SH NAME
serif::mapping::DMWorkspace \- A class representing a workspace for displacement mapping operations, including various vectors and matrices used in the mapping process\&. primarily this is just a separate class so we can more easily make this code thread-safe in the future\&. At construction of an instance of this class loads of Heap allocation is done (or really whatever mfem does internally for allocation for vector which dependents on the selected device) and then that allocation can be reused\&.
.SH SYNOPSIS
.br
.PP
.PP
\fR#include <data\&.hpp>\fP
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBDMWorkspace\fP (int dimension=3)"
.br
.RI "Constructs a \fBDMWorkspace\fP object with the specified dimension\&. "
.ti -1c
.RI "void \fBset_dimension\fP (int dimension)"
.br
.RI "Sets the dimension of the workspace\&. "
.ti -1c
.RI "int \fBget_dimension\fP () const noexcept"
.br
.RI "Returns the dimension of the workspace\&. "
.in -1c
.SS "Public Attributes"
.in +1c
.ti -1c
.RI "mfem::Vector \fBm_shape\fP"
.br
.RI "Pre-allocated vector for shape function values at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_reference_dshape\fP"
.br
.RI "Pre-allocated matrix for reference shape function derivatives at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_mesh_dshape\fP"
.br
.RI "Pre-allocated matrix for mesh shape function derivatives at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_reference_field_jacobian\fP"
.br
.RI "Pre-allocated matrix for the reference field Jacobian at a quadrature point\&. "
.ti -1c
.RI "mfem::Vector \fBm_field_value\fP"
.br
.RI "Pre-allocated vector for field values at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_field_jacobian\fP"
.br
.RI "Pre-allocated matrix for field Jacobian at a quadrature point\&. "
.ti -1c
.RI "mfem::Vector \fBm_compactification_shape\fP"
.br
.RI "Pre-allocated vector for compactification shape function values at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_compactification_dshape\fP"
.br
.RI "Pre-allocated matrix for compactification shape function derivatives at a quadrature point\&. "
.ti -1c
.RI "\fBCompactificationPointData\fP \fBm_compactification_point\fP"
.br
.RI "Pre-allocated data for compactification point\&. "
.ti -1c
.RI "mfem::Vector \fBm_reference_normal\fP"
.br
.RI "Pre-allocated vector for reference normal at a quadrature point\&. "
.ti -1c
.RI "mfem::Vector \fBm_mapped_normal\fP"
.br
.RI "Pre-allocated vector for mapped normal at a quadrature point\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_full_element_jacobian\fP"
.br
.RI "Pre-allocated matrix for full element Jacobian at a quadrature point\&. "
.ti -1c
.RI "mfem::Vector \fBm_vector_temp\fP"
.br
.RI "Pre-allocated temporary vector for intermediate calculations\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_matrix_temp_1\fP"
.br
.RI "Pre-allocated temporary matrix for intermediate calculations\&. "
.ti -1c
.RI "mfem::DenseMatrix \fBm_matrix_temp_2\fP"
.br
.RI "Pre-allocated temporary matrix for intermediate calculations\&. "
.ti -1c
.RI "\fBcompactification::ExteriorMapResult\fP \fBm_exterior_result\fP"
.br
.RI "Pre-allocated result for exterior mapping at a quadrature point\&. "
.ti -1c
.RI "\fBcompactification::ExteriorMapVariation\fP \fBm_exterior_variation\fP"
.br
.RI "Pre-allocated variation for exterior mapping at a quadrature point\&. "
.in -1c
.SS "Private Attributes"
.in +1c
.ti -1c
.RI "int \fBm_dimension\fP"
.br
.RI "The number of spatial dimensions for the workspace (e\&.g\&., 2D or 3D)\&. "
.in -1c
.SH "Detailed Description"
.PP
A class representing a workspace for displacement mapping operations, including various vectors and matrices used in the mapping process\&. primarily this is just a separate class so we can more easily make this code thread-safe in the future\&. At construction of an instance of this class loads of Heap allocation is done (or really whatever mfem does internally for allocation for vector which dependents on the selected device) and then that allocation can be reused\&.
.SH "Constructor & Destructor Documentation"
.PP
.SS "serif::mapping::DMWorkspace::DMWorkspace (int dimension = \fR3\fP)\fR [explicit]\fP"
.PP
Constructs a \fBDMWorkspace\fP object with the specified dimension\&.
.PP
\fBParameters\fP
.RS 4
\fIdimension\fP The dimension of the workspace (default is 3)\&.
.RE
.PP
\fBExceptions\fP
.RS 4
\fIstd::invalid_argument\fP if the specified dimension is not positive and finite\&.
.RE
.PP
.SH "Member Function Documentation"
.PP
.SS "int serif::mapping::DMWorkspace::get_dimension () const\fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Returns the dimension of the workspace\&.
.PP
\fBReturns\fP
.RS 4
The dimension of the workspace\&.
.RE
.PP
.SS "void serif::mapping::DMWorkspace::set_dimension (int dimension)"
.PP
Sets the dimension of the workspace\&.
.PP
\fBParameters\fP
.RS 4
\fIdimension\fP The new dimension of the workspace\&.
.RE
.PP
\fBExceptions\fP
.RS 4
\fIstd::invalid_argument\fP if the specified dimension is not positive and finite\&.
.RE
.PP
\fBPostcondition\fP
.RS 4
All internal vectors are sized to dimension
.PP
All internal matrices are sized to dimension x dimension
.PP
The compactification coordinate is set to 0\&.0
.RE
.PP
.SH "Member Data Documentation"
.PP
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_compactification_dshape"
.PP
Pre-allocated matrix for compactification shape function derivatives at a quadrature point\&.
.SS "\fBCompactificationPointData\fP serif::mapping::DMWorkspace::m_compactification_point"
.PP
Pre-allocated data for compactification point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_compactification_shape"
.PP
Pre-allocated vector for compactification shape function values at a quadrature point\&.
.SS "int serif::mapping::DMWorkspace::m_dimension\fR [private]\fP"
.PP
The number of spatial dimensions for the workspace (e\&.g\&., 2D or 3D)\&.
.SS "\fBcompactification::ExteriorMapResult\fP serif::mapping::DMWorkspace::m_exterior_result"
.PP
Pre-allocated result for exterior mapping at a quadrature point\&.
.SS "\fBcompactification::ExteriorMapVariation\fP serif::mapping::DMWorkspace::m_exterior_variation"
.PP
Pre-allocated variation for exterior mapping at a quadrature point\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_field_jacobian"
.PP
Pre-allocated matrix for field Jacobian at a quadrature point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_field_value"
.PP
Pre-allocated vector for field values at a quadrature point\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_full_element_jacobian"
.PP
Pre-allocated matrix for full element Jacobian at a quadrature point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_mapped_normal"
.PP
Pre-allocated vector for mapped normal at a quadrature point\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_matrix_temp_1"
.PP
Pre-allocated temporary matrix for intermediate calculations\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_matrix_temp_2"
.PP
Pre-allocated temporary matrix for intermediate calculations\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_mesh_dshape"
.PP
Pre-allocated matrix for mesh shape function derivatives at a quadrature point\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_reference_dshape"
.PP
Pre-allocated matrix for reference shape function derivatives at a quadrature point\&.
.SS "mfem::DenseMatrix serif::mapping::DMWorkspace::m_reference_field_jacobian"
.PP
Pre-allocated matrix for the reference field Jacobian at a quadrature point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_reference_normal"
.PP
Pre-allocated vector for reference normal at a quadrature point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_shape"
.PP
Pre-allocated vector for shape function values at a quadrature point\&.
.SS "mfem::Vector serif::mapping::DMWorkspace::m_vector_temp"
.PP
Pre-allocated temporary vector for intermediate calculations\&.
.SH "Author"
.PP
Generated automatically by Doxygen for SERiF from the source code\&.