Documentation / Manuel développeur
Modules disponibles
Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,  
Uranie / DataServer v4.9.0
|
#include <TDiscreteAttribute.h>
Public Member Functions | |
TDiscreteAttribute () | |
Default Constructor | |
TDiscreteAttribute (TString str) | |
TDiscreteAttribute (TString str, ELawType value) | |
TDiscreteAttribute (TAttribute *object, ELawType value) | |
virtual | ~TDiscreteAttribute () |
virtual Double_t | getPDF (Double_t x)=0 |
Returns the probability density for the value x. | |
virtual Double_t | getInvCDF (Double_t x)=0 |
Returns the value corresponding to the cumulative density p. | |
virtual void | printLog () |
Display information specific to this class. | |
Public Member Functions inherited from URANIE::DataServer::TStochasticAttribute | |
TStochasticAttribute () | |
Default Constructor. | |
TStochasticAttribute (TString str) | |
Constructor setting the name. | |
TStochasticAttribute (TString str, ELawType value) | |
Constructor setting the name and the law type. | |
TStochasticAttribute (TString str, ELawType value, Double_t min, Double_t max) | |
Constructor setting the name, the law type, and the range (lower and upper bounds) | |
TStochasticAttribute (TAttribute *object, ELawType value) | |
Construction of a TStochasticAttribute from an existing TAttribute object. | |
virtual | ~TStochasticAttribute () |
Default Destructor. | |
virtual void | computeTheoreticalInformation ()=0 |
Computes the theoretical values of various statistical measures, like mean, standard deviation, mode, etc. | |
double | getPDFforTF1 (double *x) |
virtual Double_t | getCDF (Double_t x)=0 |
Returns the cumulative distribution for the value x. | |
double | getCDFforTF1 (double *x) |
double | getInvCDFforTF1 (double *x) |
virtual Double_t | getTheoreticalMean () |
Returns the theoretical value of the mean. | |
virtual Double_t | getTheoreticalStdDev () |
Returns the theoretical value of the standard deviation. | |
virtual Double_t | getTheoreticalMode () |
Returns the theoretical value of the mode. | |
void | setLawType (ELawType value) |
Sets the law type from an integer value. | |
void | setLawType (TString name) |
Sets the law type from a law name. | |
int | getLawType () |
Returns the law type as an integer. | |
void | setStochasticBasis (EStochasticBasis n) |
Defines an orthogonal polynomial family to represent the stochastic attribute. | |
void | setDefaultStochasticBasis () |
Sets the default orthogonal polynomial family representing the stochastic attribute. | |
EStochasticBasis | getStochasticBasis () const |
Returns the orthogonal polynomial which is used to represent the attribute. | |
virtual Double_t | getPMin () |
Returns the minimum value of the cumulative distribution function. | |
virtual Double_t | getPMax () |
Returns the maximum value of the cumulative distribution function. | |
Public Member Functions inherited from URANIE::DataServer::TAttribute | |
TAttribute () | |
Default constructor. | |
TAttribute (const char *name, const char *title) | |
TAttribute (TString name) | |
Constructor by name only. | |
TAttribute (TString name, EType type) | |
Constructor by name and type only. | |
TAttribute (TString name, TString value, EType type) | |
Constructor by name and range. | |
TAttribute (TString name, Double_t lower, Double_t upper) | |
Constructor by name and range. | |
TAttribute (const TAttribute &attr) | |
Copy constructor. | |
TAttribute * | Clone (const char *newname) const |
Clone an attribute with a new name. | |
virtual | ~TAttribute () |
Default destructor. | |
void | checkSizeBeforePush (const char *type, int iel, Double_t val) |
Internal method used to check the validity of all setters when dealing with vectors. | |
Double_t | checkSizeBeforeGet (const char *type, int iel=0) |
Internal method used to check the validity of all getters when dealing with vectors and return the request. | |
void | setQuantile (double prob, double quantile, int iel=0) |
Set the quantile value. | |
void | getQuantilesSize (int &nb, int iel=0) |
Returns the number of quantile computed and stored for element iel. | |
void | getQuantiles (double *prob, double *quantile, int iel=0) |
Returns all the probabilities and corresponding quantiles computed for element iel. | |
void | getQuantile (double &prob, double &quantile, int iel=0) |
Returns the value of the quantile for element iel, given the probability. | |
void | getQuantileVector (double &prob, vector< double > &quantile) |
Returns the vector of quantile given the probability. | |
Double_t | getMinimum (int iel=0) |
Double_t | getMinimumSize () |
Returns the size of the vector of minimum. | |
Bool_t | hasDefault () |
Details whether this attribute has a default value. | |
void | setMinimum (Double_t val, int iel=0) |
Set the minimum value oef element iel. | |
Double_t | getMaximum (int iel=0) |
Double_t | getMaximumSize () |
Returns the size of the vector of maximum. | |
void | setMaximum (Double_t val, int iel=0) |
Set the maximum value oef element iel. | |
void | getStatisticalVector (const char *type, vector< double > &vec) |
Returns the vector of considered statistical value. | |
Double_t | getMean (int iel=0) |
Double_t | getMeanSize () |
Returns the size of the vector of mean. | |
void | setMean (Double_t val, int iel=0) |
Set the mean value oef element iel. | |
Double_t | getStd (int iel=0) |
Double_t | getStdSize () |
Returns the size of the vector of std. | |
void | setStd (Double_t val, int iel=0) |
Set the std value oef element iel. | |
void | setSlurmOption (TString value) |
EType | getDataType () const |
Returns the datatype of the considered attribute. | |
TString | getDataTypeStr () |
Returns the datatype as TString. | |
void | setTitle (const char *title) |
Defines the title of the attribute. | |
void | setTitle (TString str) |
TString | getTitle () |
void | setDataType (EType thetype) |
Change the type of data. | |
void | setDataType (TString name) |
Change the type of data. | |
TString | getLegend () |
Returns the legend of the attribut. | |
TString | getUnit () |
void | setUnit (TString str) |
TString | getUnity () |
void | setUnity (TString str) |
TString | getNote () |
void | setNote (TString str) |
Bool_t | setDefault (TString value) |
TString | getDefault (TString format="%e") |
Bool_t | setDefaultValue (Double_t val) |
Bool_t | getDefaultValue (Double_t &val) |
Bool_t | hasDefaultValue () |
Bool_t | setDefaultVector (vector< double > &vec) |
Bool_t | getDefaultVector (vector< double > *val) |
Bool_t | hasDefaultVector () |
Bool_t | setDefaultString (TString str) |
Bool_t | getDefaultString (string &str) |
Bool_t | hasDefaultString () |
void | setStepValue (Double_t val) |
Bool_t | getStepValue (Double_t &val) |
TString | getSlurmOption () |
EOrigin | getOrigin () |
void | setOrigin (EOrigin ind) |
Int_t | getShare () |
void | setOutput () |
Sets the attribute as an output attribute. | |
void | setInput () |
Sets the attribute as Input. | |
EAttribute | getInputOutput () |
Returns the input/Output information of the attribute. | |
void | setFileNameOfKey (TString str) |
Sets the file name for a key. | |
list< URANIE::DataServer::TAttributeFileKey * > | getKeyList () |
Gets KeyList for the attribute. | |
void | setFieldOfKey (Int_t ind) |
Sets index ind in the unique field related to a unique key. | |
void | setFieldOfKey (Int_t sIndex, Int_t ind) |
void | setFileKey (TString sfile, TString skey="", TString sformatToSubstitute="%e", TAttributeFileKey::EFileType FileType=TAttributeFileKey::kKey) |
Defines the input files and eventually others informations like key, format to substitute. | |
void | setFileFlag (TString sfile, TString skey="", TString sformatToSubstitute="%e") |
Defines the input files as in the "flag" format and eventually others informations like key, format to substitute. | |
void | setFileXMLAttribute (TString sfile, TString sXPathAttribute, TString sformatToSubstitute="%e") |
Defines the input files as an "XML" input file with XPath attribute format and eventually the format to substitute. | |
void | setFileXMLField (TString sfile, TString sXPathField, TString sformatToSubstitute="%e") |
Defines the input files as an "XML" input file with XPath field and eventually the format to substitute. | |
void | setFileFMU (TString sfile, TString sXPathField, TString sformatToSubstitute="%e") |
const char * | getFormatToSubstitute () |
Returns the format of substitution. | |
void | setFormatToSubstitute (TString str) |
Sets the format of substitution. | |
Bool_t | isInput () |
Tests if the attribute is an input attribute. | |
Bool_t | isOutput () |
Tests if the attribute is an output attribute. | |
void | addShare () |
void | delShare () |
void | initShare () |
void | clearVectors () |
virtual void | setLowerBound (Double_t val, bool internalcall=false) |
Sets the lower bound value of the attribute. | |
Double_t | getLowerBound () |
Gets the lower bound value of the attribute. | |
Bool_t | isLowerBounded () |
Returns a boolean if the attribute have a lower bound. | |
virtual void | setUpperBound (Double_t val, bool internalcall=false) |
Sets the upper bound value of the attribute. | |
Double_t | getUpperBound () |
Gets the upper bound value of the attribute. | |
Bool_t | isUpperBounded () |
Returns a boolean if the attribute have an upper bound. | |
virtual void | setBounds (Double_t lower, Double_t upper) |
Sets the two bounds values (lower and upper) of the attribute. | |
Bool_t | isBounded () |
Returns a boolean if the attribute have a lower AND an upper bounds. | |
void | setLog () |
void | unsetLog () |
void | changeLog () |
Bool_t | getLog () |
TAttribute * | getSonAttribute () |
void | setSonAttribute (TAttribute *tatt) |
void | removeSonAttribute () |
Int_t | getLevel () |
void | setLevel (Int_t nlevel) |
Bool_t | haveSon () |
Additional Inherited Members | |
Public Types inherited from URANIE::DataServer::TStochasticAttribute | |
enum | ELawType { kUniform , kLogUniform , kNormal , kStudent , kLogNormal , kTrapezium , kTriangular , kLogTriangular , kExponential , kBeta , kGamma , kInvGamma , kCauchy , kUniformByParts , kWeibull , kGumbel , kMultinomial , kGenPareto , kGeneralizedNormal , kGeneralizedNormalV2 , kCompose , kUnknown } |
The list of laws that a TStochasticAttribute can follow. More... | |
enum | EStochasticBasis { kUnknownBasis , kHermite , kLegendre , kLaguerre , kJacobi } |
The list of orthogonal polynomial families that can represent a given TStochasticAttribute. More... | |
Public Types inherited from URANIE::DataServer::TAttribute | |
enum | EOrigin { kInternal , kIterator , kConstant , kAttribute , kDeleted } |
enum | EAttribute { kInput , kOutput } |
enum | EType { kDefault , kReal , kVector , kString , kCategory , kInconnu } |
Protected Attributes inherited from URANIE::DataServer::TStochasticAttribute | |
ELawType | _lawType |
The law type ELawType. | |
Double_t | _dtheoreticalMean |
The theoretical mean. | |
Double_t | _dtheoreticalStdDev |
The theoretical standard deviation. | |
Double_t | _dtheoreticalMode |
The theoretical mode. | |
Double_t | _pmin |
The min value of cumulative density function. | |
Double_t | _pmax |
The max value of cumulative density function. | |
EStochasticBasis | _nStochasticBasis |
The stochastic representation of an orthogonal basis. | |
Protected Attributes inherited from URANIE::DataServer::TAttribute | |
TString | _sunity |
Unity. | |
TString | _snote |
Note. | |
Bool_t | _blog |
Log printing. | |
Int_t | _nshare |
The number of time this attribute is shared in TDataServer. | |
TAttribute * | _attSon |
Son attribute. | |
Int_t | _nlevel |
level to its "father" | |
Bool_t | _haveSon |
true if the attribute have a son | |
TString | _sFormatSubstitute |
Format to substitute the value. | |
list< TEventList * > | _nfields |
List of all TEventLists created for the attribute. | |
list< TAttributeFileKey * > | _KeyList |
List of Keys Attributes structures. | |
Double_t | upperBound |
Upper bound. | |
Bool_t | _bHaveUpperBound |
If have an upper bound. | |
Double_t | lowerBound |
Lower bound. | |
Bool_t | _bHaveLowerBound |
If have a lower bound. | |
Double_t | _defaultValue |
Default value. | |
Bool_t | _bHaveDefaultValue |
If have a default value. | |
vector< double > | _defaultVector |
Default value for vector. | |
Bool_t | _bHaveDefaultVector |
If have a default value for vector. | |
string | _defaultString |
Default value for string. | |
Bool_t | _bHaveDefaultString |
If have a default value for string. | |
Double_t | _stepValue |
Step value when using in Optimization. | |
Bool_t | _bHaveStepValue |
If have a step value. | |
vector< Double_t > | _vminimum |
All minimun calculated. | |
vector< Double_t > | _vmaximum |
All maximun calculated. | |
vector< Double_t > | _vmean |
All mean calculated. | |
vector< Double_t > | _vstd |
All std calculated. | |
vector< Double_t > * | _vbuffer |
vector< map< double, double > * > | _vquantile |
| |
EOrigin | _norigin |
The origin of the attribute (Internal of uranie, attribute or Input, Output...) | |
EAttribute | _nAttribute |
The nature of attributes : kInput (default) or kOutput. | |
EType | _nType |
The type of attribute: real (double), vector (of double), string... | |
TString | _slurmValue |
Detailed Description
This class is the parent of the discrete random variables classes. These variables can take only a finite number of states. Although these states are represented by real numbers, they are not supposed to have an order (i.e. value 1 is not smaller or greater than value 2). The consequence is that the following properties of random variables are meaningless:
- mean, variance and other moments
- minimum and maximum values
- lower and upper bounds
- Cumulative Distribution Function
Also, it is not strictly correct to talk about Probability Density Function. The equivalent in the discrete world would be the Probability Mass Function. However, for the sake of simplicity, we are using the getPDF name to compute the PMF.
Constructor & Destructor Documentation
◆ TDiscreteAttribute() [1/4]
URANIE::DataServer::TDiscreteAttribute::TDiscreteAttribute | ( | ) |
Default Constructor
Referenced by ClassImp().
◆ TDiscreteAttribute() [2/4]
URANIE::DataServer::TDiscreteAttribute::TDiscreteAttribute | ( | TString | str | ) |
◆ TDiscreteAttribute() [3/4]
URANIE::DataServer::TDiscreteAttribute::TDiscreteAttribute | ( | TString | str, |
ELawType | value | ||
) |
◆ TDiscreteAttribute() [4/4]
URANIE::DataServer::TDiscreteAttribute::TDiscreteAttribute | ( | TAttribute * | object, |
ELawType | value | ||
) |
◆ ~TDiscreteAttribute()
|
virtual |
Referenced by ClassImp().
Member Function Documentation
◆ getInvCDF()
|
pure virtual |
Returns the value corresponding to the cumulative density p.
This function is used by the Sampler to generate acceptable values for the attribute
It can also be used to retrieve the theoretical quantiles of a random variable. For instance, the theoretical value of the median is equal to getInvCDF(0.5).
- Parameters
-
p (Double_t) A valid probability
- Exceptions
-
UErrorExceptions if p is outside of the interval [0,1]
- Warning
- This function must always return a value between lowerBound and upperBound.
Implements URANIE::DataServer::TStochasticAttribute.
Implemented in URANIE::DataServer::TCustomDistribution, and URANIE::DataServer::TMultinomialDistribution.
◆ getPDF()
|
pure virtual |
Returns the probability density for the value x.
- Parameters
-
x (Double_t) An acceptable value for the attribute
- Warning
- if x is outside of the [lowerBound, upperBound] interval, getPDF(x) must return 0.0
Implements URANIE::DataServer::TStochasticAttribute.
Implemented in URANIE::DataServer::TCustomDistribution, and URANIE::DataServer::TMultinomialDistribution.
◆ printLog()
|
virtual |
Display information specific to this class.
Reimplemented from URANIE::DataServer::TStochasticAttribute.
Referenced by ClassImp().