#include <NOX_StatusTest_Divergence.H>


Public Member Functions | |
| Divergence (double thresh, int n=1) | |
| Constructor. | |
| virtual | ~Divergence () |
| Destructor. | |
| virtual NOX::StatusTest::StatusType | checkStatus (const NOX::Solver::Generic &problem, NOX::StatusTest::CheckType checkType) |
| Tests the stopping criterion. | |
| virtual NOX::StatusTest::StatusType | getStatus () const |
| Return the result of the most recent checkStatus call. | |
| virtual ostream & | print (ostream &stream, int indent=0) const |
| Output formatted description of stopping test to output stream. | |
| virtual int | getMaxNumSteps () const |
| Returns the user-specified number of steps that can consecutively fail the threshold test before the test returns a failed status. | |
| virtual int | getCurrentNumSteps () const |
| Returns the current number of steps that have consecutively failed the threshold test. | |
| virtual double | getThreshold () const |
| Returns the user-specified threshold. | |
Private Attributes | |
| int | maxSteps |
| User supplied value of n. | |
| int | numSteps |
| Current number of consecutive nonlinear iterations that have failed the specified threshold. | |
| int | lastIteration |
| The last nonlinear iteration index. | |
| double | threshold |
| User specified threshold. | |
| NOX::StatusTest::StatusType | status |
| Status | |
This status test returns NOX::StatusTest::Failed if the norm of F exceeds a threshold value for n consecutive iterations, i.e.
for n consecutive iterations, the status is set to NOX::StatusTest::Failed and returned. Otherwise, the status is set to NOX::StatusTest::Uncoverged and returned. Both n and the threshold are specified in the constructor, by n and thresh, respectively. While a value for thresh must be provided, a default value of n = 1 is assumed.
Definition at line 71 of file NOX_StatusTest_Divergence.H.
| NOX::StatusTest::Divergence::Divergence | ( | double | thresh, | |
| int | n = 1 | |||
| ) |
Constructor.
| thresh | - Threshold for divergence test | |
| n | - Number of consecutive nonlinear iterations |
Definition at line 44 of file NOX_StatusTest_Divergence.C.
References NOX::StatusTest::Unevaluated.
| NOX::StatusTest::Divergence::~Divergence | ( | ) | [virtual] |
| NOX::StatusTest::StatusType NOX::StatusTest::Divergence::checkStatus | ( | const NOX::Solver::Generic & | problem, | |
| NOX::StatusTest::CheckType | checkType | |||
| ) | [virtual] |
Tests the stopping criterion.
Implements NOX::StatusTest::Generic.
Definition at line 58 of file NOX_StatusTest_Divergence.C.
References NOX::StatusTest::Failed, NOX::Abstract::Group::getNormF(), NOX::Solver::Generic::getNumIterations(), NOX::Solver::Generic::getSolutionGroup(), lastIteration, maxSteps, numSteps, status, threshold, and NOX::StatusTest::Unconverged.
| NOX::StatusTest::StatusType NOX::StatusTest::Divergence::getStatus | ( | ) | const [virtual] |
Return the result of the most recent checkStatus call.
Implements NOX::StatusTest::Generic.
Definition at line 103 of file NOX_StatusTest_Divergence.C.
References status.
| ostream & NOX::StatusTest::Divergence::print | ( | ostream & | stream, | |
| int | indent = 0 | |||
| ) | const [virtual] |
Output formatted description of stopping test to output stream.
Implements NOX::StatusTest::Generic.
Definition at line 108 of file NOX_StatusTest_Divergence.C.
| int NOX::StatusTest::Divergence::getMaxNumSteps | ( | ) | const [virtual] |
Returns the user-specified number of steps that can consecutively fail the threshold test before the test returns a failed status.
Definition at line 123 of file NOX_StatusTest_Divergence.C.
References maxSteps.
| int NOX::StatusTest::Divergence::getCurrentNumSteps | ( | ) | const [virtual] |
Returns the current number of steps that have consecutively failed the threshold test.
Definition at line 128 of file NOX_StatusTest_Divergence.C.
References numSteps.
| double NOX::StatusTest::Divergence::getThreshold | ( | ) | const [virtual] |
Returns the user-specified threshold.
Definition at line 133 of file NOX_StatusTest_Divergence.C.
References threshold.
int NOX::StatusTest::Divergence::maxSteps [private] |
User supplied value of n.
Definition at line 116 of file NOX_StatusTest_Divergence.H.
Referenced by checkStatus(), getMaxNumSteps(), and print().
int NOX::StatusTest::Divergence::numSteps [private] |
Current number of consecutive nonlinear iterations that have failed the specified threshold.
Definition at line 119 of file NOX_StatusTest_Divergence.H.
Referenced by checkStatus(), getCurrentNumSteps(), and print().
int NOX::StatusTest::Divergence::lastIteration [private] |
The last nonlinear iteration index.
This is used to prevent counting a step multiple times if by chance the status test is called multiple times between iterations.
Definition at line 125 of file NOX_StatusTest_Divergence.H.
Referenced by checkStatus().
double NOX::StatusTest::Divergence::threshold [private] |
User specified threshold.
Definition at line 128 of file NOX_StatusTest_Divergence.H.
Referenced by checkStatus(), getThreshold(), and print().
Status
Definition at line 131 of file NOX_StatusTest_Divergence.H.
Referenced by checkStatus(), getStatus(), and print().
1.5.9