gemseo / uncertainty / distributions

gemseo.uncertainty.distributions.openturns

OpenTURNS-based capabilities for probability distributions.

This package interfaces capabilities from the OpenTURNS library.

Interfaced distributions

This package implements the abstract classes BaseDistribution and BaseJointDistribution.

Classical distributions

This package also implements a deliberately limited selection of standard probability distributions in a user-friendly way: OTExponentialDistribution, OTNormalDistribution, OTTriangularDistribution, and OTUniformDistribution. More precisely, the argument whose nature is a tuple of positional parameters is replaced with several user-defined keyword arguments. In this way, the use writes OTUniformDistribution('x', -1., 3.) or OTUniformDistribution('x', minimum=-1., maximum=3.) instead of OTDistribution('x', 'Uniform', (-1., 3.)). Furthermore, these classes inheriting from OTDistribution are documented in such a way that a newbie could easily apprehend them.

Joint probability distribution

A OTDistribution has a OTDistribution.JOINT_DISTRIBUTION_CLASS attribute referencing OTJointDistribution which is a class to build a joint probability distribution related to given random variables from a list of OTDistribution objects implementing the probability distributions of these variables based on the OpenTURNS library and from a copula name.

Note

A copula is a mathematical function used to define the dependence between random variables from their cumulative density functions. See more.

Distribution fitting

The class OTDistributionFitter offers the possibility to fit an OTDistribution from numpy.array data, based on the OpenTURNS capabilities.