CsSmooth Class |
Namespace: Imsl.Math
The CsSmooth type exposes the following members.
Name | Description | |
---|---|---|
![]() | CsSmooth(Double[],Double[]) |
Constructs a smooth cubic spline from noisy data using
cross-validation to estimate the smoothing parameter. All of the
points have equal weights.
|
![]() | CsSmooth(Double[],Double[],Double[]) |
Constructs a smooth cubic spline from noisy data using
cross-validation to estimate the smoothing parameter. Weights are
supplied by the user.
|
Name | Description | |
---|---|---|
![]() | Derivative(Double) |
Returns the value of the first derivative of the spline at a point.
(Inherited from Spline.) |
![]() | Derivative(Double, Int32) |
Returns the value of the derivative of the spline at a point.
(Inherited from Spline.) |
![]() | Derivative(Double[], Int32) |
Returns the value of the derivative of the spline at each point of an
array.
(Inherited from Spline.) |
![]() | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Eval(Double) |
Returns the value of the spline at a point.
(Inherited from Spline.) |
![]() | Eval(Double[]) |
Returns the value of the spline at each point of an array.
(Inherited from Spline.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetBreakpoints |
Returns a copy of the breakpoints.
(Inherited from Spline.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | Integral |
Returns the value of an integral of the spline.
(Inherited from 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.) |
Class CsSmooth is designed to produce a
cubic spline approximation to a data set in which the function values
are noisy. This spline is called a smoothing spline. It is a natural
cubic spline with knots at all the data abscissas x =
xData, but it does not interpolate the data
. The smoothing spline S is the
unique
function that minimizes
subject to the constraint
where is the smoothing parameter. The reader
should consult Reinsch (1967) for more information concerning smoothing
splines. CsSmooth solves the above problem when the user
provides the smoothing parameter
.
CsSmoothC2 attempts to find the "optimal" smoothing parameter
using the statistical technique known as cross-validation. This means
that (in a very rough sense) one chooses the value of
so that the smoothing spline
best approximates the value of the data
at
, if it is computed using all the data except
the i-th; this is true for all
. For more information on this
topic, we refer the reader to Craven and Wahba (1979).