factory module¶
Module containing a factory to create an instance of Distribution
.
Classes:
Factory to build instances of |
- class gemseo.uncertainty.distributions.factory.DistributionFactory[source]¶
Bases:
object
Factory to build instances of
Distribution
.At initialization, this factory scans the following modules to search for subclasses of this class:
the modules located in “gemseo.uncertainty.distributions” and its sub-packages,
the modules referenced in the “GEMSEO_PATH”,
the modules referenced in the “PYTHONPATH” and starting with “gemseo_”.
Then, it can check if a class is present or return the list of available classes.
Lastly, it can create an instance of a class.
Examples
>>> from gemseo.uncertainty.distributions.factory import DistributionFactory >>> factory = DistributionFactory() >>> factory.is_available("OTNormalDistribution") True >>> factory.available_distributions[-3:] ['SPNormalDistribution', 'SPTriangularDistribution', 'SPUniformDistribution'] >>> distribution = factory.create("OTNormalDistribution", "x") >>> print(distribution) Normal(mu=0.0, sigma=1.0)
Attributes:
The available probability distributions.
Methods:
create
(distribution_name, variable, **parameters)Create a probability distribution for a given random variable.
is_available
(distribution_name)Check the availability of a probability distribution.
- Return type
None
- property available_distributions¶
The available probability distributions.
- create(distribution_name, variable, **parameters)[source]¶
Create a probability distribution for a given random variable.
- Parameters
distribution_name (str) – The name of a class defining a distribution.
variable (str) – The name of the random variable.
**parameters – The parameters of the distribution.
parameters (Union[int, Tuple[str, int, float], Mapping[str, Union[str, int, float]], None, float]) –
- Returns
The probability distribution instance.
- Return type