Namespace:
Imsl.Math
Assembly:
ImslCS (in ImslCS.dll) Version: 6.5.0.0
Syntax
C# |
---|
[SerializableAttribute] public class BsInterpolate : BSpline |
Visual Basic (Declaration) |
---|
<SerializableAttribute> _ Public Class BsInterpolate _ Inherits BSpline |
Visual C++ |
---|
[SerializableAttribute] public ref class BsInterpolate : public BSpline |
Remarks
Given the data points x = xData, f = yData, and n the number of elements in xData and yData, the default action of BsInterpolate computes a cubic (order = 4) spline interpolant s to the data using a default "not-a-knot" knot sequence. Constructors are also provided that allow the order and knot sequence to be specified. This algorithm is based on the routine SPLINT by de Boor (1978, p. 204).
First, the xData vector is sorted and the result is stored in x.
The elements of yData are permuted appropriately and stored in f,
yielding the equivalent data for
i = 0 to n-1. The following preliminary checks are
performed on the data, with k = order. We verify that
The first test checks to see that the abscissas are distinct. The second and third inequalities verify that a valid knot sequence has been specified.
In order for the interpolation matrix to be nonsingular, we also check
for i
= 0 to n-1. This first inequality in the last check is necessary
since the method used to generate the entries of the interpolation
matrix requires that the k possibly nonzero B-splines at
,
where
j satisfies
be well-defined (that is,
).