Interpolation methods with a simple interface
contributions welcome
| Documentation | Status |
|---|---|
| docs | Build Status codecov |
Use Julia's package manager to install
julia> ]add BasicInterpolators
- linear
- piecewise cubic
- cubic spline (natural or clamped)
- Chebyshev
- arbitrary order polynomials (Neville's method)
- polynomial coefficients (efficient Vandermonde solver)
- end-point cubic Hermite
- linear
- piecewise cubic
- Chebyshev
- radial basis functions (any choice of function)
- Shepard
See the tutorial for more complete examples.
using BasicInterpolators, ForwardDiff #some data to interpolate x = [-1, 0.5, 2, 3] y = [1, 3, -0.5, 0] #a linear interpolation struct p = LinearInterpolator(x, y) #interpolate at one point p(2.5) #interpolate at lots of points p.(LinRange(-1, 3, 100)) #compute the derivative dy/dx ForwardDiff.derivative(p, 1.0) #make an interpolator that doesn't check boundaries (allows extrapolation) p = LinearInterpolator(x, y, NoBoundaries())
Some notable packages with other/advanced methods:
For a longer list, look here.