20 #ifndef MIRTK_InexactLineSearch_H 21 #define MIRTK_InexactLineSearch_H 23 #include "mirtk/LineSearch.h" 44 mirtkPublicAttributeMacro(
int, MaxRejectedStreak);
47 mirtkPublicAttributeMacro(
bool, ReusePreviousStepLength);
57 mirtkPublicAttributeMacro(
int, StrictStepLengthRange);
64 mirtkPublicAggregateMacro(
bool, AllowSignChange);
83 using LineSearch::Function;
105 virtual bool Set(
const char *,
const char *);
129 double Value(
double,
double * = NULL);
136 #endif // MIRTK_InexactLineSearch_H InexactLineSearch(ObjectiveFunction *=NULL)
Constructor.
virtual ParameterList Parameter() const
Get parameters as key/value as string map.
virtual ~InexactLineSearch()
Destructor.
double * _ScaledDirection
Line search direction scaled by current step length.
Array< Pair< string, string > > ParameterList
Ordered list of parameter name/value pairs.
virtual ParameterList Parameter() const
Get parameters as key/value as string map.
double * _CurrentDoFValues
Previous function parameters.
virtual void Function(ObjectiveFunction *)
Set objective function.
virtual bool Set(const char *, const char *)
Set parameter value from string.
double Value(double, double *=NULL)
InexactLineSearch & operator=(const InexactLineSearch &)
Assignment operator.
void Retreat(double)
Revert step in search direction.