Belos Package Browser (Single Doxygen Collection)
Development
|
Enumeration of all valid Belos (Mat)OrthoManager classes. More...
#include <BelosOrthoManagerFactory.hpp>
Public Member Functions | |
OrthoManagerFactory () | |
Constructor. More... | |
const std::vector< std::string > & | validNames () const |
List of MatOrthoManager subclasses this factory recognizes. More... | |
bool | isValidName (const std::string &name) const |
Whether this factory recognizes the MatOrthoManager with the given name. More... | |
std::ostream & | printValidNames (std::ostream &out) const |
Print all recognized MatOrthoManager names to the given ostream. More... | |
std::string | validNamesString () const |
List (as a string) of recognized MatOrthoManager names. More... | |
const std::string & | defaultName () const |
Name of the "default" MatOrthoManager subclass. More... | |
Teuchos::RCP< const Teuchos::ParameterList > | getDefaultParameters (const std::string &name) const |
Default parameters for the given MatOrthoManager subclass. More... | |
Teuchos::RCP< const Teuchos::ParameterList > | getFastParameters (const std::string &name) const |
"Fast" parameters for the given MatOrthoManager subclass. More... | |
Teuchos::RCP < Belos::MatOrthoManager < Scalar, MV, OP > > | makeMatOrthoManager (const std::string &ortho, const Teuchos::RCP< const OP > &M, const Teuchos::RCP< OutputManager< Scalar > > &, const std::string &label, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) |
Return an instance of the specified MatOrthoManager subclass. More... | |
Teuchos::RCP < Belos::OrthoManager< Scalar, MV > > | makeOrthoManager (const std::string &ortho, const Teuchos::RCP< const OP > &M, const Teuchos::RCP< OutputManager< Scalar > > &outMan, const std::string &label, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) |
Return an instance of the specified OrthoManager subclass. More... | |
Static Public Member Functions | |
static int | numOrthoManagers () |
Number of MatOrthoManager subclasses this factory recognizes. More... | |
static bool | isRankRevealing (const std::string &name) |
Is the given MatOrthoManager subclass rank-reealing? More... | |
Private Attributes | |
std::vector< std::string > | theList_ |
List of valid OrthoManager names. More... | |
Enumeration of all valid Belos (Mat)OrthoManager classes.
This factory class knows how to initialize any of Belos' MatOrthoManager
subclasses, given a short name of the subclass (as would naturally belong in a SolverManager's parameter list). As such, it may be used by any of Belos' SolverManager
subclasses that use a (Mat)OrthoManager subclass for orthogonalization.
This class' template parameters are the same as those of MatOrthoManager:
Scalar is the scalar type (of entries in the multivector), MV is the multivector type, and OP is the operator type. For example: Scalar=double, MV=Epetra_MultiVector, and OP=Epetra_Operator.
Definition at line 50 of file BelosOrthoManagerFactory.hpp.
|
inline |
Constructor.
Definition at line 80 of file BelosOrthoManagerFactory.hpp.
|
inlinestatic |
Number of MatOrthoManager subclasses this factory recognizes.
Definition at line 57 of file BelosOrthoManagerFactory.hpp.
|
inlinestatic |
Is the given MatOrthoManager subclass rank-reealing?
Return true if and only if the given MatOrthoManager name is that of a MatOrthoManager subclass with rank-revealing capability.
Definition at line 70 of file BelosOrthoManagerFactory.hpp.
|
inline |
List of MatOrthoManager subclasses this factory recognizes.
This is useful as a list of valid command-line parameter values for choosing a MatOrthoManager subclass to test.
Definition at line 101 of file BelosOrthoManagerFactory.hpp.
|
inline |
Whether this factory recognizes the MatOrthoManager with the given name.
Definition at line 105 of file BelosOrthoManagerFactory.hpp.
|
inline |
Print all recognized MatOrthoManager names to the given ostream.
Definition at line 112 of file BelosOrthoManagerFactory.hpp.
|
inline |
List (as a string) of recognized MatOrthoManager names.
This is useful for generating help for command-line arguments, when writing a test that uses different orthogonalizations.
Definition at line 133 of file BelosOrthoManagerFactory.hpp.
|
inline |
Name of the "default" MatOrthoManager subclass.
This is the name of the MatOrthoManager subclass that serves as a reasonable default for all Belos solvers that use general orthogonalizations. It may not be the fastest or the most accurate, but it should be the most reasonable.
Definition at line 146 of file BelosOrthoManagerFactory.hpp.
|
inline |
Default parameters for the given MatOrthoManager subclass.
name | [in] MatOrthoManager subclass short name, for which isValidName(name) returns true. |
name
argument, a new parameter list will be created. You can save the parameter list yourself if you want to reuse it. Definition at line 158 of file BelosOrthoManagerFactory.hpp.
|
inline |
"Fast" parameters for the given MatOrthoManager subclass.
"Fast" usually means that accuracy and/or robustness (with respect to rank deficiency) might be compromised in order to improve performance.
name | [in] MatOrthoManager subclass short name, for which isValidName(name) returns true. |
name
argument, a new parameter list will be created. You can save the parameter list yourself if you want to reuse it. Definition at line 206 of file BelosOrthoManagerFactory.hpp.
|
inline |
Return an instance of the specified MatOrthoManager subclass.
ortho | [in] Name of the MatOrthoManager subclass instance to return. The validNames() method returns a list of the supported names. |
M | [in] Inner product operator. If Teuchos::null, orthogonalize with respect to the standard Euclidean inner product. |
outMan | [in/out] Output manager, which the OrthoManager instance may use (but is not required to use) for various kinds of status output. |
label | [in] Label for Belos-specific timers, if Belos timers were enabled at compile time. Otherwise, this parameter's value doesn't matter. |
params | [in/out] Optional list of parameters for setting up the specific MatOrthoManager subclass. A default parameter list with embedded documentation is available for each MatOrthoManager subclass that this factory knows how to make. |
Definition at line 260 of file BelosOrthoManagerFactory.hpp.
|
inline |
Return an instance of the specified OrthoManager subclass.
ortho | [in] Name of the OrthoManager subclass instance to return. The validNames() method returns a list of the supported names. |
M | [in] Inner product operator. If Teuchos::null, orthogonalize with respect to the standard Euclidean inner product. |
outMan | [in/out] Output manager, which the OrthoManager instance may use (but is not required to use) for various kinds of status output. |
label | [in] Label for timers. |
params | [in/out] Optional list of parameters for setting up the specific OrthoManager subclass. |
Definition at line 324 of file BelosOrthoManagerFactory.hpp.
|
private |
List of valid OrthoManager names.
Definition at line 53 of file BelosOrthoManagerFactory.hpp.