Public Types | Public Member Functions

MatrixBlockVector< MATRIX > Class Template Reference
[Handling vector valued problems]

Inheritance diagram for MatrixBlockVector< MATRIX >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef MatrixBlock< MATRIXvalue_type

Public Member Functions

void add (unsigned int row, unsigned int column, const std::string &name)
void reinit (const BlockSparsityPattern &sparsity)
void clear (bool really_clean=false)
std::size_t memory_consumption () const
const value_typeblock (unsigned int i) const
value_typeblock (unsigned int i)
MATRIXmatrix (unsigned int i)

Detailed Description

template<class MATRIX>
class MatrixBlockVector< MATRIX >

A vector of MatrixBlock, which is implemented using shared pointers, in order to allow for copying and rearranging. Each matrix block can be identified by name.

Author:
Baerbel Janssen, Guido Kanschat, 2010

Definition at line 395 of file matrix_block.h.


Member Typedef Documentation

template<class MATRIX>
typedef MatrixBlock<MATRIX> MatrixBlockVector< MATRIX >::value_type

The type of object stored.

Definition at line 403 of file matrix_block.h.


Member Function Documentation

template<class MATRIX >
void MatrixBlockVector< MATRIX >::add ( unsigned int  row,
unsigned int  column,
const std::string &  name 
) [inline]

Add a new matrix block at the position (row,column) in the block system.

Definition at line 923 of file matrix_block.h.

template<class MATRIX >
void MatrixBlockVector< MATRIX >::reinit ( const BlockSparsityPattern sparsity ) [inline]

For matrices using a SparsityPattern, this function reinitializes each matrix in the vector with the correct pattern from the block system.

Definition at line 934 of file matrix_block.h.

template<class MATRIX >
void MatrixBlockVector< MATRIX >::clear ( bool  really_clean = false ) [inline]

Clears the object.

Since often only clearing of the individual matrices is desired, but not removing the blocks themselves, there is an optional argument. If the argument is missing or false, all matrices will be mepty, but the size of this object and the block positions will not change. If really_clean is true, then the object will contain no blocks at the end.

Definition at line 945 of file matrix_block.h.

References Assert, StandardExceptions::ExcNotImplemented(), and LAPACKSupport::matrix.

template<class MATRIX>
std::size_t MatrixBlockVector< MATRIX >::memory_consumption (  ) const

The memory used by this object.

template<class MATRIX >
const MatrixBlock< MATRIX > & MatrixBlockVector< MATRIX >::block ( unsigned int  i ) const [inline]

Access a constant reference to the block at position i.

Definition at line 962 of file matrix_block.h.

Referenced by MeshWorker::LocalResults< number >::initialize_matrices().

template<class MATRIX >
MatrixBlock< MATRIX > & MatrixBlockVector< MATRIX >::block ( unsigned int  i ) [inline]

Access a reference to the block at position i.

Definition at line 970 of file matrix_block.h.

template<class MATRIX >
MATRIX & MatrixBlockVector< MATRIX >::matrix ( unsigned int  i ) [inline]

Access the matrix at position i for read and write access.

Definition at line 978 of file matrix_block.h.

References LAPACKSupport::matrix.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

deal.II documentation generated on Fri Feb 3 2012 06:04:09 by doxygen 1.7.2