Transparent calculations with quantities with uncertainties (aka "error propagation")
Project description
uncertainties allows calculation such as (0.2 +- 0.01)**2 = 0.04 +- 0.004 to be performed transparently.
Correlations between expressions are correctly taken into account (for instance, with x=0.2+-0.01, 2*x - x - x is exactly zero, as is y - x - x with y = 2*x).
Examples:
# Mathematical operations: x = uncertainties.Number_with_uncert((0.20, 0.01)) # x = 0.20+-0.01 x = uncertainties.Number_with_uncert("0.20(1)") # Other representation print x**2 # Prints "0.04+-0.004" print math.sin(x**2) # Prints "0.0399...+-0.00399..." # Access to the value at the origin, to the uncertainty, and to derivatives: y = x**2 print y # Prints "0.04+-0.004" print y.origin_value # Prints "0.04" print y.std_dev() # Prints "0.004..." print y.derivatives[x] # Partial derivative: prints "2"
Almost all mathematical operations are supported, including many from the standard math module and from the third-party numpy module (fast operations on arrays and matrices).
More information can be obtained with pydoc uncertainties.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
uncertainties-1.0.1.tar.gz
(21.6 kB
view hashes)