18 #ifndef itkQuasiNewtonOptimizerv4_h
19 #define itkQuasiNewtonOptimizerv4_h
25 #include "vnl/algo/vnl_matrix_inverse.h"
26 #include "vnl/algo/vnl_determinant.h"
60 template <
typename TInternalComputationValueType>
82 using typename Superclass::ParametersType;
83 using typename Superclass::MeasureType;
84 using typename Superclass::DerivativeType;
85 using typename Superclass::IndexRangeType;
95 StartOptimization(
bool doOnlyInitialization =
false)
override;
114 itkSetMacro(MaximumNewtonStepSizeInPhysicalUnits, TInternalComputationValueType);
147 std::string m_NewtonStepWarning{};
150 TInternalComputationValueType m_MaximumNewtonStepSizeInPhysicalUnits{};
161 EstimateNewtonStep();
179 CombineGradientNewtonStep();
190 ModifyCombinedNewtonStep();
197 AdvanceOneStep()
override;
203 PrintSelf(std::ostream & os,
Indent indent)
const override;
215 #ifndef ITK_MANUAL_INSTANTIATION
216 # include "itkQuasiNewtonOptimizerv4.hxx"