Globally Determined Splines
Instructor Note: Here you can read and learn about how to compute the coefficients of the fixed-slope spline.
As an example, consider a four-node case, i.e. a spline comprised of three segments (N = 3):
Taking the 1st-order and 2nd-order derivatives yields
Now, how do we find 4N unknown coefficients? First, each segment should satisfy its boundary conditions on the coordinate (2N conditions). Second, at all nodes, the adjacent segments should have the same 1st- and 2nd-order derivatives (2(N–1) conditions). Finally, we might want to enforce the initial and final conditions on the 1st-order derivative (2 conditions). That gives
This type of spline is known as 'clamped,' or 'fixed-slope,' or sometimes 'complete spline.'
Instructor Note: Next, let's look at examples of other endpoint constructions.
Obviously, the fixed slope at the first and last nodes is not the only possible endpoint construction—there are others as well. Shown again are the 4N conditions used to find 4N coefficients. While the relations in the shaded area must be satisfied, the two remaining ones can be substituted with something else.
Click on any button below to see what other conditions are commonly applied.
As you can see, by construction, Natural, Parabolically-terminated and Not-a-knot splines leave no space for variations. However, having two free parameters we might want to explore some other options similar to Clamped or Fixed-slope spline, where we were able to adjust the 1st-order derivative at both endpoints. One of these options, which is a natural extension of three splines we just considered, is Curvature-adjusted spline allowing to vary the 2nd-order derivatives at both endpoints rather than assigning some recalculated values to them. Another option may include varying the 1st- and 2nd-order derivative simultaneously but at only one endpoint.
Instructor Note: Here you can examine three more endpoint conditions by clicking on one of the three buttons: Curvature-adjusted spline, Free-end spline and Free-start spline.
Instructor Note: There is a major shortcoming of the globally defined spline—that of propagating variations. Take a moment to read about why this happens. Later in this tutorial, you'll read about splines derived locally (or 'local splines') which do not have this problem.
The derivation of coefficients for a global spline is quite bulky and therefore is not presented here. However, it should be noted that when derived, the coefficients of one segment happen to depend on the coordinates of all nodes and two additional parameters, whatever they are. For example, the coefficients for the second segment
of our three-segment clamped spline, will be represented as
For the curvature-adjusted spline it will be
Therefore, changing one parameter—say one of two coordinates of any node—immediately affects (changes the shape of) the entire spline, not just the adjacent segments, where this change occurred. That is why such a spline is also known as a 'spline derived globally' or simply, global spline.
Because of this feature you should be very careful with splines allowing variations of derivatives at endpoints—the desire to adjust the slope or curvature at only one segment may cause significant changes at the adjacent segments. Moreover, allowing to varying both the 1st- and 2nd-order derivative at one endpoint leads to catastrophe because any variation of these parameters not only propagates towards another endpoint but also amplifies from one segment to another making such a spline very sensitive and unstable (so nobody use it).
Instructor Note: Here you can explore some of the different global splines.
Instructions for Interactive Graph
You can add or eliminate a spline by checking/unchecking the box by its name. You can also change the 1st- and/or 2nd-order derivatives at the boundary point(s) by grabbing and dragging the triangle and rhomb pointers, respectively. Note how difficult it is (if possible at all) to make Free-end spline feasible.
Open interactive graph full screen.
Click on the 'Locally Determined Splines' button in the left navigation area to continue this tutorial.
Back to top.