dune-istl  2.2.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
Dune::ILUSubdomainSolver< M, X, Y > Class Template Reference

base class encapsulating common algorithms of ILU0SubdomainSolver and ILUNSubdomainSolver. More...

#include <dune/istl/ilusubdomainsolver.hh>

Inheritance diagram for Dune::ILUSubdomainSolver< M, X, Y >:
Dune::ILU0SubdomainSolver< M, X, Y > Dune::ILUNSubdomainSolver< M, X, Y >

List of all members.

Public Types

typedef Dune::remove_const< M >
::type 
matrix_type
 The matrix type the preconditioner is for.
typedef X domain_type
 The domain type of the preconditioner.
typedef Y range_type
 The range type of the preconditioner.

Public Member Functions

virtual void apply (X &v, const Y &d)=0
 Apply the subdomain solver.
virtual ~ILUSubdomainSolver ()

Protected Member Functions

template<class S >
std::size_t copyToLocalMatrix (const M &A, S &rowset)
 Copy the local part of the global matrix to ILU.

Protected Attributes

matrix_type ILU
 The ILU0 decomposition of the matrix, or the local matrix.

Detailed Description

template<class M, class X, class Y>
class Dune::ILUSubdomainSolver< M, X, Y >

base class encapsulating common algorithms of ILU0SubdomainSolver and ILUNSubdomainSolver.

Template Parameters:
MThe type of the matrix.
XThe type of the vector for the domain.
XThe type of the vector for the range.

Member Typedef Documentation

template<class M , class X , class Y >
typedef X Dune::ILUSubdomainSolver< M, X, Y >::domain_type

The domain type of the preconditioner.

Reimplemented in Dune::ILUNSubdomainSolver< M, X, Y >, and Dune::ILU0SubdomainSolver< M, X, Y >.

template<class M , class X , class Y >
typedef Dune::remove_const<M>::type Dune::ILUSubdomainSolver< M, X, Y >::matrix_type

The matrix type the preconditioner is for.

Reimplemented in Dune::ILUNSubdomainSolver< M, X, Y >, and Dune::ILU0SubdomainSolver< M, X, Y >.

template<class M , class X , class Y >
typedef Y Dune::ILUSubdomainSolver< M, X, Y >::range_type

The range type of the preconditioner.

Reimplemented in Dune::ILUNSubdomainSolver< M, X, Y >, and Dune::ILU0SubdomainSolver< M, X, Y >.


Constructor & Destructor Documentation

template<class M , class X , class Y >
virtual Dune::ILUSubdomainSolver< M, X, Y >::~ILUSubdomainSolver ( )
inlinevirtual

Member Function Documentation

template<class M , class X , class Y >
virtual void Dune::ILUSubdomainSolver< M, X, Y >::apply ( X &  v,
const Y &  d 
)
pure virtual

Apply the subdomain solver.

On entry v=? and d=b-A(x) (although this might not be computed in that way. On exit v contains the update

Implemented in Dune::ILUNSubdomainSolver< M, X, Y >, and Dune::ILU0SubdomainSolver< M, X, Y >.


Member Data Documentation

template<class M , class X , class Y >
matrix_type Dune::ILUSubdomainSolver< M, X, Y >::ILU
protected

The ILU0 decomposition of the matrix, or the local matrix.

Referenced by Dune::ILU0SubdomainSolver< M, X, Y >::apply().


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