from uncertainties import ufloat
# à titre de comparaison, la valeur de la déviation standard stv est la même
# que celle utilisée dans la simulation de Monte Carlo
from uncertainties.umath import *
# ce sous-module permet de capturer les fonctions du module math,
# ce qui permet d'utiliser les fonctions cos(), sin(),etc. avec des incertitudes.
# fonction g de la surface
def surface(x,y):
return x * y
longueur = ufloat((100,stv)) # 100 ± stv
largeur = ufloat((100,stv)) # 100 ± stv
print surface(longueur,largeur)
10000.0+/-200.0
# détail, moyenne, déviation standard
print surface.nominal_value
10000.0
print surface.std_dev()
200.0
# résultats en tenant compte de la rêgle des chiffres significatifs
résultat = surface(longueur,largeur)
print "%.f" % résultat.nominal_value,"+/-","%.f" % résultat.std_dev()
10000+/-200