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

Exact subdomain solver using ILU(p) with appropriate p. More...

#include <dune/istl/ilusubdomainsolver.hh>

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

Public Types

typedef Dune::remove_const< M >
::type 
matrix_type
 The matrix type the preconditioner is for. More...
 
typedef Dune::remove_const< M >
::type 
rilu_type
 
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

void apply (X &v, const Y &d)
 Apply the subdomain solver. More...
 
template<class S >
void setSubMatrix (const M &A, S &rowset)
 Set the data of the local problem. More...
 

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::ILU0SubdomainSolver< M, X, Y >

Exact subdomain solver using ILU(p) with appropriate p.

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::ILU0SubdomainSolver< 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::ILU0SubdomainSolver< M, X, Y >::matrix_type

The matrix type the preconditioner is for.

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

The range type of the preconditioner.

template<class M , class X , class Y >
typedef Dune::remove_const<M>::type Dune::ILU0SubdomainSolver< M, X, Y >::rilu_type

Member Function Documentation

template<class M , class X , class Y >
void Dune::ILU0SubdomainSolver< M, X, Y >::apply ( X &  v,
const Y &  d 
)
inlinevirtual

Apply the subdomain solver.

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

Implements Dune::ILUSubdomainSolver< M, X, Y >.

References Dune::bilu_backsolve(), and Dune::ILUSubdomainSolver< M, X, Y >::ILU.

Member Data Documentation

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

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: