| Spline Toolbox | ![]() |
Experiment with a B-spline as a function of its knots
Syntax
Description
starts a graphical user interface (GUI) for exploring how a B-spline depends on its knots. As you add, move, or delete knots, you see the B-spline and its first three derivatives change accordingly.bspligui
You observe the following basic facts about the B-spline with knot sequence
:
. It is zero at the end knots,
and
, unless they are knots of multiplicity k. The B-spline is also zero outside the closed interval
, but that part of the B-spline is not shown in the GUI.
only at a knot of multiplicity at least
. On the other hand, that maximum cannot be arbitrarily small; it seems smallest when there are no interior knots.
, i.e., its polynomial pieces all are of degree
. For
, you can even observe that all its nonzero polynomial pieces are of exact degree k-1, by looking at the first three derivatives of the B-spline. This means that the degree goes up/down by 1 every time you add/delete a knot.
is a break for the B-spline, but it is permissible for several knots to coincide. Therefore, the number of nontrivial polynomial pieces is maximally
(when all the knots are different) and minimally 1 (when there are no "interior" knots), and any number between 1 and
is possible.
times, then the
th derivative of the B-spline has a jump across that break, while all derivatives of order lower than
are continuous across that break. Thus, by varying the multiplicity of a knot, you can control the smoothness of the B-spline across that knot.
, hence the B-spline itself is unimodal, meaning that it has exactly one maximum. Further, if the second derivative is not identically zero, then it has exactly two sign changes in that interval. Finally, if the third derivative is not identically zero, then it has exactly three sign changes in that interval. This illustrates the fact that, for
, if the
th derivative is not identically zero, then it has exactly
sign changes in the interval
; it is this property that is meant by the term "bell-shaped". For this claim to be strictly true, one has to be careful with the meaning of "sign change" in case there are knots with multiplicities. For example, the
st derivative is piecewise constant, hence it cannot have
sign changes in the straightforward sense unless there are
polynomial pieces, i.e., unless all the knots are simple.
See Also
bsplidem, bspline, chbpnt, spcol
| brk2knt | bspline | ![]() |