![]() |
Reference documentation for deal.II version 8.1.0
|
#include <block_matrix.h>
Public Member Functions | |
BlockDiagonalMatrix (const MATRIX &M, const unsigned int n_blocks) | |
template<typename number1 , typename number2 > | |
void | vmult (BlockVector< number1 > &dst, const BlockVector< number2 > &src) const |
template<typename number1 , typename number2 > | |
void | Tvmult (BlockVector< number1 > &dst, const BlockVector< number2 > &src) const |
![]() | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
void | subscribe (const char *identifier=0) const |
void | unsubscribe (const char *identifier=0) const |
unsigned int | n_subscriptions () const |
void | list_subscribers () const |
DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.") | |
DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1) | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
unsigned int | num_blocks |
SmartPointer< const MATRIX, BlockDiagonalMatrix< MATRIX > > | matrix |
A matrix with several copies of the same block on the diagonal.
This matrix implements an m
by m
block matrix. Each diagonal block consists of the same (non-block) matrix, while off-diagonal blocks are void.
One special application is a one by one block matrix, allowing to apply the vmult
of the original matrix (or preconditioner) to a block vector.
Definition at line 47 of file block_matrix.h.
BlockDiagonalMatrix< MATRIX >::BlockDiagonalMatrix | ( | const MATRIX & | M, |
const unsigned int | n_blocks | ||
) |
Constructor for an n_blocks
by n_blocks
matrix with diagonal blocks M
.
Definition at line 87 of file block_matrix.h.
void BlockDiagonalMatrix< MATRIX >::vmult | ( | BlockVector< number1 > & | dst, |
const BlockVector< number2 > & | src | ||
) | const |
Matrix-vector-multiplication.
Definition at line 98 of file block_matrix.h.
void BlockDiagonalMatrix< MATRIX >::Tvmult | ( | BlockVector< number1 > & | dst, |
const BlockVector< number2 > & | src | ||
) | const |
Transposed matrix-vector-multiplication.
Definition at line 114 of file block_matrix.h.
|
private |
Number of blocks.
Definition at line 75 of file block_matrix.h.
|
private |
Diagonal entry.
Definition at line 80 of file block_matrix.h.