DOLFIN
DOLFIN C++ interface
|
#include <BlockMatrix.h>
Public Member Functions | |
BlockMatrix (std::size_t m=0, std::size_t n=0) | |
Constructor. | |
~BlockMatrix () | |
Destructor. | |
void | set_block (std::size_t i, std::size_t j, std::shared_ptr< GenericMatrix > m) |
Set block. | |
std::shared_ptr< const GenericMatrix > | get_block (std::size_t i, std::size_t j) const |
Get block (const version) | |
std::shared_ptr< GenericMatrix > | get_block (std::size_t i, std::size_t j) |
Get block. | |
std::size_t | size (std::size_t dim) const |
Return size of given dimension. | |
void | zero () |
Set all entries to zero and keep any sparse structure. | |
void | apply (std::string mode) |
Finalize assembly of tensor. | |
std::string | str (bool verbose) const |
Return informal string representation (pretty-print) | |
void | mult (const BlockVector &x, BlockVector &y, bool transposed=false) const |
Matrix-vector product, y = Ax. | |
std::shared_ptr< GenericMatrix > | schur_approximation (bool symmetry=true) const |
Block Matrix.
std::shared_ptr< GenericMatrix > BlockMatrix::schur_approximation | ( | bool | symmetry = true | ) | const |
Create a crude explicit Schur approximation of S = D - C A^-1 B of (A B; C D) If symmetry != 0, then the caller promises that B = symmetry * transpose(C).