gemseo / uncertainty / statistics / tolerance_interval

# distribution module¶

Computation of tolerance intervals from a data-fitted probability distribution.

class gemseo.uncertainty.statistics.tolerance_interval.distribution.Bounds(lower, upper)[source]

Bases: NamedTuple

The component-wise bounds of a vector.

Create new instance of Bounds(lower, upper)

Parameters:
count(value, /)

Return number of occurrences of value.

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

lower: ndarray[Any, dtype[float]]

Alias for field number 0

upper: ndarray[Any, dtype[float]]

Alias for field number 1

class gemseo.uncertainty.statistics.tolerance_interval.distribution.ToleranceInterval(size)[source]

Bases: object

Computation of tolerance intervals from a data-fitted probability distribution.

A ToleranceInterval (TI) is initialized from the number of samples used to estimate the parameters of the probability distribution and from the estimations of these parameters.

A ToleranceInterval can be evaluated from:

• a coverage defining the minimum percentage of belonging to the TI, e.g. 0.90,

• a level of confidence in [0,1], e.g. 0.95,

• a type of interval, either ‘lower’ for lower-sided TI, ‘upper’ for upper-sided TI or ‘both’ for both-sided TI.

Note

Lower-sided tolerance intervals are used to analyse the strength of materials. They are also known as basis tolerance limits. In particular, the B-value is the lower bound of the lower-sided tolerance interval with 90%-coverage and 95%-confidence while the A-value is the lower bound of the lower-sided tolerance interval with 95%-coverage and 95%-confidence.

Parameters:

size (int) – The number of samples.

compute(coverage, confidence=0.95, side=ToleranceIntervalSide.BOTH)[source]

Compute a tolerance interval.

Parameters:
• coverage (float) – A minimum percentage of belonging to the TI.

• confidence (float) –

A level of confidence in [0,1].

By default it is set to 0.95.

• side (ToleranceIntervalSide) –

The type of the tolerance interval characterized by its sides of interest, either a lower-sided tolerance interval $$[a, +\infty[$$, an upper-sided tolerance interval $$]-\infty, b]$$, or a two-sided tolerance interval $$[c, d]$$.

By default it is set to BOTH.

Returns:

The tolerance bounds.

Return type:

Bounds

Parameters:
Return type:

None

class gemseo.uncertainty.statistics.tolerance_interval.distribution.ToleranceIntervalFactory[source]

Bases: object

A factory of ToleranceInterval.

create(class_name, size, *args)[source]

Return an instance of ToleranceInterval.

Parameters:
• size (int) – The number of samples used to estimate the parameters of the probability distribution.

• *args (float) – The arguments of the probability distribution.

• class_name (str) –

Returns:

The instance of the class.

Raises:

TypeError – If the class cannot be instantiated.

Return type:

ToleranceInterval

get_class(name)[source]

Return a class from its name.

Parameters:

name (str) – The name of the class.

Returns:

The class.

Return type:

type[Any]

class gemseo.uncertainty.statistics.tolerance_interval.distribution.ToleranceIntervalSide(value)

Bases: BaseEnum

An enumeration.

BOTH = 3
LOWER = 1
UPPER = 2