BSpline Class |
Namespace: Imsl.Math
The BSpline type exposes the following members.
Name | Description | |
---|---|---|
Derivative(Double) |
Returns the value of the first derivative of the B-spline at a point.
| |
Derivative(Double, Int32) |
Returns the value of the derivative of the B-spline at a point.
| |
Derivative(Double, Int32) |
Returns the value of the derivative of the B-spline at each point of
an array.
| |
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.
| |
Eval(Double) |
Returns the value of the B-spline at each point of an array.
| |
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.
| |
GetSpline |
Returns a Spline representation of the B-spline.
| |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
Integral |
Returns the value of an integral of the B-spline.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
B-splines provide a particularly convenient and suitable basis for a given class of smooth ppoly functions. Such a class is specified by giving its breakpoint sequence, its order k, and the required smoothness across each of the interior breakpoints. The corresponding B-spline basis is specified by giving its knot sequence . The specification rule is as follows: If the class is to have all derivatives up to and including the j-th derivative continuous across the interior breakpoint , then the number should occur k - j - 1 times in the knot sequence. Assuming that and are the endpoints of the interval of interest, choose the first k knots equal to and the last k knots equal to . This can be done because the B-splines are defined to be right continuous near and left continuous near .
When the above construction is completed, a knot sequence of length M is generated, and there are m: = M-k B-splines of order k, for example , spanning the ppoly functions on the interval with the indicated smoothness. That is, each ppoly function in this class has a unique representation as a linear combination of B-splines. A B-spline is a particularly compact ppoly function. is a nonnegative function that is nonzero only on the interval . More precisely, the support of the i-th B-spline is . No ppoly function in the same class (other than the zero function) has smaller support (i.e., vanishes on more intervals) than a B-spline. This makes B-splines particularly attractive basis functions since the influence of any particular B-spline coefficient extends only over a few intervals.