Created by: basnijholt
What is this Python project?
When evaluating a function numerically we would like to sample it more densely in the interesting regions instead of evaluating it on a manually-defined homogeneous grid. I am going to demonstrate an open-source software package Python Adaptive that evaluates the function at the optimal points by analysing existing data and planning ahead on the fly. With a few lines of code you define your goal, evaluate functions on a computing cluster, and live-plot the data. It performs averaging of stochastic functions, interpolation of vector-valued one and two-dimensional functions, and one-dimensional integration. In my work, using adaptive resulted in a ten-fold speed increase over using a homogeneous grid.
Repo link
https://github.com/python-adaptive/adaptive
What's the difference between this Python project and similar ones?
There are no other Python packages that do the same as adaptive. There are some samplers that do high dimensional sampling, but adaptive is aimed at 0D, 1D and 2D. Besides it does:
- sampling in parallel (trivial to switch between your computer and a computing cluster)
- live plotting
- interpolation
Examples
Check out the adaptive example notebook learner.ipynb (or run it live on Binder) to see examples of how to use adaptive.
--
Anyone who agrees with this pull request could vote for it by adding a

