19 #ifndef __itkMoreThuenteLineSearchOptimizer_h 20 #define __itkMoreThuenteLineSearchOptimizer_h 115 MeasureType & value, DerivativeType & derivative )
const;
124 itkGetConstMacro( CurrentIteration,
unsigned long );
125 itkGetConstReferenceMacro( StopCondition, StopConditionType );
126 itkGetConstMacro( SufficientDecreaseConditionSatisfied,
bool );
127 itkGetConstMacro( CurvatureConditionSatisfied,
bool );
144 itkGetConstMacro( ValueTolerance,
double );
156 itkGetConstMacro( GradientTolerance,
double );
167 itkGetConstMacro( IntervalTolerance,
double );
174 void PrintSelf( std::ostream & os, Indent indent )
const;
220 double & stx,
double & fx,
double & dx,
221 double & sty,
double & fy,
double & dy,
222 double & stp,
const double & fp,
const double & dp,
224 const double & stpmin,
const double & stpmax )
const;
374 #endif // #ifndef __itkMoreThuenteLineSearchOptimizer_h
virtual MeasureType GetCurrentValue(void) const
Superclass::MeasureType MeasureType
virtual int SafeGuardedStep(double &stx, double &fx, double &dx, double &sty, double &fy, double &dy, double &stp, const double &fp, const double &dp, bool &brackt, const double &stpmin, const double &stpmax) const
virtual void StopOptimization(void)
virtual void GetInitialValueAndDerivative(void)
StopConditionType m_StopCondition
Superclass::ParametersType ParametersType
unsigned long m_MaximumNumberOfIterations
virtual void GetCurrentDerivative(DerivativeType &derivative) const
double m_IntervalTolerance
virtual void SetInitialValue(MeasureType value)
SmartPointer< const Self > ConstPointer
ITK version of the MoreThuente line search algorithm.
LineSearchOptimizer Superclass
Superclass::CostFunctionType CostFunctionType
virtual void UpdateIntervalMinimumAndMaximum(void)
unsigned long m_CurrentIteration
bool m_InitialValueProvided
bool m_InitialDerivativeProvided
bool m_SafeGuardedStepFailed
virtual void InitializeLineSearch(void)
virtual void TestConvergence(bool &stop)
virtual void StartOptimization(void)
void operator=(const Self &)
virtual double GetCurrentDirectionalDerivative(void) const
bool m_SufficientDecreaseConditionSatisfied
void PrintSelf(std::ostream &os, Indent indent) const
Superclass::DerivativeType DerivativeType
virtual void ComputeCurrentValueAndDerivative(void)
virtual void PrepareForUnusualTermination(void)
virtual void GetCurrentValueAndDerivative(MeasureType &value, DerivativeType &derivative) const
A base class for LineSearch optimizers.
virtual ~MoreThuenteLineSearchOptimizer()
virtual int CheckSettings(void)
Superclass::DerivativeType DerivativeType
MoreThuenteLineSearchOptimizer()
virtual void ComputeNewStepAndInterval(void)
SmartPointer< Self > Pointer
virtual void SetInitialDerivative(const DerivativeType &derivative)
MoreThuenteLineSearchOptimizer Self
Superclass::CostFunctionType CostFunctionType
Superclass::MeasureType MeasureType
virtual void ForceSufficientDecreaseInIntervalWidth(void)
void BoundStep(double &step) const
double m_GradientTolerance
bool m_CurvatureConditionSatisfied
Superclass::ParametersType ParametersType