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

122 lines
4.3 KiB
Groff

.TH "serif::operators::LinearizedBlock" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
.ad l
.nh
.SH NAME
serif::operators::LinearizedBlock \- An accepted physical block with optional efficient diagonal and sparse assembly operations\&.
.SH SYNOPSIS
.br
.PP
.PP
\fR#include <linearized_block\&.hpp>\fP
.SS "Classes"
.in +1c
.ti -1c
.RI "struct \fBData\fP"
.br
.in -1c
.SS "Public Types"
.in +1c
.ti -1c
.RI "using \fBAction\fP = std::shared_ptr<const ::mfem::Operator>"
.br
.ti -1c
.RI "using \fBDiagonal\fP = std::function<std::vector<double>()>"
.br
.ti -1c
.RI "using \fBAssembly\fP = std::function<std::shared_ptr<const ::mfem::SparseMatrix>()>"
.br
.in -1c
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBLinearizedBlock\fP (\fBAction\fP \fBaction\fP, \fBDiagonal\fP \fBdiagonal\fP={}, \fBAssembly\fP assembly={})"
.br
.RI "Retain an immutable action and its matching assembly routines; captures must retain their accepted data\&. "
.ti -1c
.RI "const \fBAction\fP & \fBaction\fP () const noexcept"
.br
.RI "Read the physical action belonging to this accepted block\&. "
.ti -1c
.RI "bool \fBhas_diagonal\fP () const noexcept"
.br
.RI "Whether diagonal extraction is available without global column probing\&. "
.ti -1c
.RI "bool \fBhas_assembly\fP () const noexcept"
.br
.RI "Whether this block supports explicit sparse assembly\&. "
.ti -1c
.RI "std::vector< double > \fBdiagonal\fP () const"
.br
.RI "Extract the physical operator diagonal, including any installed boundary rows\&. "
.ti -1c
.RI "std::shared_ptr< const ::mfem::SparseMatrix > \fBassemble\fP () const"
.br
.RI "Assemble only this selected physical block\&. "
.ti -1c
.RI "bool \fBoperator==\fP (const \fBLinearizedBlock\fP &) const=default"
.br
.RI "Accepted block identity is stable across copies, but changes when a new linearization is supplied\&. "
.in -1c
.SS "Private Attributes"
.in +1c
.ti -1c
.RI "std::shared_ptr< const \fBData\fP > \fBm_data\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
An accepted physical block with optional efficient diagonal and sparse assembly operations\&.
.SH "Member Typedef Documentation"
.PP
.SS "using \fBserif::operators::backend::mfem::LinearizedBlock::Action\fP = std::shared_ptr<const ::mfem::Operator>"
.SS "using \fBserif::operators::backend::mfem::LinearizedBlock::Assembly\fP = std::function<std::shared_ptr<const ::mfem::SparseMatrix>()>"
.SS "using \fBserif::operators::backend::mfem::LinearizedBlock::Diagonal\fP = std::function<std::vector<double>()>"
.SH "Constructor & Destructor Documentation"
.PP
.SS "serif::operators::backend::mfem::LinearizedBlock::LinearizedBlock (\fBAction\fP action, \fBDiagonal\fP diagonal = \fR{}\fP, \fBAssembly\fP assembly = \fR{}\fP)\fR [explicit]\fP"
.PP
Retain an immutable action and its matching assembly routines; captures must retain their accepted data\&.
.SH "Member Function Documentation"
.PP
.SS "const \fBLinearizedBlock::Action\fP & serif::operators::backend::mfem::LinearizedBlock::action () const\fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Read the physical action belonging to this accepted block\&.
.SS "std::shared_ptr< const::mfem::SparseMatrix > serif::operators::backend::mfem::LinearizedBlock::assemble () const\fR [nodiscard]\fP"
.PP
Assemble only this selected physical block\&.
.SS "std::vector< double > serif::operators::backend::mfem::LinearizedBlock::diagonal () const\fR [nodiscard]\fP"
.PP
Extract the physical operator diagonal, including any installed boundary rows\&.
.SS "bool serif::operators::backend::mfem::LinearizedBlock::has_assembly () const\fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Whether this block supports explicit sparse assembly\&.
.SS "bool serif::operators::backend::mfem::LinearizedBlock::has_diagonal () const\fR [nodiscard]\fP, \fR [noexcept]\fP"
.PP
Whether diagonal extraction is available without global column probing\&.
.SS "bool serif::operators::backend::mfem::LinearizedBlock::operator== (const \fBLinearizedBlock\fP & ) const\fR [nodiscard]\fP, \fR [default]\fP"
.PP
Accepted block identity is stable across copies, but changes when a new linearization is supplied\&.
.SH "Member Data Documentation"
.PP
.SS "std::shared_ptr<const \fBData\fP> serif::operators::backend::mfem::LinearizedBlock::m_data\fR [private]\fP"
.SH "Author"
.PP
Generated automatically by Doxygen for SERiF from the source code\&.