English Français

Documentation / Developer's manual

Available modules

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / ReOptimizer: TVizirShare.h Source File
Uranie / ReOptimizer  v4.10.0
/* @license-end */
TVizirShare.h
Go to the documentation of this file.
1 // Copyright (C) 2013-2024 CEA/DES
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Lesser General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or any
7 // later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Lesser General Public License for more details.
13 //
14 // You should have received a copy of the GNU Lesser General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
18 // $Id$
19 // $Author$
20 // $Date$
21 // $Revision 1.3 $
22 // $State$
24 
32 #ifndef __VIZIR_SHARE__
33 #define __VIZIR_SHARE__
34 
35 //ROOT
36 #include "Rtypes.h"
37 #include "TNamed.h"
38 
39 // Uranie
40 #include "Reoptimizer.h"
41 #include "TOptimShare.h"
42 
43 #include "TDataServer.h"
44 #include "TEval.h"
45 #include "TOptimFit.h"
46 #include "TVizirSolver.h"
47 
48 namespace URANIE
49 {
50 namespace Reoptimizer
51 {
52 
53 class TVizirShare: public TOptimShare
54 {
55 protected:
56  int _obj, _valid;
57  TMatrixD _minmax;
58  TObjArray _crit;
60 
61  //void buildDomain();
62  void build();
63 
64  void nodecode(Double_t *code, Double_t *phys);
65  void decode(Double_t *code, Double_t *phys);
66  void fillChoice(vector<URANIE::DataServer::UEntry*> *all, double *out);
67  vector<URANIE::DataServer::UEntry *> * fillData( vector<URANIE::DataServer::UEntry*> *in,
68  vector<URANIE::DataServer::UEntry*> *out);
69  void fillTrace(vector<URANIE::DataServer::UEntry*> *in,
70  vector<URANIE::DataServer::UEntry*> *out,
71  vector<URANIE::DataServer::UEntry*> *all);
72  //virtual void run(TRun *call, int cpus) = 0;
73  void fill(struct vzragent *ag);
74  void fill(struct vzragent *ag, int &decal);
75 
76 public:
77  TVizirShare(URANIE::DataServer::TDataServer *tds,
78  URANIE::Relauncher::TRun *run, TVizirSolver *algo);
79  TVizirShare(URANIE::DataServer::TDataServer *tds,
80  URANIE::Relauncher::TEval *fun, TVizirSolver *algo);
81  virtual ~TVizirShare();
82 
83  // initialisation
84  void setFixedSeed();
85  virtual void addObjective(URANIE::DataServer::TAttribute *, TOptimFit *f =
86  NULL);
87 
88  ClassDef(URANIE::Reoptimizer::TVizirShare, ID_REOPTIMIZER)
89 };
90 
91 }
92 } //namespace
93 #endif
Definition: TCMAES.h:66
objectifs et contraintes standards
void setFixedSeed()
Definition: TVizirShare.cxx:102
int _valid
Definition: TVizirShare.h:56
void fillChoice(vector< URANIE::DataServer::UEntry *> *all, double *out)
Definition: TVizirShare.cxx:146
virtual ~TVizirShare()
Definition: TVizirShare.cxx:70
vector< URANIE::DataServer::UEntry * > * fillData(vector< URANIE::DataServer::UEntry *> *in, vector< URANIE::DataServer::UEntry *> *out)
Definition: TVizirShare.cxx:162
Definition: TVizirSolver.h:65
void nodecode(Double_t *code, Double_t *phys)
Definition: TVizirShare.cxx:117
classe abstraite et racine pour les solvers de Vizir
void fill(struct vzragent *ag)
Definition: TVizirShare.cxx:199
Definition: TOptimShare.h:52
Definition: TOptimFit.h:47
TVizirSolver * _solv
Definition: TVizirShare.h:59
void build()
Definition: TVizirShare.cxx:80
TVizirShare(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, TVizirSolver *algo)
Definition: TVizirShare.cxx:54
void decode(Double_t *code, Double_t *phys)
Definition: TVizirShare.cxx:124
void fillTrace(vector< URANIE::DataServer::UEntry *> *in, vector< URANIE::DataServer::UEntry *> *out, vector< URANIE::DataServer::UEntry *> *all)
Definition: TVizirShare.cxx:177
int _obj
Definition: TVizirShare.h:56
TObjArray _crit
Definition: TVizirShare.h:58
TMatrixD _minmax
Definition: TVizirShare.h:57
methodes communes aux algo d optimisation
Definition: TVizirShare.h:53
virtual void addObjective(URANIE::DataServer::TAttribute *, TOptimFit *f=NULL)
Definition: TVizirShare.cxx:108