computation
Computation Primitives and Conversions
Core building blocks for computing distribution characteristics and conversions between them (e.g., PDF to CDF, CDF to PPF).
This module provides:
- FittedComputationMethod: fitted conversion method ready for use
- FitterMethod: cacheable computation that performs expensive precomputation
- EvaluatorMethod: lightweight direct computation called on every query
- AnalyticalComputation: analytical computation provided directly by a distribution
- Computation: protocol for computations that evaluate a single characteristic
- class pysatl_core.distributions.computations.computation.AnalyticalComputation(target, func)[source]
Bases:
GenericAnalytical computation provided directly by a distribution.
- Parameters:
- __init__(target, func)
- Parameters:
target (GenericCharacteristicName)
func (ComputationFunc[TypeAliasForwardRef('typing.Any'), TypeAliasForwardRef('typing.Any')])
- Return type:
None
- target: GenericCharacteristicName
- func: ComputationFunc
- class pysatl_core.distributions.computations.computation.Computation(*args, **kwargs)[source]
-
Protocol for computations that evaluate a single characteristic.
- property target: GenericCharacteristicName
- __init__(*args, **kwargs)
- type pysatl_core.distributions.computations.computation.ComputationMethodUnion = FitterMethod | EvaluatorMethod
Union type for computation methods (fitter or evaluator).
- type pysatl_core.distributions.computations.computation.Evaluator = Callable[[Distribution, Any], Out] | Callable[[Distribution, In, Any], Out]
- class pysatl_core.distributions.computations.computation.EvaluatorMethod(target, sources, evaluator)[source]
Bases:
objectLightweight direct computation method called on every query.
An evaluator does not perform expensive precomputation and returns the computed value directly rather than a
FittedComputationMethod.- Parameters:
- target: GenericCharacteristicName
- sources: Sequence[GenericCharacteristicName]
- evaluator: EvaluatorFunc
- evaluate(distribution, *args, **options)[source]
- Overloads:
self, distribution (Distribution), options (Any) → NumericArray
self, distribution (Distribution), data (NumericArray), options (Any) → NumericArray
- Parameters:
distribution (pysatl_core.distributions.distribution.Distribution)
args (Any)
options (Any)
- Return type:
Evaluate the computation directly.
- prepare(distribution, **options)[source]
Create a lightweight fitted wrapper that binds the distribution.
This allows evaluator-based methods to be used in the same way as fitter-based methods when needed.
- __init__(target, sources, evaluator)
- Parameters:
target (GenericCharacteristicName)
sources (Sequence[GenericCharacteristicName])
evaluator (EvaluatorFunc)
- Return type:
None
- type pysatl_core.distributions.computations.computation.Fitter = Callable[[Distribution, Any], FittedComputationMethod]
- class pysatl_core.distributions.computations.computation.FittedComputationMethod(target, sources, func)[source]
Bases:
GenericFitted conversion method ready for use.
- Parameters:
- target: GenericCharacteristicName
- sources: Sequence[GenericCharacteristicName]
- func: ComputationFunc
- __call__(*args, **options)[source]
- Overloads:
self, options (Any) → Out
self, data (In), options (Any) → Out
- Parameters:
- Return type:
Evaluate the fitted conversion.
- __init__(target, sources, func)
- Parameters:
target (GenericCharacteristicName)
sources (Sequence[GenericCharacteristicName])
func (ComputationFunc[TypeAliasForwardRef('typing.Any'), TypeAliasForwardRef('typing.Any')])
- Return type:
None
- class pysatl_core.distributions.computations.computation.FitterMethod(target, sources, fitter)[source]
Bases:
objectCacheable computation method that performs expensive precomputation.
A fitter is called once per distribution to produce a
FittedComputationMethodthat can be cached and reused for subsequent evaluations.- Parameters:
- target: GenericCharacteristicName
- sources: Sequence[GenericCharacteristicName]
- fitter: FitterFunc
- fit(distribution, **options)[source]
Fit the computation method to a specific distribution.
- Parameters:
distribution (pysatl_core.distributions.distribution.Distribution) – Distribution to fit the computation method to.
**options (
Any) – Additional options passed to the fitter.
- Returns:
Fitted method ready for evaluation.
- Return type:
FittedComputationMethod[GenericAlias[floating[Any] |integer[Any]],GenericAlias[floating[Any] |integer[Any]]]
- __init__(target, sources, fitter)
- Parameters:
target (GenericCharacteristicName)
sources (Sequence[GenericCharacteristicName])
fitter (FitterFunc)
- Return type:
None
- type pysatl_core.distributions.computations.computation.Method = AnalyticalComputation | FittedComputationMethod