Belos Package Browser (Single Doxygen Collection) Development
Public Member Functions | Private Types | Static Private Attributes
Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex > Class Template Reference

PCPG iterative linear solver. More...

#include <BelosPCPGSolMgr.hpp>

List of all members.

Public Member Functions

 PCPGSolMgr ()
 PCPGSolMgr (const Teuchos::RCP< LinearProblem< ScalarType, MV, OP > > &problem, const Teuchos::RCP< Teuchos::ParameterList > &pl)
virtual ~PCPGSolMgr ()

Private Types

typedef
Details::RealSolverManager
< ScalarType, MV, OP,
isComplex
base_type

Static Private Attributes

static const bool isComplex = Teuchos::ScalarTraits<ScalarType>::isComplex

Detailed Description

template<class ScalarType, class MV, class OP, const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
class Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >

PCPG iterative linear solver.

Author:
David Day

PCPG is a CG-based "seed solver." This means that it does preconditioned CG to build up a matrix polynomial, then can reuse that polynomial to compute solutions of successive linear systems, possibly with different right-hand sides. Belos also implements a Block GMRES - based seed solver, Belos::GmresPolySolMgr.

Users must ensure that each linear system has the same coefficient matrix. The seed space is invariant during an individual linear system solve. Finally, due to finite precision arithmetic, the off-diaognal "P'AP" terms grow.

One often sees PCPG in context with the FETI domain decomposition method.

Definition at line 145 of file BelosPCPGSolMgr.hpp.


Member Typedef Documentation

template<class ScalarType , class MV , class OP , const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
typedef Details::RealSolverManager<ScalarType, MV, OP, isComplex> Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >::base_type [private]

Definition at line 150 of file BelosPCPGSolMgr.hpp.


Constructor & Destructor Documentation

template<class ScalarType , class MV , class OP , const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >::PCPGSolMgr ( ) [inline]

Definition at line 153 of file BelosPCPGSolMgr.hpp.

template<class ScalarType , class MV , class OP , const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >::PCPGSolMgr ( const Teuchos::RCP< LinearProblem< ScalarType, MV, OP > > &  problem,
const Teuchos::RCP< Teuchos::ParameterList > &  pl 
) [inline]

Definition at line 156 of file BelosPCPGSolMgr.hpp.

template<class ScalarType , class MV , class OP , const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
virtual Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >::~PCPGSolMgr ( ) [inline, virtual]

Definition at line 160 of file BelosPCPGSolMgr.hpp.


Member Data Documentation

template<class ScalarType , class MV , class OP , const bool scalarTypeIsComplex = Teuchos::ScalarTraits<ScalarType>::isComplex>
const bool Belos::PCPGSolMgr< ScalarType, MV, OP, scalarTypeIsComplex >::isComplex = Teuchos::ScalarTraits<ScalarType>::isComplex [static, private]

Definition at line 149 of file BelosPCPGSolMgr.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines