English Français

Documentation / Developer's manual

Available modules

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

Description of the class TPolynomialChaos. More...

#include <TPolynomialChaos.h>

Inheritance diagram for URANIE::Modeler::TPolynomialChaos:
Collaboration diagram for URANIE::Modeler::TPolynomialChaos:

Public Member Functions

Constructor and Destructor
 TPolynomialChaos (TDataServer *tds, TNisp *nisp, TString soutput="")
 default constructor from a set of stochastic variables
 
 TPolynomialChaos (const char *ct)
 
 TPolynomialChaos (const TPolynomialChaos &TPC)
 copy constructor
 
virtual ~TPolynomialChaos ()
 destructor
 
void setDegree (Int_t degree)
 Set the degree.
 
void setAutoDegreeFactor (double autodeg)
 Change the factor that links the number of samples, coefficient and the highest possible degree.
 
void setAutoDegreeBoundaries (int amin, int amax=-1)
 Change the min and max degree tested for automatise degree determination.
 
TTree * getAutoDegreeResults ()
 Return a pointer to the TTree that contains the degree optimisation results.
 
int getBestAutoDegree ()
 Return the bet estimated degree when optimisation is done with regression.
 
void computeOutput (double *input)
 Computation of output in relation with input : input[0...nx-1].
 
Double_t getOutput (TString jname="")
 Get an output.
 
Double_t getOutput (Int_t j)
 Get an output.
 
Double_t getEqmLoo (Int_t rank=0)
 Get the Mean squared uncertainty for the output with rank.
 
Double_t getErrLoo (Int_t input, Int_t rank=0)
 Get the Leave-One-Out uncertainty for the input (input) and the output (rank)
 
double factorial (int n)
 Dummy factorial methods.
 
void automatisedDegree (Option_t *option="")
 Computation of coefficients.
 
void computeChaosExpansion (TString type, Option_t *option="")
 Computation of coefficients.
 
Double_t getMean (Int_t j)
 Get the mean.
 
Double_t getMean (TString name="")
 Get the mean.
 
Double_t getVariance (Int_t j)
 Get the variance.
 
Double_t getVariance (TString name="")
 Get the variance.
 
Double_t getCovariance (Int_t i, Int_t j)
 Get the Covariance.
 
Double_t getCovariance (TString xname, TString yname)
 Get the Covariance.
 
Double_t getCorrelation (Int_t i, Int_t j)
 Get the correlation.
 
Double_t getCorrelation (TString xname, TString yname)
 Get the correlation.
 
Double_t getIndexFirstOrder (Int_t i, Int_t j=0)
 First index of sensitivity.
 
Double_t getIndexFirstOrder (TString xname, TString yname="")
 First index of sensitivity.
 
Double_t getIndexTotalOrder (Int_t i, Int_t j=0)
 Total index of sensitivity.
 
Double_t getIndexTotalOrder (TString xname, TString yname="")
 Total index of sensitivity.
 
Double_t getIndex (TString sinput="", TString yname="")
 Index of sensitivity of a set of variables.
 
Double_t getIndexInteraction (TString sinput="", TString yname="")
 Index of interaction sensitivity of a set of variables.
 
Int_t getDimensionInput ()
 Number of input.
 
Int_t getDimensionOutput ()
 Number of output.
 
Int_t getDimensionExpansion ()
 Number of the coefficients of the polynomial chaos.
 
Int_t getDegree ()
 Get the degree.
 
void exportFunction (const char *file="nisp", const char *name="nisp_fct")
 Export the model in C++ langage in a file.
 
Double_t getCoefficient (Int_t k, TString jname="")
 Get coefficents value.
 
No accessible - In building
void generateSample (TString type, Int_t np, Int_t order=1)
 Build a sample for statitical analysis (quantile). Build a sample of size "np" by the method "type".
 
Double_t getSample (Int_t k, Int_t j)
 
Double_t getSample (Int_t k, TString yname)
 The value of the output yname for the example k.
 
void realisation ()
 Polynomial chaos is a random variable : a realisation of this random variable (GetOutput()).
 
void getAnova (Int_t nt)
 Edition of the ANOVA decomposition.
 
void getAnovaOrdered (Double_t seuil, Int_t j)
 
void getAnovaOrdered (Double_t seuil, TString yname="")
 Return the ANOVA ordered decomposition.
 
void getAnovaOrderedCoefficients (Double_t seuil, Int_t j)
 
void getAnovaOrderedCoefficients (Double_t seuil, TString yname="")
 Edition of the ANOVA ordered decomposition / coefficients.
 
Double_t getQuantile (Double_t alpha, Int_t j)
 Return the quantile of order "alpha".
 
Double_t getQuantile (Double_t alpha, TString yname)
 Return the quantile of order "alpha".
 
Double_t getQuantileWilks (Double_t alpha, Double_t beta, Int_t j=1)
 Return the Wilks' quantile of order "alpha" with confidence "beta".
 
Double_t getQuantileWilks (Double_t alpha, Double_t beta, TString yname)
 Return the Wilks' quantile of order "alpha" with confidence "beta".
 
Double_t getInvQuantile (Double_t seuil, Int_t j=1)
 Return the probability of a value overrun.
 
Double_t getInvQuantile (Double_t seuil, TString yname)
 Return the probability of a value overrun.
 
void readTarget (Char_t *file)
 Read a set of target from a file.
 
void setInput (Int_t nt, Double_t dt)
 Set an input.
 
void propagateInput ()
 Propagation of input which has been specified SetInput()
 
void propagateInput (Double_t *dt)
 Propagation of dt[1...nx].
 
void save (Char_t *file)
 Saving of the PC in a file.
 
void save (string file)
 
void setAnova ()
 Preparation on the ANOVA decomposition.
 

Public Attributes

TNisp_nisp
 Message logger.
 
Int_t _degree
 Degree of the Chaos polynomial.
 
PolynomialChaos * _pc
 Object of type polynomialChaos (library Nisp)
 
Int_t _nx
 Number of stochastic variables i.e number of input.
 
Int_t _np
 Number of simulation.
 
Int_t _ny
 
Bool_t _bStoreYHat
 Boolean to specify if we add the \hat{} attribute in the TDS [default kTRUE].
 
TTree * _degreeResults
 TDSNtupleD used to store the results of the automatisedDegree method.
 
double _autoDegreeFactor
 Factor used to scale the maximum degree knowing _nx and _np.
 
int _minAutoDeg
 Minimal value for automatic degree scan.
 
int _maxAutoDeg
 Maximal value for automatic degree scan.
 
int _bestAutoDeg
 Best value for automatic degree scan.
 
vector< double > * _verrloo
 vector to contains the err loo and store them in the tree
 
int _degval
 memory arry for the degree in the tree
 
double _eqmval
 memory arry for the eqm in the tree
 

Protected Attributes

URANIE::DataServer::UMessageLogger * _fLogger
 

Private Attributes

TDataSpecification * _listAttOut
 Object of type TDataSpecification used to index the name of the variables.
 
Bool_t _blog
 Boolean for edit the log.
 

Printing Log

void setLog ()
 
void unsetLog ()
 
void changeLog ()
 
Bool_t getLog ()
 
virtual void printLog (Option_t *option="")
 
void setCoefficient (Int_t noutput, Int_t num, Double_t coef)
 Set the coefficient beta of _pc.
 
Double_t getCoefficient (Int_t noutput, Int_t num)
 Get the coefficient beta of _pc.
 
void getTarget ()
 Get the target.
 
void setGroupAddVar (Int_t i)
 Add a random variable.
 
void writeCodeCToDenormalizeInput (std::ofstream *sourcefile)
 Write set Denormalization.
 
void setGroupEmpty ()
 Freeing the set.
 

Detailed Description

Description of the class TPolynomialChaos.

The class TPolynomialChaos is associated to the classe TNisp. It's a mirror of the class PolynomialChaos, a class of the NISP library. It's used to access to Chaos Polynomial functionalities of the NIPS library in URANIE.

Constructor & Destructor Documentation

◆ TPolynomialChaos() [1/3]

URANIE::Modeler::TPolynomialChaos::TPolynomialChaos ( TDataServer *  tds,
TNisp nisp,
TString  soutput = "" 
)

default constructor from a set of stochastic variables

The constructor builds a object TPolynomialChaos thanks to information which come from a object TDaaServer and TNisp. The elements which constitue the object TPolynomialChaos are determinated in the following way

  • _nisp : It's the TNisp object given in parameter;
  • _pc : Ths polynomialchaos object is built from data with come from the stochastic variables of the TNisp object;
  • _nx : The number of random variable. It's the number of attribute of the TDataServer;
  • _np : The number of simulation (size of the sample) is given by TNisp
  • _ny : The number of output.
  • _degree : It's the degree of the polynomial chaos.


Parameters
tds: TDataServer object.
nisp: TNisp object.
soutput: list of output which be use to build the PC. By default all the output of the tds are used.

Referenced by ClassImp().

◆ TPolynomialChaos() [2/3]

URANIE::Modeler::TPolynomialChaos::TPolynomialChaos ( const char *  ct)

Constructor from a file in "nisp" format

Parameters
ct: the name of the "nisp" file

◆ TPolynomialChaos() [3/3]

URANIE::Modeler::TPolynomialChaos::TPolynomialChaos ( const TPolynomialChaos TPC)

copy constructor

The copy constructor

Parameters
TPC: TPolynomialChaos object.

◆ ~TPolynomialChaos()

virtual URANIE::Modeler::TPolynomialChaos::~TPolynomialChaos ( )
virtual

destructor

Referenced by ClassImp().

Member Function Documentation

◆ automatisedDegree()

void URANIE::Modeler::TPolynomialChaos::automatisedDegree ( Option_t *  option = "")

Computation of coefficients.

Calculated coefficients of the polynomial chaos by the methode "type".

Parameters
type: Name of the method ( Integration or Regression only accepted).

Referenced by ClassImp().

◆ changeLog()

void URANIE::Modeler::TPolynomialChaos::changeLog ( )
inline

References _blog.

◆ computeChaosExpansion()

void URANIE::Modeler::TPolynomialChaos::computeChaosExpansion ( TString  type,
Option_t *  option = "" 
)

Computation of coefficients.

Calculated coefficients of the polynomial chaos by the methode "type".

Parameters
type: Name of the method ( Integration or Regression only accepted).

Referenced by ClassImp().

◆ computeOutput()

void URANIE::Modeler::TPolynomialChaos::computeOutput ( double *  input)

Computation of output in relation with input : input[0...nx-1].

Compute the ouput Y with the values Xi of the input (i=0 to nx-1).

Parameters
input: table of input value.

Referenced by ClassImp().

◆ exportFunction()

void URANIE::Modeler::TPolynomialChaos::exportFunction ( const char *  file = "nisp",
const char *  name = "nisp_fct" 
)

Export the model in C++ langage in a file.

Writing in a C++ programm, the model of the polynomial chaos.

Parameters
file(const char *) the file to export the modeler. If empty, use the name of the model, plus the extension of the langage;
name(const char *) the name of the function in the export file. If empty, use the name of the model.

Referenced by ClassImp().

◆ factorial()

double URANIE::Modeler::TPolynomialChaos::factorial ( int  n)

Dummy factorial methods.

Referenced by ClassImp().

◆ generateSample()

void URANIE::Modeler::TPolynomialChaos::generateSample ( TString  type,
Int_t  np,
Int_t  order = 1 
)

Build a sample for statitical analysis (quantile). Build a sample of size "np" by the method "type".

Todo:
Parameters
type: method used;
np: number of simulation;
order:

Referenced by ClassImp().

◆ getAnova()

void URANIE::Modeler::TPolynomialChaos::getAnova ( Int_t  nt)

Edition of the ANOVA decomposition.

Todo:

Referenced by ClassImp().

◆ getAnovaOrdered() [1/2]

void URANIE::Modeler::TPolynomialChaos::getAnovaOrdered ( Double_t  seuil,
Int_t  j 
)
Todo:

Referenced by ClassImp().

◆ getAnovaOrdered() [2/2]

void URANIE::Modeler::TPolynomialChaos::getAnovaOrdered ( Double_t  seuil,
TString  yname = "" 
)

Return the ANOVA ordered decomposition.

Parameters
seuil: value of the seuil;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos::getAnovaOrdered(Double_t seuil,Int_t j)

◆ getAnovaOrderedCoefficients() [1/2]

void URANIE::Modeler::TPolynomialChaos::getAnovaOrderedCoefficients ( Double_t  seuil,
Int_t  j 
)
Todo:

Referenced by ClassImp().

◆ getAnovaOrderedCoefficients() [2/2]

void URANIE::Modeler::TPolynomialChaos::getAnovaOrderedCoefficients ( Double_t  seuil,
TString  yname = "" 
)

Edition of the ANOVA ordered decomposition / coefficients.

Parameters
seuil: value of the seuil;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos::getAnovaOrderedCoefficients(Double_t seuil,Int_t j)

◆ getAutoDegreeResults()

TTree * URANIE::Modeler::TPolynomialChaos::getAutoDegreeResults ( )
inline

Return a pointer to the TTree that contains the degree optimisation results.

References _degreeResults.

◆ getBestAutoDegree()

int URANIE::Modeler::TPolynomialChaos::getBestAutoDegree ( )
inline

Return the bet estimated degree when optimisation is done with regression.

References _bestAutoDeg.

◆ getCoefficient() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCoefficient ( Int_t  k,
TString  jname = "" 
)

Get coefficents value.

Get the coefficeint k of the PC for the output janme

Parameters
knumber of the coefficient (<p)
jnameoutput name

Referenced by ClassImp().

◆ getCoefficient() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCoefficient ( Int_t  noutput,
Int_t  num 
)

Get the coefficient beta of _pc.

Get the coefficient beta of _pc

Parameters
noutput: number of output
num: number of Polynomial Chaos

◆ getCorrelation() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCorrelation ( Int_t  i,
Int_t  j 
)

Get the correlation.

Return the correlation.

Parameters
i: index of the output;
j: index of the second output.

Referenced by ClassImp().

◆ getCorrelation() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCorrelation ( TString  xname,
TString  yname 
)

Get the correlation.

Return the correlation

Parameters
xname: name of the output;
yname: name of the second ouput.

refer to URANIE:Modeler::TPolynomialChaos:getCorrelation(Int_t i, Int_t j)

◆ getCovariance() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCovariance ( Int_t  i,
Int_t  j 
)

Get the Covariance.

Return the covariance.

Parameters
i: index of the output;
j: index of the second output.

Referenced by ClassImp().

◆ getCovariance() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getCovariance ( TString  xname,
TString  yname 
)

Get the Covariance.

Return the covariance.

Parameters
xname: name of the output;
yname: name of the second output.

refer to URANIE:Modeler::TPolynomialChaos:getCovariance(Int_t i, Int_t j)

◆ getDegree()

Int_t URANIE::Modeler::TPolynomialChaos::getDegree ( )

Get the degree.

Return the degree maximum of the PC

Referenced by ClassImp().

◆ getDimensionExpansion()

Int_t URANIE::Modeler::TPolynomialChaos::getDimensionExpansion ( )

Number of the coefficients of the polynomial chaos.

Return the number of coefficients of the PC.

Referenced by ClassImp().

◆ getDimensionInput()

Int_t URANIE::Modeler::TPolynomialChaos::getDimensionInput ( )

Number of input.

Return the number of input i.e the number of input random variable.

Referenced by ClassImp().

◆ getDimensionOutput()

Int_t URANIE::Modeler::TPolynomialChaos::getDimensionOutput ( )

Number of output.

Return the number of output i.e the number of output variable

Referenced by ClassImp().

◆ getEqmLoo()

Double_t URANIE::Modeler::TPolynomialChaos::getEqmLoo ( Int_t  rank = 0)

Get the Mean squared uncertainty for the output with rank.

Parameters
rankthe rank of the considered output

Referenced by ClassImp().

◆ getErrLoo()

Double_t URANIE::Modeler::TPolynomialChaos::getErrLoo ( Int_t  input,
Int_t  rank = 0 
)

Get the Leave-One-Out uncertainty for the input (input) and the output (rank)

Parameters
inputthe input indexes of the doe
rankthe rank of the considered output

Referenced by ClassImp().

◆ getIndex()

Double_t URANIE::Modeler::TPolynomialChaos::getIndex ( TString  sinput = "",
TString  yname = "" 
)

Index of sensitivity of a set of variables.

Return the index of sensitivity of the output yname.

Parameters
sinput: list of input. By default all the input;
yname: name of the output. By default the first ouput.

Referenced by ClassImp().

◆ getIndexFirstOrder() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getIndexFirstOrder ( Int_t  i,
Int_t  j = 0 
)

First index of sensitivity.

Return the index od sensitivity.

Parameters
i: index of the input (<_nx);
j: index of the output (<_ny).

Referenced by ClassImp().

◆ getIndexFirstOrder() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getIndexFirstOrder ( TString  xname,
TString  yname = "" 
)

First index of sensitivity.

Return the index od sensitivity.

Parameters
xname: name of the input;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos:getIndexFirstOrder(Int_t i, Int_t j)

◆ getIndexInteraction()

Double_t URANIE::Modeler::TPolynomialChaos::getIndexInteraction ( TString  sinput = "",
TString  yname = "" 
)

Index of interaction sensitivity of a set of variables.

Return the interaction sensitivity index of the ouput j.

Parameters
sinput: list of input. By default all the input;
yname: name of the output. By default the first ouput.

Referenced by ClassImp().

◆ getIndexTotalOrder() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getIndexTotalOrder ( Int_t  i,
Int_t  j = 0 
)

Total index of sensitivity.

Return the total index of sensitivity.

Parameters
j: index of the output (<_ny);
i: index of the variable (<_nx).

Referenced by ClassImp().

◆ getIndexTotalOrder() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getIndexTotalOrder ( TString  xname,
TString  yname = "" 
)

Total index of sensitivity.

Return the total index of sensitivity.

Parameters
xname: name of the input;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos:getIndexTotalOrder(Int_t i, Int_t j)

◆ getInvQuantile() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getInvQuantile ( Double_t  seuil,
Int_t  j = 1 
)

Return the probability of a value overrun.

Parameters
seuil: ;
j: index of the output.

Referenced by ClassImp().

◆ getInvQuantile() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getInvQuantile ( Double_t  seuil,
TString  yname 
)

Return the probability of a value overrun.

Parameters
seuil: seuil;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos::getInvQuantile(Double_t seuil, Int_t j)

◆ getLog()

Bool_t URANIE::Modeler::TPolynomialChaos::getLog ( )
inline

References _blog.

◆ getMean() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getMean ( Int_t  j)

Get the mean.

Return the mean of the attribute given by the index.

Parameters
j: index of the attribut.

Referenced by ClassImp().

◆ getMean() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getMean ( TString  name = "")

Get the mean.

Return the mean of the attribute given by the name.

Parameters
name: name of the attribut. By defalut the forst output.

refer to URANIE:Modeler::TPolynomialChaos:getMean(Int_t j)

◆ getOutput() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getOutput ( Int_t  j)

Get an output.

Return the value of a ouput.

Parameters
j: index od the ouput.

◆ getOutput() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getOutput ( TString  jname = "")

Get an output.

Return the value of a ouput.

Parameters
jname: name of the ouput.

refer to URANIE:Modeler::TPolynomialChaos:getOutput(Int_t j)

Referenced by ClassImp().

◆ getQuantile() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getQuantile ( Double_t  alpha,
Int_t  j 
)

Return the quantile of order "alpha".

Parameters
alpha: order;
j: index of the output.

Referenced by ClassImp().

◆ getQuantile() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getQuantile ( Double_t  alpha,
TString  yname 
)

Return the quantile of order "alpha".

Parameters
alpha: order;
yname: name of the output.

refer to URANIE:Modeler::TPolynomialChaos::getQuantile(Double_t alpha, Int_t j)

◆ getQuantileWilks() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getQuantileWilks ( Double_t  alpha,
Double_t  beta,
Int_t  j = 1 
)

Return the Wilks' quantile of order "alpha" with confidence "beta".

Parameters
alpha: order of the quantile;
beta: confidence
j: index of the output. By default j=1.

Referenced by ClassImp().

◆ getQuantileWilks() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getQuantileWilks ( Double_t  alpha,
Double_t  beta,
TString  yname 
)

Return the Wilks' quantile of order "alpha" with confidence "beta".

Parameters
alpha: order of the quantile;
beta: confidence
yname: name of the output

refer to URANIE:Modeler::TPolynomialChaos::getQuantileWilks(Double_t alpha, Double_t beta, Int_t j)

◆ getSample() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getSample ( Int_t  k,
Int_t  j 
)
Todo:

Referenced by ClassImp().

◆ getSample() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getSample ( Int_t  k,
TString  yname 
)

The value of the output yname for the example k.

refer to URANIE:Modeler::TPolynomialChaos::getSample(Int_t k,Int_t j)

◆ getTarget()

void URANIE::Modeler::TPolynomialChaos::getTarget ( )
private

Get the target.

Return

Referenced by ClassImp().

◆ getVariance() [1/2]

Double_t URANIE::Modeler::TPolynomialChaos::getVariance ( Int_t  j)

Get the variance.

Return the variance of the attribute given by the index.

Parameters
j: index of the attribut.

Referenced by ClassImp().

◆ getVariance() [2/2]

Double_t URANIE::Modeler::TPolynomialChaos::getVariance ( TString  name = "")

Get the variance.

Return the variance of the attribute given by the name.

Parameters
name: name of the attribut. By defalut the forst output.

refer to URANIE:Modeler::TPolynomialChaos:getVariance(Int_t j)

◆ printLog()

virtual void URANIE::Modeler::TPolynomialChaos::printLog ( Option_t *  option = "")
virtual

Referenced by ClassImp().

◆ propagateInput() [1/2]

void URANIE::Modeler::TPolynomialChaos::propagateInput ( )

Propagation of input which has been specified SetInput()

Referenced by ClassImp().

◆ propagateInput() [2/2]

void URANIE::Modeler::TPolynomialChaos::propagateInput ( Double_t *  dt)

Propagation of dt[1...nx].

◆ readTarget()

void URANIE::Modeler::TPolynomialChaos::readTarget ( Char_t *  file)

Read a set of target from a file.

Referenced by ClassImp().

◆ realisation()

void URANIE::Modeler::TPolynomialChaos::realisation ( )

Polynomial chaos is a random variable : a realisation of this random variable (GetOutput()).

Todo:

Referenced by ClassImp().

◆ save() [1/2]

void URANIE::Modeler::TPolynomialChaos::save ( Char_t *  file)

Saving of the PC in a file.

Parameters
file: name of the file;

Referenced by ClassImp().

◆ save() [2/2]

void URANIE::Modeler::TPolynomialChaos::save ( string  file)

◆ setAnova()

void URANIE::Modeler::TPolynomialChaos::setAnova ( )

Preparation on the ANOVA decomposition.

Referenced by ClassImp().

◆ setAutoDegreeBoundaries()

void URANIE::Modeler::TPolynomialChaos::setAutoDegreeBoundaries ( int  amin,
int  amax = -1 
)

Change the min and max degree tested for automatise degree determination.

If no maximum is specified, the automatic specification will be done using the _autoDegreeFactor.

Parameters
aminminimum to be tested (>=1)
amaxmax to be tested. Should be > amin. If empty, automatic determination is done

Referenced by ClassImp().

◆ setAutoDegreeFactor()

void URANIE::Modeler::TPolynomialChaos::setAutoDegreeFactor ( double  autodeg)

Change the factor that links the number of samples, coefficient and the highest possible degree.

If no maximum is specified for automatic degree optimisation, then the maximal degree to be tested is computed knowing that Ncoeff <= np /autodeg, where np is number of pattern and Ncoeff = (nx+deg)!/(nx!*deg!);

Parameters
autodegchange the value of autodeg (default is 1.5). Should be >= 1.

Referenced by ClassImp().

◆ setCoefficient()

void URANIE::Modeler::TPolynomialChaos::setCoefficient ( Int_t  noutput,
Int_t  num,
Double_t  coef 
)

Set the coefficient beta of _pc.

Set the coefficient beta of _pc

Parameters
noutput: number of output
num: number of Polynomial Chaos
coef: new value of coefficient

Referenced by ClassImp(), and ClassImp().

◆ setDegree()

void URANIE::Modeler::TPolynomialChaos::setDegree ( Int_t  degree)

Set the degree.

Set the degree of the polynomial chaos.

Parameters
degree: degree max of the polynomial.

Referenced by ClassImp(), and ClassImp().

◆ setGroupAddVar()

void URANIE::Modeler::TPolynomialChaos::setGroupAddVar ( Int_t  i)
private

Add a random variable.

Add a random variable (rank i) in the set

Parameters
i: index of the input variable added

Referenced by ClassImp().

◆ setGroupEmpty()

void URANIE::Modeler::TPolynomialChaos::setGroupEmpty ( )
private

Freeing the set.

Freeing the set

Referenced by ClassImp().

◆ setInput()

void URANIE::Modeler::TPolynomialChaos::setInput ( Int_t  nt,
Double_t  dt 
)

Set an input.

Referenced by ClassImp().

◆ setLog()

void URANIE::Modeler::TPolynomialChaos::setLog ( )
inline

References _blog.

◆ unsetLog()

void URANIE::Modeler::TPolynomialChaos::unsetLog ( )
inline

References _blog.

◆ writeCodeCToDenormalizeInput()

void URANIE::Modeler::TPolynomialChaos::writeCodeCToDenormalizeInput ( std::ofstream *  sourcefile)
private

Write set Denormalization.

Write the C code to denormalize the inputs parameters

Referenced by ClassImp().

Member Data Documentation

◆ _autoDegreeFactor

double URANIE::Modeler::TPolynomialChaos::_autoDegreeFactor

Factor used to scale the maximum degree knowing _nx and _np.

Referenced by ClassImp().

◆ _bestAutoDeg

int URANIE::Modeler::TPolynomialChaos::_bestAutoDeg

Best value for automatic degree scan.

Referenced by ClassImp(), and getBestAutoDegree().

◆ _blog

Bool_t URANIE::Modeler::TPolynomialChaos::_blog
private

Boolean for edit the log.

Referenced by changeLog(), ClassImp(), getLog(), setLog(), and unsetLog().

◆ _bStoreYHat

Bool_t URANIE::Modeler::TPolynomialChaos::_bStoreYHat

Boolean to specify if we add the \hat{} attribute in the TDS [default kTRUE].

Referenced by ClassImp().

◆ _degree

Int_t URANIE::Modeler::TPolynomialChaos::_degree

Degree of the Chaos polynomial.

Referenced by ClassImp().

◆ _degreeResults

TTree* URANIE::Modeler::TPolynomialChaos::_degreeResults

TDSNtupleD used to store the results of the automatisedDegree method.

Referenced by ClassImp(), and getAutoDegreeResults().

◆ _degval

int URANIE::Modeler::TPolynomialChaos::_degval

memory arry for the degree in the tree

Referenced by ClassImp().

◆ _eqmval

double URANIE::Modeler::TPolynomialChaos::_eqmval

memory arry for the eqm in the tree

Referenced by ClassImp().

◆ _fLogger

URANIE::DataServer::UMessageLogger* URANIE::Modeler::TPolynomialChaos::_fLogger
protected

Referenced by ClassImp().

◆ _listAttOut

TDataSpecification* URANIE::Modeler::TPolynomialChaos::_listAttOut
private

Object of type TDataSpecification used to index the name of the variables.

Referenced by ClassImp().

◆ _maxAutoDeg

int URANIE::Modeler::TPolynomialChaos::_maxAutoDeg

Maximal value for automatic degree scan.

Referenced by ClassImp().

◆ _minAutoDeg

int URANIE::Modeler::TPolynomialChaos::_minAutoDeg

Minimal value for automatic degree scan.

Referenced by ClassImp().

◆ _nisp

TNisp* URANIE::Modeler::TPolynomialChaos::_nisp

Message logger.

Object of ype TNisp

Referenced by ClassImp().

◆ _np

Int_t URANIE::Modeler::TPolynomialChaos::_np

Number of simulation.

Referenced by ClassImp().

◆ _nx

Int_t URANIE::Modeler::TPolynomialChaos::_nx

Number of stochastic variables i.e number of input.

Referenced by ClassImp().

◆ _ny

Int_t URANIE::Modeler::TPolynomialChaos::_ny

Referenced by ClassImp().

◆ _pc

PolynomialChaos* URANIE::Modeler::TPolynomialChaos::_pc

Object of type polynomialChaos (library Nisp)

Referenced by ClassImp(), and ClassImp().

◆ _verrloo

vector<double>* URANIE::Modeler::TPolynomialChaos::_verrloo

vector to contains the err loo and store them in the tree

Referenced by ClassImp().