Dune::IteratorDirectionSelector< T1, T2, forward > Struct Template Reference
[Preconditioners]

Helper template meta program for application of overlapping schwarz. More...

#include <dune/istl/overlappingschwarz.hh>

List of all members.

Public Types

typedef T1 solver_vector
typedef solver_vector::iterator solver_iterator
typedef T2 subdomain_vector
typedef
subdomain_vector::const_iterator 
domain_iterator

Static Public Member Functions

static solver_iterator begin (solver_vector &sv)
static solver_iterator end (solver_vector &sv)
static domain_iterator begin (const subdomain_vector &sv)
static domain_iterator end (const subdomain_vector &sv)

Detailed Description

template<typename T1, typename T2, bool forward>
struct Dune::IteratorDirectionSelector< T1, T2, forward >

Helper template meta program for application of overlapping schwarz.

The is needed because when using the multiplicative schwarz version one might still want to make multigrid symmetric, i.e. forward sweep when pre- and backward sweep when post-smoothing.

Template Parameters:
T1 type of the vector with the subdomain solvers.
T2 type of the vector with the subdomain vector fields.
forward If true apply in a forward sweep.

Member Typedef Documentation

template<typename T1, typename T2, bool forward>
typedef subdomain_vector::const_iterator Dune::IteratorDirectionSelector< T1, T2, forward >::domain_iterator
template<typename T1, typename T2, bool forward>
typedef solver_vector::iterator Dune::IteratorDirectionSelector< T1, T2, forward >::solver_iterator
template<typename T1, typename T2, bool forward>
typedef T1 Dune::IteratorDirectionSelector< T1, T2, forward >::solver_vector
template<typename T1, typename T2, bool forward>
typedef T2 Dune::IteratorDirectionSelector< T1, T2, forward >::subdomain_vector

Member Function Documentation

template<typename T1, typename T2, bool forward>
static solver_iterator Dune::IteratorDirectionSelector< T1, T2, forward >::begin ( solver_vector sv  )  [inline, static]
template<typename T1, typename T2, bool forward>
static domain_iterator Dune::IteratorDirectionSelector< T1, T2, forward >::begin ( const subdomain_vector sv  )  [inline, static]
template<typename T1, typename T2, bool forward>
static domain_iterator Dune::IteratorDirectionSelector< T1, T2, forward >::end ( const subdomain_vector sv  )  [inline, static]
template<typename T1, typename T2, bool forward>
static solver_iterator Dune::IteratorDirectionSelector< T1, T2, forward >::end ( solver_vector sv  )  [inline, static]

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

Generated on Fri Apr 29 2011 with Doxygen (ver 1.7.1) [doxygen-log,error-log].