Belos
Version of the Day
|
A pure virtual class for defining the status tests for the Belos iterative solvers. More...
#include <BelosIteration.hpp>
Public Member Functions | |
Constructors/destructors | |
StatusTest () | |
Constructor. More... | |
virtual | ~StatusTest () |
Destructor. More... | |
Status methods | |
virtual StatusType | checkStatus (Iteration< ScalarType, MV, OP > *iSolver)=0 |
Check convergence status: Unconverged, Converged, Failed. More... | |
virtual StatusType | getStatus () const =0 |
Return the result of the most recent CheckStatus call. More... | |
Reset methods | |
virtual void | reset ()=0 |
Informs the convergence test that it should reset its internal configuration to the initialized state. More... | |
Print methods | |
virtual void | print (std::ostream &os, int indent=0) const =0 |
Output formatted description of stopping test to output stream. More... | |
virtual void | printStatus (std::ostream &os, StatusType type) const |
Output the result of the most recent CheckStatus call. More... | |
Public Member Functions inherited from Teuchos::Describable | |
virtual std::string | description () const |
virtual void | describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
virtual | ~Describable () |
LabeledObject () | |
virtual | ~LabeledObject () |
virtual void | setObjectLabel (const std::string &objectLabel) |
virtual std::string | getObjectLabel () const |
DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
Additional Inherited Members | |
Static Public Attributes inherited from Teuchos::Describable | |
static const EVerbosityLevel | verbLevel_default |
A pure virtual class for defining the status tests for the Belos iterative solvers.
Belos::StatusTest is an interface that can be implemented to create convergence tests for all Belos solvers. Almost any kind of test can be expressed using this mechanism, including composite tests (see Belos::StatusTestCombo).
Definition at line 67 of file BelosIteration.hpp.
|
inline |
Constructor.
Definition at line 86 of file BelosStatusTest.hpp.
|
inlinevirtual |
Destructor.
Definition at line 89 of file BelosStatusTest.hpp.
|
pure virtual |
Check convergence status: Unconverged, Converged, Failed.
This method checks to see if the convergence criteria are met. The calling routine may pass in the current native residual std::vector (the one naturally produced as part of the iterative method) or a pre-computed estimate of the two-norm of the current residual, or both or neither. The calling routine should also indicate if the solution of the linear problem has been updated to be compatible with the residual. Some methods, such as GMRES do not update the solution at each iteration.
Implemented in Belos::StatusTestImpResNorm< ScalarType, MV, OP >, Belos::StatusTestGenResNorm< ScalarType, MV, OP >, Belos::StatusTestCombo< ScalarType, MV, OP >, Belos::StatusTestResNormOutput< ScalarType, MV, OP >, Belos::StatusTestUserOutput< ScalarType, MV, OP >, Belos::StatusTestGeneralOutput< ScalarType, MV, OP >, Belos::LSQRStatusTest< ScalarType, MV, OP >, Belos::StatusTestLogResNorm< ScalarType, MV, OP >, and Belos::StatusTestMaxIters< ScalarType, MV, OP >.
|
pure virtual |
Return the result of the most recent CheckStatus call.
Implemented in Belos::StatusTestImpResNorm< ScalarType, MV, OP >, Belos::StatusTestGenResNorm< ScalarType, MV, OP >, Belos::StatusTestResNormOutput< ScalarType, MV, OP >, Belos::StatusTestUserOutput< ScalarType, MV, OP >, Belos::StatusTestCombo< ScalarType, MV, OP >, Belos::StatusTestGeneralOutput< ScalarType, MV, OP >, Belos::LSQRStatusTest< ScalarType, MV, OP >, Belos::StatusTestLogResNorm< ScalarType, MV, OP >, and Belos::StatusTestMaxIters< ScalarType, MV, OP >.
|
pure virtual |
Informs the convergence test that it should reset its internal configuration to the initialized state.
This is necessary for the case when the status test is being reused by another solver or for another linear problem. The status test may have information that pertains to a particular linear system. The internal information will be reset back to the initialized state. The user specified information that the convergence test uses will remain.
Implemented in Belos::StatusTestUserOutput< ScalarType, MV, OP >, Belos::StatusTestResNormOutput< ScalarType, MV, OP >, Belos::StatusTestImpResNorm< ScalarType, MV, OP >, Belos::StatusTestGeneralOutput< ScalarType, MV, OP >, Belos::StatusTestGenResNorm< ScalarType, MV, OP >, Belos::StatusTestCombo< ScalarType, MV, OP >, Belos::LSQRStatusTest< ScalarType, MV, OP >, Belos::StatusTestLogResNorm< ScalarType, MV, OP >, and Belos::StatusTestMaxIters< ScalarType, MV, OP >.
|
pure virtual |
Output formatted description of stopping test to output stream.
Implemented in Belos::StatusTestUserOutput< ScalarType, MV, OP >, Belos::StatusTestResNormOutput< ScalarType, MV, OP >, Belos::StatusTestImpResNorm< ScalarType, MV, OP >, Belos::StatusTestGeneralOutput< ScalarType, MV, OP >, Belos::StatusTestGenResNorm< ScalarType, MV, OP >, Belos::StatusTestCombo< ScalarType, MV, OP >, Belos::LSQRStatusTest< ScalarType, MV, OP >, Belos::StatusTestLogResNorm< ScalarType, MV, OP >, and Belos::StatusTestMaxIters< ScalarType, MV, OP >.
|
inlinevirtual |
Output the result of the most recent CheckStatus call.
Reimplemented in Belos::StatusTestImpResNorm< ScalarType, MV, OP >, Belos::StatusTestGenResNorm< ScalarType, MV, OP >, Belos::LSQRStatusTest< ScalarType, MV, OP >, Belos::StatusTestLogResNorm< ScalarType, MV, OP >, and Belos::StatusTestMaxIters< ScalarType, MV, OP >.
Definition at line 127 of file BelosStatusTest.hpp.