English Français

Documentation / Developer's manual

Available modules

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Sensitivity: TSobol.cxx File Reference
Uranie / Sensitivity v4.9.0
/* @license-end */
TSobol.cxx File Reference

Implementation of the class URANIE::Sensitivity::TSobol. More...

#include "TAttribute.h"
#include "mat3D_alloc.h"
#include "TVectorD.h"
#include "TMLPAnalyzer.h"
#include "TDirectory.h"
#include "TMath.h"
#include "TLeaf.h"
#include "TSystem.h"
#include "TROOT.h"
#include "TSobol.h"
Include dependency graph for TSobol.cxx:

Functions

 ClassImp (URANIE::Sensitivity::TSobol) namespace URANIE
 

Detailed Description

Implementation of the class URANIE::Sensitivity::TSobol.

Author
Fabrice Gaudier fabri.nosp@m.ce.g.nosp@m.audie.nosp@m.r@ce.nosp@m.a.fr
Date
mer sep 13 12:39:50 CEST 2006
Modifications
2010-06-25 09:34:49 - FGA Implement the formulas to compute first and total order described in the article of saltelli09
Bibliography
saltelli09 Variance Based sensitivity analysis of model output : Design and estimator for the total sensitivity index, Computer Physics Communications (2009)

Function Documentation

◆ ClassImp()

Look for the Attribute specific for the Sobol Method

Matrix M and N of the output

Get the list of integer for the two matrix M and N with the _sIteratorName -1 : for the M matrix 0 : for the N matrix

Matrix for the indexes valSi for first ordFer valSti for total order 5 methods (enum ES[i|ti]Algorithm) are computed in the same time and 2 indexes by methods Then nStoredIndexes = 10

Matrix to store the mean and Sigma for the differents algorithms 5 methods (enum ES[|ti]iAlgorithm) and 2 matrix M and N nStoredIndexes = 10 the 5 firsts are the M matrix the 5 lasts are the N matrix

  1. 0 - kSiSobol93 M*M
  2. 1 - kSiSaltelli02 M*N
  3. 2 - Jansen
  4. 3 - kSiSumo10 (M+N)*(M+N)
  5. 4 - kSiMartinez11 N*Ni

Case of kSiSobol93|kStiHomma96

Case of kSiSaltelli02|kStiSobol07

Case Of kSiJansen99|kStiJansen99

Case of the N matrix

Case of kSiSaltelli02|kStiSobol07

Case of kSiMartinez11|kStiMartinez11

case of the MuN matrix

Case of kSiSumo10|kStiSumo10

evaluateIndexes

FGA::remarks 2010-06-25 10:40:57 Use only by the old method to compute ( –first– and –total–) Replaced by the two matrix valMeanMN and valSigmaMN

End of FGA::remarks 2010-06-25 10:40:57

Store the two matrix M and N

Matrix M

Matrix N

Loop on the X attributes

Matrice of the output Of Mi

Matrice of the output Of Ni

Case of kSiMartinez11|kStiMartinez11

case of the Ni matrix

Init to zero all the indexes

Loop on the nS simulation

Matrix Mi

First Order

sobol93 :: f(N)*f(Mi)

Jansen99 : [f(N) - f(Mi)]^2

Total Order /////////////////////////// Sobol07 f(M)[ f(M) - f(Mi)]

Jansen99 : [f(M) - f(Mi)]^2

Matrix Ni

First Order /////////////////////////// Saltelli2002 :: f(M)*[f(Ni) - f(N)]

Sumo2010 :: f(M)f(Ni)

Martinez11 :: f(M)f(Ni)

Total Order

Homma96 f(N)*f(Ni)

Sumo2010 :: f(M)f(Ni)

Martinez11 :: f(M)f(Ni)

Normalize the indexes SI=sum (SI/nS - mu_1*mu_2)/sigma_1*sigma_2

First Order

Total Order

Fill the ntuple of restults with First Orders

Default First Oder :: Sobol93 :: martinez11 if kSaltelli is chosen for _nMatrixMiNi

Other methods

Fill the ntuple of restults with Total Orders

JBB Remplace these two lines to match uncertainty from JMM standalone macro.

Default Total Order :: Jansen1999 :: martinez11 if kSaltelli is chosen for _nMatrixMiNi

Other methods

Clean

References URANIE::Sensitivity::TSensitivity::_blog, URANIE::Sensitivity::TSobol::_bWithData, URANIE::Sensitivity::TSobol::_bWithSample, URANIE::Sensitivity::TSensitivity::_iely, URANIE::Sensitivity::TSensitivity::_iOut, URANIE::Sensitivity::TSensitivity::_iy, URANIE::Sensitivity::TSensitivity::_listOfInputAttributes, URANIE::Sensitivity::TSensitivity::_listOfOutputAttributes, URANIE::Sensitivity::TSobol::_matM, URANIE::Sensitivity::TSobol::_matN, URANIE::Sensitivity::TSensitivity::_mAttributeElements, URANIE::Sensitivity::TSensitivity::_nbOut, URANIE::Sensitivity::TSensitivity::_nElY, URANIE::Sensitivity::TSobol::_nMatrixMiNi, URANIE::Sensitivity::TSobol::_nMethodComputed, URANIE::Sensitivity::TSensitivity::_nS, URANIE::Sensitivity::TSobol::_nSamplerMethod, URANIE::Sensitivity::TSensitivity::_nSeed, URANIE::Sensitivity::TSobol::_nSiAlgorithm, URANIE::Sensitivity::TSobol::_nSimPerIndex, URANIE::Sensitivity::TSobol::_nStiAlgorithm, URANIE::Sensitivity::TSensitivity::_nX, URANIE::Sensitivity::TSensitivity::_nY, URANIE::Sensitivity::TSobol::_preloadedntp, URANIE::Sensitivity::TSensitivity::_sFunctionName, URANIE::Sensitivity::TSensitivity::_sIteratorName, URANIE::Sensitivity::TSensitivity::_sMethod, URANIE::Sensitivity::TSensitivity::_sMethodName, URANIE::Sensitivity::TSensitivity::_sOutputAttribute, URANIE::Sensitivity::TSensitivity::_sSelectedInput, URANIE::Sensitivity::TSensitivity::_sSelectedOutput, URANIE::Sensitivity::TSensitivity::_tds, URANIE::Sensitivity::TSobol::_telm, URANIE::Sensitivity::TSobol::_teln, URANIE::Sensitivity::TSobol::_valM, URANIE::Sensitivity::TSobol::_valMeanMN, URANIE::Sensitivity::TSobol::_valMeanYM, URANIE::Sensitivity::TSobol::_valMeanYN, URANIE::Sensitivity::TSobol::_valN, URANIE::Sensitivity::TSobol::_valSi, URANIE::Sensitivity::TSobol::_valSigmaMN, URANIE::Sensitivity::TSobol::_valSti, URANIE::Sensitivity::TSobol::_valVarYM, URANIE::Sensitivity::TSobol::_valVarYN, URANIE::Sensitivity::TSensitivity::_vOutputNames, URANIE::Sensitivity::TSobol::_withdatantp, URANIE::Sensitivity::TSobol::createTuple(), URANIE::Sensitivity::TSobol::evaluateIndexes(), URANIE::Sensitivity::TSensitivity::fillIndex(), URANIE::Sensitivity::TSobol::generateSample(), URANIE::Sensitivity::TSobol::initForRun(), URANIE::Sensitivity::TSobol::initSample(), URANIE::Sensitivity::TSobol::kLHS, URANIE::Sensitivity::TSobol::kMiNiSaltelli, URANIE::Sensitivity::TSobol::kMiNiSobol, URANIE::Sensitivity::TSobol::kqMCHalton, URANIE::Sensitivity::TSobol::kqMCSobol, URANIE::Sensitivity::TSobol::kSiAll, URANIE::Sensitivity::TSobol::kSiJansen99, URANIE::Sensitivity::TSobol::kSiMartinez11, URANIE::Sensitivity::TSobol::kSiOnlyNi, URANIE::Sensitivity::TSobol::kSiSaltelli02, URANIE::Sensitivity::TSobol::kSiSobol93, URANIE::Sensitivity::TSobol::kSiSumo10, URANIE::Sensitivity::TSobol::kSRS, URANIE::Sensitivity::TSobol::kStiAll, URANIE::Sensitivity::TSobol::kStiHomma96, URANIE::Sensitivity::TSobol::kStiJansen99, URANIE::Sensitivity::TSobol::kStiMartinez11, URANIE::Sensitivity::TSobol::kStiOnlyNi, URANIE::Sensitivity::TSobol::kStiSobol07, URANIE::Sensitivity::TSobol::kStiSumo10, URANIE::Sensitivity::TSobol::loadOtherSobolFile(), URANIE::Sensitivity::TSensitivity::parseOption(), URANIE::Sensitivity::TSobol::parseOption(), URANIE::Sensitivity::TSobol::preTreatment(), URANIE::Sensitivity::TSobol::printLog(), URANIE::Sensitivity::TSensitivity::printLog(), URANIE::Sensitivity::TSensitivity::setMethodName(), URANIE::Sensitivity::TSobol::TSobol(), and URANIE::Sensitivity::TSobol::~TSobol().