|
Belos Version of the Day
|
Classes | |
| 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... | |
Enumerations | |
| enum | ERobustness { ROBUSTNESS_NONE, ROBUSTNESS_SOME, ROBUSTNESS_LOTS, ROBUSTNESS_INVALID } |
| Robustness level of projected least-squares solver operations. More... | |
| enum | EBelosSolverType { SOLVER_TYPE_BLOCK_GMRES, SOLVER_TYPE_PSEUDO_BLOCK_GMRES, SOLVER_TYPE_BLOCK_CG, SOLVER_TYPE_PSEUDO_BLOCK_CG, SOLVER_TYPE_GCRODR, SOLVER_TYPE_RCG, SOLVER_TYPE_MINRES, SOLVER_TYPE_LSQR } |
| 1-to-1 enumeration of all supported SolverManager subclasses. More... | |
Functions | |
| std::string | robustnessEnumToString (const ERobustness x) |
| Convert the given ERobustness enum value to a string. | |
| ERobustness | robustnessStringToEnum (const std::string &x) |
| Convert the given robustness string value to an ERobustness enum. | |
| Teuchos::RCP < Teuchos::ParameterEntryValidator > | robustnessValidator () |
| Make a ParameterList validator for ERobustness. | |
| template<class SolverManagerBaseType , class SolverManagerType > | |
| Teuchos::RCP < SolverManagerBaseType > | makeSolverManagerTmpl (const Teuchos::RCP< Teuchos::ParameterList > ¶ms) |
| template<class Scalar , class MV , class OP > | |
| Teuchos::RCP< SolverManager < Scalar, MV, OP > > | makeSolverManagerFromEnum (const EBelosSolverType solverType, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) |
Robustness level of projected least-squares solver operations.
"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.
Definition at line 835 of file BelosProjectedLeastSquaresSolver.hpp.
1-to-1 enumeration of all supported SolverManager subclasses.
This enum is an implementation detail of SolverFactory. Users of SolverFactory should not refer to this enum or rely on the symbols or integer values therein. We declare it here for later use by SolverFactory.
Belos developers who have implemented a new solver (i.e., a new subclass of SolverManager) and who want to make the solver available through the SolverFactory should first add a new enum symbol corresponding to their solver to the end of the list. They should then follow the instructions provided in the SolverFactory documentation.
SolverFactory was written to be independent of the actual enum values, so Belos developers are allowed to rearrange the symbols.
| SOLVER_TYPE_BLOCK_GMRES | |
| SOLVER_TYPE_PSEUDO_BLOCK_GMRES | |
| SOLVER_TYPE_BLOCK_CG | |
| SOLVER_TYPE_PSEUDO_BLOCK_CG | |
| SOLVER_TYPE_GCRODR | |
| SOLVER_TYPE_RCG | |
| SOLVER_TYPE_MINRES | |
| SOLVER_TYPE_LSQR |
Definition at line 91 of file BelosSolverFactory.hpp.
| std::string Belos::details::robustnessEnumToString | ( | const ERobustness | x | ) |
Convert the given ERobustness enum value to a string.
Definition at line 844 of file BelosProjectedLeastSquaresSolver.hpp.
| ERobustness Belos::details::robustnessStringToEnum | ( | const std::string & | x | ) |
Convert the given robustness string value to an ERobustness enum.
Definition at line 855 of file BelosProjectedLeastSquaresSolver.hpp.
| Teuchos::RCP<Teuchos::ParameterEntryValidator> Belos::details::robustnessValidator | ( | ) |
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 878 of file BelosProjectedLeastSquaresSolver.hpp.
| Teuchos::RCP< SolverManagerBaseType > Belos::details::makeSolverManagerTmpl | ( | const Teuchos::RCP< Teuchos::ParameterList > & | params | ) |
Definition at line 438 of file BelosSolverFactory.hpp.
| Teuchos::RCP<SolverManager<Scalar, MV, OP> > Belos::details::makeSolverManagerFromEnum | ( | const EBelosSolverType | solverType, |
| const Teuchos::RCP< Teuchos::ParameterList > & | params | ||
| ) |
Definition at line 381 of file BelosSolverFactory.hpp.
1.7.4