|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Criteria to end optimization process: More...
#include <endcriteria.hpp>
Collaboration diagram for EndCriteria:Public Types | |
| enum | Type { None , MaxIterations , StationaryPoint , StationaryFunctionValue , StationaryFunctionAccuracy , ZeroGradientNorm , FunctionEpsilonTooSmall , Unknown } |
Public Member Functions | |
| EndCriteria (Size maxIterations, Size maxStationaryStateIterations, Real rootEpsilon, Real functionEpsilon, Real gradientNormEpsilon) | |
| Initialization constructor. More... | |
| Size | maxIterations () const |
| Size | maxStationaryStateIterations () const |
| Real | rootEpsilon () const |
| Real | functionEpsilon () const |
| Real | gradientNormEpsilon () const |
| bool | operator() (Size iteration, Size &statState, bool positiveOptimization, Real fold, Real normgold, Real fnew, Real normgnew, EndCriteria::Type &ecType) const |
| bool | checkMaxIterations (Size iteration, EndCriteria::Type &ecType) const |
| bool | checkStationaryPoint (Real xOld, Real xNew, Size &statStateIterations, EndCriteria::Type &ecType) const |
| bool | checkStationaryFunctionValue (Real fxOld, Real fxNew, Size &statStateIterations, EndCriteria::Type &ecType) const |
| bool | checkStationaryFunctionAccuracy (Real f, bool positiveOptimization, EndCriteria::Type &ecType) const |
| bool | checkZeroGradientNorm (Real gNorm, EndCriteria::Type &ecType) const |
Static Public Member Functions | |
| static bool | succeeded (EndCriteria::Type ecType) |
Protected Attributes | |
| Size | maxIterations_ |
| Maximum number of iterations. More... | |
| Size | maxStationaryStateIterations_ |
| Maximun number of iterations in stationary state. More... | |
| Real | rootEpsilon_ |
| root, function and gradient epsilons More... | |
| Real | functionEpsilon_ |
| Real | gradientNormEpsilon_ |
Criteria to end optimization process:
Definition at line 40 of file endcriteria.hpp.
| enum Type |
| Enumerator | |
|---|---|
| None | |
| MaxIterations | |
| StationaryPoint | |
| StationaryFunctionValue | |
| StationaryFunctionAccuracy | |
| ZeroGradientNorm | |
| FunctionEpsilonTooSmall | |
| Unknown | |
Definition at line 42 of file endcriteria.hpp.
| EndCriteria | ( | Size | maxIterations, |
| Size | maxStationaryStateIterations, | ||
| Real | rootEpsilon, | ||
| Real | functionEpsilon, | ||
| Real | gradientNormEpsilon | ||
| ) |
Initialization constructor.
Definition at line 29 of file endcriteria.cpp.
Here is the call graph for this function:| Size maxIterations | ( | ) | const |
| Size maxStationaryStateIterations | ( | ) | const |
| Real rootEpsilon | ( | ) | const |
| Real functionEpsilon | ( | ) | const |
| Real gradientNormEpsilon | ( | ) | const |
Definition at line 157 of file endcriteria.cpp.
| bool operator() | ( | Size | iteration, |
| Size & | statState, | ||
| bool | positiveOptimization, | ||
| Real | fold, | ||
| Real | normgold, | ||
| Real | fnew, | ||
| Real | normgnew, | ||
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the number of iterations is not too big and if a minimum point is not reached
Definition at line 125 of file endcriteria.cpp.
Here is the call graph for this function:| bool checkMaxIterations | ( | Size | iteration, |
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the number of iteration is below MaxIterations
Definition at line 56 of file endcriteria.cpp.
Here is the caller graph for this function:| bool checkStationaryPoint | ( | Real | xOld, |
| Real | xNew, | ||
| Size & | statStateIterations, | ||
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the root variation is below rootEpsilon
Definition at line 64 of file endcriteria.cpp.
Here is the caller graph for this function:| bool checkStationaryFunctionValue | ( | Real | fxOld, |
| Real | fxNew, | ||
| Size & | statStateIterations, | ||
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the function variation is below functionEpsilon
Definition at line 79 of file endcriteria.cpp.
Here is the caller graph for this function:| bool checkStationaryFunctionAccuracy | ( | Real | f, |
| bool | positiveOptimization, | ||
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the function value is below functionEpsilon
Definition at line 95 of file endcriteria.cpp.
Here is the caller graph for this function:| bool checkZeroGradientNorm | ( | Real | gNorm, |
| EndCriteria::Type & | ecType | ||
| ) | const |
Test if the gradient norm variation is below gradientNormEpsilon
Test if the gradient norm value is below gradientNormEpsilon
Definition at line 117 of file endcriteria.cpp.
Here is the caller graph for this function:
|
static |
|
protected |
Maximum number of iterations.
Definition at line 102 of file endcriteria.hpp.
|
mutableprotected |
Maximun number of iterations in stationary state.
Definition at line 104 of file endcriteria.hpp.
|
protected |
root, function and gradient epsilons
Definition at line 106 of file endcriteria.hpp.
|
protected |
Definition at line 106 of file endcriteria.hpp.
|
protected |
Definition at line 106 of file endcriteria.hpp.