Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Partners
    • Contact us
Introduction
Deployment Guide
Nuget packages
Configuration
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Nuget packages
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.DataAnalysis.Models
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Providers
    • Extreme.Providers.InteropServices
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics.Curves
    • BarycentricBasis Class
    • BarycentricSeries Class
    • ChebyshevBasis Class
    • ChebyshevSeries Class
    • CubicSpline Class
    • CubicSplineKind Enumeration
    • Curve Class
    • CurveFitter Class
    • FunctionBasis Class
    • GeneralCurve Class
    • GeneralFunctionBasis Class
    • LinearCombination Class
    • LinearCurveFitter Class
    • LinearLeastSquaresMethod Enumeration
    • NonlinearCurve Class
    • NonlinearCurveFitter Class
    • NonlinearCurveFitter(T) Class
    • NonlinearCurveFittingMethod Enumeration
    • PiecewiseConstantCurve Class
    • PiecewiseCurve Class
    • PiecewiseLinearCurve Class
    • Point Structure
    • Polynomial Class
    • PolynomialBase Class
    • PolynomialBasis Class
    • WeightFunctions Class
  • PolynomialBase Class
    • PolynomialBase Constructors
    • Properties
    • Methods

PolynomialBase Class

Extreme Optimization Numerical Libraries for .NET Professional
Serves as an abstract base class for Curve derived classes that represent polynomials.
Inheritance Hierarchy

SystemObject
  Extreme.Mathematics.CurvesCurve
    Extreme.Mathematics.CurvesLinearCombination
      Extreme.Mathematics.CurvesPolynomialBase
        Extreme.Mathematics.CurvesChebyshevSeries
        Extreme.Mathematics.CurvesPolynomial

Namespace:  Extreme.Mathematics.Curves
Assembly:  Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.1
Syntax

C#
VB
C++
F#
Copy
[SerializableAttribute]
public abstract class PolynomialBase : LinearCombination
<SerializableAttribute>
Public MustInherit Class PolynomialBase
	Inherits LinearCombination
[SerializableAttribute]
public ref class PolynomialBase abstract : public LinearCombination
[<AbstractClassAttribute>]
[<SerializableAttribute>]
type PolynomialBase =  
    class
        inherit LinearCombination
    end

The PolynomialBase type exposes the following members.

Constructors

  NameDescription
Protected methodPolynomialBase(Double)
Constructs a new curve with a specified set of parameters.
Protected methodPolynomialBase(Int32)
Constructs a new curve with the specified number of parameters.
Top
Properties

  NameDescription
Public propertyBasis
Gets the FunctionBasis associated with the linear combination.
(Inherited from LinearCombination.)
Public propertyCoefficient
Gets or sets the coefficient of the function with the specified index.
(Inherited from LinearCombination.)
Public propertyDegree
Gets the degree of the polynomial.
Public propertyParameters
Gets the collection of parameters that determine the shape of this Curve.
(Inherited from Curve.)
Top
Methods

  NameDescription
Public methodAdd(LinearCombination)
Adds another LinearCombination to this instance.
(Inherited from LinearCombination.)
Public methodAdd(Double, LinearCombination)
Adds a multiple of another LinearCombination to this instance.
(Inherited from LinearCombination.)
Public methodClone
Constructs an exact copy of this instance.
(Inherited from Curve.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFindRoots
Gets the set of X-coordinates where the curve crosses the X-axis.
(Inherited from Curve.)
Public methodGetCurveFitter
Returns a CurveFitter object that can be used to fit the curve to data.
(Inherited from LinearCombination.)
Public methodGetDerivative
Returns a Curve that represents the derivative of this Curve.
(Inherited from Curve.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIntegral
Gets the definite integral of the curve between the specified X-coordinates.
(Inherited from Curve.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnParameterChanged
Called when a coefficient of the polynomial is changed.
(Overrides CurveOnParameterChanged(Int32, Double).)
Protected methodOnParameterChanging
Called before the value of a curve parameter is changed.
(Inherited from Curve.)
Protected methodReduce
Reduces the degree of a polynomial so that the leading coefficient is different from zero.
Protected methodReduce(Double)
Reduces the degree of a polynomial so that the leading coefficient is greater than the specified tolerance.
Public methodSetParameter
Sets a curve parameter to the specified value.
(Inherited from Curve.)
Public methodSlopeAt
Gets the slope of the curve at the specified X-coordinate.
(Inherited from LinearCombination.)
Public methodSolve
Finds the x value where the curve reaches the specified y value.
(Inherited from Curve.)
Public methodSubtract(LinearCombination)
Subtracts another LinearCombination from this instance.
(Inherited from LinearCombination.)
Public methodTangentAt
Gets the tangent line to the curve at the specified X-coordinate.
(Inherited from Curve.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodValueAt
Gets the Y-value of the curve at the specified X-coordinate.
(Inherited from LinearCombination.)
Top
Remarks

This base class is provided to make it easier for implementers to create classes that implement linear combinations of specific types of univariate polynomials.

This is an abstract base class and cannot be instantiated directly. Instead, create an instance of one of the defined derived classes, or create a class that inherits from PolynomialBase.

The following derived classes have been defined:

ClassDescription
PolynomialOrdinary polynomials.
ChebyshevSeriesLinear combination of Chebyshev polynomials.

Note to inheritors: When you inherit from PolynomialBase, you should create a corresponding class that inherits from FunctionBasis. In addition, you must override the following members: ValueAt(Double), SlopeAt(Double), Integral(Double, Double). You may also want to override FindRoots and GetDerivative.

See Also

Reference

Extreme.Mathematics.Curves Namespace

Copyright (c) 2004-2021 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2021, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.