Documentation / Developer's manual
Available modules
Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,  
Uranie / Sensitivity v4.9.0
|
Description of the class TSobol. More...
#include <TSobol.h>
Public Types | |
enum | ESamplerMethod { kSRS , kLHS , kqMCSobol , kqMCHalton } |
list Of Enum More... | |
enum | EMatrixMiNi { kMiNiSobol , kMiNiSaltelli } |
enum | ESiAlgorithm { kSiSobol93 =0 , kSiSaltelli02 , kSiJansen99 , kSiSumo10 , kSiMartinez11 , kSiOnlyNi =26 , kSiAll =31 } |
enum | EStiAlgorithm { kStiHomma96 =0 , kStiSobol07 , kStiJansen99 , kStiSumo10 , kStiMartinez11 , kStiOnlyNi =25 , kStiAll =31 } |
Public Types inherited from URANIE::Sensitivity::TSensitivity | |
enum | ELauncher { kCode , kCodeRemote , kFunction , kRun , kUnknown } |
Public Member Functions | |
Constructor and Destructor | |
TSobol () | |
Default constructor. | |
TSobol (URANIE::DataServer::TDataServer *tds, void(*fcn)(Double_t *, Double_t *), const char *varexpinput, const char *varexpoutput, Int_t ns, Option_t *option="") | |
Default constructor with the TDataServer. | |
TSobol (URANIE::DataServer::TDataServer *tds, const char *fcn, Int_t ns, const char *varexpinput, const char *varexpoutput, Option_t *option="") | |
Default constructor with the TDataServer. | |
TSobol (URANIE::DataServer::TDataServer *tds, const char *varexpinput, const char *varexpoutput, Option_t *option="") | |
Default constructor with a TDataServer filling. | |
TSobol (URANIE::DataServer::TDataServer *tds, URANIE::Launcher::TCode *fcode, Int_t ns, Option_t *option="") | |
Default constructor with a tcode. | |
TSobol (URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, Int_t ns, Option_t *option="") | |
Default constructor with a trun. | |
virtual | ~TSobol () |
Default destructor. | |
Constructor's helper | |
void | initForRun (Option_t *option) |
Setting and Getting attributs | |
void | createTuple (Option_t *option="") |
Generation of the sample | |
virtual void | generateSample (Option_t *option="") |
Generates all the matrix of sample. | |
void | loadOtherSobolFile (const char *filename) |
void | evaluateIndexes (Option_t *option="") |
Evaluates the index from a Specific TDataServer. | |
Printing Log | |
virtual void | printLog () |
Public Member Functions inherited from URANIE::Sensitivity::TSensitivity | |
TSensitivity () | |
Default constructor. | |
TSensitivity (URANIE::DataServer::TDataServer *tds, const char *fcn, Int_t ns, const char *varexpinput="", const char *varexpoutput="", Option_t *option="") | |
Default constructor with the name of a function. | |
TSensitivity (URANIE::DataServer::TDataServer *tds, void(*fcn)(Double_t *, Double_t *), const char *varexpinput, const char *varexpoutput, Int_t ns, Option_t *option="") | |
TSensitivity (URANIE::DataServer::TDataServer *tds, const char *varexpinput, const char *varexpoutput, Option_t *option="") | |
Default constructor. | |
TSensitivity (URANIE::DataServer::TDataServer *tds, URANIE::Launcher::TCode *code, Int_t ns, Option_t *option="") | |
Default constructor with TCode arg. | |
TSensitivity (URANIE::DataServer::TDataServer *tds, URANIE::Relauncher::TRun *run, Int_t ns, Option_t *option="") | |
Default constructor with TRun arg. | |
virtual | ~TSensitivity () |
Default destructor. | |
Int_t | getID () |
virtual TTree * | getResultTuple (bool commonresulttuple=true) |
Get the result ntuple (default parameter unused but for Morris method) | |
double | getValue (const char *sorder="", const char *sinputname="", const char *sselect="") |
vector< int > * | getAttributeElements (string str) |
void | setFunction (void(*fct)(Double_t *, Double_t *), Int_t nx=-1, Int_t ny=1) |
TString | getFunctionName () |
void | setSeed (UInt_t nval) |
UInt_t | getSeed () |
virtual void | setMethodName (const char *str) |
Set the Method name. | |
const char * | getMethodName () |
Get the method name. | |
Bool_t | getNoIntermediateSaved () |
Get the noIntermediateSaved flag. | |
const char * | getIteratorName () |
Get the name of the iterator attribut of the method. | |
void | setSensitivityIteratorName (const char *str) |
Set the iterator name devoted to compute sensitivity indexes. | |
void | setTimeName (TString sname) |
Set the name of the time attribute (only one) | |
TString | getTimeName () |
Get the name of the time attribute. | |
virtual void | setDrawProgressBar (Bool_t bbool=kTRUE) |
Set the "draw progress bar" flag. | |
void | setUsingErrors (bool thebool) |
Set the "using error results anyway" option. | |
Bool_t | getDrawProgressBar () |
Get the clean flag. | |
Bool_t | isInputCorrelated () |
TMatrixD | getMatrixInputCorrelation () |
Int_t | getNInput () |
Get the number of input attributes. | |
Int_t | getNOutput () |
Get the number of output attributes. | |
void | setInputCorrelationMatrix (TMatrixD Corr) |
void | checkOutputRequested (string attlist, bool fromoption=false) |
Check the output list requested by the user. | |
void | computeIndexes (Option_t *option="") |
Compute the Sensitivity Indexes. | |
void | fillIndex (const char *sinputname, const char *sorder, Double_t dval, const char *algo="", Double_t dvalCILower=-1.0, Double_t dvalCIUpper=-1.0) |
Method to fill in the tree the value of Sensitivity indexes for an input attribute. | |
virtual void | drawIndexes (TString sTitre, const char *select="", Option_t *option="") |
Draws the indexes. | |
virtual void | setLog () |
void | unsetLog () |
void | changeLog () |
Bool_t | getLog () |
virtual void | printLog (Option_t *option="") |
void | setNLauncher (ELauncher codeLauncher) |
Public Attributes | |
Private and Public attributes | |
Bool_t | _bWithSample |
true if data are provided and used as full sample of 2 times ns samples | |
Bool_t | _bWithData |
true if data are provided and used as full sample of 2 times ns samples | |
ESamplerMethod | _nSamplerMethod |
The sampler method to generate the M and N matrix. | |
EMatrixMiNi | _nMatrixMiNi |
The method to generate the Min and/or Ni matrix (Sobol, Saltelli) | |
ESiAlgorithm | _nSiAlgorithm |
The algorithm to use to compute the first order algorithm. | |
EStiAlgorithm | _nStiAlgorithm |
The algorithm to use to compute the total order algorithm. | |
Method | |
The method needs two matrix M, N | |
Int_t | _nSimPerIndex |
The size of the two matrix M et N. | |
Int_t | _nMethodComputed |
number of method used | |
TMatrixD | _matM |
The matrix M. | |
TMatrixD | _matN |
The matrix M. | |
TEventList * | _telm |
TEventList * | _teln |
m and n lit of event in the ntuple | |
TMatrixD | _valN |
TMatrixD | _valM |
values of output for M and N matrix | |
TMatrixD | _valSi |
TMatrixD | _valSti |
values of the first and total sobol indexes | |
TMatrixD | _valMeanMN |
TMatrixD | _valSigmaMN |
complexe matrices to store the mean and variance of used M/N/Mi/Ni matrices | |
vector< double > | _valMeanYN |
vector< double > | _valMeanYM |
vector< double > | _valVarYN |
vector< double > | _valVarYM |
URANIE::DataServer::TDSNtupleD * | _withdatantp |
URANIE::DataServer::TDSNtupleD * | _preloadedntp |
int * | _useless |
Public Attributes inherited from URANIE::Sensitivity::TSensitivity | |
URANIE::DataServer::TDataServer * | _tds |
Pointeur vers un TDS. | |
TList * | _listOfInputAttributes |
List of the input branches. | |
TList * | _listOfOutputAttributes |
List of the input branches. | |
TString | _sTimeAttribute |
The name of the Time attribute. | |
Int_t | _nS |
The number of simulation or other information depend on the used method. | |
Int_t | _nX |
Dimension of the input. | |
UInt_t | _nY |
Dimension of the target. | |
UInt_t | _nElY |
Number of element for one selected output. | |
Int_t | _nbOut |
Total number of Output to be considered. | |
Int_t | _iOut |
counter for output | |
unsigned int | _iy |
iterator over number of element | |
unsigned int | _iely |
iterator over number of element | |
ELauncher | _nLauncher |
The type of launcher. | |
TString | _sFunctionName |
The Name of the evaluatuor. | |
URANIE::Launcher::TCode * | _code |
The tcode. | |
URANIE::Relauncher::TRun * | _run |
TObjArray * | _drawingGarbageCollector |
Garbage collector for prints. | |
Int_t | _nSeed |
The seed of the random generator. | |
Bool_t | _bChosenOutputs |
Fact that the input list is provided or not. | |
Bool_t | _blog |
Boolean for edit the log. | |
Bool_t | _bdrawProgressBar |
Boolean to know if the progress bar has to be drawn. | |
Bool_t | _bnoIntermediateSaved |
Boolean to know if the progress bar has to be drawn. | |
TString | _sIteratorName |
The specific iterator attribute for the method. | |
TString | _sMethodName |
The method name. | |
TString | _sSelectedOutput |
The output. | |
TString | _sSelectedInput |
The input. | |
map< string, unsigned int > | _mAttributeSize |
Map of size of element for attribute;. | |
map< string, vector< int > > | _mAttributeElements |
Map of Elements number to run (if vector subselection is requested) | |
vector< string > | _vOutputNames |
Name of the output. | |
TCanvas * | _canvas |
Canvas object to deal with. | |
void(* | _pFunction )(double *, double *) |
TTree * | _ntresult |
The TTree of results. | |
Protected Member Functions | |
Visualization and Scan the data | |
void | initSample (Int_t ns, Option_t *option="") |
Parse the option | |
virtual void | parseOption (Option_t *option="") |
Read option specific to TSobol. | |
void | preTreatment () |
Resize matrices and fill many vector/matrice to avroid recompute stat too oftently. | |
Protected Member Functions inherited from URANIE::Sensitivity::TSensitivity | |
void | checkCanvasCreation (bool newcan) |
Create a canvas if needed. | |
void | drawIndexesHistogram (TString sTitre, const char *select="", Option_t *option="") |
Draws indexes with an histogram. | |
void | drawIndexesPie (TString sTitre, const char *select="", Option_t *option="") |
Draws indexes with an pie chart. | |
virtual void | postTreatment () |
PostTreatment for every output. | |
void | setNoIntermediateSaved (Bool_t bbool=kTRUE) |
Set the "only final file" flag. | |
Additional Inherited Members | |
Protected Attributes inherited from URANIE::Sensitivity::TSensitivity | |
Char_t | _sOutputAttribute [MAXLENGTHSTRING] |
The name of the output attribute. | |
Char_t | _sInputAttribute [MAXLENGTHSTRING] |
The name of the input attribute. | |
Char_t | _sOrder [MAXLENGTHSTRING] |
The order of sensitivity indexes. | |
Char_t | _sMethod [MAXLENGTHSTRING] |
The name of the method. | |
Char_t | _sAlgorithm [MAXLENGTHSTRING] |
The name of the algorithm to compute the index. | |
Double_t | _valSobolCrt |
The value of sensitivity indexes. | |
Double_t | _valSobolCILower |
The value of lower Condidence Interval (95) | |
Double_t | _valSobolCIUpper |
The value of upper Condidence Interval (95) | |
TMatrixD | _minputCorr |
Input correlation matrix if sample needs to be correlated. | |
Bool_t | _bisInputCorrelated |
State whether the input correlation matrix is set. | |
Bool_t | _bgoingThroughError |
State whether the error must not block the computation. | |
Detailed Description
Description of the class TSobol.
To be written by the developper.
Member Enumeration Documentation
◆ EMatrixMiNi
◆ ESamplerMethod
◆ ESiAlgorithm
◆ EStiAlgorithm
Constructor & Destructor Documentation
◆ TSobol() [1/6]
URANIE::Sensitivity::TSobol::TSobol | ( | ) |
Default constructor.
Referenced by ClassImp().
◆ TSobol() [2/6]
URANIE::Sensitivity::TSobol::TSobol | ( | URANIE::DataServer::TDataServer * | tds, |
void(*)(Double_t *, Double_t *) | fcn, | ||
const char * | varexpinput, | ||
const char * | varexpoutput, | ||
Int_t | ns, | ||
Option_t * | option = "" |
||
) |
Default constructor with the TDataServer.
◆ TSobol() [3/6]
URANIE::Sensitivity::TSobol::TSobol | ( | URANIE::DataServer::TDataServer * | tds, |
const char * | fcn, | ||
Int_t | ns, | ||
const char * | varexpinput, | ||
const char * | varexpoutput, | ||
Option_t * | option = "" |
||
) |
Default constructor with the TDataServer.
◆ TSobol() [4/6]
URANIE::Sensitivity::TSobol::TSobol | ( | URANIE::DataServer::TDataServer * | tds, |
const char * | varexpinput, | ||
const char * | varexpoutput, | ||
Option_t * | option = "" |
||
) |
Default constructor with a TDataServer filling.
◆ TSobol() [5/6]
URANIE::Sensitivity::TSobol::TSobol | ( | URANIE::DataServer::TDataServer * | tds, |
URANIE::Launcher::TCode * | fcode, | ||
Int_t | ns, | ||
Option_t * | option = "" |
||
) |
Default constructor with a tcode.
◆ TSobol() [6/6]
URANIE::Sensitivity::TSobol::TSobol | ( | URANIE::DataServer::TDataServer * | tds, |
URANIE::Relauncher::TRun * | run, | ||
Int_t | ns, | ||
Option_t * | option = "" |
||
) |
Default constructor with a trun.
◆ ~TSobol()
|
virtual |
Default destructor.
Referenced by ClassImp().
Member Function Documentation
◆ createTuple()
|
virtual |
Reimplemented from URANIE::Sensitivity::TSensitivity.
Referenced by ClassImp().
◆ evaluateIndexes()
|
virtual |
Evaluates the index from a Specific TDataServer.
Implements URANIE::Sensitivity::TSensitivity.
Referenced by ClassImp().
◆ generateSample()
|
virtual |
Generates all the matrix of sample.
Implements URANIE::Sensitivity::TSensitivity.
Referenced by ClassImp().
◆ initForRun()
void URANIE::Sensitivity::TSobol::initForRun | ( | Option_t * | option | ) |
Referenced by ClassImp().
◆ initSample()
|
protected |
Referenced by ClassImp().
◆ loadOtherSobolFile()
void URANIE::Sensitivity::TSobol::loadOtherSobolFile | ( | const char * | filename | ) |
Referenced by ClassImp().
◆ parseOption()
|
protectedvirtual |
Read option specific to TSobol.
Possible options specific to this methods are
- "srs": generate sample with SRS
- "lhs": generate sample with LHS
- "qmc=sobol": generate sample with QMC=SOBOL
- "qmc=halton": generate sample with QMC=HALTON
- "sobol/saltelli": use either the solbol or saltelli implementation (the second one is the default)
Reimplemented from URANIE::Sensitivity::TSensitivity.
Referenced by ClassImp().
◆ preTreatment()
|
protectedvirtual |
Resize matrices and fill many vector/matrice to avroid recompute stat too oftently.
@namePreTreatment
Reimplemented from URANIE::Sensitivity::TSensitivity.
Referenced by ClassImp().
◆ printLog()
|
virtual |
Referenced by ClassImp().
Member Data Documentation
◆ _bWithData
Bool_t URANIE::Sensitivity::TSobol::_bWithData |
true if data are provided and used as full sample of 2 times ns samples
Referenced by ClassImp().
◆ _bWithSample
Bool_t URANIE::Sensitivity::TSobol::_bWithSample |
true if data are provided and used as full sample of 2 times ns samples
Referenced by ClassImp().
◆ _matM
TMatrixD URANIE::Sensitivity::TSobol::_matM |
The matrix M.
Referenced by ClassImp().
◆ _matN
TMatrixD URANIE::Sensitivity::TSobol::_matN |
The matrix M.
Referenced by ClassImp().
◆ _nMatrixMiNi
EMatrixMiNi URANIE::Sensitivity::TSobol::_nMatrixMiNi |
The method to generate the Min and/or Ni matrix (Sobol, Saltelli)
Referenced by ClassImp().
◆ _nMethodComputed
Int_t URANIE::Sensitivity::TSobol::_nMethodComputed |
number of method used
Referenced by ClassImp().
◆ _nSamplerMethod
ESamplerMethod URANIE::Sensitivity::TSobol::_nSamplerMethod |
The sampler method to generate the M and N matrix.
Referenced by ClassImp().
◆ _nSiAlgorithm
ESiAlgorithm URANIE::Sensitivity::TSobol::_nSiAlgorithm |
The algorithm to use to compute the first order algorithm.
Referenced by ClassImp().
◆ _nSimPerIndex
Int_t URANIE::Sensitivity::TSobol::_nSimPerIndex |
The size of the two matrix M et N.
Referenced by ClassImp().
◆ _nStiAlgorithm
EStiAlgorithm URANIE::Sensitivity::TSobol::_nStiAlgorithm |
The algorithm to use to compute the total order algorithm.
Referenced by ClassImp().
◆ _preloadedntp
URANIE::DataServer::TDSNtupleD* URANIE::Sensitivity::TSobol::_preloadedntp |
Referenced by ClassImp().
◆ _telm
TEventList* URANIE::Sensitivity::TSobol::_telm |
Referenced by ClassImp().
◆ _teln
TEventList * URANIE::Sensitivity::TSobol::_teln |
m and n lit of event in the ntuple
Referenced by ClassImp().
◆ _useless
int* URANIE::Sensitivity::TSobol::_useless |
◆ _valM
TMatrixD URANIE::Sensitivity::TSobol::_valM |
values of output for M and N matrix
Referenced by ClassImp().
◆ _valMeanMN
TMatrixD URANIE::Sensitivity::TSobol::_valMeanMN |
Referenced by ClassImp().
◆ _valMeanYM
vector<double> URANIE::Sensitivity::TSobol::_valMeanYM |
Referenced by ClassImp().
◆ _valMeanYN
vector<double> URANIE::Sensitivity::TSobol::_valMeanYN |
Referenced by ClassImp().
◆ _valN
TMatrixD URANIE::Sensitivity::TSobol::_valN |
Referenced by ClassImp().
◆ _valSi
TMatrixD URANIE::Sensitivity::TSobol::_valSi |
Referenced by ClassImp().
◆ _valSigmaMN
TMatrixD URANIE::Sensitivity::TSobol::_valSigmaMN |
complexe matrices to store the mean and variance of used M/N/Mi/Ni matrices
Referenced by ClassImp().
◆ _valSti
TMatrixD URANIE::Sensitivity::TSobol::_valSti |
values of the first and total sobol indexes
Referenced by ClassImp().
◆ _valVarYM
vector<double> URANIE::Sensitivity::TSobol::_valVarYM |
Referenced by ClassImp().
◆ _valVarYN
vector<double> URANIE::Sensitivity::TSobol::_valVarYN |
Referenced by ClassImp().
◆ _withdatantp
URANIE::DataServer::TDSNtupleD* URANIE::Sensitivity::TSobol::_withdatantp |
Referenced by ClassImp().