8 #ifndef IMPGSL_GSL_OPTIMIZER_H
9 #define IMPGSL_GSL_OPTIMIZER_H
11 #include <IMP/gsl/gsl_config.h>
15 #include <gsl/gsl_multimin.h>
17 IMPGSL_BEGIN_NAMESPACE
26 mutable double best_score_;
41 #if !defined(IMP_DOXYGEN) && !defined(SWIG)
42 gsl_vector* get_state()
const;
43 void update_state(gsl_vector *x)
const;
44 void write_state(
const gsl_vector *x)
const;
46 double evaluate(
const gsl_vector *v);
47 double evaluate_derivative(
const gsl_vector *v, gsl_vector *df);
48 unsigned int get_dimension()
const {
52 double optimize(
unsigned int n,
const gsl_multimin_fdfminimizer_type*t,
53 double step,
double param,
double min_gradient);
55 double optimize(
unsigned int n,
const gsl_multimin_fminimizer_type*t,
56 double size,
double max_size);