ChebyshevBasis<T> Class

Represents a FunctionBasis made up of Chebyshev polynomials over a specified interval up to a specified degree.

Definition

Namespace: Numerics.NET.Curves.Generic
Assembly: Numerics.NET.Generic (in Numerics.NET.Generic.dll) Version: 9.0.1
C#
[SerializableAttribute]
public sealed class ChebyshevBasis<T> : FunctionBasis<T>
where T : Object, INumberBase<T>
Inheritance
Object  →  FunctionBasis<T>  →  ChebyshevBasis<T>

Type Parameters

T

Remarks

Use a ChebyshevBasis object to represent a basis for the polynomials in terms of Chebyshev polynomials over a specified interval. A number of mathematical properties of Chebyshev polynomials - in particular their mutual orthogonality over the interval [-T.One, T.One] - make this basis particularly useful for numerical applications.

Chebyshev polynomials have these special properties only over the interval [-T.One,T.One]. However, rescaling is applied transparently to allow a ChebyshevBasis to be defined over any finite interval.

Only in rare cases will it be necessary to construct a ChebyshevBasis, as most functionality is available through the ChebyshevSeries class. The most useful members are the FillValues(T, DenseVector<T>) and FillDerivatives(T, DenseVector<T>) methods, which allow for efficient calculation of multiple values or derivatives of the polynomials.

Note: The first function (the constant term) is equal to 0.5 instead of the value of T.One of the Chebyshev polynomial of degree 0. The reason is that Chebyshev series are commonly expressed with the constant term multiplied by 0.5. The ChebyshevSeries class follows this convention.

Constructors

ChebyshevBasis<T>(Int32) Constructs a new ChebyshevBasis of Chebyshev polynomials up to a specified degree over the interval [-T.One, T.One].
ChebyshevBasis<T>(T, T, Int32) Constructs a new ChebyshevBasis over a specified interval from an array of function of one variable delegates.

Properties

Item Gets an element of the collection as a function of one variable.
(Overrides FunctionBasis<T>.Item[Int32])
Length Gets the number of items in this FunctionBasis.
(Inherited from FunctionBasis<T>)
LowerBound Gets or sets the lower bound of the interval over which this ChebyshevBasis is defined.
UpperBound Gets or sets the upper bound of the interval over which this ChebyshevBasis is defined.

Methods

DerivativesAt Evaluates the derivatives of the member functions of this FunctionBasis at a specified value.
(Inherited from FunctionBasis<T>)
EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
FillDerivatives(T, DenseVector<T>) Fills a vector with the derivatives of the member functions at a specified value.
(Overrides FunctionBasis<T>.FillDerivatives(T, DenseVector<T>))
FillDerivatives(Vector<T>, DenseMatrix<T>) Fills the rows of a DenseMatrix<T> with the values of the member functions of a FunctionBasis evaluated for each element in a Vector.
(Inherited from FunctionBasis<T>)
FillValues(T, DenseVector<T>) Fills a dense vector with the values of the member functions at a specified value.
(Overrides FunctionBasis<T>.FillValues(T, DenseVector<T>))
FillValues(Vector<T>, DenseMatrix<T>) Fills the rows of a DenseMatrix<T> with the values of the member functions of a FunctionBasis evaluated for each element in a Vector.
(Inherited from FunctionBasis<T>)
GetFunction Constructs a new ChebyshevSeries with the specified coefficients.
(Overrides FunctionBasis<T>.GetFunction(Vector<T>))
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetTypeGets the Type of the current instance.
(Inherited from Object)
LeastSquaresFit(Vector<T>, Vector<T>) Gets the least squares fit of target data in terms of the components of the FunctionBasis.
(Inherited from FunctionBasis<T>)
LeastSquaresFit(T[], T[], T[]) Gets the least squares fit of target data in terms of the components of the FunctionBasis.
(Inherited from FunctionBasis<T>)
LeastSquaresFit(T[], T[], Int32) Gets the least squares fit of target data in terms of the components of the FunctionBasis.
(Inherited from FunctionBasis<T>)
LeastSquaresFit(Vector<T>, Vector<T>, Vector<T>) Gets the least squares fit of target data in terms of the components of the FunctionBasis.
(Inherited from FunctionBasis<T>)
ToStringReturns a string that represents the current object.
(Inherited from Object)
ValuesAt Evaluates the member functions of this FunctionBasis at a specified value.
(Inherited from FunctionBasis<T>)

See Also