Source code for sbmlutils.examples.distrib.distrib_distributions

"""Distrib example demonstrating distributions."""
from sbmlutils.examples import templates
from sbmlutils.factory import *
from sbmlutils.validation import ValidationOptions


[docs]class U(Units): """UnitsDefinitions."""
[docs] hr = UnitDefinition("hr")
[docs] m2 = UnitDefinition("m2", "meter^2")
[docs]model = Model( "distrib_distributions", name="model with distrib distributions", packages=[Package.DISTRIB_V1], creators=templates.creators, notes=""" # Distrib example Example creating distrib model with distribution elements. """ + templates.terms_of_use, units=U, model_units=ModelUnits( time=U.hr, extent=U.mole, substance=U.mole, length=U.meter, area=U.m2, volume=U.liter, ), )
model.assignments = [ InitialAssignment("p_normal_1", "normal(0, 1)"), InitialAssignment("p_normal_2", "normal(0, 1, 0, 10)"), InitialAssignment("p_uniform", "uniform(5, 10)"), InitialAssignment("p_bernoulli", "bernoulli(10)"), InitialAssignment("p_binomial_1", "binomial(100, 0.3)"), InitialAssignment("p_binomial_2", "binomial(100, 0.3, 0, 2)"), InitialAssignment("p_cauchy_1", "cauchy(0, 1)"), InitialAssignment("p_cauchy_2", "cauchy(0, 1, 0, 5)"), InitialAssignment("p_chisquare_1", "chisquare(10)"), InitialAssignment("p_chisquare_2", "chisquare(10, 0, 10)"), InitialAssignment("p_exponential_1", "exponential(1.0)"), InitialAssignment("p_exponential_2", "exponential(1.0, 0, 10)"), InitialAssignment("p_gamma_1", "gamma(0, 1)"), InitialAssignment("p_gamma_2", "gamma(0, 1, 0, 10)"), InitialAssignment("p_laplace_1", "laplace(0, 1)"), InitialAssignment("p_laplace_2", "laplace(0, 1, 0, 10)"), InitialAssignment("p_lognormal_1", "lognormal(0, 1)"), InitialAssignment("p_lognormal_2", "lognormal(0, 1, 0, 10)"), InitialAssignment("p_poisson_1", "poisson(0.5)"), InitialAssignment("p_poisson_2", "poisson(0.5, 0, 10)"), InitialAssignment("p_raleigh_1", "rayleigh(0.5)"), InitialAssignment("p_raleigh_2", "rayleigh(0.5, 0, 10)"), ] if __name__ == "__main__": from sbmlutils.resources import EXAMPLES_DIR create_model( model=model, filepath=EXAMPLES_DIR / f"{model.sid}.xml", validation_options=ValidationOptions(units_consistency=False), )