QuantLib_EndCriteria (3) - Linux Manuals
QuantLib_EndCriteria: Criteria to end optimization process:.
NAME
QuantLib::EndCriteria - Criteria to end optimization process:.
SYNOPSIS
#include <ql/math/optimization/endcriteria.hpp>
Public Types
enum Type { None, MaxIterations, StationaryPoint, StationaryFunctionValue, StationaryFunctionAccuracy, ZeroGradientNorm, Unknown }
Public Member Functions
EndCriteria (Size maxIterations, Size maxStationaryStateIterations, Real rootEpsilon, Real functionEpsilon, Real gradientNormEpsilon)
Initialization constructor.
Size maxIterations () const
Size maxStationaryStateIterations () const
Real rootEpsilon () const
Real functionEpsilon () const
Real gradientNormEpsilon () const
bool operator() (const Size iteration, Size &statState, const bool positiveOptimization, const Real fold, const Real normgold, const Real fnew, const Real normgnew, EndCriteria::Type &ecType) const
bool checkMaxIterations (const Size iteration, EndCriteria::Type &ecType) const
bool checkStationaryPoint (const Real xOld, const Real xNew, Size &statStateIterations, EndCriteria::Type &ecType) const
bool checkStationaryFunctionValue (const Real fxOld, const Real fxNew, Size &statStateIterations, EndCriteria::Type &ecType) const
bool checkStationaryFunctionAccuracy (const Real f, const bool positiveOptimization, EndCriteria::Type &ecType) const
bool checkZeroGradientNorm (const Real gNorm, EndCriteria::Type &ecType) const
Protected Attributes
Size maxIterations_
Maximum number of iterations.
Size maxStationaryStateIterations_
Maximun number of iterations in stationary state.
Real rootEpsilon_
root, function and gradient epsilons
Real functionEpsilon_
Real gradientNormEpsilon_
Detailed Description
Criteria to end optimization process:.
- *
- maximum number of iterations AND minimum number of iterations around stationary point
- *
- x (independent variable) stationary point
- *
- y=f(x) (dependent variable) stationary point
- *
- stationary gradient
Examples:
Member Function Documentation
bool operator() (const Size iteration, Size & statState, const bool positiveOptimization, const Real fold, const Real normgold, const Real fnew, const Real normgnew, EndCriteria::Type & ecType) const
Test if the number of iterations is not too big and if a minimum point is not reached
bool checkMaxIterations (const Size iteration, EndCriteria::Type & ecType) const
Test if the number of iteration is below MaxIterations
bool checkStationaryPoint (const Real xOld, const Real xNew, Size & statStateIterations, EndCriteria::Type & ecType) const
Test if the root variation is below rootEpsilon
bool checkStationaryFunctionValue (const Real fxOld, const Real fxNew, Size & statStateIterations, EndCriteria::Type & ecType) const
Test if the function variation is below functionEpsilon
bool checkStationaryFunctionAccuracy (const Real f, const bool positiveOptimization, EndCriteria::Type & ecType) const
Test if the function value is below functionEpsilon
bool checkZeroGradientNorm (const Real gNorm, EndCriteria::Type & ecType) const
Test if the gradient norm variation is below gradientNormEpsilon
Test if the gradient norm value is below gradientNormEpsilon
Author
Generated automatically by Doxygen for QuantLib from the source code.