Assembly: Extreme.Numerics (Extreme.Numerics)
Syntax
| Visual Basic (Declaration) |
|---|
Public MustInherit Class Curve _ Implements ICloneable |
| C# |
|---|
public abstract class Curve : ICloneable |
| C++ |
|---|
public ref class Curve abstract : ICloneable |
Methods
| Icon | Type | Description |
|---|---|---|
| Clone() |
Constructs an exact copy of this instance.
| |
| Equals(Object) | ||
| Finalize() | ||
| FindRoots() |
Gets the set of X-coordinates where the curve crosses
the X-axis.
| |
| GetCurveFitter() |
Returns a CurveFitter object that can be used to fit the curve to data.
| |
| GetDerivative() |
Returns a Curve that represents the derivative
of this Curve.
| |
| GetHashCode() | Serves as a hash function for a particular type. | |
| GetType() | Gets the Type of the current instance. | |
| Integral(Double, Double) |
Gets the definite integral of the curve between the
specified X-coordinates.
| |
| MemberwiseClone() | Creates a shallow copy of the current Object. | |
| OnParameterChanged(Int32, Double) |
Called after a Curve parameter has been changed.
| |
| OnParameterChanging(Int32, Double) |
Called before the value of a curve parameter is changed.
| |
| SlopeAt(Double) |
Gets the slope of the curve at the specified
X-coordinate.
| |
| TangentAt(Double) |
Gets the tangent Line to the curve at the
specified X-coordinate.
| |
| ToString() | ||
| ValueAt(Double) |
Gets the Y-value of the curve at the specified
X-coordinate.
|
Constructors
| Icon | Type | Description |
|---|---|---|
| CurveNew(Int32) |
Constructs a new curve with the specified number of
parameters.
|
Properties
| Icon | Type | Description |
|---|---|---|
| Parameters |
Gets the collection of parameters that determine the shape of this
Curve.
|
Remarks
The name 'Curve' was chosen as an alternative to 'Function', which is a reserved word in many languages.
The ValueAt(Double) method evaluates the curve at a specific point. SlopeAt(Double) evaluates the derivative, and Integral(Double, Double) evaluates the definite integral over a specified interval. If overridden by a descendant class, the GetDerivative() method returns the Curve that is the derivative of the instance. The FindRoots() method attempts to find all the roots or zeros of the curve.
A particular type of curve is defined by a set of parameters. These parameters can be set and retrieved through the Parameters property which is of type ParameterCollection. The number of such parameters is given by the Count property of the Parameters property.
Curve is an abstract base class and cannot be instantiated directly. The following derived classes have been defined:
| Class | Description |
|---|---|
| GeneralCurve | A curve whose value and optionally its derivative is calculated using a RealFunction delegate. |
| Constant | A curve with a constant Y-value. |
| Line | A straight line. |
| Quadratic | A quadratic curve, or a polynomial of degree 2. |
| LinearCombination | A linear combination of an arbitrary set of curves. |
| PolynomialBase | Abstract base class for classes that implement different types of polynomials. Derives from LinearCombination. |
| Polynomial | A polynomial. Derives from PolynomialBase. |
| ChebyshevSeries | A linear combination of Chebyshev polynomials. Derives from PolynomialBase. |
| CubicSpline | A natural or clamped cubic spline. Derives from PiecewiseCurve. |
| NonlinearCurve | A curve that is non-linear in its parameters and is suitable for non-linear curve fitting. |
Notes to inheritors: When you derive from Curve, you must override the following member: ValueAt(Double). You should also override the following members: SlopeAt(Double), Integral(Double, Double), FindRoots(), and GetDerivative().