Class Documentation

This section is the reference manual for the spline classes and constraint objects. Use it when you want the exact constructor, property, method, or equation used by a class.

If you are still choosing an approach, start with Which Class Should I Use? or the Tutorials before dropping into the reference.

Choose a starting point

Class Use it when Typical job
InterpolatingSpline your values are trusted exactly and lie on a 1-D grid or rectilinear tensor grid exact interpolation
ConstrainedSpline your data are noisy, weighted, or subject to point or global constraints smoothing and constrained fitting
TrajectorySpline you want a planar x(t), y(t) model with shared parameterization and persisted restart fit and persist a two-dimensional trajectory
BSpline you want direct access to one-dimensional basis matrices, derivatives, knot utilities, or PP coefficients low-level 1-D spline work
TensorSpline you want the multidimensional tensor-product analogue of BSpline low-level tensor-product spline work

Most users should start with InterpolatingSpline, ConstrainedSpline, or TrajectorySpline. The lower-level BSpline and TensorSpline pages are mainly for building custom workflows, understanding the mathematics, or working directly with spline bases and coefficients.

How the classes relate

  • BSpline is the core one-dimensional spline object.
  • TensorSpline extends the same construction to multiple dimensions by taking tensor products of one-dimensional bases.
  • InterpolatingSpline is the exact-fit constructor built on top of TensorSpline.
  • ConstrainedSpline is the noisy-data fitting constructor built on top of TensorSpline, with weights, robust distributions, and constraints.
  • TrajectorySpline stores a shared-parameter planar trajectory as paired one-dimensional component splines and exposes direct u(t) and v(t) helpers.

Constraint objects

These helper classes support ConstrainedSpline:

Shared notation

The reference pages use the same notation throughout so the equations, examples, and property names line up.

Symbol Meaning API name
\(S\) spline degree S
\(K = S + 1\) spline order K
\(\tau\) knot vector in 1-D, or knot vectors per dimension in tensor splines knotPoints
\(\xi\) spline coefficients xi
\(B\) one-dimensional basis matrix returned by BSpline.matrixForDataPoints
\(\mathbf{B}\) tensor-product basis matrix or fitting system matrix returned by TensorSpline.matrixForPointMatrix or built inside fitting classes
\(xMean\), \(xStd\) affine output normalization xMean, xStd

When a class stores affine normalization, zero-order evaluation is written as an additive offset plus a scaled spline expansion. Derivative expressions keep the xStd scaling and drop the xMean offset.

Reading the reference

Each class page emphasizes the methods and properties declared by that class. Inherited behavior lives on the parent-class page, so higher-level pages stay shorter and easier to scan:


Table of contents