21#ifndef GSLPP_MULTIMIN_HH
22#define GSLPP_MULTIMIN_HH
26#include <gsl/gsl_multimin.h>
55 static double f(
const gsl_vector *x,
void *params);
62 static void df(
const gsl_vector *x,
void *params, gsl_vector *g);
69 static void fdf(
const gsl_vector *x,
void *params,
double *f, gsl_vector *g);
71 operator gsl_multimin_function_fdf *();
75 virtual double do_f(
const Vector& x) = 0;
78 gsl_multimin_function_fdf m_func;
110 struct CFDFMinimizerImpl *impl;
139 static double f(
const gsl_vector *x,
void *params);
141 operator gsl_multimin_function *();
145 virtual double do_f(
const Vector& x) = 0;
146 gsl_multimin_function m_func;
166 struct CFMinimizerImpl *impl;
static void df(const gsl_vector *x, void *params, gsl_vector *g)
static void fdf(const gsl_vector *x, void *params, double *f, gsl_vector *g)
static double f(const gsl_vector *x, void *params)
CFDFMinimizer(PProblem p, const gsl_multimin_fdfminimizer_type *ot)
void set_stop_eps(double tol)
std::shared_ptr< Problem > PProblem
void set_g_tol(double tol)
static double f(const gsl_vector *x, void *params)
CFMinimizer(PProblem p, const gsl_multimin_fminimizer_type *ot)
std::shared_ptr< Problem > PProblem