dune-istl  2.7.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 >:
Inheritance graph

Public Types

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

◆ domain_type

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

The domain type of the preconditioner.

◆ matrix_type

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

The matrix type the preconditioner is for.

◆ range_type

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

The range type of the preconditioner.

◆ rilu_type

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

Member Function Documentation

◆ apply()

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 >.

Member Data Documentation

◆ ILU

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.


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