dune-pdelab  2.5-dev
Public Member Functions | List of all members
Dune::PDELab::ISTLBackend_NOVLP_BCGS_SSORk< GO > Class Template Reference

Nonoverlapping parallel BiCGSTAB solver preconditioned by block SSOR. More...

#include <dune/pdelab/backend/istl/novlpistlsolverbackend.hh>

Inheritance diagram for Dune::PDELab::ISTLBackend_NOVLP_BCGS_SSORk< GO >:
Inheritance graph

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

Detailed Description

template<class GO>
class Dune::PDELab::ISTLBackend_NOVLP_BCGS_SSORk< GO >

Nonoverlapping parallel BiCGSTAB solver preconditioned by block SSOR.

Template Parameters
GOThe type of the grid operator (or the fakeGOTraits class for the old grid operator 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.

Constructor & Destructor Documentation

§ ISTLBackend_NOVLP_BCGS_SSORk()

template<class GO >
Dune::PDELab::ISTLBackend_NOVLP_BCGS_SSORk< GO >::ISTLBackend_NOVLP_BCGS_SSORk ( const GO &  grid_operator,
unsigned  maxiter_ = 5000,
int  steps_ = 5,
int  verbose_ = 1 
)
inlineexplicit

make a linear solver object

Parameters
[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

Member Function Documentation

§ apply()

void Dune::PDELab::ISTLBackend_NOVLP_BASE_PREC< GO, Dune::SeqSSOR , Dune::BiCGSTABSolver >::apply ( M &  A,
V &  z,
W &  r,
typename V::ElementType  reduction 
)
inlineinherited

Solve the given linear system.

Parameters
[in]Athe given matrix
[out]zthe solution vector to be computed
[in]rright hand side
[in]reductionto be achieved

§ norm()

Vector::ElementType Dune::PDELab::ISTLBackend_NOVLP_BASE_PREC< GO, Dune::SeqSSOR , Dune::BiCGSTABSolver >::norm ( const Vector &  v) const
inlineinherited

Compute global norm of a vector.

Parameters
[in]vthe given vector

§ result()

const Dune::PDELab::LinearSolverResult<double>& Dune::PDELab::ISTLBackend_NOVLP_BASE_PREC< GO, Dune::SeqSSOR , Dune::BiCGSTABSolver >::result ( ) const
inlineinherited

Return access to result data.


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