Reference documentation for deal.II version 8.5.1
Public Member Functions | Public Attributes | List of all members
BlockMatrixArray< number, BlockVectorType >::Entry Class Reference

#include <deal.II/lac/block_matrix_array.h>

Public Member Functions

template<typename MatrixType >
 Entry (const MatrixType &matrix, size_type row, size_type col, number prefix, bool transpose)
 
 Entry (const Entry &)
 
 ~Entry ()
 

Public Attributes

size_type row
 
size_type col
 
number prefix
 
bool transpose
 
PointerMatrixBase< typename BlockVectorType::BlockType > * matrix
 

Detailed Description

template<typename number = double, typename BlockVectorType = BlockVector<number>>
class BlockMatrixArray< number, BlockVectorType >::Entry

Internal data structure.

For each entry of a BlockMatrixArray, its position, matrix, prefix and optional transposition must be stored. This structure encapsulates all of them.

Author
Guido Kanschat, 2000, 2001

Definition at line 268 of file block_matrix_array.h.

Constructor & Destructor Documentation

◆ Entry() [1/2]

template<typename number = double, typename BlockVectorType = BlockVector<number>>
template<typename MatrixType >
BlockMatrixArray< number, BlockVectorType >::Entry::Entry ( const MatrixType &  matrix,
size_type  row,
size_type  col,
number  prefix,
bool  transpose 
)

Constructor initializing all data fields. A PointerMatrix object is generated for matrix.

◆ Entry() [2/2]

template<typename number , typename BlockVectorType >
BlockMatrixArray< number, BlockVectorType >::Entry::Entry ( const Entry e)

Copy constructor invalidating the old object. Since it is only used for entering temporary objects into a vector, this is ok.

For a deep copy, we would need a reproduction operator in PointerMatixBase.

Definition at line 30 of file block_matrix_array.cc.

◆ ~Entry()

template<typename number , typename BlockVectorType >
BlockMatrixArray< number, BlockVectorType >::Entry::~Entry ( )

Destructor, where we delete the PointerMatrix created by the constructor.

Definition at line 45 of file block_matrix_array.cc.

Member Data Documentation

◆ row

template<typename number = double, typename BlockVectorType = BlockVector<number>>
size_type BlockMatrixArray< number, BlockVectorType >::Entry::row

Row number in the block matrix.

Definition at line 300 of file block_matrix_array.h.

◆ col

template<typename number = double, typename BlockVectorType = BlockVector<number>>
size_type BlockMatrixArray< number, BlockVectorType >::Entry::col

Column number in the block matrix.

Definition at line 305 of file block_matrix_array.h.

◆ prefix

template<typename number = double, typename BlockVectorType = BlockVector<number>>
number BlockMatrixArray< number, BlockVectorType >::Entry::prefix

Factor in front of the matrix block.

Definition at line 310 of file block_matrix_array.h.

◆ transpose

template<typename number = double, typename BlockVectorType = BlockVector<number>>
bool BlockMatrixArray< number, BlockVectorType >::Entry::transpose

Indicates that matrix block must be transposed for multiplication.

Definition at line 315 of file block_matrix_array.h.

◆ matrix

template<typename number = double, typename BlockVectorType = BlockVector<number>>
PointerMatrixBase<typename BlockVectorType::BlockType >* BlockMatrixArray< number, BlockVectorType >::Entry::matrix

The matrix block itself.

Definition at line 320 of file block_matrix_array.h.


The documentation for this class was generated from the following files: