dune-pdelab  2.5-dev
Public Types | Public Member Functions | Protected Attributes | List of all members
Dune::PDELab::ISTLBackend_CG_AMG_SSOR< GO, s > Class Template Reference

Overlapping parallel conjugate gradient solver preconditioned with AMG smoothed by SSOR. More...

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

Inheritance diagram for Dune::PDELab::ISTLBackend_CG_AMG_SSOR< GO, s >:
Inheritance graph

Public Types

typedef Dune::Amg::Parameters Parameters
 Parameters object to customize matrix hierachy building. More...
 

Public Member Functions

 ISTLBackend_CG_AMG_SSOR (const GFS &gfs_, unsigned maxiter_=5000, int verbose_=1, bool reuse_=false, bool usesuperlu_=true)
 Constructor. More...
 
void setParameters (const Parameters &params_)
 set AMG parameters More...
 
const Parametersparameters () const
 Get the parameters describing the behaviuour of AMG. More...
 
void setReuse (bool reuse_)
 Set whether the AMG should be reused again during call to apply(). More...
 
bool getReuse () const
 Return whether the AMG is reused during call to apply() More...
 
V::ElementType norm (const V &v) const
 compute global norm of a vector More...
 
void apply (M &A, V &z, V &r, typename Dune::template FieldTraits< typename V::ElementType >::real_type reduction)
 solve the given linear system More...
 
const ISTLAMGStatisticsstatistics () const
 Get statistics of the AMG solver (no of levels, timings). More...
 
const Dune::PDELab::LinearSolverResult< double > & result () const
 Return access to result data. More...
 

Protected Attributes

Dune::PDELab::LinearSolverResult< double > res
 

Detailed Description

template<class GO, int s = 96>
class Dune::PDELab::ISTLBackend_CG_AMG_SSOR< GO, s >

Overlapping parallel conjugate gradient solver preconditioned with AMG smoothed by SSOR.

Template Parameters
GOThe type of the grid operator (or the fakeGOTraits class for the old grid operator space).
sThe bits to use for the global index.

Member Typedef Documentation

◆ Parameters

typedef Dune::Amg::Parameters Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::Parameters
inherited

Parameters object to customize matrix hierachy building.

Constructor & Destructor Documentation

◆ ISTLBackend_CG_AMG_SSOR()

template<class GO , int s = 96>
Dune::PDELab::ISTLBackend_CG_AMG_SSOR< GO, s >::ISTLBackend_CG_AMG_SSOR ( const GFS &  gfs_,
unsigned  maxiter_ = 5000,
int  verbose_ = 1,
bool  reuse_ = false,
bool  usesuperlu_ = true 
)
inline

Constructor.

Parameters
gfs_The grid function space used.
maxiter_The maximum number of iterations allowed.
verbose_The verbosity level to use.
reuse_Set true, if the Matrix to be used is always identical (AMG aggregation is then only performed once).
usesuperlu_Set false, to suppress the no SuperLU warning

Member Function Documentation

◆ apply()

void Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::apply ( M &  A,
V &  z,
V &  r,
typename Dune::template FieldTraits< typename V::ElementType >::real_type  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

◆ getReuse()

bool Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::getReuse
inlineinherited

Return whether the AMG is reused during call to apply()

◆ norm()

V::ElementType Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::norm ( const V &  v) const
inlineinherited

compute global norm of a vector

Parameters
[in]vthe given vector

◆ parameters()

const Parameters& Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::parameters
inlineinherited

Get the parameters describing the behaviuour of AMG.

The returned object can be adjusted to ones needs and then can be reset using setParameters.

Returns
The object holding the parameters of AMG.

◆ result()

const Dune::PDELab::LinearSolverResult<double>& Dune::PDELab::LinearResultStorage::result ( ) const
inlineinherited

Return access to result data.

◆ setParameters()

void Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::setParameters ( const Parameters params_)
inlineinherited

set AMG parameters

Parameters
[in]params_a parameter object of Type Dune::Amg::Parameters

◆ setReuse()

void Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::setReuse ( bool  reuse_)
inlineinherited

Set whether the AMG should be reused again during call to apply().

◆ statistics()

const ISTLAMGStatistics& Dune::PDELab::ISTLBackend_AMG< GO, s, Dune::SeqSSOR , Dune::CGSolver >::statistics
inlineinherited

Get statistics of the AMG solver (no of levels, timings).

Returns
statistis of the AMG solver.

Member Data Documentation

◆ res

Dune::PDELab::LinearSolverResult<double> Dune::PDELab::LinearResultStorage::res
protectedinherited

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