BsInterpolate Class |
Namespace: Imsl.Math
The BsInterpolate type exposes the following members.
Name | Description | |
---|---|---|
BsInterpolate(Double, Double) |
Constructs a B-spline that interpolates the given data points. The
computed B-spline will be order 4 (cubic) and have a default
"not-a-knot" spline knot sequence.
| |
BsInterpolate(Double, Double, Int32) |
Constructs a B-spline that interpolates the given data points and
order, using a default "not-a-knot" spline knot sequence.
| |
BsInterpolate(Double, Double, Int32, Double) |
Constructs a B-spline that interpolates the given data points, using
the specified order and knots.
|
Name | Description | |
---|---|---|
Derivative(Double) |
Returns the value of the first derivative of the B-spline at a point.
(Inherited from BSpline.) | |
Derivative(Double, Int32) |
Returns the value of the derivative of the B-spline at a point.
(Inherited from BSpline.) | |
Derivative(Double, Int32) |
Returns the value of the derivative of the B-spline at each point of
an array.
(Inherited from BSpline.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Eval(Double) |
Returns the value of the B-spline at a point.
(Inherited from BSpline.) | |
Eval(Double) |
Returns the value of the B-spline at each point of an array.
(Inherited from BSpline.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetKnots |
Returns a copy of the knot sequence.
(Inherited from BSpline.) | |
GetSpline |
Returns a Spline representation of the B-spline.
(Inherited from BSpline.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
Integral |
Returns the value of an integral of the B-spline.
(Inherited from BSpline.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
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, ).