Source code for snowdrop.src.preprocessor.objects

"""Wrapper for probability distribution objects."""

import numpy as np
from snowdrop.src.preprocessor.processes import Normal,MvNormal,LogNormal,Beta
from snowdrop.src.preprocessor.processes import Binomial,Gamma,Logistic,Uniform
from snowdrop.src.preprocessor.processes import Cartesian

MvNormal = MvNormal
Normal = Normal
LogNormal = LogNormal
Beta = Beta
Binomial = Binomial
Gamma = Gamma
Logistic = Logistic
Uniform = Uniform
Cartesian = Cartesian


[docs] class Domain(dict): """Domain class.""" def __init__(self, **kwargs): super().__init__() for k, w in kwargs.items(): v = kwargs[k] self[k] = np.array(v, dtype=float) @property def min(self): return np.array([self[e][0] for e in self.states]) @property def max(self): return np.array([self[e][1] for e in self.states])
if __name__ == '__main__': """Main entry point.""" normal = MvNormal(mean=[1.5,-2.0],cov=[[0.3,-0.1],[0.05,0.01]]) results = normal.simulate(2,10) print(results) normal = Normal(loc=-2.0,scale=0.3) results = normal.simulate(10) print(results)