Namespace:
Imsl.Math
Assembly:
ImslCS (in ImslCS.dll) Version: 6.5.0.0
Syntax
C# |
---|
[SerializableAttribute] public class Spline2DLeastSquares : Spline2D |
Visual Basic (Declaration) |
---|
<SerializableAttribute> _ Public Class Spline2DLeastSquares _ Inherits Spline2D |
Visual C++ |
---|
[SerializableAttribute] public ref class Spline2DLeastSquares : public Spline2D |
Remarks
The Spline2DLeastSquares class computes a tensor-product spline
least-squares approximation to weighted tensor-product data. The input
consists of data vectors to specify the tensor-product grid for the
data, two vectors with the weights, the values of the surface on the
grid, and the specification for the tensor-product spline. The grid is
specified by the two vectors x = xData and y
= yData of length
n = xData.Length and
m = yData.Length, respectively. A two-dimensional array
f = fData contains the data values which are to be fit.
The two vectors = xWeights and
= yWeights contain the weights for the
weighted least-squares problem. The information for the approximating
tensor-product spline can be provided using the SetXOrder,
SetYOrder, SetXKnots and SetYKnots methods. This
information is contained in
= xOrder,
= xKnots, and N =
xSplineSpaceDim for the spline in the first variable, and in
= yOrder,
=
yKnots and M = ySplineSpaceDim for the spline in
the second variable. This class computes coefficients for the
tensor-product spline by solving the normal equations in tensor-product
form as discussed in de Boor (1978, Chapter 17). The interested reader
might also want to study the paper by Grosse (1980).
As the computation proceeds, we obtain coefficients c minimizing
![\sum\limits_{i = 0}^{n - 1} {\sum\limits_{j = 0}^{m - 1} {w_x \left( i \right)w_y \left( j \right)} \left[ {\sum\limits_{k = 0}^{N - 1} {\sum\limits_{l = 0}^{M - 1} {c_{kl} } B_{kl} \left( {x_i ,y_i } \right) - f_{ij} } } \right]} ^2](eqn/eqn_1734.png)




