Classes | Public Member Functions | Static Public Member Functions | Private Attributes

PETScWrappers::MatrixIterators::const_iterator Class Reference
[PETScWrappers]

List of all members.

Classes

class  Accessor

Public Member Functions

 const_iterator (const MatrixBase *matrix, const unsigned int row, const unsigned int index)
const_iteratoroperator++ ()
const_iterator operator++ (int)
const Accessoroperator* () const
const Accessoroperator-> () const
bool operator== (const const_iterator &) const
bool operator!= (const const_iterator &) const
bool operator< (const const_iterator &) const

Static Public Member Functions

::ExceptionBaseExcInvalidIndexWithinRow (int arg1, int arg2) throw (errortext << "Attempt to access element " << arg2 << " of row " << arg1 << " which doesn't have that many elements." )

Private Attributes

Accessor accessor

Detailed Description

STL conforming iterator. This class acts as an iterator walking over the elements of PETSc matrices. Since PETSc offers a uniform interface for all types of matrices, this iterator can be used to access both sparse and full matrices.

Note that PETSc does not give any guarantees as to the order of elements within each row. Note also that accessing the elements of a full matrix surprisingly only shows the nonzero elements of the matrix, not all elements.

Author:
Guido Kanschat, Roy Stogner, Wolfgang Bangerth, 2004

Definition at line 57 of file petsc_matrix_base.h.


Constructor & Destructor Documentation

PETScWrappers::MatrixIterators::const_iterator::const_iterator ( const MatrixBase matrix,
const unsigned int  row,
const unsigned int  index 
)

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


Member Function Documentation

const_iterator& PETScWrappers::MatrixIterators::const_iterator::operator++ (  )

Prefix increment.

const_iterator PETScWrappers::MatrixIterators::const_iterator::operator++ ( int   )

Postfix increment.

const Accessor& PETScWrappers::MatrixIterators::const_iterator::operator* (  ) const

Dereferencing operator.

const Accessor* PETScWrappers::MatrixIterators::const_iterator::operator-> (  ) const

Dereferencing operator.

bool PETScWrappers::MatrixIterators::const_iterator::operator== ( const const_iterator  ) const

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

bool PETScWrappers::MatrixIterators::const_iterator::operator!= ( const const_iterator  ) const

Inverse of ==.

bool PETScWrappers::MatrixIterators::const_iterator::operator< ( const const_iterator  ) 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.

::ExceptionBase& PETScWrappers::MatrixIterators::const_iterator::ExcInvalidIndexWithinRow ( int  arg1,
int  arg2 
) throw (errortext << "Attempt to access element " << arg2 << " of row " << arg1 << " which doesn't have that many elements." ) [static]

Exception


Member Data Documentation

Store an object of the accessor class.

Definition at line 248 of file petsc_matrix_base.h.


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:16 by doxygen 1.7.2