DUNE PDELab (git)
parallel non-overlapping Jacobi preconditioner More...
#include <dune/pdelab/backend/istl/novlpistlsolverbackend.hh>
Public Types | |
typedef X | domain_type |
The domain type of the operator. More... | |
typedef Y | range_type |
The range type of the operator. More... | |
typedef X::ElementType | field_type |
The field type of the preconditioner. | |
Public Member Functions | |
SolverCategory::Category | category () const override |
Category of the preconditioner (see SolverCategory::Category) | |
template<typename GFS > | |
NonoverlappingJacobi (const GFS &gfs, const A &m) | |
Constructor. More... | |
virtual void | pre (X &x, Y &b) override |
Prepare the preconditioner. | |
virtual void | apply (X &v, const Y &d) override |
Apply the precondioner. | |
virtual void | post (X &x) override |
Clean up. | |
Detailed Description
class Dune::PDELab::NonoverlappingJacobi< A, X, Y >
parallel non-overlapping Jacobi preconditioner
- Template Parameters
-
Diagonal Vector type used to store the diagonal of the matrix X Vector type used to store the result of applying the preconditioner. Y Vector type used to store the defect. A The matrix type to be used.
The Jacobi preconditioner approximates the inverse of a matrix M by taking the diagonal diag(M) and inverting that. In the parallel case the matrix M is assumed to be inconsistent, so diagonal entries for dofs on the border are summed up over all relevant processes by this precoditioner before the inverse is computed.
Member Typedef Documentation
◆ domain_type
typedef X Dune::PDELab::NonoverlappingJacobi< A, X, Y >::domain_type |
The domain type of the operator.
The preconditioner is an inverse operator, so this is the output type of the preconditioner.
◆ range_type
typedef Y Dune::PDELab::NonoverlappingJacobi< A, X, Y >::range_type |
The range type of the operator.
The preconditioner is an inverse operator, so this is the input type of the preconditioner.
Constructor & Destructor Documentation
◆ NonoverlappingJacobi()
|
inline |
Constructor.
- Parameters
-
gfs The GridFunctionSpace the matrix and the vectors live on. m The matrix whose inverse the preconditioner should estimate. m is assumed to be inconsistent (i.e. rows for dofs on the border only contain the contribution of the local process).
The preconditioner does not store any reference to the gfs or the matrix m. The diagonal of m is copied, since it has to be made consistent.
The documentation for this class was generated from the following file:
- dune/pdelab/backend/istl/novlpistlsolverbackend.hh