32 #ifndef __NLOPTSHARE__ 33 #define __NLOPTSHARE__ 43 #include "Reoptimizer.h" 46 #include "DataServer.h" 69 URANIE::Relauncher::TRun *run);
89 virtual void buildSolver(
int siz,
struct nlopt_work *) = 0;
91 virtual void put(
struct nlopt_work *, Bool_t,
const double *) = 0;
92 virtual int get(
long &) = 0;
95 void solver(
struct nlopt_work *,
int,
double*,
96 vector<URANIE::DataServer::UEntry*>&,
97 vector<URANIE::DataServer::UEntry*>&,
98 vector<URANIE::DataServer::UEntry*>&
100 void calcul(
struct nlopt_work *, Bool_t,
const double *);
102 void fill(
struct nlopt_work *, URANIE::DataServer::TDataServer *tds,
int id);
109 TNloptShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *
run,
111 TNloptShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TEval *fun,
124 virtual int critere(
struct nlopt_work*,
const double *ini,
double *out,
126 virtual int inequality(
struct nlopt_work*,
const double *in,
double *out,
128 virtual int equality(
struct nlopt_work*,
const double *in,
double *out,
130 void run(
struct nlopt_work *);
150 double nlopt_crit(
unsigned,
const double*,
double*,
void *);
151 void nlopt_inequal(
unsigned,
double *,
unsigned,
const double*,
double*,
void*);
152 void nlopt_equal(
unsigned,
double *,
unsigned,
const double*,
double*,
void*);
Definition: TCMAES.cxx:49
int _max
Definition: TNloptShare.h:84
TObjArray _equal
Definition: TNloptShare.h:81
objectifs et contraintes standards
void solver(struct nlopt_work *, int, double *, vector< URANIE::DataServer::UEntry *> &, vector< URANIE::DataServer::UEntry *> &, vector< URANIE::DataServer::UEntry *> &)
Definition: TNloptShare.cxx:241
double nlopt_crit(unsigned, const double *, double *, void *)
Definition: TNloptShare.cxx:159
Definition: TNloptShare.h:105
virtual void put(struct nlopt_work *, Bool_t, const double *)=0
void create()
Definition: TNloptShare.cxx:99
TNloptSolver * _solv
Definition: TNloptShare.h:82
virtual ~TNloptSolver()
Definition: TNloptShare.h:66
virtual void buildSolver(int siz, struct nlopt_work *)=0
std::vector< double * > _guess
Definition: TNloptShare.h:83
Definition: TFitGetter.h:50
std::vector< std::vector< URANIE::DataServer::UEntry * > > _codo
Definition: TNloptShare.h:85
Definition: TOptimShare.h:121
int _retOptim
Definition: TNloptShare.h:132
Definition: TNloptShare.h:74
virtual void solverLoop()
Definition: TNloptShare.cxx:342
virtual int critere(struct nlopt_work *, const double *ini, double *out, double *grad)=0
void nlopt_equal(unsigned, double *, unsigned, const double *, double *, void *)
Definition: TNloptShare.cxx:178
int getReturnOptim()
Definition: TNloptShare.h:133
virtual ~TNloptShare()
Definition: TNloptShare.cxx:82
struct nlopt_opt_s * nlopt_opt
Definition: TNloptShare.h:54
void nlopt_inequal(unsigned, double *, unsigned, const double *, double *, void *)
Definition: TNloptShare.cxx:169
Definition: TOptimShare.h:52
Definition: TNloptShare.h:63
virtual void setStartingPoint(double *pt)
Definition: TNloptShare.cxx:119
virtual void cleanSolver(struct nlopt_work *)=0
std::vector< std::vector< URANIE::DataServer::UEntry * > > _codg
Definition: TNloptShare.h:85
TFitGetter * _crit
Definition: TNloptShare.h:80
std::vector< std::vector< URANIE::DataServer::UEntry * > > _codi
Definition: TNloptShare.h:85
virtual nlopt_opt build(int, int, int, double, nlopt_opt *)=0
int getNStartingPoint()
Definition: TNloptShare.h:138
void fillOptimum(struct nlopt_work *)
Definition: TNloptShare.cxx:410
TNloptShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, TNloptSolver *algo)
Definition: TNloptShare.cxx:68
virtual int equality(struct nlopt_work *, const double *in, double *out, double *grad)=0
void calcul(struct nlopt_work *, Bool_t, const double *)
Definition: TNloptShare.cxx:188
virtual void build()
Definition: TNloptShare.cxx:110
int _id
Definition: TNloptShare.h:84
recuperation de sortie transformées
methodes communes aux algo d optimisation
void run(struct nlopt_work *)
Definition: TNloptShare.cxx:310
void fill(struct nlopt_work *, URANIE::DataServer::TDataServer *tds, int id)
Definition: TNloptShare.cxx:417
virtual int inequality(struct nlopt_work *, const double *in, double *out, double *grad)=0
virtual TOptimShare * getMaster(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run)
Definition: TNloptDirect.cxx:48
virtual void setMaximumEval(int max)
Definition: TNloptShare.h:118