SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
linearized_block.hpp File Reference
#include <functional>
#include <memory>
#include <vector>
#include "mfem/linalg/operator.hpp"
#include "mfem/linalg/sparsemat.hpp"
Include dependency graph for linearized_block.hpp:
This graph shows which files directly or indirectly include this file:

Classes

class  serif::operators::backend::mfem::LinearizedBlock
 An accepted physical block with optional efficient diagonal and sparse assembly operations. More...
 

Namespaces

namespace  serif
 
namespace  serif::operators
 
namespace  serif::operators::backend
 
namespace  serif::operators::backend::mfem
 

Functions

std::vector< double > serif::operators::backend::mfem::checked_diagonal (const LinearizedBlock &block)
 Extract a diagonal and reject a callback that violates its declared physical block dimensions.
 
std::shared_ptr< const ::mfem::SparseMatrix > serif::operators::backend::mfem::checked_assembly (const LinearizedBlock &block)
 Assemble a non-null finalized sparse matrix whose dimensions match its declared physical action.
 
LinearizedBlock serif::operators::backend::mfem::linearized_block (std::shared_ptr< const ::mfem::SparseMatrix > matrix)
 Retain an already assembled physical block without copying its matrix.
 
LinearizedBlock serif::operators::backend::mfem::linearized_block (std::shared_ptr< const ::mfem::DenseMatrix > matrix)
 Retain a small assembled physical block, such as a generated scalar constraint.