API
Structs
DataInterpolationsND.NDInterpolation — TypeNDInterpolation(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.
DataInterpolationsND.LinearInterpolationDimension — TypeLinearInterpolationDimension(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, seeeval_unstructuredandeval_grid. Defaults to no points.
DataInterpolationsND.ConstantInterpolationDimension — TypeConstantInterpolationDimension(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 evaluationtfor the value. Defaults totrue.t_eval: A vector (like) of time evaluation points for efficient evaluation of multiple points, seeeval_unstructuredandeval_grid. Defaults to no points.
DataInterpolationsND.BSplineInterpolationDimension — TypeBSplineInterpolationDimension(
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, seeeval_unstructuredandeval_grid. Defaults to no points.max_derivative_order_eval: The maximum derivative order for which the basis functions will be precomputed foreval_unstructuredandeval_grid.multiplicities: The multiplicities of the knotst. Defaults to multiplicities for an open/clamped knot vector.
DataInterpolationsND.NURBSWeights — TypeNURBSWeights(weights::AbstractArray)Weights associated with the control points to define a NURBS geometry.
Multi-point evaluation
DataInterpolationsND.eval_unstructured — Functionfunction 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 to0for each.
DataInterpolationsND.eval_unstructured! — Functionfunction 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 to0for each.
DataInterpolationsND.eval_grid — Functionfunction 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 to0for each.
DataInterpolationsND.eval_grid! — Functionfunction 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 to0for each.