Calculate area under curve
Project description
Version 1.0.1
Python 3.7+ module to calculate riemann sum area under a curve
Copyright 2017 Steven Mycynek
Supports
simpson, trapezoid, and midpoint algorithms,
n-degree single variable polynomials, including fractional exponents,
variable step size
USAGE = """ -p|--poly {DegreeN1:CoefficientM1, DegreeN2:CoefficientM2, ...}... -l|--lower <lower_bound> -u|--upper <upper_bound> -s|--step <step> -a|--algorithm <simpson | trapezoid | midpoint>
This was just a fun experiment I did on a couple airplane rides and might not be suitable for production use.
Try a simple function you can integrate by hand easily, like f(x) = x^3 from [0-10], and compare that to how accurate the midpoint, trapezoid, and simpson approximations are with various steps sizes.
Why not use numpy? You probably should, but I wanted to do everything from scratch for fun.
examples:
python area_under_curve.py --polynomial {3:1} --lower 0 --upper 10 --step .1 --algorithm simpson
or:
import area_under_curve as auc
algorithm = auc.get_algorithm("simpson")
bounds = auc.Bounds(0, 10, .1)
polynomial = auc.Polynomial({3:1})
params = auc.Parameters(polynomial, bounds, algorithm)
AREA = auc.area_under_curve(params.polynomial, params.bounds, params.algorithm)
print(str(AREA))
Also try out unit_test.py and demo.py.
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
Built Distribution
Hashes for area_under_curve-1.0.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43ec87dbb612b857450bf1f6d26c62a84998043a64c4674bc174c8b5b6a4fc86 |
|
MD5 | a0f8732302d5c675a36c4e8b2f496070 |
|
BLAKE2b-256 | da48884e1e2eafc52d5b34e5646f8ba53fe92c79ba05b392d923839305e4dc26 |