32 #ifndef __NLOPTSHARE__ 33 #define __NLOPTSHARE__ 42 #include "Reoptimizer.h" 45 #include "DataServer.h" 85 virtual void buildSolver(
int siz,
struct nlopt_work *) = 0;
87 virtual void put(
struct nlopt_work *, Bool_t,
const double *) = 0;
88 virtual int get(
long &) = 0;
91 void solver(
struct nlopt_work *,
int,
double*,
92 vector<URANIE::DataServer::UEntry*>&,
93 vector<URANIE::DataServer::UEntry*>&,
94 vector<URANIE::DataServer::UEntry*>&
96 void calcul(
struct nlopt_work *, Bool_t,
const double *);
98 void fill(
struct nlopt_work *, URANIE::DataServer::TDataServer *tds,
int id);
105 TNloptShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *
run,
107 TNloptShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TEval *fun,
120 virtual int critere(
struct nlopt_work*,
const double *ini,
double *out,
122 virtual int inequality(
struct nlopt_work*,
const double *in,
double *out,
124 virtual int equality(
struct nlopt_work*,
const double *in,
double *out,
126 void run(
struct nlopt_work *);
146 double nlopt_crit(
unsigned,
const double*,
double*,
void *);
147 void nlopt_inequal(
unsigned,
double *,
unsigned,
const double*,
double*,
void*);
148 void nlopt_equal(
unsigned,
double *,
unsigned,
const double*,
double*,
void*);
int _max
Definition: TNloptShare.h:80
TObjArray _equal
Definition: TNloptShare.h:77
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:101
virtual void put(struct nlopt_work *, Bool_t, const double *)=0
void create()
Definition: TNloptShare.cxx:99
TNloptSolver * _solv
Definition: TNloptShare.h:78
virtual ~TNloptSolver()
Definition: TNloptShare.h:64
virtual void buildSolver(int siz, struct nlopt_work *)=0
std::vector< double * > _guess
Definition: TNloptShare.h:79
Definition: TFitGetter.h:50
std::vector< std::vector< URANIE::DataServer::UEntry * > > _codo
Definition: TNloptShare.h:81
int _retOptim
Definition: TNloptShare.h:128
Definition: TNloptShare.h:70
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:129
virtual ~TNloptShare()
Definition: TNloptShare.cxx:82
struct nlopt_opt_s * nlopt_opt
Definition: TNloptShare.h:52
void nlopt_inequal(unsigned, double *, unsigned, const double *, double *, void *)
Definition: TNloptShare.cxx:169
Definition: TOptimShare.h:52
Definition: TNloptShare.h:61
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:81
TFitGetter * _crit
Definition: TNloptShare.h:76
std::vector< std::vector< URANIE::DataServer::UEntry * > > _codi
Definition: TNloptShare.h:81
virtual nlopt_opt build(int, int, int, double, nlopt_opt *)=0
int getNStartingPoint()
Definition: TNloptShare.h:134
void fillOptimum(struct nlopt_work *)
Definition: TNloptShare.cxx:410
void setMaximumEval(int max)
Definition: TNloptShare.h:114
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:80
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