vse_sim.compat
Small compatibility helpers shared across the simulation modules.
1"""Small compatibility helpers shared across the simulation modules.""" 2 3from numbers import Number 4 5from numpy import ceil as numpy_ceil 6from numpy import floor as numpy_floor 7from numpy import mean as numpy_mean 8from numpy import median as numpy_median 9from numpy import sqrt as numpy_sqrt 10from numpy import std as numpy_std 11 12 13def as_builtin_scalar(value): 14 """Convert NumPy scalar values to their Python built-in equivalents.""" 15 try: 16 return value.item() 17 except (AttributeError, ValueError): 18 return value 19 20 21def ceil(*args, **kwargs): 22 return as_builtin_scalar(numpy_ceil(*args, **kwargs)) 23 24 25def floor(*args, **kwargs): 26 return as_builtin_scalar(numpy_floor(*args, **kwargs)) 27 28 29def mean(*args, **kwargs): 30 return as_builtin_scalar(numpy_mean(*args, **kwargs)) 31 32 33def median(*args, **kwargs): 34 return as_builtin_scalar(numpy_median(*args, **kwargs)) 35 36 37def sqrt(*args, **kwargs): 38 return as_builtin_scalar(numpy_sqrt(*args, **kwargs)) 39 40 41def std(*args, **kwargs): 42 return as_builtin_scalar(numpy_std(*args, **kwargs)) 43 44 45def isnum(x): 46 """Return whether ``x`` is an instance of a numeric type.""" 47 return isinstance(x, Number) 48 49 50__all__ = [ 51 "as_builtin_scalar", 52 "ceil", 53 "floor", 54 "isnum", 55 "mean", 56 "median", 57 "sqrt", 58 "std", 59]
def
as_builtin_scalar(value):
14def as_builtin_scalar(value): 15 """Convert NumPy scalar values to their Python built-in equivalents.""" 16 try: 17 return value.item() 18 except (AttributeError, ValueError): 19 return value
Convert NumPy scalar values to their Python built-in equivalents.
def
ceil(*args, **kwargs):
def
floor(*args, **kwargs):
def
isnum(x):
46def isnum(x): 47 """Return whether ``x`` is an instance of a numeric type.""" 48 return isinstance(x, Number)
Return whether x is an instance of a numeric type.
def
mean(*args, **kwargs):
def
median(*args, **kwargs):
def
sqrt(*args, **kwargs):
def
std(*args, **kwargs):