public class PolynomialFunctionNewtonForm extends Object implements UnivariateDifferentiableFunction
The formula of polynomial in Newton form is p(x) = a[0] + a[1](x-c[0]) + a[2](x-c[0])(x-c[1]) + ... + a[n](x-c[0])(x-c[1])...(x-c[n-1]) Note that the length of a[] is one more than the length of c[]
| Constructor and Description | 
|---|
| PolynomialFunctionNewtonForm(double[] a,
                            double[] c)Construct a Newton polynomial with the given a[] and c[]. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | computeCoefficients()Calculate the normal polynomial coefficients given the Newton form. | 
| int | degree()Returns the degree of the polynomial. | 
| static double | evaluate(double[] a,
        double[] c,
        double z)Evaluate the Newton polynomial using nested multiplication. | 
| double[] | getCenters()Returns a copy of the centers array. | 
| double[] | getCoefficients()Returns a copy of the coefficients array. | 
| double[] | getNewtonCoefficients()Returns a copy of coefficients in Newton form formula. | 
| DerivativeStructure | value(DerivativeStructure t)Simple mathematical function. | 
| double | value(double z)Calculate the function value at the given point. | 
| protected static void | verifyInputArray(double[] a,
                double[] c)Verifies that the input arrays are valid. | 
public PolynomialFunctionNewtonForm(double[] a,
                            double[] c)
                             throws NullArgumentException,
                                    NoDataException,
                                    DimensionMismatchException
The constructor makes copy of the input arrays and assigns them.
a - Coefficients in Newton form formula.c - Centers.NullArgumentException - if any argument is null.NoDataException - if any array has zero length.DimensionMismatchException - if the size difference between
 a and c is not equal to 1.public double value(double z)
value in interface UnivariateFunctionz - Point at which the function value is to be computed.public DerivativeStructure value(DerivativeStructure t)
UnivariateDifferentiableFunction classes compute both the
 value and the first derivative of the function.
value in interface UnivariateDifferentiableFunctiont - function input valuepublic int degree()
public double[] getNewtonCoefficients()
Changes made to the returned copy will not affect the polynomial.
public double[] getCenters()
Changes made to the returned copy will not affect the polynomial.
public double[] getCoefficients()
Changes made to the returned copy will not affect the polynomial.
public static double evaluate(double[] a,
              double[] c,
              double z)
                       throws NullArgumentException,
                              DimensionMismatchException,
                              NoDataException
a - Coefficients in Newton form formula.c - Centers.z - Point at which the function value is to be computed.NullArgumentException - if any argument is null.NoDataException - if any array has zero length.DimensionMismatchException - if the size difference between
 a and c is not equal to 1.protected void computeCoefficients()
protected static void verifyInputArray(double[] a,
                    double[] c)
                                throws NullArgumentException,
                                       NoDataException,
                                       DimensionMismatchException
The centers must be distinct for interpolation purposes, but not for general use. Thus it is not verified here.
a - the coefficients in Newton form formulac - the centersNullArgumentException - if any argument is null.NoDataException - if any array has zero length.DimensionMismatchException - if the size difference between
 a and c is not equal to 1.DividedDifferenceInterpolator.computeDividedDifference(double[],
 double[])Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.