Go to the documentation of this file.
19 #ifndef __itkMoreThuenteLineSearchOptimizer_h
20 #define __itkMoreThuenteLineSearchOptimizer_h
124 itkGetConstMacro( CurrentIteration,
unsigned long );
126 itkGetConstMacro( SufficientDecreaseConditionSatisfied,
bool );
127 itkGetConstMacro( CurvatureConditionSatisfied,
bool );
132 1, NumericTraits< unsigned long >::max() );
143 itkSetClampMacro( ValueTolerance,
double, 0.0, NumericTraits< double >::max() );
144 itkGetConstMacro( ValueTolerance,
double );
155 itkSetClampMacro( GradientTolerance,
double, 0.0, NumericTraits< double >::max() );
156 itkGetConstMacro( GradientTolerance,
double );
166 itkSetClampMacro( IntervalTolerance,
double, 0.0, NumericTraits< double >::max() );
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 void GetCurrentValueAndDerivative(MeasureType &value, DerivativeType &derivative) const
virtual ~MoreThuenteLineSearchOptimizer()
ITK version of the MoreThuente line search algorithm.
bool m_InitialDerivativeProvided
virtual void InitializeLineSearch(void)
bool m_CurvatureConditionSatisfied
SmartPointer< Self > Pointer
virtual void TestConvergence(bool &stop)
bool m_SufficientDecreaseConditionSatisfied
virtual int CheckSettings(void)
double m_GradientTolerance
Superclass::ParametersType ParametersType
MoreThuenteLineSearchOptimizer(const Self &)
bool m_SafeGuardedStepFailed
virtual void ComputeCurrentValueAndDerivative(void)
MoreThuenteLineSearchOptimizer Self
@ MaximumNumberOfIterations
virtual void ForceSufficientDecreaseInIntervalWidth(void)
virtual MeasureType GetCurrentValue(void) const
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
unsigned long m_MaximumNumberOfIterations
virtual void PrepareForUnusualTermination(void)
Superclass::DerivativeType DerivativeType
Superclass::CostFunctionType CostFunctionType
Superclass::MeasureType MeasureType
MoreThuenteLineSearchOptimizer()
@ StrongWolfeConditionsSatisfied
virtual void StartOptimization(void)
Superclass::MeasureType MeasureType
virtual double GetCurrentDirectionalDerivative(void) const
StopConditionType m_StopCondition
virtual void StopOptimization(void)
unsigned long m_CurrentIteration
void PrintSelf(std::ostream &os, Indent indent) const
void operator=(const Self &)
Superclass::CostFunctionType CostFunctionType
LineSearchOptimizer Superclass
virtual void SetInitialValue(MeasureType value)
bool m_InitialValueProvided
Superclass::DerivativeType DerivativeType
virtual void UpdateIntervalMinimumAndMaximum(void)
virtual void SetInitialDerivative(const DerivativeType &derivative)
double m_IntervalTolerance
virtual void GetCurrentDerivative(DerivativeType &derivative) const
A base class for LineSearch optimizers.
Superclass::ParametersType ParametersType
virtual void GetInitialValueAndDerivative(void)
void BoundStep(double &step) const
virtual void ComputeNewStepAndInterval(void)
SmartPointer< const Self > ConstPointer
Generated on OURCE_DATE_EPOCH for elastix by 1.8.18 |
|