#include <AnasaziStatusTestResNorm.hpp>
Inheritance diagram for Anasazi::StatusTestResNorm< ScalarType, MV, OP >:

Public Types | |
| enum | ResType |
Public Member Functions | |
Constructors/destructors | |
| StatusTestResNorm (typename Teuchos::ScalarTraits< ScalarType >::magnitudeType tol, int quorum=-1, ResType whichNorm=RES_ORTH, bool scaled=true, bool throwExceptionOnNaN=true) | |
| Constructor. | |
| virtual | ~StatusTestResNorm () |
| Destructor. | |
Status methods | |
| TestStatus | checkStatus (Eigensolver< ScalarType, MV, OP > *solver) |
| TestStatus | getStatus () const |
| Return the result of the most recent checkStatus call, or undefined if it has not been run. | |
| std::vector< int > | whichVecs () const |
| Get the indices for the vectors that passed the test. | |
| int | howMany () const |
| Get the number of vectors that passed the test. | |
Accessor methods | |
| void | setQuorum (int quorum) |
| Set quorum. | |
| int | getQuorum () const |
| Get quorum. | |
| void | setTolerance (typename Teuchos::ScalarTraits< ScalarType >::magnitudeType tol) |
| Set tolerance. This also resets the test status to Undefined. | |
| Teuchos::ScalarTraits< ScalarType >::magnitudeType | getTolerance () |
| Get tolerance. | |
| void | setWhichNorm (ResType whichNorm) |
| Set the residual norm to be used by the status test. | |
| ResType | getWhichNorm () |
| Return the residual norm used by the status test. | |
| void | setScale (bool relscale) |
| Instruct test to scale norms by eigenvalue estimates (relative scale). This also resets the test status to Undefined. | |
| bool | getScale () |
| Returns true if the test scales the norms by the eigenvalue estimates (relative scale). | |
Reset methods | |
| void | reset () |
| Informs the status test that it should reset its internal configuration to the uninitialized state. | |
| void | clearStatus () |
| Clears the results of the last status test. | |
Print methods | |
| std::ostream & | print (std::ostream &os, int indent=0) const |
| Output formatted description of stopping test to output stream. | |
StatusTestResNorm was designed to be used as a test for convergence. The tester compares the norms of the residual vectors against a user specified tolerance.
In addition to specifying the tolerance, the user may specify:
| enum Anasazi::StatusTestResNorm::ResType |
Enumerated type used to specify which residual norm used by this status test.
| Anasazi::StatusTestResNorm< ScalarType, MV, OP >::StatusTestResNorm | ( | typename Teuchos::ScalarTraits< ScalarType >::magnitudeType | tol, | |
| int | quorum = -1, |
|||
| ResType | whichNorm = RES_ORTH, |
|||
| bool | scaled = true, |
|||
| bool | throwExceptionOnNaN = true | |||
| ) |
Constructor.
| virtual Anasazi::StatusTestResNorm< ScalarType, MV, OP >::~StatusTestResNorm | ( | ) | [inline, virtual] |
Destructor.
| TestStatus Anasazi::StatusTestResNorm< ScalarType, MV, OP >::checkStatus | ( | Eigensolver< ScalarType, MV, OP > * | solver | ) | [virtual] |
Check status as defined by test.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| TestStatus Anasazi::StatusTestResNorm< ScalarType, MV, OP >::getStatus | ( | ) | const [inline, virtual] |
Return the result of the most recent checkStatus call, or undefined if it has not been run.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| std::vector<int> Anasazi::StatusTestResNorm< ScalarType, MV, OP >::whichVecs | ( | ) | const [inline, virtual] |
Get the indices for the vectors that passed the test.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| int Anasazi::StatusTestResNorm< ScalarType, MV, OP >::howMany | ( | ) | const [inline, virtual] |
Get the number of vectors that passed the test.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::setQuorum | ( | int | quorum | ) | [inline] |
Set quorum.
Setting quorum to -1 signifies that all residuals from the solver must meet the tolerance. This also resets the test status to Undefined.
| int Anasazi::StatusTestResNorm< ScalarType, MV, OP >::getQuorum | ( | ) | const [inline] |
Get quorum.
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::setTolerance | ( | typename Teuchos::ScalarTraits< ScalarType >::magnitudeType | tol | ) | [inline] |
Set tolerance. This also resets the test status to Undefined.
| Teuchos::ScalarTraits<ScalarType>::magnitudeType Anasazi::StatusTestResNorm< ScalarType, MV, OP >::getTolerance | ( | ) | [inline] |
Get tolerance.
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::setWhichNorm | ( | ResType | whichNorm | ) | [inline] |
Set the residual norm to be used by the status test.
This also resets the test status to Undefined.
| ResType Anasazi::StatusTestResNorm< ScalarType, MV, OP >::getWhichNorm | ( | ) | [inline] |
Return the residual norm used by the status test.
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::setScale | ( | bool | relscale | ) | [inline] |
Instruct test to scale norms by eigenvalue estimates (relative scale). This also resets the test status to Undefined.
| bool Anasazi::StatusTestResNorm< ScalarType, MV, OP >::getScale | ( | ) | [inline] |
Returns true if the test scales the norms by the eigenvalue estimates (relative scale).
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::reset | ( | ) | [inline, virtual] |
Informs the status test that it should reset its internal configuration to the uninitialized state.
This is necessary for the case when the status test is being reused by another solver or for another eigenvalue problem. The status test may have information that pertains to a particular problem or solver state. The internal information will be reset back to the uninitialized state. The user specified information that the convergence test uses will remain.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| void Anasazi::StatusTestResNorm< ScalarType, MV, OP >::clearStatus | ( | ) | [inline, virtual] |
Clears the results of the last status test.
This should be distinguished from the reset() method, as it only clears the cached result from the last status test, so that a call to getStatus() will return Undefined. This is necessary for the SEQOR and SEQAND tests in the StatusTestCombo class, which may short circuit and not evaluate all of the StatusTests contained in them.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
| std::ostream & Anasazi::StatusTestResNorm< ScalarType, MV, OP >::print | ( | std::ostream & | os, | |
| int | indent = 0 | |||
| ) | const [virtual] |
Output formatted description of stopping test to output stream.
Implements Anasazi::StatusTest< ScalarType, MV, OP >.
1.4.7