English Français

Documentation / Manuel développeur

Modules disponibles

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Calibration: TLinearBayesian.h Source File
Uranie / Calibration  v4.11.0
/* @license-end */
TLinearBayesian.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/>.
17 // TLinearBayesian
19 // $Id$
20 // $Author$
21 // $Date$
22 // $Revision$
23 // $State$
25 
42 #ifndef TLINEARBAYESIAN_H
43 #define TLINEARBAYESIAN_H
44 
45 // Uranie
46 #include "TCalibration.h"
47 
48 namespace URANIE
49 {
50 namespace Calibration
51 {
52 
54 
55 protected:
56 
57  void (*_fTransfoParam)(double *, double*);
58  vector<double> _aPrioriMode;
59 
60  TMatrixD _mParCovariance;
61  TMatrixD _mParValues;
62  TMatrixD _mTransfoParValues;
63 
64  TMatrixD _mH;
65  vector<string> _vRegName;
66  string _regname;
67 public:
68 
69  //---------------------------------------------
73 
75 
82  TLinearBayesian(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, Int_t ns=1, Option_t * option = "");
83 
92  TLinearBayesian(URANIE::DataServer::TDataServer *tds, void (*fcn)(Double_t*,Double_t*), const char *varexpinput, const char *varexpoutput, int ns = 1, Option_t * option = "");
93 
102  TLinearBayesian(URANIE::DataServer::TDataServer *tds, const char *fcn, const char *varexpinput, const char *varexpoutput, int ns = 1, Option_t * option = "");
103 
110  TLinearBayesian(URANIE::DataServer::TDataServer *tds, URANIE::Launcher::TCode *fcode, int ns = 1, const char *option = "");
111 
113  virtual ~TLinearBayesian();
115 
116 
117  //---------------------------------------------
121 
129  void computePredictionVariance(URANIE::DataServer::TDataServer *tds_new, string outname);
131 
132 
133  //---------------------------------------------
137 
145  void setParameterTransformationFunction( void (*fTransfoParam)(double *, double*)){ _fTransfoParam = fTransfoParam; }
146 
150  void setRegressorName(const char *regName);
151 
160  void setLikelihood(const char *likelihoodName, URANIE::DataServer::TDataServer *tdsRef, const char *input, const char *output, const char *weight="");
161 
170  void setLikelihood(URANIE::Calibration::TDistanceLikelihoodFunction *likelihoodFunc, URANIE::DataServer::TDataServer *tdsRef, const char *input, const char *output, const char *weight="");
171 
176 
181 
186 
188 
189  //---------------------------------------------
193 
205  void drawParameters(TString sTitre, const char *variable = "*", Option_t * option = "");
206 
210  void printLog(Option_t *option = "");
211 
213 
214 protected:
215  void computeParameters(Option_t *option="");
219  void checktdsParContent();
220 
221  ClassDef(URANIE::Calibration::TLinearBayesian, ID_CALIBRATION)
222 
223 
224 };
225 
226 } // Fin du namespace Calibration
227 } // Fin du namespace URANIE
228 
229 #endif
Definition: TABC.cxx:45
TLinearBayesian(URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, Int_t ns=1, Option_t *option="")
Default constructor with TRun arg.
virtual ~TLinearBayesian()
Default destructor.
void setRegressorName(const char *regName)
Set the regressor matrix by providing the variables to be extracted from tdsObs.
string _regname
regressor name
Definition: TLinearBayesian.h:66
void computePredictionVariance(URANIE::DataServer::TDataServer *tds_new, string outname)
Set parameter transformation function Sometimes the calibration is performed on transformed variables...
Description of the class TDistanceLikelihoodFunction.
Definition: TDistanceLikelihoodFunction.h:67
void setParameterTransformationFunction(void(*fTransfoParam)(double *, double *))
Set parameter transformation function Sometimes the calibration is performed on transformed variables...
Definition: TLinearBayesian.h:145
void setLikelihood(const char *likelihoodName, URANIE::DataServer::TDataServer *tdsRef, const char *input, const char *output, const char *weight="")
Set the likelihood function and some needed informations.
TMatrixD getParameterCovarianceMatrix()
get the matrix of parameter covariances
Definition: TLinearBayesian.h:185
void computeParameters(Option_t *option="")
internal method in which the estimation is performed for all inheriting classes
TMatrixD _mParCovariance
Parameters covariance matrix.
Definition: TLinearBayesian.h:60
vector< double > _aPrioriMode
A priori modes of the laws.
Definition: TLinearBayesian.h:58
Description of the class TLinearBayesian.
Definition: TLinearBayesian.h:53
vector< string > _vRegName
Regressor names.
Definition: TLinearBayesian.h:65
TMatrixD getTransfParameterValueMatrix()
get the matrix of parameter values
Definition: TLinearBayesian.h:180
Interface of class URANIE::Calibration::TCalibration.
Description of the class TCalibration.
Definition: TCalibration.h:64
TMatrixD _mTransfoParValues
Parametres matrix.
Definition: TLinearBayesian.h:62
void printLog(Option_t *option="")
dump content
TMatrixD _mParValues
Parametres matrix.
Definition: TLinearBayesian.h:61
void drawParameters(TString sTitre, const char *variable="*", Option_t *option="")
TMatrixD _mH
Regressor matrix.
Definition: TLinearBayesian.h:64
void(* _fTransfoParam)(double *, double *)
Parameter transformation function.
Definition: TLinearBayesian.h:57
TMatrixD getParameterValueMatrix()
get the matrix of parameter values
Definition: TLinearBayesian.h:175