Belos  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Enumerations | Functions
Belos::details Namespace Reference

Classes

class  MultiVecTsqrAdapter
 TSQR adapter for MultiVec. More...
 
class  ProjectedLeastSquaresProblem
 "Container" for the GMRES projected least-squares problem. More...
 
class  LocalDenseMatrixOps
 Low-level operations on non-distributed dense matrices. More...
 
class  ProjectedLeastSquaresSolver
 Methods for solving GMRES' projected least-squares problem. More...
 
class  StubTsqrAdapter
 "Stub" TSQR adaptor for unsupported multivector types. More...
 

Enumerations

enum  ERobustness { ROBUSTNESS_NONE, ROBUSTNESS_SOME, ROBUSTNESS_LOTS, ROBUSTNESS_INVALID }
 Robustness level of projected least-squares solver operations. More...
 

Functions

std::string robustnessEnumToString (const ERobustness x)
 Convert the given ERobustness enum value to a string. More...
 
ERobustness robustnessStringToEnum (const std::string &x)
 Convert the given robustness string value to an ERobustness enum. More...
 
Teuchos::RCP
< Teuchos::ParameterEntryValidator
robustnessValidator ()
 Make a ParameterList validator for ERobustness. More...
 

Enumeration Type Documentation

Robustness level of projected least-squares solver operations.

Author
Mark Hoemmen

"Robustness" refers in particular to dense triangular solves. ROBUSTNESS_NONE means use the BLAS' _TRSM, which may result in inaccurate or invalid (e.g., NaN or Inf) results if the upper triangular matrix R is singular. ROBUSTNESS_LOTS means use an SVD-based least-squares solver for upper triangular solves. This will work even if R is singular, but is much more expensive than _TRSM (in fact, it's at least N times more expensive, where N is the number of columns in R). ROBUSTNESS_SOME means some algorithmic point in between those two extremes.

The projected least-squares solver may use this enum to control the robustness of other operations besides dense triangular solves.

Enumerator
ROBUSTNESS_NONE 
ROBUSTNESS_SOME 
ROBUSTNESS_LOTS 
ROBUSTNESS_INVALID 

Definition at line 832 of file BelosProjectedLeastSquaresSolver.hpp.

Function Documentation

std::string Belos::details::robustnessEnumToString ( const ERobustness  x)
inline

Convert the given ERobustness enum value to a string.

Definition at line 841 of file BelosProjectedLeastSquaresSolver.hpp.

ERobustness Belos::details::robustnessStringToEnum ( const std::string &  x)
inline

Convert the given robustness string value to an ERobustness enum.

Definition at line 852 of file BelosProjectedLeastSquaresSolver.hpp.

Teuchos::RCP<Teuchos::ParameterEntryValidator> Belos::details::robustnessValidator ( )
inline

Make a ParameterList validator for ERobustness.

Use this validator when you are setting up a default ParameterList for a solver that accepts a ERobustness parameter. This will let users supply a string that turns into an enum value.

The validator converts strings ("None", "Some", "Lots") to the corresponding ERobustness enum values. It also includes documentation for each value.

Definition at line 875 of file BelosProjectedLeastSquaresSolver.hpp.


Generated on Fri Aug 14 2020 10:48:35 for Belos by doxygen 1.8.5