English Français

Documentation / Manuel développeur

Modules disponibles

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / ReLauncher: TComposeMulti.h Source File
Uranie / ReLauncher  v4.10.0
/* @license-end */
TComposeMulti.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 __TCOMPOSEMULTI__
33 #define __TCOMPOSEMULTI__
34 
35 //ROOT
36 #include "TList.h"
37 #include "TObjArray.h"
38 
39 //URANIE
40 #include "Relauncher.h"
41 #include "TComposeEval.h"
42 
43 namespace URANIE
44 {
45 namespace Relauncher
46 {
47 
48 class TComposeMulti: public TShareMulti
49 {
50 protected:
51  TList *_after, *_before;
52  TSubMulti *_multi;
54  TObjArray _const;
55  std::vector<double> _val;
56 
57 public:
59  virtual ~TComposeMulti();
60 
61  void addBeforeEval(TEval *);
62  void addAfterEval(TEval *);
63  void setBeforeEvals(Int_t, TEval *, ...);
64  void setAfterEvals(Int_t, TEval *, ...);
65  void addConstantValue(URANIE::DataServer::TAttribute *, double);
66 
67  virtual void freeze();
68  void _rebuild(int, Bool_t);
69  virtual TEval *rebuild(int rank, Bool_t chef = kTRUE);
70  virtual Bool_t unbuild();
71  virtual int meval(double*, double**);
72 
73  ClassDef(URANIE::Relauncher::TComposeMulti, ID_RELAUNCHER)
74 };
75 
76 }
77 } //namespace
78 
79 #endif
Definition: TBaseEval.cxx:44
void addAfterEval(TEval *)
Definition: TComposeMulti.cxx:66
virtual void freeze()
Definition: TComposeMulti.cxx:110
virtual int meval(double *, double **)
Definition: TComposeMulti.cxx:212
TList * _after
Definition: TComposeMulti.h:51
virtual ~TComposeMulti()
Definition: TComposeMulti.cxx:51
std::vector< double > _val
Definition: TComposeMulti.h:55
void setBeforeEvals(Int_t, TEval *,...)
Definition: TComposeMulti.cxx:71
TComposeMulti(TEval *)
Definition: TComposeMulti.cxx:42
Definition: TComposeMulti.h:48
Int_t _allsize
Definition: TComposeMulti.h:53
composition de fonction
TSubMulti * _multi
Definition: TComposeMulti.h:52
void _rebuild(int, Bool_t)
Definition: TComposeMulti.cxx:162
virtual Bool_t unbuild()
Definition: TComposeMulti.cxx:194
void addConstantValue(URANIE::DataServer::TAttribute *, double)
Definition: TComposeMulti.cxx:103
void addBeforeEval(TEval *)
Definition: TComposeMulti.cxx:61
TList * _before
Definition: TComposeMulti.h:51
Definition: TEval.h:49
void setAfterEvals(Int_t, TEval *,...)
Definition: TComposeMulti.cxx:87
TObjArray _const
Definition: TComposeMulti.h:54
virtual TEval * rebuild(int rank, Bool_t chef=kTRUE)
Definition: TComposeMulti.cxx:185
Int_t _mfirst
Definition: TComposeMulti.h:53
Int_t _msize
Definition: TComposeMulti.h:53