Files
MeanField_SERiF/docs/man/man3/serif_operators_LinearizedBlock.3

122 lines
4.3 KiB
Groff
Raw Normal View History

.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\&.