distribution
Concrete distribution instances with specific parameter values.
This module provides the implementation for individual distribution instances created from parametric families.
- class pysatl_core.families.distribution.ParametricFamilyDistribution(family_name, distribution_type, analytical_computations, parametrization, support, sampling_strategy=None, computation_strategy=None)[source]
Bases:
DistributionA specific distribution instance from a parametric family.
Represents a concrete distribution with specific parameter values, providing methods for computation and sampling.
- Parameters:
family_name (
str) – Name of the distribution family.distribution_type (
DistributionType) – Type of this distribution.parametrization (
Parametrization) – Parameter values for this distribution.support (
SupportorNone) – Support of this distribution.sampling_strategy (
SamplingStrategy) – Strategy for generating random samples. Such an object is unique for each distribution.computation_strategy (
ComputationStrategy) – Strategy for computing characteristics and conversions. Such an object is unique for each distribution.analytical_computations (Mapping[GenericCharacteristicName, Mapping[LabelName, AnalyticalComputation[Any, Any]]])
- __init__(family_name, distribution_type, analytical_computations, parametrization, support, sampling_strategy=None, computation_strategy=None)[source]
Initialize common distribution state.
- Parameters:
distribution_type (
DistributionType) – Type information about the distribution (kind, dimension, etc.).analytical_computations (Mapping[GenericCharacteristicName, Mapping[LabelName, AnalyticalComputation[Any, Any]]]) –
- Mapping[
GenericCharacteristicName, (
AnalyticalComputation[Any, Any] | Mapping[LabelName, AnalyticalComputation[Any, Any]]
),
] Analytical computations provided by the distribution.
support (
SupportorNone, defaultNone) – Support of the distribution.sampling_strategy (
SamplingStrategyorNone, defaultNone) – Sampling strategy instance. If omitted, univariate default is used.computation_strategy (
ComputationStrategyorNone, defaultNone) – Computation strategy instance. If omitted, default strategy is used.family_name (str)
parametrization (Parametrization)
- property parametrization: pysatl_core.families.parametrizations.Parametrization
Get the parametrization object containing distribution parameters.
- Returns:
Parametrization instance with all parameter values.
- Return type:
Parametrization
- property parameters: dict[str, Any]
Get distribution parameters as a dictionary (shortcut).
- Returns:
Dictionary mapping parameter names to their values.
- Return type:
dict[str,Any]
- property parametrization_name: ParametrizationName
Get the name of the parametrization used by this distribution.
- Returns:
Name of the parameterization format (e.g., ‘meanStd’).
- Return type:
ParametrizationName
- property parameters_constraints: list[ParametrizationConstraint]
Get constraints that apply to the distribution’s parameters.
- Returns:
List of parameter constraints for validation.
- Return type:
list[ParametrizationConstraint]
- property family: pysatl_core.families.parametric_family.ParametricFamily
Get the parametric family this distribution belongs to.
- Returns:
The parametric family of this distribution.
- Return type:
ParametricFamily
- sample(n, **options)[source]
Generate random samples from the distribution.
- Parameters:
n (
int) – Number of samples to generate.**options (
Any) – Additional sampling options forwarded to the underlying sampling strategy.
- Returns:
NumPy array containing
ngenerated samples. The exact array shape depends on the distribution and the sampling strategy.- Return type:
NumericArray