enum InterpolationMethod
Source: interpolate.joule:12
enum InterpolationMethodSource: interpolate.joule:12
enum ExtrapolationModeSource: interpolate.joule:33
struct Interp1d1D interpolator
Source: interpolate.joule:47
struct SplineCoeffsCubic spline coefficients
Source: interpolate.joule:57
fn new(x: &[f64], y: &[f64], method: InterpolationMethod) -> SelfSource: interpolate.joule:67
fn extrapolate(mut self, mode: ExtrapolationMode) -> SelfSet extrapolation mode
Source: interpolate.joule:96
fn eval(&self, xi: f64) -> f64Source: interpolate.joule:103
fn eval_array(&self, xi: &[f64]) -> Vec<f64>Source: interpolate.joule:128
fn derivative(&self, xi: f64, order: usize) -> f64Source: interpolate.joule:134
fn integral(&self, a: f64, b: f64) -> f64Source: interpolate.joule:170
fn find_interval(&self, xi: f64) -> usizeSource: interpolate.joule:218
fn linear_interp(&self, i: usize, xi: f64) -> f64Source: interpolate.joule:226
fn nearest_interp(&self, i: usize, xi: f64) -> f64Source: interpolate.joule:231
fn spline_interp(&self, i: usize, xi: f64) -> f64Source: interpolate.joule:239
fn lagrange_interp(&self, xi: f64) -> f64Source: interpolate.joule:248
fn extrapolate_value(&self, xi: f64) -> f64Source: interpolate.joule:265
fn compute_natural_spline(x: &[f64], y: &[f64]) -> SplineCoeffsCompute natural cubic spline coefficients
Source: interpolate.joule:310
fn compute_not_a_knot_spline(x: &[f64], y: &[f64]) -> SplineCoeffsCompute not-a-knot cubic spline
Source: interpolate.joule:358
fn compute_akima_spline(x: &[f64], y: &[f64]) -> SplineCoeffsCompute Akima spline (less oscillation)
Source: interpolate.joule:365
fn compute_pchip(x: &[f64], y: &[f64]) -> SplineCoeffsCompute PCHIP (monotone preserving)
Source: interpolate.joule:416
fn pchip_end_derivative(h1: f64, h2: f64, del1: f64, del2: f64) -> f64Source: interpolate.joule:461
enum Interp2dMethodSource: interpolate.joule:479
struct Interp2dRegular grid 2D interpolator
Source: interpolate.joule:489
fn new(x: &[f64], y: &[f64], z: &[Vec<f64>], method: Interp2dMethod) -> SelfSource: interpolate.joule:499
fn eval(&self, xi: f64, yi: f64) -> f64Source: interpolate.joule:515
fn eval_array(&self, xi: &[f64], yi: &[f64]) -> Vec<f64>Source: interpolate.joule:525
fn find_interval(arr: &[f64], val: f64) -> usizeSource: interpolate.joule:529
fn bilinear(&self, xi: f64, yi: f64) -> f64Source: interpolate.joule:536
fn nearest(&self, xi: f64, yi: f64) -> f64Source: interpolate.joule:562
fn bicubic(&self, xi: f64, yi: f64) -> f64Source: interpolate.joule:572
fn cubic_interp(t: f64, p0: f64, p1: f64, p2: f64, p3: f64) -> f64Cubic interpolation helper
Source: interpolate.joule:604
struct Interp2dScatteredScattered data interpolation
Source: interpolate.joule:614
enum ScatteredMethodSource: interpolate.joule:622
enum RbfKernelSource: interpolate.joule:633
fn new(points: &[(f64, f64)], values: &[f64], method: ScatteredMethod) -> SelfSource: interpolate.joule:649
fn eval(&self, x: f64, y: f64) -> f64Source: interpolate.joule:661
fn idw_interp(&self, x: f64, y: f64, power: f64) -> f64Source: interpolate.joule:669
fn rbf_interp(&self, x: f64, y: f64, kernel: RbfKernel) -> f64Source: interpolate.joule:688
fn linear_interp(&self, x: f64, y: f64) -> f64Source: interpolate.joule:708
fn eval(&self, r: f64) -> f64Source: interpolate.joule:727
struct BSplineB-spline curve
Source: interpolate.joule:749
fn new(control_points: &[f64], degree: usize) -> SelfSource: interpolate.joule:761
fn with_knots(control_points: &[f64], knots: &[f64], degree: usize) -> SelfCreate B-spline with custom knot vector
Source: interpolate.joule:789
fn eval(&self, t: f64) -> f64Source: interpolate.joule:801
fn basis(&self, i: usize, k: usize, t: f64) -> f64B-spline basis function (Cox-de Boor recursion)
Source: interpolate.joule:814
fn derivative(&self, t: f64) -> f64Source: interpolate.joule:842
fn basis_deriv(&self, i: usize, k: usize, t: f64) -> f64Source: interpolate.joule:871
struct BSpline2d2D B-spline curve (parametric)
Source: interpolate.joule:898
fn new(control_x: &[f64], control_y: &[f64], degree: usize) -> SelfSource: interpolate.joule:906
fn eval(&self, t: f64) -> (f64, f64)Source: interpolate.joule:917
fn sample(&self, num_points: usize) -> Vec<(f64, f64)>Source: interpolate.joule:923
struct PolynomialSource: interpolate.joule:939
fn new(coeffs: &[f64]) -> SelfCreate polynomial from coefficients
Source: interpolate.joule:945
fn fit(x: &[f64], y: &[f64], degree: usize) -> SelfSource: interpolate.joule:953
fn eval(&self, x: f64) -> f64Source: interpolate.joule:988
fn eval_array(&self, x: &[f64]) -> Vec<f64>Source: interpolate.joule:999
fn derivative(&self) -> PolynomialGet derivative polynomial
Source: interpolate.joule:1004
fn antiderivative(&self) -> PolynomialGet antiderivative polynomial (constant = 0)
Source: interpolate.joule:1019
fn roots(&self) -> Vec<f64>Source: interpolate.joule:1029
fn newton_root(&self, x0: f64, deriv: &Polynomial) -> Option<f64>Source: interpolate.joule:1078
fn solve_system(a: &[Vec<f64>], b: &[f64]) -> Option<Vec<f64>>Source: interpolate.joule:1105
fn interp(x: &[f64], y: &[f64], xi: f64) -> f64Source: interpolate.joule:1157
fn interp_array(x: &[f64], y: &[f64], xi: &[f64]) -> Vec<f64>Source: interpolate.joule:1163
fn spline(x: &[f64], y: &[f64], xi: &[f64]) -> Vec<f64>Source: interpolate.joule:1170
fn polyinterp(x: &[f64], y: &[f64], xi: f64) -> f64Source: interpolate.joule:1177
fn polyfit(x: &[f64], y: &[f64], degree: usize) -> Vec<f64>Source: interpolate.joule:1183
fn polyval(coeffs: &[f64], x: f64) -> f64Source: interpolate.joule:1189
fn test_linear_interp()Source: interpolate.joule:1202
fn test_cubic_spline()Source: interpolate.joule:1213
fn test_polynomial_fit()Source: interpolate.joule:1226
fn test_bspline()Source: interpolate.joule:1239