Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Friends | List of all members
TrilinosWrappers::SparseMatrixIterators::Iterator< Constness > Class Template Reference

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

Public Types

using size_type = ::types::global_dof_index
 
using MatrixType = typename Accessor< Constness >::MatrixType
 

Public Member Functions

 Iterator (MatrixType *matrix, const size_type row, const size_type index)
 
template<bool Other>
 Iterator (const Iterator< Other > &other)
 
Iterator< Constness > & operator++ ()
 
Iterator< Constness > operator++ (int)
 
const Accessor< Constness > & operator* () const
 
const Accessor< Constness > * operator-> () const
 
bool operator== (const Iterator< Constness > &) const
 
bool operator!= (const Iterator< Constness > &) const
 
bool operator< (const Iterator< Constness > &) const
 
bool operator> (const Iterator< Constness > &) const
 

Static Public Member Functions

static ::ExceptionBaseExcInvalidIndexWithinRow (size_type arg1, size_type arg2)
 

Private Attributes

Accessor< Constness > accessor
 

Friends

template<bool Other>
class Iterator
 

Detailed Description

template<bool Constness>
class TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >

This class acts as an iterator walking over the elements of Trilinos matrices. The implementation of this class is similar to the one for PETSc matrices.

Note that Trilinos stores the elements within each row in ascending order. This is opposed to the deal.II sparse matrix style where the diagonal element (if it exists) is stored before all other values, and the PETSc sparse matrices, where one can't guarantee a certain order of the elements.

Author
Martin Kronbichler, Wolfgang Bangerth, 2008

Definition at line 80 of file trilinos_sparse_matrix.h.

Member Typedef Documentation

◆ size_type

Declare type for container size.

Definition at line 363 of file trilinos_sparse_matrix.h.

◆ MatrixType

template<bool Constness>
using TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::MatrixType = typename Accessor<Constness>::MatrixType

Typedef for the matrix type (including constness) we are to operate on.

Definition at line 369 of file trilinos_sparse_matrix.h.

Constructor & Destructor Documentation

◆ Iterator() [1/2]

template<bool Constness>
TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::Iterator ( MatrixType matrix,
const size_type  row,
const size_type  index 
)

Constructor. Create an iterator into the matrix matrix for the given row and the index within it.

◆ Iterator() [2/2]

template<bool Constness>
template<bool Other>
TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::Iterator ( const Iterator< Other > &  other)

Copy constructor with optional change of constness.

Member Function Documentation

◆ operator++() [1/2]

template<bool Constness>
Iterator<Constness>& TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator++ ( )

Prefix increment.

◆ operator++() [2/2]

template<bool Constness>
Iterator<Constness> TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator++ ( int  )

Postfix increment.

◆ operator*()

template<bool Constness>
const Accessor<Constness>& TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator* ( ) const

Dereferencing operator.

◆ operator->()

template<bool Constness>
const Accessor<Constness>* TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator-> ( ) const

Dereferencing operator.

◆ operator==()

template<bool Constness>
bool TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator== ( const Iterator< Constness > &  ) const

Comparison. True, if both iterators point to the same matrix position.

◆ operator!=()

template<bool Constness>
bool TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator!= ( const Iterator< Constness > &  ) const

Inverse of ==.

◆ operator<()

template<bool Constness>
bool TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator< ( const Iterator< Constness > &  ) const

Comparison operator. Result is true if either the first row number is smaller or if the row numbers are equal and the first index is smaller.

◆ operator>()

template<bool Constness>
bool TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::operator> ( const Iterator< Constness > &  ) const

Comparison operator. The opposite of the previous operator

Friends And Related Function Documentation

◆ Iterator

template<bool Constness>
template<bool Other>
friend class Iterator
friend

Mark all other instances of this template as friends.

Definition at line 448 of file trilinos_sparse_matrix.h.

Member Data Documentation

◆ accessor

template<bool Constness>
Accessor<Constness> TrilinosWrappers::SparseMatrixIterators::Iterator< Constness >::accessor
private

Store an object of the accessor class.

Definition at line 445 of file trilinos_sparse_matrix.h.


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