15 #ifndef __elxConjugateGradientFRPR_h
16 #define __elxConjugateGradientFRPR_h
18 #include "itkFRPROptimizer.h"
72 template <
class TElastix>
116 virtual void BeforeRegistration(
void);
117 virtual void BeforeEachResolution(
void);
118 virtual void AfterEachResolution(
void);
119 virtual void AfterEachIteration(
void);
120 virtual void AfterRegistration(
void);
127 itkGetConstMacro(LineOptimizing,
bool);
128 itkGetConstMacro(LineBracketing,
bool);
131 itkGetConstReferenceMacro(CurrentDerivativeMagnitude,
double);
134 itkGetConstReferenceMacro(CurrentStepLength,
double);
137 itkGetConstReferenceMacro(CurrentSearchDirectionMagnitude,
double);
145 double m_CurrentDerivativeMagnitude ;
155 itkSetMacro(LineOptimizing,
bool);
156 itkSetMacro(LineBracketing,
bool);
165 virtual void GetValueAndDerivative(
ParametersType p,
double * val,
178 virtual void LineBracket(
double *ax,
double *bx,
double *cx,
179 double *fa,
double *fb,
double *fc);
190 virtual void BracketedLineOptimize(
double ax,
double bx,
double cx,
191 double fa,
double fb,
double fc,
192 double * extX,
double * extVal);
205 void operator=(
const Self& );
210 const char * DeterminePhase(
void)
const;
218 #ifndef ITK_MANUAL_INSTANTIATION
219 #include "elxConjugateGradientFRPR.hxx"
222 #endif // end #ifndef __elxConjugateGradientFRPR_h