Releases: jlogan03/interpn
Releases · jlogan03/interpn
v0.4.3
Added
- Implement
interpn_alloc
function for each method, which allocates a Vec for the output - Add test of linear methods using hat function to check grid cell alignment
Changed
- Use recursive method to evaluate multilinear interpolation instead of hypercube method
- This makes extrapolation cost consistent with interpolation cost, and reduces nominal perf scaling
- Shows about 2x slower perf in micro-benchmarks, but about 2x faster in end-to-end benchmarks after the Python bindings
- Need to improve benchmarking strategy to better capture perf in real-life usage
- Reduce repeated documentation
- Remove some inlining annotations and all instances of
#[inline(always)]
- Minimal effect on performance; provides more flexibility to downstream applications, especially opt-level=s builds
v0.4.2
What's Changed
Full Changelog: v0.4.1...v0.4.2
v0.4.1
Changes
- Fix grid cell index selection to properly center the grid cell s.t. t=0 corresponds to index 1
- Add test of cubic method against sine function to capture potential problems not visible when testing against linear and quadratic functions
v0.4.0
Changes
- Implement cubic interpolation for regular grid
- Continuous first derivative everywhere
- Option to clamp to linear extrapolation to prevent unwanted extrapolation of local curvature
- Test linearized method against linear function in both interpolation and extrapolation
- Test un-linearized method against quadratic function in both interpolation and extrapolation
v0.3.0
Changes
- Remove initial guess for cell index from rectilinear method
- Collapse some loops
- Remove support for negative step sizes for regular grid in favor of reducing number of abs() calls
- Remove some saturating sub calls that are not needed now that degenerate grids are not supported
- Get indexing dimension product in the same way for rectilinear method as for regular grid method
- Use better initial value for folds
- Update docs
- Use optimizations for tests because it's faster overall
v0.2.0
Changes
- Propagate Result everywhere that unwrap or assert! was being used
v0.1.0
Add release machinery (#2)