Click or drag to resize

NaturalCubicSpline Class

Class NaturalCubicSpline represents a function determined by tabulated values. Function values are calculated using natural cubic spline interpolation.
Inheritance Hierarchy

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
public class NaturalCubicSpline : CubicSpline

The NaturalCubicSpline type exposes the following members.

Constructors
 NameDescription
Public methodNaturalCubicSpline Default constructor.
Public methodNaturalCubicSpline(DoubleVector, DoubleVector) Constructs an instance of NaturalCubicSpline for the given paired vectors of x- and y-values.
Top
Properties
 NameDescription
Public propertyDifferentiator Gets and sets the differentiation method object associated with this function.
(Inherited from OneVariableFunction)
Public propertyFunc Gets the function encapsulated by this object.
(Inherited from OneVariableFunction)
Public propertyIntegrator Gets and sets the integration method object associated with this function.
(Inherited from OneVariableFunction)
Public propertyNumberOfTabulatedValues Gets the number of tabulated values.
(Inherited from TabulatedFunction)
Public propertySecondDerivativeAtControlPoints The second derivative at each control point of the cubic spline.
(Inherited from CubicSpline)
Top
Methods
 NameDescription
Public methodClone Creates a deep copy of this natural cubic spline.
(Overrides OneVariableFunctionClone)
Protected methodCoreEvaluate
(Overrides CubicSplineCoreEvaluate(Double))
Public methodDerivative Returns the first derivative of this function.
(Inherited from OneVariableFunction)
Public methodDifferentiate Computes the numerical derivative of the current function at the given x-value.
(Inherited from OneVariableFunction)
Public methodEvaluate(Double) Evaluates the current function at the given x-value.
(Inherited from OneVariableFunction)
Public methodEvaluate(DoubleVector) Evaluates the current function at the given set of x-values.
(Inherited from OneVariableFunction)
Public methodEvaluate(OneVariableFunction) Creates a composite function.
(Inherited from OneVariableFunction)
Protected methodEvaluateWithCubicSpline
(Overrides CubicSplineEvaluateWithCubicSpline(Double))
Public methodGetX Returns the value of the tabulated independent values at the specified index.
(Inherited from TabulatedFunction)
Public methodGetXs Gets the x, or independent, values represented by this function.
(Inherited from TabulatedFunction)
Public methodGetXVector Gets the x, or independent, values represented by this function.
(Inherited from TabulatedFunction)
Public methodGetY Returns the value of the tabulated dependent values at the specified index.
(Inherited from TabulatedFunction)
Public methodGetYs Gets the y, or dependent, values represented by this function.
(Inherited from TabulatedFunction)
Public methodGetYVector Gets the y, or dependent, values represented by this function.
(Inherited from TabulatedFunction)
Public methodIntegrate Computes the integral of the current function over the specified interval.
(Inherited from OneVariableFunction)
Protected methodLinearInterpolation Handles the case when there are exactly two tabulated points.
(Overrides CubicSplineLinearInterpolation(Double))
Protected methodParabolicInterpolation Handles the case when there are exactly three tabulated points.
(Overrides CubicSplineParabolicInterpolation(Double))
Protected methodProcessTabulatedValues Calculates the values for the second derivatives. From "Numerical Recipes" section 3.3
(Overrides TabulatedFunctionProcessTabulatedValues)
Public methodSetTabulatedValues(DoubleVector, DoubleVector) Changes the values of the tabulated function.
(Inherited from TabulatedFunction)
Public methodSetTabulatedValues(Int32, Double, Double) Set the values of the tabulated point at the specified index to the specified value.
(Inherited from TabulatedFunction)
Public methodSetTabulatedValues(Range, DoubleVector, DoubleVector) Sets the the tabulated point values in the specifed range to the specified values.
(Inherited from TabulatedFunction)
Public methodSetX(Int32, Double) Sets the value of the independent tabulated value at the specified index to the specified value.
(Inherited from TabulatedFunction)
Public methodSetX(Range, DoubleVector) Sets the the tabulated independent values in the specifed range to the specified values.
(Inherited from TabulatedFunction)
Public methodSetY(Int32, Double) Sets the value of the dependent tabulated value at the specified index to the specified value.
(Inherited from TabulatedFunction)
Public methodSetY(Range, DoubleVector) Sets the the tabulated dependent values in the specifed range to the specified values.
(Inherited from TabulatedFunction)
Top
Fields
 NameDescription
Protected fielddifferentiator_Differentiator
(Inherited from OneVariableFunction)
Protected fieldfunction_ Captured function
(Inherited from OneVariableFunction)
Protected fieldintegrator_Integrator
(Inherited from OneVariableFunction)
Protected fieldxi_ Tabulated independent function values.
(Inherited from TabulatedFunction)
Protected fieldyDoublePrime_
(Inherited from CubicSpline)
Protected fieldyi_ Tabulated dependent function values.
(Inherited from TabulatedFunction)
Top
Remarks
The natural cubic spline is a cubic spline where the second derivative of the interpolating function is required to be zero at the left and right endpoints.
Evaluating x-values outside the range of tabulated values returns the last know y-value.
See Also