EndCriteria Class Reference
#include <ql/Optimization/criteria.hpp>
Detailed Description
Criteria to end optimization process.
- stationary point
- stationary gradient
- maximum number of iterations ....
Public Types | |
enum | Type { none, maxIter, statPt, statGd } |
Public Member Functions | |
EndCriteria () | |
default constructor | |
EndCriteria (Size maxIteration, Real epsilon) | |
initialization constructor | |
void | setPositiveOptimization (bool) |
bool | operator() (Size iteration, Real fold, Real normgold, Real fnew, Real normgnew, Real) |
Type | criteria () const |
return the end criteria type | |
bool | checkIterationNumber (Size iteration) |
bool | checkStationaryValue (Real fold, Real fnew) |
bool | checkAccuracyValue (Real f) |
bool | checkStationaryGradientNorm (Real normDiff) |
bool | checkAccuracyGradientNorm (Real norm) |
Protected Attributes | |
Size | maxIteration_ |
Maximum number of iterations. | |
Real | functionEpsilon_ |
function and gradient epsilons | |
Real | gradientEpsilon_ |
Size | maxIterStatPt_ |
Maximun number of iterations in stationary state. | |
Size | statState_ |
Type | endCriteria_ |
bool | positiveOptimization_ |
Member Function Documentation
bool operator() | ( | Size | iteration, | |
Real | fold, | |||
Real | normgold, | |||
Real | fnew, | |||
Real | normgnew, | |||
Real | ||||
) |
test if the number of iteration is not too big and if we don't raise a stationary point