Documentation / Developer's manual
Available modules
Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,  ![]() |
Uranie / DataServer
v4.10.0
|
Description of the class TWeibullDistribution. More...
#include <TWeibullDistribution.h>


Public Member Functions | |
Constructor and Destructor | |
TWeibullDistribution () | |
Default constructor. More... | |
TWeibullDistribution (TString name) | |
Constructor setting the name. More... | |
TWeibullDistribution (TString name, Double_t lambda, Double_t k=1.0, Double_t xmin=0.0) | |
Constructor setting name, scale, shape and location. More... | |
TWeibullDistribution (URANIE::DataServer::TAttribute *att, Double_t lambda, Double_t k=1.0, Double_t xmin=0.0) | |
Construction of a TWeibullDistribution from an existing TAttribute object. More... | |
virtual | ~TWeibullDistribution () |
Default destructor. More... | |
Law parameters | |
This law has three parameters: the scale \( \lambda \), the shape \( k \) and the location \( x_{min} \). All are defined here. | |
virtual void | setParameterLambda (Double_t lambda, Bool_t recompute=kTRUE) |
Set the scale parameter \( \lambda \). More... | |
Double_t | getParameterLambda () |
Get the scale parameter value. More... | |
virtual void | setParameterK (Double_t k, Bool_t recompute=kTRUE) |
Set the shape parameter \( k \). More... | |
Double_t | getParameterK () |
Get the shape parameter value. More... | |
virtual void | setParameterXmin (Double_t xmin, Bool_t recompute=kTRUE) |
Set the location parameter \( x_{min} \). More... | |
Double_t | getParameterXmin () |
Get the location parameter value. More... | |
void | setParameters (Double_t lambda, Double_t k, Double_t xmin, Bool_t recompute=kTRUE) |
Set all the parameters. More... | |
Distribution specific methods | |
PDF, CDF, etc. | |
virtual void | computeTheoreticalInformation () |
Computes the theoretical values of various statistical measures. More... | |
virtual Double_t | getPDF (Double_t x) |
Returns the probability density for the value x. More... | |
virtual Double_t | getCDF (Double_t x) |
Returns the cumulative distribution for the value x. More... | |
virtual Double_t | getInvCDF (Double_t p) |
Returns the value corresponding to the cumulative density p. More... | |
Printing Log | |
virtual void | printLog (Option_t *option="") |
![]() | |
TInfiniteDistribution () | |
Default Constructor. More... | |
TInfiniteDistribution (TString str) | |
Constructor setting the name. More... | |
TInfiniteDistribution (TString str, ELawType value) | |
Constructor setting the name and the law type. More... | |
TInfiniteDistribution (TAttribute *object, ELawType value) | |
Construction of a TInfiniteDistribution from an existing TAttribute object. More... | |
virtual | ~TInfiniteDistribution () |
Default Destructor. More... | |
virtual void | printLog () |
Display information specific to this class. More... | |
virtual void | setLowerBound (Double_t val) |
Sets the lower bound of the attribute. More... | |
virtual void | setUpperBound (Double_t val) |
Sets the upper bound of the attribute. More... | |
virtual void | setBounds (Double_t lower, Double_t upper) |
Sets the lower and upper bounds of the attribute. More... | |
![]() | |
TStochasticAttribute () | |
Default Constructor. More... | |
TStochasticAttribute (TString str) | |
Constructor setting the name. More... | |
TStochasticAttribute (TString str, ELawType value) | |
Constructor setting the name and the law type. More... | |
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) More... | |
TStochasticAttribute (TAttribute *object, ELawType value) | |
Construction of a TStochasticAttribute from an existing TAttribute object. More... | |
virtual | ~TStochasticAttribute () |
Default Destructor. More... | |
double | getPDFforTF1 (double *x) |
double | getCDFforTF1 (double *x) |
double | getInvCDFforTF1 (double *x) |
virtual Double_t | getTheoreticalMean () |
Returns the theoretical value of the mean. More... | |
virtual Double_t | getTheoreticalStdDev () |
Returns the theoretical value of the standard deviation. More... | |
virtual Double_t | getTheoreticalMode () |
Returns the theoretical value of the mode. More... | |
void | setLawType (ELawType value) |
Sets the law type from an integer value. More... | |
void | setLawType (TString name) |
Sets the law type from a law name. More... | |
int | getLawType () |
Returns the law type as an integer. More... | |
void | setStochasticBasis (EStochasticBasis n) |
Defines an orthogonal polynomial family to represent the stochastic attribute. More... | |
void | setDefaultStochasticBasis () |
Sets the default orthogonal polynomial family representing the stochastic attribute. More... | |
EStochasticBasis | getStochasticBasis () const |
Returns the orthogonal polynomial which is used to represent the attribute. More... | |
virtual Double_t | getPMin () |
Returns the minimum value of the cumulative distribution function. More... | |
virtual Double_t | getPMax () |
Returns the maximum value of the cumulative distribution function. More... | |
![]() | |
TAttribute () | |
Default constructor. More... | |
TAttribute (const char *name, const char *title) | |
TAttribute (TString name) | |
Constructor by name only. More... | |
TAttribute (TString name, EType type) | |
Constructor by name and type only. More... | |
TAttribute (TString name, TString value, EType type) | |
Constructor by name and range. More... | |
TAttribute (TString name, Double_t lower, Double_t upper) | |
Constructor by name and range. More... | |
TAttribute (const TAttribute &attr) | |
Copy constructor. More... | |
TAttribute * | Clone (const char *newname) const |
Clone an attribute with a new name. More... | |
virtual | ~TAttribute () |
Default destructor. More... | |
void | checkSizeBeforePush (const char *type, int iel, Double_t val) |
Internal method used to check the validity of all setters when dealing with vectors. More... | |
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. More... | |
void | setQuantile (double prob, double quantile, int iel=0) |
Set the quantile value. More... | |
void | getQuantilesSize (int &nb, int iel=0) |
Returns the number of quantile computed and stored for element iel. More... | |
void | getQuantiles (double *prob, double *quantile, int iel=0) |
Returns all the probabilities and corresponding quantiles computed for element iel. More... | |
void | getQuantile (double &prob, double &quantile, int iel=0) |
Returns the value of the quantile for element iel, given the probability. More... | |
void | getQuantileVector (double &prob, vector< double > &quantile) |
Returns the vector of quantile given the probability. More... | |
Double_t | getMinimum (int iel=0) |
Double_t | getMinimumSize () |
Returns the size of the vector of minimum. More... | |
Bool_t | hasDefault () |
Details whether this attribute has a default value. More... | |
void | setMinimum (Double_t val, int iel=0) |
Set the minimum value oef element iel. More... | |
Double_t | getMaximum (int iel=0) |
Double_t | getMaximumSize () |
Returns the size of the vector of maximum. More... | |
void | setMaximum (Double_t val, int iel=0) |
Set the maximum value oef element iel. More... | |
void | getStatisticalVector (const char *type, vector< double > &vec) |
Returns the vector of considered statistical value. More... | |
Double_t | getMean (int iel=0) |
Double_t | getMeanSize () |
Returns the size of the vector of mean. More... | |
void | setMean (Double_t val, int iel=0) |
Set the mean value oef element iel. More... | |
Double_t | getStd (int iel=0) |
Double_t | getStdSize () |
Returns the size of the vector of std. More... | |
void | setStd (Double_t val, int iel=0) |
Set the std value oef element iel. More... | |
void | setSlurmOption (TString value) |
EType | getDataType () const |
Returns the datatype of the considered attribute. More... | |
TString | getDataTypeStr () |
Returns the datatype as TString. More... | |
void | setTitle (const char *title) |
Defines the title of the attribute. More... | |
void | setTitle (TString str) |
TString | getTitle () |
void | setDataType (EType thetype) |
Change the type of data. More... | |
void | setDataType (TString name) |
Change the type of data. More... | |
TString | getLegend () |
Returns the legend of the attribut. More... | |
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. More... | |
void | setInput () |
Sets the attribute as Input. More... | |
EAttribute | getInputOutput () |
Returns the input/Output information of the attribute. More... | |
void | setFileNameOfKey (TString str) |
Sets the file name for a key. More... | |
list< URANIE::DataServer::TAttributeFileKey * > | getKeyList () |
Gets KeyList for the attribute. More... | |
void | setFieldOfKey (Int_t ind) |
Sets index ind in the unique field related to a unique key. More... | |
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. More... | |
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. More... | |
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. More... | |
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. More... | |
void | setFileFMU (TString sfile, TString sXPathField, TString sformatToSubstitute="%e") |
const char * | getFormatToSubstitute () |
Returns the format of substitution. More... | |
void | setFormatToSubstitute (TString str) |
Sets the format of substitution. More... | |
Bool_t | isInput () |
Tests if the attribute is an input attribute. More... | |
Bool_t | isOutput () |
Tests if the attribute is an output attribute. More... | |
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. More... | |
Double_t | getLowerBound () |
Gets the lower bound value of the attribute. More... | |
Bool_t | isLowerBounded () |
Returns a boolean if the attribute have a lower bound. More... | |
virtual void | setUpperBound (Double_t val, bool internalcall=false) |
Sets the upper bound value of the attribute. More... | |
Double_t | getUpperBound () |
Gets the upper bound value of the attribute. More... | |
Bool_t | isUpperBounded () |
Returns a boolean if the attribute have an upper bound. More... | |
Bool_t | isBounded () |
Returns a boolean if the attribute have a lower AND an upper bounds. More... | |
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 () |
Private Attributes | |
Double_t | _dparameterLambda |
The scale parameter \( \lambda \). More... | |
Double_t | _dparameterK |
The shape parameter \( k \). More... | |
Double_t | _dparameterXmin |
The location parameter \( x_{min} \). More... | |
Additional Inherited Members | |
![]() | |
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... | |
![]() | |
enum | EOrigin { kInternal, kIterator, kConstant, kAttribute, kDeleted } |
enum | EAttribute { kInput, kOutput } |
enum | EType { kDefault, kReal, kVector, kString, kCategory, kInconnu } |
![]() | |
ELawType | _lawType |
The law type ELawType. More... | |
Double_t | _dtheoreticalMean |
The theoretical mean. More... | |
Double_t | _dtheoreticalStdDev |
The theoretical standard deviation. More... | |
Double_t | _dtheoreticalMode |
The theoretical mode. More... | |
Double_t | _pmin |
The min value of cumulative density function. More... | |
Double_t | _pmax |
The max value of cumulative density function. More... | |
EStochasticBasis | _nStochasticBasis |
The stochastic representation of an orthogonal basis. More... | |
![]() | |
EOrigin | _norigin |
The origin of the attribute (Internal of uranie, attribute or Input, Output...) More... | |
EAttribute | _nAttribute |
The nature of attributes : kInput (default) or kOutput. More... | |
EType | _nType |
The type of attribute: real (double), vector (of double), string... More... | |
TString | _sunity |
Unity. More... | |
TString | _snote |
Note. More... | |
Bool_t | _blog |
Log printing. More... | |
Int_t | _nshare |
The number of time this attribute is shared in TDataServer. More... | |
TAttribute * | _attSon |
Son attribute. More... | |
Int_t | _nlevel |
level to its "father" More... | |
Bool_t | _haveSon |
true if the attribute have a son More... | |
TString | _sFormatSubstitute |
Format to substitute the value. More... | |
list< TEventList * > | _nfields |
List of all TEventLists created for the attribute. More... | |
list< TAttributeFileKey * > | _KeyList |
List of Keys Attributes structures. More... | |
Double_t | upperBound |
Upper bound. More... | |
Bool_t | _bHaveUpperBound |
If have an upper bound. More... | |
Double_t | lowerBound |
Lower bound. More... | |
Bool_t | _bHaveLowerBound |
If have a lower bound. More... | |
Double_t | _defaultValue |
Default value. More... | |
Bool_t | _bHaveDefaultValue |
If have a default value. More... | |
vector< double > | _defaultVector |
Default value for vector. More... | |
Bool_t | _bHaveDefaultVector |
If have a default value for vector. More... | |
string | _defaultString |
Default value for string. More... | |
Bool_t | _bHaveDefaultString |
If have a default value for string. More... | |
Double_t | _stepValue |
Step value when using in Optimization. More... | |
Bool_t | _bHaveStepValue |
If have a step value. More... | |
vector< Double_t > | _vminimum |
All minimun calculated. More... | |
vector< Double_t > | _vmaximum |
All maximun calculated. More... | |
vector< Double_t > | _vmean |
All mean calculated. More... | |
vector< Double_t > | _vstd |
All std calculated. More... | |
vector< Double_t > * | _vbuffer |
vector< map< double, double > *> | _vquantile |
More... | |
TString | _slurmValue |
Detailed Description
Description of the class TWeibullDistribution.
This class defines a stochastic attribute following an Weibull distribution.
This law is defined by three parameters: the location \( x_{min} \), the scale \( \lambda > 0 \), and the shape \( k > 0 \). The law is defined over the interval \( [x_{min}, \inf) \).
This law gives the distribution of failures, where the failure rate is proportional to a power of time. The shape parameter, \( k \), is that power plus one, and so can be interpreted directly as follows:
- A value of k < 1 indicates that the failure rate decreases over time. This happens when early failures leaves only the most robust elements and eliminate the others.
- A value of k = 1 indicates that the failure rate is constant over time. This might suggest random external events are causing failure.
- A value of k > 1 indicates that the failure rate increases with time. This happens if there is an "aging" process.
(inspired from http://en.wikipedia.org/wiki/Weibull_distribution)
- Probability Density Function (PDF):
- \( f(x) = k/\lambda * ((x-x_{min})/\lambda)^{k-1} * \exp\left(-((x-x_{min})/\lambda)^{k}\right)\) for \( x \geq x_{min} \)
- \( f(x) = 0 \) otherwise
- Cumulative Distribution Function (CDF):
- \( F(x) = 0 \) for \( x < x_{min} \)
- \( F(x) = 1 - \exp\left(-((x-x_{min})/\lambda)^k\right) \) otherwise
- Inverse CDF:
- \( F^{-1}(p) = x_{min} + \lambda * (-\ln(1-p))^{1/k} \) for \( p \in [0,1] \)
Constructor & Destructor Documentation
◆ TWeibullDistribution() [1/4]
URANIE::DataServer::TWeibullDistribution::TWeibullDistribution | ( | ) |
Default constructor.
Default scale is 1.0, default shape is 1.0, default location is 0.0
Referenced by ClassImp().
◆ TWeibullDistribution() [2/4]
URANIE::DataServer::TWeibullDistribution::TWeibullDistribution | ( | TString | name | ) |
Constructor setting the name.
Default scale is 1.0, default shape is 1.0, default location is 0.0
- Parameters
-
name (TString) Name of the attribute
◆ TWeibullDistribution() [3/4]
URANIE::DataServer::TWeibullDistribution::TWeibullDistribution | ( | TString | name, |
Double_t | lambda, | ||
Double_t | k = 1.0 , |
||
Double_t | xmin = 0.0 |
||
) |
Constructor setting name, scale, shape and location.
- Parameters
-
name (TString) Name of the attribute lambda (Double_t) Scale parameter \( \lambda \) k (Double_t) Shape parameter \( k \) (Default = 1.0) xmin (Double_t) Location parameter \( x_{min} \) (Default = 0.0)
◆ TWeibullDistribution() [4/4]
URANIE::DataServer::TWeibullDistribution::TWeibullDistribution | ( | URANIE::DataServer::TAttribute * | att, |
Double_t | lambda, | ||
Double_t | k = 1.0 , |
||
Double_t | xmin = 0.0 |
||
) |
Construction of a TWeibullDistribution from an existing TAttribute object.
- Warning
- this copy constructor is incomplete. Please do not use. (Nicolas Gilardi, 2010.06.11)
- Parameters
-
att (URANIE::DataServer::TAttribute) the attribute which we want to make a random parameter lambda (Double_t) Scale parameter \( \lambda \) k (Double_t) Shape parameter \( k \) (Default = 1.0) xmin (Double_t) Location parameter \( x_{min} \) (Default = 0.0)
◆ ~TWeibullDistribution()
|
virtual |
Default destructor.
Referenced by ClassImp().
Member Function Documentation
◆ computeTheoreticalInformation()
|
virtual |
Computes the theoretical values of various statistical measures.
Implements URANIE::DataServer::TStochasticAttribute.
Referenced by ClassImp().
◆ getCDF()
|
virtual |
Returns the cumulative distribution for the value x.
- Parameters
-
x (Double_t) An acceptable value for the attribute
Implements URANIE::DataServer::TStochasticAttribute.
Referenced by ClassImp().
◆ getInvCDF()
|
virtual |
Returns the value corresponding to the cumulative density p.
- Parameters
-
p (Double_t) A valid probability
- Exceptions
-
UErrorExceptions if p is outside of the interval [0,1]
Implements URANIE::DataServer::TStochasticAttribute.
Referenced by ClassImp().
◆ getParameterK()
|
inline |
Get the shape parameter value.
References _dparameterK.
◆ getParameterLambda()
|
inline |
Get the scale parameter value.
References _dparameterLambda.
◆ getParameterXmin()
|
inline |
Get the location parameter value.
References _dparameterXmin.
◆ getPDF()
|
virtual |
Returns the probability density for the value x.
- Parameters
-
x (Double_t) An acceptable value for the attribute
Implements URANIE::DataServer::TStochasticAttribute.
Referenced by ClassImp().
◆ printLog()
|
virtual |
◆ setParameterK()
|
virtual |
Set the shape parameter \( k \).
- Parameters
-
k (Double_t) Shape parameter \( k \) recompute (Bool_t) should we recompute the theoretical information ? (Default = kTRUE)
- Exceptions
-
UErrorExceptions if k < 1e-4
Referenced by ClassImp().
◆ setParameterLambda()
|
virtual |
Set the scale parameter \( \lambda \).
- Parameters
-
lambda (Double_t) Scale parameter \( \lambda \) recompute (Bool_t) should we recompute the theoretical information ? (Default = kTRUE)
- Exceptions
-
UErrorExceptions if lambda < 1e-4
Referenced by ClassImp().
◆ setParameters()
void URANIE::DataServer::TWeibullDistribution::setParameters | ( | Double_t | lambda, |
Double_t | k, | ||
Double_t | xmin, | ||
Bool_t | recompute = kTRUE |
||
) |
Set all the parameters.
- Parameters
-
lambda (Double_t) Scale parameter \( \lambda \) k (Double_t) Shape parameter \( k \)
xmin (Double_t) Location parameter \( x_{min} \) recompute (Bool_t) should we recompute the theoretical information ? (Default = kTRUE)
Referenced by ClassImp().
◆ setParameterXmin()
|
virtual |
Set the location parameter \( x_{min} \).
- Parameters
-
xmin (Double_t) Location parameter \( x_{min} \) recompute (Bool_t) should we recompute the theoretical information ? (Default = kTRUE)
- Warning
- in order to avoid border effects, if the lowerBound attribute is set to minus infinity, it is re-initialised to xmin.
Referenced by ClassImp().
Member Data Documentation
◆ _dparameterK
|
private |
The shape parameter \( k \).
Referenced by ClassImp(), and getParameterK().
◆ _dparameterLambda
|
private |
The scale parameter \( \lambda \).
Referenced by ClassImp(), and getParameterLambda().
◆ _dparameterXmin
|
private |
The location parameter \( x_{min} \).
Referenced by ClassImp(), and getParameterXmin().