14 #ifndef __elxQuasiNewtonLBFGS_h
15 #define __elxQuasiNewtonLBFGS_h
83 template<
class TElastix >
96 typedef itk::SmartPointer< Self >
Pointer;
150 itkGetConstMacro( StartLineSearch,
bool );
200 #ifndef ITK_MANUAL_INSTANTIATION
201 #include "elxQuasiNewtonLBFGS.hxx"
204 #endif // end #ifndef __elxQuasiNewtonLBFGS_h
OptimizerBase< TElastix > Superclass2
double m_SearchDirectionMagnitude
Superclass::RegistrationPointer RegistrationPointer
Superclass::ParametersType ParametersType
virtual void StartOptimization(void)
virtual void AfterEachIteration(void)
Superclass::ScalesType ScalesType
Superclass::DerivativeType DerivativeType
bool m_StopIfWolfeNotSatisfied
virtual void AfterEachResolution(void)
Superclass::ParametersType ParametersType
bool m_GenerateLineSearchIterations
ITK version of the lbfgs algorithm ...
This class is the elastix base class for all Optimizers.
Superclass::CostFunctionType CostFunctionType
Superclass2::RegistrationType RegistrationType
Superclass::ElastixType ElastixType
Superclass::ConfigurationPointer ConfigurationPointer
void InvokeIterationEvent(const itk::EventObject &event)
ITK version of the MoreThuente line search algorithm.
virtual bool TestConvergence(bool firstLineSearchDone)
Superclass2::ElastixPointer ElastixPointer
virtual std::string GetLineSearchStopCondition(void) const
Superclass::ElastixPointer ElastixPointer
itk::SmartPointer< const Self > ConstPointer
Superclass::MeasureType MeasureType
virtual std::string DeterminePhase(void) const
Superclass::ConfigurationType ConfigurationType
Superclass::DerivativeType DerivativeType
itk::MoreThuenteLineSearchOptimizer LineOptimizerType
Superclass2::ConfigurationPointer ConfigurationPointer
LineOptimizerPointer m_LineOptimizer
Superclass1::ScalesType ScalesType
EventPassThroughPointer m_EventPasser
Superclass2::ConfigurationType ConfigurationType
virtual ~QuasiNewtonLBFGS()
Superclass1::CostFunctionPointer CostFunctionPointer
Superclass1::CostFunctionType CostFunctionType
Superclass1::ParametersType ParametersType
Superclass2::ITKBaseType ITKBaseType
itk::Optimizer ITKBaseType
void operator=(const Self &)
Superclass2::RegistrationPointer RegistrationPointer
virtual void BeforeEachResolution(void)
Superclass1::StopConditionType StopConditionType
itk::ReceptorMemberCommand< Self > EventPassThroughType
An optimizer based on the itk::QuasiNewtonLBFGSOptimizer.
elxClassNameMacro("QuasiNewtonLBFGS")
bool m_WolfeIsStopCondition
QuasiNewtonLBFGSOptimizer Superclass1
SmartPointer< Self > Pointer
virtual void LineSearch(const ParametersType searchDir, double &step, ParametersType &x, MeasureType &f, DerivativeType &g)
virtual void AfterRegistration(void)
Superclass1::DerivativeType DerivativeType
Superclass::RegistrationType RegistrationType
EventPassThroughType::Pointer EventPassThroughPointer
LineOptimizerType::Pointer LineOptimizerPointer
virtual void BeforeRegistration(void)
itk::SmartPointer< Self > Pointer
Superclass2::ElastixType ElastixType