Belos Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Classes | Typedefs | Enumerations | Functions
Belos Namespace Reference

Namespaces

 Details
 
 details
 
 Test
 
 Impl
 

Classes

struct  BiCGStabIterationState
 Structure to contain pointers to BiCGStabIteration state variables. More...
 
class  BiCGStabIter
 This class implements the pseudo-block BiCGStab iteration, where the basic BiCGStab algorithm is performed on all of the linear systems simultaneously. More...
 
class  BiCGStabSolMgrLinearProblemFailure
 BiCGStabSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  BiCGStabSolMgr
 The Belos::BiCGStabSolMgr provides a powerful and fully-featured solver manager over the pseudo-block BiCGStab iteration. More...
 
class  BlockCGIter
 Stub implementation of BlockCGIter, for ScalarType types for which Teuchos::LAPACK does NOT have a valid implementation. More...
 
class  BlockCGIter< ScalarType, MV, OP, true >
 Partial specialization for ScalarType types for which Teuchos::LAPACK has a valid implementation. More...
 
class  BlockCGSolMgrLinearProblemFailure
 BlockCGSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  BlockCGSolMgr
 The Belos::BlockCGSolMgr provides a powerful and fully-featured solver manager over the CG and BlockCG linear solver. More...
 
class  BlockCGSolMgr< ScalarType, MV, OP, true >
 
class  BlockFGmresIter
 This class implements the block flexible GMRES iteration, where a block Krylov subspace is constructed. The QR decomposition of block, upper Hessenberg matrix is performed each iteration to update the least squares system and give the current linear system residuals. More...
 
struct  BlockGCRODRIterState
 Structure to contain pointers to BlockGCRODRIter state variables. More...
 
class  BlockGCRODRIterInitFailure
 BlockGCRODRIterInitFailure is thrown when the BlockGCRODRIter object is unable to generate an initial iterate in the BlockGCRODRIter::initialize() routine. More...
 
class  BlockGCRODRIterOrthoFailure
 BlockGCRODRIterOrthoFailure is thrown when the BlockGCRODRIter object is unable to compute independent direction vectors in the BlockGCRODRIter::iterate() routine. More...
 
class  BlockGCRODRIter
 Implementation of the Block GCRO-DR (Block Recycling GMRES) iteration. More...
 
class  BlockGCRODRSolMgrLinearProblemFailure
 Thrown when the linear problem was not set up correctly. More...
 
class  BlockGCRODRSolMgrOrthoFailure
 Thrown when the solution manager was unable to orthogonalize the basis vectors. More...
 
class  BlockGCRODRSolMgrLAPACKFailure
 Thrown when an LAPACK call fails. More...
 
class  BlockGCRODRSolMgrRecyclingFailure
 Thrown if any problem occurs in using or creating the recycle subspace. More...
 
class  BlockGCRODRSolMgr
 A solver manager for the Block GCRO-DR (Block Recycling GMRES) linear solver. More...
 
class  BlockGmresIter
 This class implements the block GMRES iteration, where a block Krylov subspace is constructed. The QR decomposition of block, upper Hessenberg matrix is performed each iteration to update the least squares system and give the current linear system residuals. More...
 
class  BlockGmresSolMgrLinearProblemFailure
 BlockGmresSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  BlockGmresSolMgrOrthoFailure
 BlockGmresSolMgrOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the initial basis vectors. More...
 
class  BlockGmresSolMgr
 Interface to Block GMRES and Flexible GMRES. More...
 
class  CGIter
 This class implements the preconditioned Conjugate Gradient (CG) iteration. More...
 
struct  CGIterationState
 Structure to contain pointers to CGIteration state variables. More...
 
class  CGIterationInitFailure
 CGIterationInitFailure is thrown when the CGIteration object is unable to generate an initial iterate in the CGIteration::initialize() routine. More...
 
class  CGIterateFailure
 CGIterateFailure is thrown when the CGIteration object is unable to compute the next iterate in the CGIteration::iterate() routine. More...
 
class  CGPositiveDefiniteFailure
 CGPositiveDefiniteFailure is thrown when the the CG 'alpha = p^H*A*P' value is less than zero, indicating a breakdown in the computation due to roundoff or a non-positive-definite matrix. More...
 
class  CGIterationOrthoFailure
 CGIterationOrthoFailure is thrown when the CGIteration object is unable to compute independent direction vectors in the CGIteration::iterate() routine. More...
 
class  CGIterationLAPACKFailure
 CGIterationLAPACKFailure is thrown when a nonzero return value is passed back from an LAPACK routine. More...
 
class  CGIteration
 
class  CGSingleRedIter
 This class implements the preconditioned single-reduction Conjugate Gradient (CG) iteration. More...
 
class  CustomSolverFactory
 Interface for custom Belos solver factories. More...
 
class  DGKSOrthoManager
 An implementation of the Belos::MatOrthoManager that performs orthogonalization using (potentially) multiple steps of classical Gram-Schmidt. More...
 
class  FixedPointIter
 This class implements the preconditioned fixed point iteration. More...
 
struct  FixedPointIterationState
 Structure to contain pointers to FixedPointIteration state variables. More...
 
class  FixedPointIteration
 
class  FixedPointSolMgrLinearProblemFailure
 FixedPointSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  FixedPointSolMgr
 The Belos::FixedPointSolMgr provides a powerful and fully-featured solver manager over the FixedPoint linear solver. More...
 
struct  GCRODRIterState
 Structure to contain pointers to GCRODRIter state variables. More...
 
class  GCRODRIterInitFailure
 GCRODRIterInitFailure is thrown when the GCRODRIter object is unable to generate an initial iterate in the GCRODRIter::initialize() routine. More...
 
class  GCRODRIterOrthoFailure
 GCRODRIterOrthoFailure is thrown when the GCRODRIter object is unable to compute independent direction vectors in the GCRODRIter::iterate() routine. More...
 
class  GCRODRIter
 This class implements the GCRODR iteration, where a single-std::vector Krylov subspace is constructed. The QR decomposition of block, upper Hessenberg matrix is performed each iteration to update the least squares system and give the current linear system residuals. More...
 
class  GCRODRSolMgrLinearProblemFailure
 GCRODRSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  GCRODRSolMgrOrthoFailure
 GCRODRSolMgrOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the initial basis vectors. More...
 
class  GCRODRSolMgrLAPACKFailure
 GCRODRSolMgrLAPACKFailure is thrown when a nonzero value is retuned from an LAPACK call. More...
 
class  GCRODRSolMgrRecyclingFailure
 GCRODRSolMgrRecyclingFailure is thrown when any problem occurs in using/creating the recycling subspace. More...
 
class  GCRODRSolMgr
 Implementation of the GCRODR (Recycling GMRES) iterative linear solver. More...
 
class  GCRODRSolMgr< ScalarType, MV, OP, true >
 Partial specialization for ScalarType types for which Teuchos::LAPACK has a valid implementation. More...
 
struct  GmresIterationState
 Structure to contain pointers to GmresIteration state variables. More...
 
class  GmresIterationInitFailure
 GmresIterationInitFailure is thrown when the GmresIteration object is unable to generate an initial iterate in the GmresIteration::initialize() routine. More...
 
class  GmresIterationOrthoFailure
 GmresIterationOrthoFailure is thrown when the GmresIteration object is unable to compute independent direction vectors in the GmresIteration::iterate() routine. More...
 
class  GmresIterationLAPACKFailure
 GmresIterationLAPACKFailure is thrown when a nonzero return value is passed back from an LAPACK routine. More...
 
class  GmresIteration
 
class  GmresPolyOpOrthoFailure
 GmresPolyOpOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the initial basis vectors. More...
 
class  GmresPolyMv
 
class  GmresPolyOp
 Belos's class for applying the GMRES polynomial operator that is used by the hybrid-GMRES linear solver. More...
 
class  GmresPolySolMgrLinearProblemFailure
 GmresPolySolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  GmresPolySolMgrPolynomialFailure
 GmresPolySolMgrPolynomialFailure is thrown when their is a problem generating the GMRES polynomial for this linear problem. More...
 
class  GmresPolySolMgr
 The GMRES polynomial can be created in conjunction with any standard preconditioner. More...
 
class  ICGSOrthoManager
 An implementation of the Belos::MatOrthoManager that performs orthogonalization using multiple steps of classical Gram-Schmidt. More...
 
class  IMGSOrthoManager
 An implementation of the Belos::MatOrthoManager that performs orthogonalization using multiple steps of modified Gram-Schmidt. More...
 
class  InnerSolver
 Inner solver interface. More...
 
class  OperatorTraits< Scalar, MV, InnerSolver< Scalar, MV, OP > >
 Partial specialization of OperatorTraits for InnerSolver. More...
 
class  UndefinedWrapperType
 Undefined wrapper type, to check at compile time whether InnerSolverTraits has been specialized. More...
 
class  InnerSolverTraits
 Wrap an InnerSolver in an OP (operator). More...
 
class  InnerSolveResult
 Represents the result of an inner solve. More...
 
class  LinearProblem
 A linear system to solve, and its associated information. More...
 
class  OutputManager
 Belos's basic output manager for sending information of select verbosity levels to the appropriate output stream. More...
 
class  StatusTest
 A pure virtual class for defining the status tests for the Belos iterative solvers. More...
 
class  MatOrthoManager
 Belos's templated virtual class for providing routines for orthogonalization and orthonormzalition of multivectors using matrix-based inner products. More...
 
class  Iteration
 
class  LinearProblemError
 Exception thrown to signal error with the Belos::LinearProblem object. More...
 
class  LSQRIter
 Implementation of the LSQR iteration. More...
 
struct  LSQRIterationState
 Structure to contain pointers to LSQRIteration state variables, ... More...
 
class  LSQRIterateFailure
 LSQRIterateFailure is thrown when the LSQRIteration object is unable to compute the next iterate in the iterate() routine. More...
 
class  LSQRSolMgrLinearProblemFailure
 Belos::LSQRSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  LSQRSolMgrBlockSizeFailure
 LSQRSolMgrBlockSizeFailure is thrown when the linear problem has more than one RHS. More...
 
class  LSQRSolMgr
 LSQR method (for linear systems and linear least-squares problems). More...
 
class  LSQRSolMgr< ScalarType, MV, OP, false >
 
class  LSQRStatusTest
 A Belos::StatusTest class for specifying convergence of LSQR. The outer status tests passes if an inner status passes a user specified number of times consecutively. The inner status test depends on information specific to LSQR iteration. More...
 
class  MinresIter
 MINRES implementation. More...
 
struct  MinresIterationState
 Structure to contain pointers to MinresIteration state variables. More...
 
class  MinresIterateFailure
 MinresIterateFailure is thrown when the MinresIteration object is unable to compute the next iterate in the MinresIteration::iterate() routine. More...
 
class  MinresIteration
 
class  MinresSolMgrLinearProblemFailure
 This subclass of std::exception may be thrown from the MinresSolMgr::solve() method. More...
 
class  MinresSolMgr
 MINRES linear solver solution manager. More...
 
class  MultiVec
 Interface for multivectors used by Belos' linear solvers. More...
 
class  MultiVecTraits< ScalarType, MultiVec< ScalarType > >
 Specialization of MultiVecTraits for Belos::MultiVec. More...
 
class  UndefinedMultiVecTraits
 Used by MultiVecTraits to report lack of a specialization. More...
 
class  MultiVecTraits
 Traits class which defines basic operations on multivectors. More...
 
class  Operator
 Alternative run-time polymorphic interface for operators. More...
 
class  OperatorTraits< ScalarType, MultiVec< ScalarType >, Operator< ScalarType > >
 Specialization of OperatorTraits for Operator and MultiVec. More...
 
class  OperatorT
 
class  OperatorTraits< ScalarType, MV, OperatorT< MV > >
 Specialization of OperatorTraits for OperatorT. More...
 
class  UndefinedOperatorTraits
 Class used to require specialization of OperatorTraits. More...
 
class  OperatorTraits
 Class which defines basic traits for the operator type. More...
 
class  OrthoError
 Exception thrown to signal error in an orthogonalization manager method. More...
 
class  OrthoManager
 Belos's templated virtual class for providing routines for orthogonalization and orthonormzalition of multivectors. More...
 
class  OrthoManagerFactory
 Enumeration of all valid Belos (Mat)OrthoManager classes. More...
 
struct  PCPGIterState
 Structure to contain pointers to PCPGIter state variables. More...
 
class  PCPGIter
 This class implements the PCPG iteration, where a single-std::vector Krylov subspace is constructed. The documentation refers to blocks, but note that at this point, all blocks have unit dimension. More...
 
class  PCPGSolMgrLinearProblemFailure
 PCPGSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  PCPGSolMgrOrthoFailure
 PCPGSolMgrOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the initial basis vectors. More...
 
class  PCPGSolMgrLAPACKFailure
 PCPGSolMgrLAPACKFailure is thrown when a nonzero value is retuned from an LAPACK call. More...
 
class  PCPGSolMgr
 PCPG iterative linear solver. More...
 
class  PCPGSolMgr< ScalarType, MV, OP, true >
 
class  PseudoBlockCGIter
 This class implements the pseudo-block CG iteration, where the basic CG algorithm is performed on all of the linear systems simultaneously. More...
 
class  PseudoBlockCGSolMgrLinearProblemFailure
 PseudoBlockCGSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  PseudoBlockCGSolMgr
 The Belos::PseudoBlockCGSolMgr provides a powerful and fully-featured solver manager over the pseudo-block CG iteration. More...
 
class  PseudoBlockCGSolMgr< ScalarType, MV, OP, true >
 
struct  PseudoBlockGmresIterState
 Structure to contain pointers to PseudoBlockGmresIter state variables. More...
 
class  PseudoBlockGmresIterOrthoFailure
 PseudoBlockGmresIterOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the new basis vectors. More...
 
class  PseudoBlockGmresIter
 This class implements the pseudo-block GMRES iteration, where a block Krylov subspace is constructed for all of the linear systems simultaneously. The QR decomposition of each block, upper Hessenberg matrix is performed each iteration to update the least squares system and give the current linear system residuals. More...
 
class  PseudoBlockGmresSolMgrLinearProblemFailure
 PseudoBlockGmresSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  PseudoBlockGmresSolMgrOrthoFailure
 PseudoBlockGmresSolMgrOrthoFailure is thrown when the orthogonalization manager is unable to generate orthonormal columns from the initial basis vectors. More...
 
class  PseudoBlockGmresSolMgr
 Interface to standard and "pseudoblock" GMRES. More...
 
class  PseudoBlockStochasticCGIter
 This class implements the stochastic pseudo-block CG iteration, where the basic stochastic CG algorithm is performed on all of the linear systems simultaneously. The implementation is a pseudo-block generalization of the stochastic CG algorithm of Parker and Fox, SISC 2012. More...
 
class  PseudoBlockStochasticCGSolMgrLinearProblemFailure
 PseudoBlockStochasticCGSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  PseudoBlockStochasticCGSolMgr
 The Belos::PseudoBlockStochasticCGSolMgr provides a powerful and fully-featured solver manager over the pseudo-block CG iteration. More...
 
struct  PseudoBlockTFQMRIterState
 Structure to contain pointers to PseudoBlockTFQMRIter state variables. More...
 
class  PseudoBlockTFQMRIter
 This class implements the preconditioned transpose-free QMR algorithm for solving non-Hermitian linear systems of equations Ax = b, where b is the right-hand side vector and x is the corresponding solution. More...
 
class  PseudoBlockTFQMRSolMgrLinearProblemFailure
 PseudoBlockTFQMRSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  PseudoBlockTFQMRSolMgr
 The Belos::PseudoBlockTFQMRSolMgr provides a powerful and fully-featured solver manager over the pseudo-block TFQMR linear solver. More...
 
struct  RCGIterState
 Structure to contain pointers to RCGIter state variables. More...
 
class  RCGIter
 This class implements the RCG iteration, where a single-std::vector Krylov subspace is constructed. More...
 
class  RCGSolMgrLinearProblemFailure
 RCGSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  RCGSolMgrLAPACKFailure
 RCGSolMgrLAPACKFailure is thrown when a nonzero value is retuned from an LAPACK call. More...
 
class  RCGSolMgr
 Implementation of the RCG (Recycling Conjugate Gradient) iterative linear solver. More...
 
class  RCGSolMgr< ScalarType, MV, OP, true >
 
class  SimpleOrthoManager
 Simple OrthoManager implementation for benchmarks. More...
 
class  BelosSolverFactory
 
class  BelosFloatSolverFactory
 
class  GenericSolverFactory
 
class  SolverManager
 The Belos::SolverManager is a templated virtual base class that defines the basic interface that any solver manager will support. More...
 
class  StatusTestError
 Exception thrown to signal error in a status test during Belos::StatusTest::checkStatus(). More...
 
class  StatusTestNaNError
 
class  StatusTestCombo
 A class for extending the status testing capabilities of Belos via logical combinations. More...
 
class  StatusTestFactory
 Factory to build a set of status tests from a parameter list. More...
 
class  StatusTestGeneralOutput
 A special StatusTest for printing other status tests. More...
 
class  StatusTestGenResNorm
 An implementation of StatusTestResNorm using a family of residual norms. More...
 
class  StatusTestGenResSubNorm
 An implementation of StatusTestResNorm using a family of norms of subvectors of the residual vectors. More...
 
class  StatusTestImpResNorm
 Convergence test using the implicit residual norm(s), with an explicit residual norm(s) check for loss of accuracy if necessary. More...
 
class  StatusTestLogResNorm
 A Belos::StatusTest debugging class for storing the absolute residual norms generated during a solve. More...
 
class  StatusTestMaxIters
 A Belos::StatusTest class for specifying a maximum number of iterations. More...
 
class  StatusTestOutput
 A virtual base class for StatusTest that print other status tests. More...
 
class  StatusTestOutputFactory
 A factory class for generating StatusTestOutput objects. More...
 
class  StatusTestResNorm
 An abstract class of StatusTest for stopping criteria using residual norms. More...
 
class  StatusTestResNormOutput
 A special StatusTest for printing other status tests in a simple format. More...
 
class  StatusTestUserOutput
 A special StatusTest for printing other status tests in a simple format. More...
 
struct  StochasticCGIterationState
 Structure to contain pointers to CGIteration state variables. More...
 
class  StochasticCGIteration
 
struct  TFQMRIterState
 Structure to contain pointers to TFQMRIter state variables. More...
 
class  TFQMRIterateFailure
 TFQMRIterateFailure is thrown when the TFQMRIter object is unable to compute the next iterate in the TFQMRIter::iterate() routine. More...
 
class  TFQMRIter
 This class implements the preconditioned transpose-free QMR algorithm for solving non-Hermitian linear systems of equations Ax = b, where b is the right-hand side vector and x is the corresponding solution. More...
 
class  TFQMRSolMgrLinearProblemFailure
 TFQMRSolMgrLinearProblemFailure is thrown when the linear problem is not setup (i.e. More...
 
class  TFQMRSolMgr
 The Belos::TFQMRSolMgr provides a powerful and fully-featured solver manager over the TFQMR linear solver. More...
 
class  OutOfPlaceNormalizerMixin
 Mixin for out-of-place orthogonalization. More...
 
class  TsqrOrthoManager
 TSQR-based OrthoManager subclass. More...
 
class  TsqrMatOrthoManager
 MatOrthoManager subclass using TSQR or DGKS. More...
 
class  TsqrOrthoError
 Error in TsqrOrthoManager or TsqrOrthoManagerImpl. More...
 
class  TsqrOrthoFault
 Orthogonalization fault. More...
 
class  ReorthogonalizationCallback
 Interface of callback invoked by TsqrOrthoManager on reorthogonalization. More...
 
class  TsqrOrthoManagerImpl
 TSQR-based OrthoManager subclass implementation. More...
 
class  BelosError
 Parent class to all Belos exceptions. More...
 
struct  DefaultSolverParameters
 Default parameters common to most Belos solvers. More...
 

Typedefs

template<class SC , class MV , class OP >
using SolverFactory = typename::Belos::Impl::SolverFactorySelector< SC, MV, OP >::type
 

Enumerations

enum  ETrans { NOTRANS = 0, TRANS = 1, CONJTRANS = 2 }
 Whether to apply the (conjugate) transpose of an operator. More...
 
enum  NormType { OneNorm, TwoNorm, InfNorm, PreconditionerNorm }
 The type of vector norm to compute. More...
 
enum  ScaleType {
  NormOfRHS, NormOfInitRes, NormOfPrecInitRes, None,
  UserProvided, NormOfFullInitRes, NormOfFullPrecInitRes, NormOfFullScaledInitRes,
  NormOfFullScaledPrecInitRes
}
 The type of scaling to use on the residual norm value. More...
 
enum  OutputType { General, Brief, User }
 Style of output used to display status test information. More...
 
enum  ReturnType { Converged, Unconverged }
 Whether the Belos solve converged for all linear systems. More...
 
enum  StatusType { Passed = 0x1, Failed = 0x2, Undefined = 0x4 }
 Whether the StatusTest wants iteration to stop. More...
 
enum  ResetType { Problem = 0x1, RecycleSubspace = 0x2 }
 How to reset the solver. More...
 
enum  ConjType { NO_CONJ, CONJ }
 Whether or not to conjugate the transpose for block inner products. More...
 
enum  MsgType {
  Errors = 0, Warnings = 0x1, IterationDetails = 0x2, OrthoDetails = 0x4,
  FinalSummary = 0x8, TimingDetails = 0x10, StatusTestDetails = 0x20, Debug = 0x40
}
 Available message types recognized by the linear solvers. More...
 

Functions

std::string Belos_Version ()
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getDGKSDefaultParameters ()
 "Default" parameters for robustness and accuracy. More...
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getDGKSFastParameters ()
 "Fast" but possibly unsafe or less accurate parameters. More...
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getICGSDefaultParameters ()
 "Default" parameters for robustness and accuracy. More...
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getICGSFastParameters ()
 "Fast" but possibly unsafe or less accurate parameters. More...
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getIMGSDefaultParameters ()
 "Default" parameters for robustness and accuracy. More...
 
template<class ScalarType , class MV , class OP >
Teuchos::RCP
< Teuchos::ParameterList
getIMGSFastParameters ()
 "Fast" but possibly unsafe or less accurate parameters. More...
 
template<class Scalar , class MV , class OP >
Teuchos::RCP< LinearProblem
< Scalar, MV, OP > > 
problemWithNewRHS (const Teuchos::RCP< const LinearProblem< Scalar, MV, OP > > &problem, const Teuchos::RCP< const MV > &B)
 New LinearProblem with different right-hand side. More...
 
template<class ScalarType , class MV >
bool TestMultiVecTraits (const Teuchos::RCP< OutputManager< ScalarType > > &om, const Teuchos::RCP< const MV > &A)
 Test correctness of a MultiVecTraits specialization and multivector implementation. More...
 
template<class ScalarType , class MV , class OP >
bool TestOperatorTraits (const Teuchos::RCP< OutputManager< ScalarType > > &om, const Teuchos::RCP< const MV > &A, const Teuchos::RCP< const OP > &M)
 Test correctness of OperatorTraits specialization and its operator implementation. More...
 
std::string convertStatusTypeToString (const StatusType status)
 The string name corresponding to the given StatusType enum value. More...
 
StatusType convertStringToStatusType (const std::string &status)
 The StatusType enum value corresponding to the given string name. More...
 
NormType convertStringToNormType (const std::string &normType)
 Convert the given string to its NormType enum value. More...
 
ScaleType convertStringToScaleType (const std::string &scaleType)
 Convert the given string to its ScaleType enum value. More...
 
std::string convertScaleTypeToString (const ScaleType scaleType)
 Convert the given ScaleType enum value to its corresponding string. More...
 
std::string convertMsgTypeToString (const MsgType msgType)
 Show MsgType as a comma-delimited list of names. More...
 
std::string convertReturnTypeToString (const ReturnType result)
 Convert the given ReturnType enum value to its corresponding string. More...
 

Typedef Documentation

template<class SC , class MV , class OP >
using Belos::SolverFactory = typedef typename ::Belos::Impl::SolverFactorySelector<SC, MV, OP>::type

Definition at line 281 of file BelosSolverFactory.hpp.

Enumeration Type Documentation

Whether to apply the (conjugate) transpose of an operator.

The OperatorTraits and Operator abstract interfaces to multivector-multivector operators have an Apply method, which implements applying the operator to a multivector. This method optionally allows callers to apply the transpose or conjugate transpose (if applicable) of the operator, by supplying an ETrans enum value.

Note
This enum is useful to you only if you are specializing OperatorTraits, implementing Operator, or implementing a Belos solver.
Enumerator
NOTRANS 

The operator should not be transposed during this application.

TRANS 

Apply the transpose of the operator.

CONJTRANS 

Apply the conjugate transpose of the operator.

Definition at line 49 of file BelosTypes.hpp.

The type of vector norm to compute.

The MultiVecTraits and MultiVec abstract interfaces to multivector operations have a method (MvNorm) for computing the norm of one or more vectors. This method uses an optional NormType enum value to decide which kind of norm to compute.

Note
This enum is useful to you only if you are specializing MultiVecTraits, implementing MultiVec, or implementing a Belos solver.
Enumerator
OneNorm 

Compute the one-norm $\sum_{i=1}^{n}(|x_i w_i|)$ for each vector.

TwoNorm 

Compute the two-norm $\sqrt(\sum_{i=1}^{n}((x_i w_i)^2))$ for each vector.

InfNorm 

Compute the infinity-norm $\max_{i=1}^{n}\{|x_i w_i|\}$ for each vector.

PreconditionerNorm 

Compute the infinity-norm $\max_{i=1}^{n}\{|x_i w_i|\}$ for each vector.

Definition at line 65 of file BelosTypes.hpp.

The type of scaling to use on the residual norm value.

For residual norm convergence tests, the residual norm is scaled (divided) by some value. This enum specifies which value to use – for example, the norm of the right-hand side, the initial residual vector norm (preconditioned or not), a user-specified value, or no scaling at all.

A user-specified value is useful when invoking an iterative solver as the inner loop of a nonlinear solver or iterative optimization method. These may require special scaling factors (for example, that include the dimension of the linear system $N$).

Note
This enum is part of the public interface of many Belos solvers, via the input list of parameters.
Enumerator
NormOfRHS 

Use the norm of the right-hand-side.

NormOfInitRes 

Use the initial residual vector.

NormOfPrecInitRes 

Use the preconditioned initial residual vector.

None 

Use unscaled residual.

UserProvided 

User provides an explicit value by which the residual norm will be divided.

NormOfFullInitRes 

Use the full initial residual vector. Only interesting for partial subnorms. For singular fields this is equivalent with NormOfInitRes.

NormOfFullPrecInitRes 

Use the full preconditioned initial residual vector. Only interesting for partial subnorms. For singular fields this is equivalent with NormOfPrecInitRes.

NormOfFullScaledInitRes 

Use the full initial residual vector scaled by the inverse of the length of the subvector compared to the overall residual vector length. Only interesting for partial subnorms. For singular fields this is equivalent with NormOfInitRes.

NormOfFullScaledPrecInitRes 

Use the full initial residual vector scaled by the inverse of the length of the subvector compared to the overall residual vector length. Only interesting for partial subnorms. For singular fields this is equivalent with NormOfInitRes.

Definition at line 88 of file BelosTypes.hpp.

Style of output used to display status test information.

Belos solvers optionally display intermediate status output during iterations. "General" output may be quite verbose; each of the stopping criteria gets a chance to print something. "Brief" was intended to imitate AztecOO's status output.

Note
This enum is part of the public interface of many Belos solvers, via the input list of parameters.
Enumerator
General 

Extensive output of status test information.

Brief 

Simple output of current residual information.

User 

Simple output of user-specified status tests tagged by user

Definition at line 109 of file BelosTypes.hpp.

Whether the Belos solve converged for all linear systems.

When the solve() method of any Belos::SolverManager is called, it returns a value of this type. This indicates whether the solver manager sucessfully solved the linear system(s).

Note
This enum is part of the public interface of all Belos solvers.
Enumerator
Converged 

Convergence was reached for all linear systems.

Unconverged 

Convergence was not reached for some or all linear systems.

Definition at line 123 of file BelosTypes.hpp.

Whether the StatusTest wants iteration to stop.

Note
Only Belos developers and advanced users need this.

Belos solvers use subclasses of StatusTest as iteration stopping criteria. StatusTest's getStatus() and checkStatus() methods return a StatusType value, indicating whether iteration should stop. "Passed" means that according to the particular test, iteration should stop. "Failed" means that it should not yet stop.

Note that "Passed" does not necessarily mean "Converged." This can be a confusing point for new Belos developers. For most Belos solvers, the StatusTest instance that controls iteration is really a combination of two or more StatusTest instances. These include a test for reaching the maximum iteration count, and one or more convergence tests. When the maximum iteration count test Passes, it means that the maximum iteration count has been reached. In this case, the outer test also Passes, indicating that iteration should stop. However, this does not necessarily mean that the solver has converged.

This enum is useful to you only if you are implementing a subclass of StatusTest, Iteration, or SolverManager.

Enumerator
Passed 

Some event occured, the iteration needs to stop.

Failed 

No event has occurred requiring the iteration to stop.

Undefined 

Status test has not been checked yet.

Definition at line 157 of file BelosTypes.hpp.

How to reset the solver.

SolverManager's reset() method accepts an enum value of this type. Some Belos solvers have special capabilities, such as creating and using a recycling subspace. The RecycleSubspace enum value allows you to access these capabilities. For more details, see the documentation of the specific SolverManager subclass.

Note
This enum is part of the public interface of all Belos solvers.
Enumerator
Problem 

Reset the linear problem inside the solver.

RecycleSubspace 

Destroy any existing subspace inside the solver.

Definition at line 174 of file BelosTypes.hpp.

Whether or not to conjugate the transpose for block inner products.

The MultiVecTraits and MultiVec abstract interfaces to linear algebra operations can compute block inner products using MvTransMv and MvDot. This enum specifies whether to use the transpose or conjugate transpose when computing block inner products.

Enumerator
NO_CONJ 

Not conjugated

CONJ 

Conjugated

Definition at line 206 of file BelosTypes.hpp.

Available message types recognized by the linear solvers.

This enum allows users to control the kinds of output that Belos' solvers generate. MsgType is not an enum in the strictest sense, because the values are not exclusive. Rather, it is a C-style bit set. You can bitwise OR together different enum values to get a combination.

Note
This enum is part of the public interface of many Belos solvers, via the input list of parameters.
Enumerator
Errors 

Errors [ always printed ]

Warnings 

Internal warnings

IterationDetails 

Approximate/exact residuals

OrthoDetails 

Orthogonalization/orthonormalization details

FinalSummary 

Final computational summary

TimingDetails 

Timing details

StatusTestDetails 

Status test details

Debug 

Debugging information

Definition at line 222 of file BelosTypes.hpp.

Function Documentation

std::string Belos::Belos_Version ( )

Definition at line 18 of file BelosVersion.cpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getDGKSDefaultParameters ( )

"Default" parameters for robustness and accuracy.

Definition at line 1734 of file BelosDGKSOrthoManager.hpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getDGKSFastParameters ( )

"Fast" but possibly unsafe or less accurate parameters.

Definition at line 1759 of file BelosDGKSOrthoManager.hpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getICGSDefaultParameters ( )

"Default" parameters for robustness and accuracy.

Definition at line 1676 of file BelosICGSOrthoManager.hpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getICGSFastParameters ( )

"Fast" but possibly unsafe or less accurate parameters.

Definition at line 1699 of file BelosICGSOrthoManager.hpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getIMGSDefaultParameters ( )

"Default" parameters for robustness and accuracy.

Definition at line 1660 of file BelosIMGSOrthoManager.hpp.

template<class ScalarType , class MV , class OP >
Teuchos::RCP< Teuchos::ParameterList > Belos::getIMGSFastParameters ( )

"Fast" but possibly unsafe or less accurate parameters.

Definition at line 1683 of file BelosIMGSOrthoManager.hpp.

template<class Scalar , class MV , class OP >
Teuchos::RCP<LinearProblem<Scalar, MV, OP> > Belos::problemWithNewRHS ( const Teuchos::RCP< const LinearProblem< Scalar, MV, OP > > &  problem,
const Teuchos::RCP< const MV > &  B 
)

New LinearProblem with different right-hand side.

Given a LinearProblem instance, construct and return a new LinearProblem instance with the same operator, preconditioner(s), and current approximate solution, but a different right-hand side. The current approximate solution is copied deeply, but the operator and preconditioner(s) are only copied shallowly.

This is useful with InnerSolver subclasses.

Definition at line 34 of file BelosInnerSolver.hpp.

template<class ScalarType , class MV >
bool Belos::TestMultiVecTraits ( const Teuchos::RCP< OutputManager< ScalarType > > &  om,
const Teuchos::RCP< const MV > &  A 
)

Test correctness of a MultiVecTraits specialization and multivector implementation.

Template Parameters
ScalarTypeThe type of the entries in the multivectors; the first template parameter of MultiVecTraits.
MVThe multivector type; the second template parameter of MultiVecTraits.
Parameters
om[in/out] A valid OutputManager, for displaying test results.
A[in] An initial multivector, to use for making new multivectors. (Belos doesn't currently have a "vector space" abstraction; making a new multivector requires a valid input multivector to clone.)
Returns
Test result: true if all tests passed, else false.

Definition at line 54 of file BelosMVOPTester.hpp.

template<class ScalarType , class MV , class OP >
bool Belos::TestOperatorTraits ( const Teuchos::RCP< OutputManager< ScalarType > > &  om,
const Teuchos::RCP< const MV > &  A,
const Teuchos::RCP< const OP > &  M 
)

Test correctness of OperatorTraits specialization and its operator implementation.

Template Parameters
ScalarTypeThe type of the entries in the multivectors; the first template parameter of MultiVecTraits and OperatorTraits.
MVThe multivector type; the second template parameter of MultiVecTraits and OperatorTraits.
OPThe operator type; the third template parameter of OperatorTraits.
Parameters
om[in/out] A valid OutputManager, for displaying test results.
A[in] An initial multivector, to use for making new multivectors. (Belos doesn't currently have a "vector space" abstraction; making a new multivector requires a valid input multivector to clone.)
M[in] The operator to test.
Returns
Test result: true if all tests passed, else false.

Definition at line 1423 of file BelosMVOPTester.hpp.

std::string Belos::convertStatusTypeToString ( const StatusType  status)

The string name corresponding to the given StatusType enum value.

Definition at line 34 of file BelosTypes.cpp.

StatusType Belos::convertStringToStatusType ( const std::string &  status)

The StatusType enum value corresponding to the given string name.

Definition at line 40 of file BelosTypes.cpp.

NormType Belos::convertStringToNormType ( const std::string &  normType)

Convert the given string to its NormType enum value.

Definition at line 56 of file BelosTypes.cpp.

ScaleType Belos::convertStringToScaleType ( const std::string &  scaleType)

Convert the given string to its ScaleType enum value.

Definition at line 74 of file BelosTypes.cpp.

std::string Belos::convertScaleTypeToString ( const ScaleType  scaleType)

Convert the given ScaleType enum value to its corresponding string.

Definition at line 94 of file BelosTypes.cpp.

std::string Belos::convertMsgTypeToString ( const MsgType  msgType)

Show MsgType as a comma-delimited list of names.

The MsgType enum is really a C-style bit set (where you bitwise OR together different names to get a combination of values). This function returns a string representing the given MsgType (represented here as an int, mainly because Teuchos::ParameterList seems to prefer storing these kind of C-style bit sets as int rather than MsgType) as a comma-delimited, human-readable list of names. This is useful for debugging.

Definition at line 114 of file BelosTypes.cpp.

std::string Belos::convertReturnTypeToString ( const ReturnType  result)

Convert the given ReturnType enum value to its corresponding string.

Definition at line 165 of file BelosTypes.cpp.