dune-pdelab
2.5-dev
|
Nonoverlapping parallel BiCGSTAB solver preconditioned by block SSOR. More...
#include <dune/pdelab/backend/istl/novlpistlsolverbackend.hh>
Public Member Functions | |
ISTLBackend_NOVLP_BCGS_SSORk (const GO &grid_operator, unsigned maxiter_=5000, int steps_=5, int verbose_=1) | |
make a linear solver object More... | |
Vector::ElementType | norm (const Vector &v) const |
Compute global norm of a vector. More... | |
void | apply (M &A, V &z, W &r, typename V::ElementType reduction) |
Solve the given linear system. More... | |
const Dune::PDELab::LinearSolverResult< double > & | result () const |
Return access to result data. More... | |
Nonoverlapping parallel BiCGSTAB solver preconditioned by block SSOR.
GO | The type of the grid operator used for the spatial discretization (or the fakeGOTraits class for the old grid operator space). It is used to adjust the discretization matrix and extract the trial grid function space. |
The solver uses a NonoverlappingBlockPreconditioner with underlying sequential SSOR preconditioner. The crucial step is to add up the matrix entries corresponding to the border vertices on each process. This is achieved by performing a VertexExchanger::sumEntries(Matrix&) before constructing the sequential SSOR.
|
inlineexplicit |
make a linear solver object
[in] | gfs_ | a grid function space |
[in] | maxiter_ | maximum number of iterations to do |
[in] | steps_ | number of SSOR steps to apply as inner iteration |
[in] | verbose_ | print messages if true |
|
inlineinherited |
Solve the given linear system.
[in] | A | the given matrix |
[out] | z | the solution vector to be computed |
[in] | r | right hand side |
[in] | reduction | to be achieved |
|
inlineinherited |
Compute global norm of a vector.
[in] | v | the given vector |
|
inlineinherited |
Return access to result data.