API

Structs

DataInterpolationsND.NDInterpolationType
NDInterpolation(interp_dims, u)

The interpolation object containing the interpolation dimensions and the data to interpolate u. Given the number of interpolation dimensions N_in, for first N_in dimensions of u the size of u along that dimension must match the length of t of the corresponding interpolation dimension.

Arguments

  • interp_dims: A tuple of identically typed interpolation dimensions.
  • u: The array to be interpolated.
source
DataInterpolationsND.LinearInterpolationDimensionType
LinearInterpolationDimension(t; t_eval = similar(t, 0))

Interpolation dimension for linear interpolation between the data points.

Arguments

  • t: The time points for this interpolation dimension.

Keyword arguments

  • t_eval: A vector (like) of time evaluation points for efficient evaluation of multiple points, see eval_unstructured and eval_grid. Defaults to no points.
source
DataInterpolationsND.ConstantInterpolationDimensionType
ConstantInterpolationDimension(t; t_eval = similar(t, 0), left = true)

Interpolation dimension for constant interpolation between the data points.

Arguments

  • t: The time points for this interpolation dimension.

Keyword arguments

  • left: Whether the interpolation looks to the left of the evaluation t for the value. Defaults to true.
  • t_eval: A vector (like) of time evaluation points for efficient evaluation of multiple points, see eval_unstructured and eval_grid. Defaults to no points.
source
DataInterpolationsND.BSplineInterpolationDimensionType
BSplineInterpolationDimension(
    t, degree;
    t_eval = similar(t, 0),
    max_derivative_order_eval::Integer = 0,
    multiplicities::Union{AbstractVector{<:Integer}, Nothing} = nothing)

Interpolation dimension for BSpline or NURBS interpolation between the data points, used for evaluating the BSpline basis functions.

Arguments

  • t: The time points for this interpolation dimension, in this context also known as knots.
  • degree: The degree of the basis functions

Keyword arguments

  • t_eval: A vector (like) of time evaluation points for efficient evaluation of multiple points, see eval_unstructured and eval_grid. Defaults to no points.
  • max_derivative_order_eval: The maximum derivative order for which the basis functions will be precomputed for eval_unstructured and eval_grid.
  • multiplicities: The multiplicities of the knots t. Defaults to multiplicities for an open/clamped knot vector.
source

Multi-point evaluation

DataInterpolationsND.eval_unstructuredFunction
function eval_unstructured(
    interp::NDInterpolation{N_in};
    derivative_orders::NTuple{N_in, <:Integer} = ntuple(_ -> 0, N_in)) where {N_in}

Evaluate the interpolation in the unstructured set of points defined by t_eval in the interpolation dimensions out of place. That is, t_eval must have the same length for each interpolation dimension and the interpolation is evaluated at the zip if these t_eval.

Keyword arguments

  • derivative_orders: The partial derivative order for each interpolation dimension. Defaults to 0 for each.
source
DataInterpolationsND.eval_unstructured!Function
function eval_unstructured!(
    out::AbstractArray,
    interp::NDInterpolation{N_in};
    derivative_orders::NTuple{N_in, <:Integer} = ntuple(_ -> 0, N_in)) where {N_in}

Evaluate the interpolation in the unstructured set of points defined by t_eval in the interpolation dimensions in place. That is, t_eval must have the same length for each interpolation dimension and the interpolation is evaluated at the zip if these t_eval.

Keyword arguments

  • derivative_orders: The partial derivative order for each interpolation dimension. Defaults to 0 for each.
source
DataInterpolationsND.eval_gridFunction
function eval_grid(
    interp::NDInterpolation{N_in};
    derivative_orders::NTuple{N_in, <:Integer} = ntuple(_ -> 0, N_in)) where {N_in}

Evaluate the interpolation in the Cartesian product of the t_eval of the interpolation dimensions out of place.

Keyword arguments

  • derivative_orders: The partial derivative order for each interpolation dimension. Defaults to 0 for each.
source
DataInterpolationsND.eval_grid!Function
function eval_grid!(
    out::AbstractArray,
    interp::NDInterpolation{N_in};
    derivative_orders::NTuple{N_in, <:Integer} = ntuple(_ -> 0, N_in)) where {N_in}

Evaluate the interpolation in the Cartesian product of the t_eval of the interpolation dimensions in place.

Keyword arguments

  • derivative_orders: The partial derivative order for each interpolation dimension. Defaults to 0 for each.
source