Belos::SolverManager< ScalarType, MV, OP > Class Template Reference

The Belos::SolverManager is a templated virtual base class that defines the basic interface that any solver manager will support. More...

#include <BelosSolverManager.hpp>

Inheritance diagram for Belos::SolverManager< ScalarType, MV, OP >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

Constructors/Destructor
 SolverManager ()
 Empty constructor.
virtual ~SolverManager ()
 Destructor.
Accessor methods
virtual const LinearProblem<
ScalarType, MV, OP > & 
getProblem () const =0
 Return a reference to the linear problem being solved by this solver manager.
virtual Teuchos::RCP< const
Teuchos::ParameterList
getValidParameters () const =0
 Return the valid parameters for this solver manager.
virtual Teuchos::RCP< const
Teuchos::ParameterList
getCurrentParameters () const =0
 Return the current parameters being used for this solver manager.
virtual int getNumIters () const =0
 Get the iteration count for the most recent call to solve().
virtual bool isLOADetected () const =0
 Returns whether a loss of accuracy was detected in the solver.
Set methods
virtual void setProblem (const Teuchos::RCP< LinearProblem< ScalarType, MV, OP > > &problem)=0
 Set the linear problem that needs to be solved.
virtual void setParameters (const Teuchos::RCP< Teuchos::ParameterList > &params)=0
 Set the parameters the solver manager should use to solve the linear problem.
Reset methods
virtual void reset (const ResetType type)=0
 Performs a reset of the solver manager specified by the ResetType. This informs the solver manager that the solver should prepare for the next call to solve by resetting certain elements of the iterative solver strategy.
Solver application methods
virtual ReturnType solve ()=0
 This method performs possibly repeated calls to the underlying linear solver's iterate() routine until the problem has been solved (as decided by the solver manager) or the solver manager decides to quit.

Detailed Description

template<class ScalarType, class MV, class OP>
class Belos::SolverManager< ScalarType, MV, OP >

The Belos::SolverManager is a templated virtual base class that defines the basic interface that any solver manager will support.

Definition at line 53 of file BelosSolverManager.hpp.


Constructor & Destructor Documentation

template<class ScalarType, class MV, class OP>
Belos::SolverManager< ScalarType, MV, OP >::SolverManager (  )  [inline]

Empty constructor.

Definition at line 61 of file BelosSolverManager.hpp.

template<class ScalarType, class MV, class OP>
virtual Belos::SolverManager< ScalarType, MV, OP >::~SolverManager (  )  [inline, virtual]

Destructor.

Definition at line 64 of file BelosSolverManager.hpp.


Member Function Documentation

template<class ScalarType, class MV, class OP>
virtual const LinearProblem<ScalarType,MV,OP>& Belos::SolverManager< ScalarType, MV, OP >::getProblem (  )  const [pure virtual]

Return a reference to the linear problem being solved by this solver manager.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual Teuchos::RCP<const Teuchos::ParameterList> Belos::SolverManager< ScalarType, MV, OP >::getValidParameters (  )  const [pure virtual]

Return the valid parameters for this solver manager.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual Teuchos::RCP<const Teuchos::ParameterList> Belos::SolverManager< ScalarType, MV, OP >::getCurrentParameters (  )  const [pure virtual]

Return the current parameters being used for this solver manager.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual int Belos::SolverManager< ScalarType, MV, OP >::getNumIters (  )  const [pure virtual]

Get the iteration count for the most recent call to solve().

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual bool Belos::SolverManager< ScalarType, MV, OP >::isLOADetected (  )  const [pure virtual]

Returns whether a loss of accuracy was detected in the solver.

Note:
This method is normally applicable to GMRES-type solvers.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual void Belos::SolverManager< ScalarType, MV, OP >::setProblem ( const Teuchos::RCP< LinearProblem< ScalarType, MV, OP > > &  problem  )  [pure virtual]

Set the linear problem that needs to be solved.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual void Belos::SolverManager< ScalarType, MV, OP >::setParameters ( const Teuchos::RCP< Teuchos::ParameterList > &  params  )  [pure virtual]

Set the parameters the solver manager should use to solve the linear problem.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual void Belos::SolverManager< ScalarType, MV, OP >::reset ( const ResetType  type  )  [pure virtual]

Performs a reset of the solver manager specified by the ResetType. This informs the solver manager that the solver should prepare for the next call to solve by resetting certain elements of the iterative solver strategy.

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.

template<class ScalarType, class MV, class OP>
virtual ReturnType Belos::SolverManager< ScalarType, MV, OP >::solve (  )  [pure virtual]

This method performs possibly repeated calls to the underlying linear solver's iterate() routine until the problem has been solved (as decided by the solver manager) or the solver manager decides to quit.

Returns:
ReturnType specifying:
  • Converged: the linear problem was solved to the specification required by the solver manager.
  • Unconverged: the linear problem was not solved to the specification desired by the solver manager

Implemented in Belos::BlockCGSolMgr< ScalarType, MV, OP >, Belos::BlockGmresSolMgr< ScalarType, MV, OP >, Belos::GCRODRSolMgr< ScalarType, MV, OP >, Belos::GmresPolySolMgr< ScalarType, MV, OP >, Belos::PCPGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockCGSolMgr< ScalarType, MV, OP >, Belos::PseudoBlockGmresSolMgr< ScalarType, MV, OP >, Belos::RCGSolMgr< ScalarType, MV, OP >, and Belos::TFQMRSolMgr< ScalarType, MV, OP >.


The documentation for this class was generated from the following file:
Generated on Tue Jul 13 09:27:04 2010 for Belos by  doxygen 1.4.7