dune-istl  2.2.1
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Dune::ILUSubdomainSolver< M, X, Y > Class Template Referenceabstract

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 >

Public Types

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

Public Member Functions

virtual void apply (X &v, const Y &d)=0
 Apply the subdomain solver. More...
 
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. More...
 

Protected Attributes

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

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.

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.

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

The range type of the preconditioner.

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: