T - the type of the field elementspublic class FieldPolynomialFunction<T extends RealFieldElement<T>> extends Object implements RealFieldUnivariateFunction<T>
Horner's Method is used to evaluate the function.
| Constructor and Description | 
|---|
| FieldPolynomialFunction(T[] c)Construct a polynomial with the given coefficients. | 
| Modifier and Type | Method and Description | 
|---|---|
| FieldPolynomialFunction<T> | add(FieldPolynomialFunction<T> p)Add a polynomial to the instance. | 
| FieldPolynomialFunction<T> | antiDerivative()Returns an anti-derivative of this polynomial, with 0 constant term. | 
| int | degree()Returns the degree of the polynomial. | 
| protected static <T extends RealFieldElement<T>> | differentiate(T[] coefficients)Returns the coefficients of the derivative of the polynomial with the given coefficients. | 
| protected static <T extends RealFieldElement<T>> | evaluate(T[] coefficients,
        T argument)Uses Horner's Method to evaluate the polynomial with the given coefficients at
 the argument. | 
| T[] | getCoefficients()Returns a copy of the coefficients array. | 
| Field<T> | getField()Get the  Fieldto which the instance belongs. | 
| T | integrate(double lower,
         double upper)Returns the definite integral of this polymomial over the given interval. | 
| T | integrate(T lower,
         T upper)Returns the definite integral of this polymomial over the given interval. | 
| FieldPolynomialFunction<T> | multiply(FieldPolynomialFunction<T> p)Multiply the instance by a polynomial. | 
| FieldPolynomialFunction<T> | negate()Negate the instance. | 
| FieldPolynomialFunction<T> | polynomialDerivative()Returns the derivative as a  FieldPolynomialFunction. | 
| FieldPolynomialFunction<T> | subtract(FieldPolynomialFunction<T> p)Subtract a polynomial from the instance. | 
| T | value(double x)Compute the value of the function for the given argument. | 
| T | value(T x)Compute the value of the function for the given argument. | 
public FieldPolynomialFunction(T[] c) throws MathIllegalArgumentException, NullArgumentException
The constructor makes a copy of the input array and assigns the copy to the coefficients property.
c - Polynomial coefficients.NullArgumentException - if c is null.MathIllegalArgumentException - if c is empty.public T value(double x)
The value returned is
  coefficients[n] * x^n + ... + coefficients[1] * x  + coefficients[0]
 
x - Argument for which the function value should be computed.UnivariateFunction.value(double)public T value(T x)
The value returned is
  coefficients[n] * x^n + ... + coefficients[1] * x  + coefficients[0]
 
value in interface RealFieldUnivariateFunction<T extends RealFieldElement<T>>x - Argument for which the function value should be computed.UnivariateFunction.value(double)public Field<T> getField()
Field to which the instance belongs.Field to which the instance belongspublic int degree()
public T[] getCoefficients()
Changes made to the returned copy will not affect the coefficients of the polynomial.
protected static <T extends RealFieldElement<T>> T evaluate(T[] coefficients, T argument) throws MathIllegalArgumentException, NullArgumentException
T - the type of the field elementscoefficients - Coefficients of the polynomial to evaluate.argument - Input value.MathIllegalArgumentException - if coefficients is empty.NullArgumentException - if coefficients is null.public FieldPolynomialFunction<T> add(FieldPolynomialFunction<T> p)
p - Polynomial to add.p.public FieldPolynomialFunction<T> subtract(FieldPolynomialFunction<T> p)
p - Polynomial to subtract.p.public FieldPolynomialFunction<T> negate()
public FieldPolynomialFunction<T> multiply(FieldPolynomialFunction<T> p)
p - Polynomial to multiply by.pprotected static <T extends RealFieldElement<T>> T[] differentiate(T[] coefficients) throws MathIllegalArgumentException, NullArgumentException
T - the type of the field elementscoefficients - Coefficients of the polynomial to differentiate.null if coefficients has length 1.MathIllegalArgumentException - if coefficients is empty.NullArgumentException - if coefficients is null.public FieldPolynomialFunction<T> antiDerivative()
public T integrate(double lower, double upper)
[lower, upper] must describe a finite interval (neither can be infinite and lower must be less than or equal to upper).
lower - lower bound for the integrationupper - upper bound for the integrationMathIllegalArgumentException - if the bounds do not describe a finite intervalpublic T integrate(T lower, T upper)
[lower, upper] must describe a finite interval (neither can be infinite and lower must be less than or equal to upper).
lower - lower bound for the integrationupper - upper bound for the integrationMathIllegalArgumentException - if the bounds do not describe a finite intervalpublic FieldPolynomialFunction<T> polynomialDerivative()
FieldPolynomialFunction.Copyright © 2016–2020 Hipparchus.org. All rights reserved.