#include <Belos_StatusTest_ImpResNorm_MP_Vector.hpp >
Inherits StatusTestResNorm< Sacado::MP::Vector< Storage >, MV, OP >.
int defineResForm (NormType TypeOfNorm)
Define form of the residual, its norm and optional weighting vector.
int defineScaleForm (ScaleType TypeOfScaling, NormType TypeOfNorm, MagnitudeType ScaleValue=Teuchos::ScalarTraits< MagnitudeType >::one())
Define form of the scaling, its norm, its optional weighting vector, or, alternatively, define an explicit value.
int setTolerance (MagnitudeType tolerance)
Set the value of the tolerance.
int setQuorum (int quorum)
int setShowMaxResNormOnly (bool showMaxResNormOnly)
Set whether the only maximum residual norm is displayed when the print() method is called.
StatusType checkStatus (Iteration< ScalarType , MV, OP > *iSolver)
Check convergence status: Passed, Failed, or Undefined.
StatusType getStatus () const
Return the result of the most recent CheckStatus call.
void reset ()
Resets the internal configuration to the initial state.
void print (std::ostream &os, int indent=0) const
Output formatted description of stopping test to output stream.
void printStatus (std::ostream &os, StatusType type) const
Print message for each status specific to this stopping test.
Teuchos::RCP< MV > getSolution ()
Returns the current solution estimate that was computed for the most recent residual test.
int getQuorum () const
bool getShowMaxResNormOnly ()
Returns whether the only maximum residual norm is displayed when the print() method is called.
std::vector< int > convIndices ()
Returns the vector containing the indices of the residuals that passed the test.
MagnitudeType getTolerance () const
"Original" convergence tolerance as set by user.
MagnitudeType getCurrTolerance () const
Current convergence tolerance; may be changed to prevent loss of accuracy.
const std::vector< MagnitudeType > * getTestValue () const
Returns the test value, , computed in most recent call to CheckStatus.
const std::vector< MagnitudeType > * getResNormValue () const
Returns the residual norm value, , computed in most recent call to CheckStatus.
const std::vector< MagnitudeType > * getScaledNormValue () const
Returns the scaled norm value, .
bool getLOADetected () const
Returns a boolean indicating a loss of accuracy has been detected in computing the residual.
const std::vector< int > getEnsembleIterations () const
Returns number of ensemble iterations.
std::string description () const
Method to return description of the maximum iteration status test
std::string resFormStr () const
Description of current residual form.
template<class
Storage , class MV, class OP>
class Belos::StatusTestImpResNorm< Sacado::MP::Vector< Storage >, MV, OP >
Definition at line 110 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ ScalarType
template<class
Storage , class MV , class OP >
◆ MagnitudeType
template<class
Storage , class MV , class OP >
◆ STS
template<class
Storage , class MV , class OP >
◆ STM
template<class
Storage , class MV , class OP >
◆ MVT
template<class
Storage , class MV , class OP >
◆ StatusTestImpResNorm()
template<class
Storage , class MV , class OP >
Constructor.
Parameters
Tolerance [in] Convergence tolerance .
quorum [in] The number of vectors in the problem that must pass the convergence criteria before this StatusTest passes. -1 means that all residuals must pass.
showMaxResNormOnly [in] Whether only the maximum residual norm (of all vectors) is displayed when the print() method is called.
◆ ~StatusTestImpResNorm()
template<class
Storage , class MV , class OP >
Destructor (virtual for memory safety).
◆ defineResForm()
template<class
Storage , class MV , class OP >
Define form of the residual, its norm and optional weighting vector.
This method defines the form of . We specify:
The norm to be used on the residual (this may be different than the norm used in defineScaleForm() ).
◆ defineScaleForm()
template<class
Storage , class MV , class OP >
Define form of the scaling, its norm, its optional weighting vector, or, alternatively, define an explicit value.
This method defines the form of how the residual is scaled (if at all). It operates in two modes:
User-provided scaling value:
Set argument TypeOfScaling to UserProvided.
Set ScaleValue to a non-zero value that the residual norm will be divided by.
TypeOfNorm argument will be ignored.
Sample use: Define ScaleValue = where is the matrix of the linear problem.
Use a supported Scaling Form:
Define TypeOfScaling to be the norm of the right hand side, the initial residual vector, or to none.
Define norm to be used on the scaling vector (this may be different than the norm used in DefineResForm()).
◆ setTolerance()
template<class
Storage , class MV , class OP >
Set the value of the tolerance.
We allow the tolerance to be reset for cases where, in the process of testing the residual, we find that the initial tolerance was too tight or too lax.
Definition at line 188 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ setQuorum()
template<class
Storage , class MV , class OP >
Sets the number of residuals that must pass the convergence test before Passed is returned.
Note If quorum=-1
then all residuals must pass the convergence test before Passed is returned.
Definition at line 195 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ setShowMaxResNormOnly()
template<class
Storage , class MV , class OP >
◆ checkStatus()
template<class
Storage , class MV , class OP >
Check convergence status: Passed, Failed, or Undefined.
This method checks to see if the convergence criteria are met. Depending on how the residual test is constructed this method will return the appropriate status type.
Returns StatusType: Passed, Failed, or Undefined.
◆ getStatus()
template<class
Storage , class MV , class OP >
◆ reset()
template<class
Storage , class MV , class OP >
Resets the internal configuration to the initial state.
◆ print()
template<class
Storage , class MV , class OP >
Output formatted description of stopping test to output stream.
◆ printStatus()
template<class
Storage , class MV , class OP >
Print message for each status specific to this stopping test.
◆ getSolution()
template<class
Storage , class MV , class OP >
◆ getQuorum()
template<class
Storage , class MV , class OP >
Returns the number of residuals that must pass the convergence test before Passed is returned.
Note If quorum=-1
then all residuals must pass the convergence test before Passed is returned.
Definition at line 249 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ getShowMaxResNormOnly()
template<class
Storage , class MV , class OP >
◆ convIndices()
template<class
Storage , class MV , class OP >
◆ getTolerance()
template<class
Storage , class MV , class OP >
"Original" convergence tolerance as set by user.
This value is the convergence tolerance as set by the user in the constructor, or by the setTolerance() method. See this class' main documentation and the documentation of getCurrTolerance() for an explanation of the difference between the "original" and "current" tolerances.
Definition at line 264 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ getCurrTolerance()
template<class
Storage , class MV , class OP >
Current convergence tolerance; may be changed to prevent loss of accuracy.
The difference between "original" tolerance (the value of getTolerance() ) and "current" tolerance (the value of this method) relates to the idea of "loss of accuracy." See this class' main documentation for details. We do not allow users to set the "current" tolerance.
Definition at line 275 of file Belos_StatusTest_ImpResNorm_MP_Vector.hpp .
◆ getTestValue()
template<class
Storage , class MV , class OP >
◆ getResNormValue()
template<class
Storage , class MV , class OP >
◆ getScaledNormValue()
template<class
Storage , class MV , class OP >
◆ getLOADetected()
template<class
Storage , class MV , class OP >
◆ getEnsembleIterations()
template<class
Storage , class MV , class OP >
◆ firstCallCheckStatusSetup()
template<class
Storage , class MV , class OP >
Call to setup initial scaling vector.
After this function is called getScaledNormValue()
can be called to get the scaling vector.
◆ description()
template<class
Storage , class MV , class OP >
◆ resFormStr()
template<class
Storage , class MV , class OP >
◆ tolerance_
template<class
Storage , class MV , class OP >
◆ currTolerance_
template<class
Storage , class MV , class OP >
◆ quorum_
template<class
Storage , class MV , class OP >
◆ showMaxResNormOnly_
template<class
Storage , class MV , class OP >
◆ resnormtype_
template<class
Storage , class MV , class OP >
◆ scaletype_
template<class
Storage , class MV , class OP >
◆ scalenormtype_
template<class
Storage , class MV , class OP >
◆ scalevalue_
template<class
Storage , class MV , class OP >
◆ scalevector_
template<class
Storage , class MV , class OP >
◆ resvector_
template<class
Storage , class MV , class OP >
◆ testvector_
template<class
Storage , class MV , class OP >
◆ curSoln_
template<class
Storage , class MV , class OP >
◆ ind_
template<class
Storage , class MV , class OP >
◆ status_
template<class
Storage , class MV , class OP >
◆ curBlksz_
template<class
Storage , class MV , class OP >
◆ curNumRHS_
template<class
Storage , class MV , class OP >
◆ curLSIdx_
template<class
Storage , class MV , class OP >
◆ curLSNum_
template<class
Storage , class MV , class OP >
◆ numrhs_
template<class
Storage , class MV , class OP >
◆ firstcallCheckStatus_
template<class
Storage , class MV , class OP >
◆ firstcallDefineResForm_
template<class
Storage , class MV , class OP >
◆ firstcallDefineScaleForm_
template<class
Storage , class MV , class OP >
◆ lossDetected_
template<class
Storage , class MV , class OP >
◆ ensemble_iterations
template<class
Storage , class MV , class OP >
The documentation for this class was generated from the following file: