Skip to content
Snippets Groups Projects
Select Git revision
  • master
1 result

README.md

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    README.md 1.93 KiB

    UNCERTAIN

    Downloads Downloads
    Python module to keep track of uncertainties in mathematical calculations.

    Usage example

    • Define uncertain values
    import uncertain as uc
    
    # Uncertain value between 3 and 8 and a normal distribution with
    # mean=5 and standard deviation=1.
    a = uc.UncertainValue(5, 3, 8, 'normal', [5, 1]) 
    
    # Uncertain value with a uniform distribution between 0.1 and 4
    b = uc.UncertainValue(1, 0.1, 4)
    
    # Uncertain value from measured data points
    c = uc.from_data([1, 2, 3, 4, 5])
    • Perform mathematical calculations
    d = -b+2*a**(b/3)
    • Display properties and plot results in density plots or cumulative density plots
    print(c.describe(),
        "\n\nThe standard deviation of b is "+str(b.std),
    	"\n\nThe probability of /c/ being between 2 and 6 is " +
    	str(probability_in_interval(c, [2, 6])))
    
    a.plot_distribution(title="Uncertain numbers", label="a")
    b.plot_distribution(label="b", alpha=0.5)
    d.plot_distribution(label="d", alpha=0.5)
    
    d.plot_distribution(plot_type='cdf', new_figure=True)

    Output:

    This variable is an uncertain value. It has the following properties:
    
    	- Nominal value: 2.4199518933533937
    
    	- Mean: 5.1973349566661415
    	- Median: 3.8063419262133795
    	- Variance: 13.086116036143682
    	- Standard deviation: 3.6174737091157527
    	- Skewness: 1.5519941650511524
    
    	- Lower bound: -1.9254016053940988
    	- Percentile 5: 2.0248565203431506
    	- Q1: 2.432100693608657
    	- Q3: 6.832833238201248
    	- Percentile 95: 12.808458201483177
    	- Upper bound: 31.899999999999995
    
    	- Probability distribution type: custom
    	- Number of samples: 100000
     
    
    The standard deviation of b is 1.1245368594834484 
    
    The probability of /c/ being between 2 and 6 is 0.67164

    Probability density Cumulative density