English Français

Documentation / Manuel développeur

Modules disponibles

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Sensitivity: TFiniteDifferences.h Source File
Uranie / Sensitivity  v4.10.0
/* @license-end */
TFiniteDifferences.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
6 // by 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$
22 // $State$
24 
61 #ifndef TFiniteDifferences_H
62 #define TFiniteDifferences_H
63 
64 // Uranie
65 #include "TStochAttribut.h"
66 #include "TSensitivity.h"
67 
68 using std::cout;
69 using std::endl;
70 using namespace URANIE::DataServer;
71 
72 namespace URANIE
73 {
74 namespace Sensitivity
75 {
76 
77 //void SensitivityInteractiveMethod(Double_t *param, Double_t *out);
78 
80 {
81 
82 protected:
83 
84  TMatrixD _sMatrix;
85  TString _sSensitiveAtt;
86  TString _sSamplingOption;
87  Int_t _nbIn;
88  Int_t _nbAux;
89 protected:
90 
91 public:
92  //---------------------------------------------
98 
100 
114 #ifdef ROOT5
115  TFiniteDifferences(TDataServer *tdsNominal, void *fcn, TString outputAtt,
116  TString sensitiveAtt = "", TString samplingOption = "steps=1%");
117 #else
118  TFiniteDifferences(TDataServer *tdsNominal, void (*fcn)(Double_t*,Double_t*),
119  TString sensitiveAtt, TString outputAtt,
120  TString samplingOption = "steps=1%");
121 #endif
122 
124 
137  TFiniteDifferences(TDataServer *tdsNominal, const char* fcn,
138  TString sensitiveAtt, TString outputAtt,
139  TString samplingOption );
140 
141 
143 
155  TFiniteDifferences(TDataServer *tdsNominal, URANIE::Launcher::TCode *fcode,
156  TString sensitiveAtt = "", TString samplingOption = "steps=1%");
157 
159 
171  TFiniteDifferences(TDataServer *tdsNominal, URANIE::Relauncher::TRun *run,
172  TString sensitiveAtt = "", TString samplingOption = "steps=1%");
173 
175 
192  TFiniteDifferences(TDataServer *tdsNominal, TString inputAtt,
193  TString outputAtt, TString sensitiveAtt = TString(""));
194 
196  virtual ~TFiniteDifferences();
198 
199  //---------------------------------------------
203  TMatrixD getSensitivityMatrix()
205  {
206  return _sMatrix;
207  }
208 
210  TDataServer* getDataServer()
211  {
212  return _tds;
213  }
215 
216  //---------------------------------------------
220 
228  virtual void generateSample(Option_t * option = "");
229 
231 
232  //---------------------------------------------
236 
245 // void computeIndexes(Option_t * option = "");
246  void evaluateIndexes(Option_t * option = "");
247 
249 
253  void preTreatment();
255 
256  //---------------------------------------------
260  virtual void printLog();
262  ClassDef(URANIE::Sensitivity::TFiniteDifferences, ID_SENSITIVITY)
263  //Definition of an variable
264 
265 };
266 
267 } // Fin du namespace Sensitivity
268 } // Fin du namespace URANIE
269 
270 #endif
ROOT.
Definition: TCMN.h:45
TMatrixD _sMatrix
The sensitivity matrix.
Definition: TFiniteDifferences.h:84
Description of the class TFiniteDifferences.
Definition: TFiniteDifferences.h:79
Int_t _nbAux
the number of non sensitive inputs
Definition: TFiniteDifferences.h:88
Description of the class TSensitivity.
Definition: TSensitivity.h:111
Int_t _nbIn
the number of sensitive inputs
Definition: TFiniteDifferences.h:87
TString _sSensitiveAtt
The list of sensitive attributes.
Definition: TFiniteDifferences.h:85
TString _sSamplingOption
the options for the OAT sampling
Definition: TFiniteDifferences.h:86
TDataServer * getDataServer()
Returns a pointer to the internal data server.
Definition: TFiniteDifferences.h:210
Interface of class URANIE::Sensitivity::TSensitivity.