9.5 More End Conditions 157
In the case of uniform knots
Ui
= /, the interpolation conditions (9.11) take
on a particularly simple form:
6p,-
= d, + 4d,+i + d,+2; / =
2,...,
X - 2. (9.13)
We conclude with a method for cubic spline interpolation that occasionally
appears in the literature (e.g., in Yamaguchi [621]). It is possible to solve the
interpolation problem without setting up a linear system! Just do the following:
define do, d^, dj^_i, d^^ as before, and set d/ = p/_i for all other control points.
Then, for / =
2,...,
L
—
2, correct the location of d^ such that the curve passes
through p^_i. Repeat until the solution is found.
This method will always converge and will not need many steps in order to
do so. So why bother with linear systems? The reason is that tridiagonal systems
are most effectively solved by a direct method, whereas the earlier iterative
method amounts to solving the system via Gauss-Seidel iteration. So though
geometrically appealing, the iterative method needs more computation time than
the direct method.
9.5 More End Conditions
For cubic spline interpolation, the choice of end conditions is important for the
shape of the interpolant near the endpoints—they do not matter much in the
interior. We have seen a clamped end condition earlier. It works well in situations
where the end derivatives are actually known. But in most applications, we do
not have this knowledge. Still, two extra equations are needed in addition to the
basic interpolation conditions (9.10).
We list several possibilities:
The natural end conditions are derived from the physical analogy of a wooden
beam that is clamped at some positions; see Figure 9.22. Beyond the first and last
clamps, such a beam assumes the shape of a straight line. A line is characterized
by having a zero second derivative, and hence the end conditions
x(ro) = 0, x(rx) = 0
are called natural end conditions.
The second derivative of a Bezier curve at bo is given by bo
—
2bi + b2. In
terms of B-spline control vertices (using triple end knots), this becomes
do
- 2di + -4^di + -4^d2 = 0,
AA+AI An + A,