![]() |
Reference documentation for deal.II version 8.5.1
|
#include <deal.II/lac/block_matrix.h>
Public Member Functions | |
| BlockDiagonalMatrix (const MatrixType &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 |
Public Member Functions inherited from Subscriptor | |
| Subscriptor () | |
| Subscriptor (const Subscriptor &) | |
| Subscriptor (Subscriptor &&) | |
| virtual | ~Subscriptor () |
| Subscriptor & | operator= (const Subscriptor &) |
| Subscriptor & | operator= (Subscriptor &&) |
| void | subscribe (const char *identifier=0) const |
| void | unsubscribe (const char *identifier=0) const |
| unsigned int | n_subscriptions () const |
| void | list_subscribers () const |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
| unsigned int | num_blocks |
| SmartPointer< const MatrixType, BlockDiagonalMatrix< MatrixType > > | matrix |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
| static ::ExceptionBase & | ExcInUse (int arg1, char *arg2, std::string &arg3) |
| static ::ExceptionBase & | ExcNoSubscriber (char *arg1, char *arg2) |
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 51 of file block_matrix.h.
| BlockDiagonalMatrix< MatrixType >::BlockDiagonalMatrix | ( | const MatrixType & | M, |
| const unsigned int | n_blocks | ||
| ) |
Constructor for an n_blocks by n_blocks matrix with diagonal blocks M.
Definition at line 90 of file block_matrix.h.
| void BlockDiagonalMatrix< MatrixType >::vmult | ( | BlockVector< number1 > & | dst, |
| const BlockVector< number2 > & | src | ||
| ) | const |
Matrix-vector-multiplication.
Definition at line 101 of file block_matrix.h.
| void BlockDiagonalMatrix< MatrixType >::Tvmult | ( | BlockVector< number1 > & | dst, |
| const BlockVector< number2 > & | src | ||
| ) | const |
Transposed matrix-vector-multiplication.
Definition at line 117 of file block_matrix.h.
|
private |
Number of blocks.
Definition at line 78 of file block_matrix.h.
|
private |
Diagonal entry.
Definition at line 83 of file block_matrix.h.
1.8.13