Il ressemble à ce qui suit NumPy lui-même ne tient les choses propres: les opérations mathématiques « étendues » (sin ...) que les travaux sur les nouveaux objets peuvent être mis dans un espace de nom séparé. Ainsi, NumPy a numpy.sin
, etc. Ces opérations sont pour la plupart compatibles avec celles de math
, mais travaillent également sur les tableaux numpy.
Par conséquent, il me semble que les fonctions mathématiques qui devraient fonctionner sur les nombres usuels et Les tableaux NumPy et leurs homologues avec les incertitudes sont mieux définies dans un espace de nom séparé. Par exemple, l'utilisateur peut faire:
from uncertainties import sin
ou
from uncertainties import * # sin, cos, etc.
Pour des raisons d'optimisation, une alternative pourrait être de fournir deux ensembles distincts de fonctions mathématiques: celles qui généralisent des fonctions à des nombres simples avec des incertitudes, et ceux qui les généralisent à des tableaux avec des incertitudes:
from uncertainties.math_ops import * # Work on scalars and scalars with uncertainty
ou
from uncertainties.numpy_ops import * # Work on everything (scalars, arrays, numbers with uncertainties, arrays with uncertainties)