Reference documentation for deal.II version Git 0b4b57890a 2021-10-16 12:51:50 +0200
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
BlockMatrixIterators::Accessor< BlockMatrixType, true > Class Template Reference

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

Inheritance diagram for BlockMatrixIterators::Accessor< BlockMatrixType, true >:
[legend]

Public Types

using size_type = types::global_dof_index
 
using MatrixType = const BlockMatrixType
 
using value_type = typename BlockMatrixType::value_type
 

Public Member Functions

 Accessor (const BlockMatrixType *m, const size_type row, const size_type col)
 
 Accessor (const Accessor< BlockMatrixType, false > &)
 
size_type row () const
 
size_type column () const
 
value_type value () const
 
unsigned int block_row () const
 
unsigned int block_column () const
 

Protected Member Functions

void advance ()
 
bool operator== (const Accessor &a) const
 

Protected Attributes

const BlockMatrixType * matrix
 
BlockMatrixType::BlockType::const_iterator base_iterator
 
unsigned int row_block
 
unsigned int col_block
 

Friends

template<typename >
class ::MatrixIterator
 

Detailed Description

template<class BlockMatrixType>
class BlockMatrixIterators::Accessor< BlockMatrixType, true >

Block matrix accessor for constant matrices, implementing the stepping through a matrix.

Definition at line 205 of file block_matrix_base.h.

Member Typedef Documentation

◆ size_type

template<class BlockMatrixType >
using BlockMatrixIterators::Accessor< BlockMatrixType, true >::size_type = types::global_dof_index

Declare type for container size.

Definition at line 211 of file block_matrix_base.h.

◆ MatrixType

template<class BlockMatrixType >
using BlockMatrixIterators::Accessor< BlockMatrixType, true >::MatrixType = const BlockMatrixType

Type of the matrix used in this accessor.

Definition at line 216 of file block_matrix_base.h.

◆ value_type

template<class BlockMatrixType >
using BlockMatrixIterators::Accessor< BlockMatrixType, true >::value_type = typename BlockMatrixType::value_type

Typedef the value type of the matrix we point into.

Definition at line 221 of file block_matrix_base.h.

Constructor & Destructor Documentation

◆ Accessor() [1/2]

template<class BlockMatrixType >
BlockMatrixIterators::Accessor< BlockMatrixType, true >::Accessor ( const BlockMatrixType *  m,
const size_type  row,
const size_type  col 
)

Constructor. Since we use accessors only for read access, a const matrix pointer is sufficient.

Place the iterator at the beginning of the given row of the matrix, or create the end pointer if row equals the total number of rows in the matrix.

◆ Accessor() [2/2]

template<class BlockMatrixType >
BlockMatrixIterators::Accessor< BlockMatrixType, true >::Accessor ( const Accessor< BlockMatrixType, false > &  )

Initialize const accessor from non const accessor.

Member Function Documentation

◆ row()

template<class BlockMatrixType >
size_type BlockMatrixIterators::Accessor< BlockMatrixType, true >::row ( ) const

Row number of the element represented by this object.

◆ column()

template<class BlockMatrixType >
size_type BlockMatrixIterators::Accessor< BlockMatrixType, true >::column ( ) const

Column number of the element represented by this object.

◆ value()

template<class BlockMatrixType >
value_type BlockMatrixIterators::Accessor< BlockMatrixType, true >::value ( ) const

Value of the entry at the current position.

◆ advance()

template<class BlockMatrixType >
void BlockMatrixIterators::Accessor< BlockMatrixType, true >::advance ( )
protected

Move ahead one element.

◆ operator==()

template<class BlockMatrixType >
bool BlockMatrixIterators::Accessor< BlockMatrixType, true >::operator== ( const Accessor< BlockMatrixType, true > &  a) const
protected

Compare this accessor with another one for equality.

◆ block_row()

template<class BlockMatrixType >
unsigned int BlockMatrixIterators::AccessorBase< BlockMatrixType >::block_row ( ) const
inherited

Block row of the element represented by this object.

◆ block_column()

template<class BlockMatrixType >
unsigned int BlockMatrixIterators::AccessorBase< BlockMatrixType >::block_column ( ) const
inherited

Block column of the element represented by this object.

Friends And Related Function Documentation

◆ ::MatrixIterator

template<class BlockMatrixType >
template<typename >
friend class ::MatrixIterator
friend

Definition at line 283 of file block_matrix_base.h.

Member Data Documentation

◆ matrix

template<class BlockMatrixType >
const BlockMatrixType* BlockMatrixIterators::Accessor< BlockMatrixType, true >::matrix
protected

The matrix accessed.

Definition at line 262 of file block_matrix_base.h.

◆ base_iterator

template<class BlockMatrixType >
BlockMatrixType::BlockType::const_iterator BlockMatrixIterators::Accessor< BlockMatrixType, true >::base_iterator
protected

Iterator of the underlying matrix class.

Definition at line 267 of file block_matrix_base.h.

◆ row_block

template<class BlockMatrixType >
unsigned int BlockMatrixIterators::AccessorBase< BlockMatrixType >::row_block
protectedinherited

Block row into which we presently point.

Definition at line 95 of file block_matrix_base.h.

◆ col_block

template<class BlockMatrixType >
unsigned int BlockMatrixIterators::AccessorBase< BlockMatrixType >::col_block
protectedinherited

Block column into which we presently point.

Definition at line 100 of file block_matrix_base.h.


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