.TH "src/include/serif/backend/mfem/operators/volume_field_block.hpp" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*- .ad l .nh .SH NAME src/include/serif/backend/mfem/operators/volume_field_block.hpp .SH SYNOPSIS .br .PP \fR#include \fP .br \fR#include \fP .br \fR#include \fP .br \fR#include \fP .br \fR#include \fP .br \fR#include 'serif/backend/mfem/discretization/element_coordinates\&.hpp'\fP .br \fR#include 'serif/backend/mfem/operators/linearized_block\&.hpp'\fP .br \fR#include 'serif/backend/mfem/operators/volume_application\&.hpp'\fP .br \fR#include 'serif/backend/mfem/shared/parallel\&.hpp'\fP .br .SS "Classes" .in +1c .ti -1c .RI "class \fBserif::operators::backend::mfem::detail::VolumeFieldOperator< Field, Equation, Schema >\fP" .br .RI "Retain accepted data while applying a single field coupling with reusable contraction scratch\&. " .ti -1c .RI "struct \fBserif::operators::backend::mfem::detail::VolumeFieldOperator< Field, Equation, Schema >::Scratch\fP" .br .RI "One worker's element scratch\&. " .ti -1c .RI "struct \fBserif::operators::backend::mfem::detail::ProbedElementBlock\fP" .br .RI "One element's probed block: column c's integrated values for every local row, column-major\&. " .ti -1c .RI "struct \fBserif::operators::backend::mfem::detail::ProbeScratch\fP" .br .RI "Per-worker scratch for probing element blocks\&. " .ti -1c .RI "struct \fBserif::operators::backend::mfem::detail::CoefficientExpansion\fP" .br .RI "Weighted reduced coordinates of each local coordinate, as CSR: local i owns [offsets[i], offsets[i+1])\&. " .ti -1c .RI "struct \fBserif::operators::backend::mfem::detail::ConstrainedElementBlock\fP" .br .RI "One element's probed block on constrained bindings: column-major values and both constraint expansions\&. " .in -1c .SS "Namespaces" .in +1c .ti -1c .RI "namespace \fBserif\fP" .br .ti -1c .RI "namespace \fBserif::operators\fP" .br .ti -1c .RI "namespace \fBserif::operators::backend\fP" .br .ti -1c .RI "namespace \fBserif::operators::backend::mfem\fP" .br .ti -1c .RI "namespace \fBserif::operators::backend::mfem::detail\fP" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "template void \fBserif::operators::backend::mfem::detail::for_each_field_element\fP (const \fBVolumeData\fP< Equation, \fBSchema\fP > &data, Visit &&visit)" .br .RI "Ignore a structurally absent field before gathering coefficients or touching contribution bases\&. " .ti -1c .RI "template void \fBserif::operators::backend::mfem::detail::field_integrand\fP (const \fBElementData\fP< \fBEquationPlan\fP< Equation >::operand_count > &element, const \fB::mfem::Vector\fP &direction, \fB::mfem::Vector\fP &integrand, \fB::mfem::Vector\fP &samples, \fBBasisWorkspace\fP &workspace)" .br .RI "Contract only the requested physical field; geometry is frozen in this accepted linearization\&. " .ti -1c .RI "template consteval std::size_t \fBserif::operators::backend::mfem::detail::field_column\fP ()" .br .RI "Locate a physical field in the equation's unique coefficient columns\&. " .ti -1c .RI "std::shared_ptr< const ::mfem::SparseMatrix > \fBserif::operators::backend::mfem::detail::make_csr\fP (const std::vector< std::vector< int > > &row_columns, const std::vector< std::vector< double > > &row_values, const int height, const int width)" .br .RI "Write MFEM-style CSR rows (already in Finalize() order) into an owning \fBSparseMatrix\fP\&. " .ti -1c .RI "std::shared_ptr< const ::mfem::SparseMatrix > \fBserif::operators::backend::mfem::detail::finalize_probed_blocks\fP (const std::vector< \fBProbedElementBlock\fP > &blocks, const int height, const int width)" .br .RI "SparseMatrix::Add for every probed entry followed by Finalize(), built without MFEM's linked rows\&. " .ti -1c .RI "std::shared_ptr< const ::mfem::SparseMatrix > \fBserif::operators::backend::mfem::detail::finalize_constrained_blocks\fP (const std::vector< \fBConstrainedElementBlock\fP > &blocks, const int height, const int width)" .br .RI "The constrained form of finalize_probed_blocks: SparseMatrix::Add(row_index, column_index, row_weight * value * column_weight) for every element, column, local row, row coefficient and column coefficient in that order, followed by Finalize()\&. " .ti -1c .RI "template std::shared_ptr< const ::mfem::SparseMatrix > \fBserif::operators::backend::mfem::assemble_volume_field\fP (const \fBVolumeData\fP< Equation, \fBSchema\fP > &data)" .br .RI "Assemble a selected field block from accepted weighted derivatives, never by probing the whole system\&. " .ti -1c .RI "template std::vector< double > \fBserif::operators::backend::mfem::volume_field_diagonal\fP (const \fBVolumeData\fP< Equation, \fBSchema\fP > &data)" .br .RI "Extract exact physical diagonals, retaining constraint cross terms when hanging nodes are present\&. " .ti -1c .RI "template \fBLinearizedBlock\fP \fBserif::operators::backend::mfem::volume_field_block\fP (std::shared_ptr< const \fBVolumeData\fP< Equation, \fBSchema\fP > > data)" .br .RI "Expose efficient physical block operations from an owning accepted dependency result\&. " .in -1c .SH "Author" .PP Generated automatically by Doxygen for SERiF from the source code\&.