Crate scirs2_interpolate

Source
Expand description

Interpolation module

This module provides implementations of various interpolation methods. These methods are used to estimate values at arbitrary points based on a set of known data points.

§Overview

  • 1D interpolation methods (interp1d module)
    • Linear, nearest, cubic interpolation
    • PCHIP (Piecewise Cubic Hermite Interpolating Polynomial) - shape-preserving interpolation
  • Spline interpolation (spline module)
  • Bivariate splines (bivariate module):
    • BivariateSpline - Base class for bivariate splines
    • SmoothBivariateSpline - Smooth bivariate spline approximation
    • RectBivariateSpline - Bivariate spline approximation over a rectangular mesh
  • Multivariate interpolation (interpnd module)
  • Advanced interpolation methods (advanced module):
    • Akima spline interpolation - robust to outliers
    • Radial Basis Function (RBF) interpolation - for scattered data
    • Kriging (Gaussian process regression) - with uncertainty quantification
    • Barycentric interpolation - stable polynomial interpolation
  • Grid transformation and resampling (grid module):
    • Resample scattered data onto regular grids
    • Convert between grids of different resolutions
    • Map grid data to arbitrary points
  • Tensor product interpolation (tensor module):
    • Efficient high-dimensional interpolation on structured grids
    • Higher-order interpolation using Lagrange polynomials
  • Utility functions (utils module):
    • Error estimation with cross-validation
    • Parameter optimization
    • Differentiation and integration of interpolated functions

Re-exports§

pub use error::InterpolateError;
pub use error::InterpolateResult;
pub use advanced::akima::make_akima_spline;
pub use advanced::akima::AkimaSpline;
pub use advanced::barycentric::make_barycentric_interpolator;
pub use advanced::barycentric::BarycentricInterpolator;
pub use advanced::barycentric::BarycentricTriangulation;
pub use advanced::kriging::make_kriging_interpolator;
pub use advanced::kriging::CovarianceFunction;
pub use advanced::kriging::KrigingInterpolator;
pub use advanced::rbf::RBFInterpolator;
pub use advanced::rbf::RBFKernel;
pub use bivariate::BivariateInterpolator;
pub use bivariate::BivariateSpline;
pub use bivariate::RectBivariateSpline;
pub use bivariate::SmoothBivariateSpline;
pub use bivariate::SmoothBivariateSplineBuilder;
pub use grid::create_regular_grid;
pub use grid::map_grid_to_points;
pub use grid::resample_grid_to_grid;
pub use grid::resample_to_grid;
pub use grid::GridTransformMethod;
pub use interp1d::cubic_interpolate;
pub use interp1d::linear_interpolate;
pub use interp1d::nearest_interpolate;
pub use interp1d::pchip_interpolate;
pub use interp1d::Interp1d;
pub use interp1d::InterpolationMethod;
pub use interp1d::PchipInterpolator;
pub use interpnd::make_interp_nd;
pub use interpnd::make_interp_scattered;
pub use interpnd::map_coordinates;
pub use interpnd::ExtrapolateMode;
pub use interpnd::GridType;
pub use interpnd::RegularGridInterpolator;
pub use interpnd::ScatteredInterpolator;
pub use spline::make_interp_spline;
pub use spline::CubicSpline;
pub use tensor::lagrange_tensor_interpolate;
pub use tensor::tensor_product_interpolate;
pub use tensor::LagrangeTensorInterpolator;
pub use tensor::TensorProductInterpolator;

Modules§

advanced
Advanced interpolation methods
bivariate
Bivariate interpolation modules
error
Error types for the SciRS2 interpolation module
grid
Grid transformation and resampling utilities
interp1d
One-dimensional interpolation methods
interpnd
N-dimensional interpolation methods
spline
Spline interpolation methods
tensor
Tensor product interpolation
utils
Utility functions for interpolation