org.apache.commons.math3.analysis.polynomials

## Class PolynomialsUtils

- java.lang.Object
- - org.apache.commons.math3.analysis.polynomials.PolynomialsUtils

-     public class PolynomialsUtils
      extends Object

  A collection of static methods that operate on or return polynomials.
  Since:
    2.0
  Version:
    $Id: PolynomialsUtils.java 1244107 2012-02-14 16:17:55Z erans $

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static PolynomialFunction` | `createChebyshevPolynomial(int degree)` Create a Chebyshev polynomial of the first kind.
    `static PolynomialFunction` | `createHermitePolynomial(int degree)` Create a Hermite polynomial.
    `static PolynomialFunction` | `createJacobiPolynomial(int degree, int v, int w)` Create a Jacobi polynomial.
    `static PolynomialFunction` | `createLaguerrePolynomial(int degree)` Create a Laguerre polynomial.
    `static PolynomialFunction` | `createLegendrePolynomial(int degree)` Create a Legendre polynomial.
    `static double[]` | `shift(double[] coefficients, double shift)` Compute the coefficients of the polynomial `Ps(x)` whose values at point `x` will be the same as the those from the original polynomial `P(x)` when computed at `x + shift`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### createChebyshevPolynomial

          public static PolynomialFunction createChebyshevPolynomial(int degree)

      Create a Chebyshev polynomial of the first kind.

      Chebyshev polynomials of the first kind are orthogonal polynomials. They can be defined by the following recurrence relations:

            T0(X)   = 1
            T1(X)   = X
            Tk+1(X) = 2X Tk(X) - Tk-1(X)

      Parameters:
        `degree` - degree of the polynomial
      Returns:
        Chebyshev polynomial of specified degree

    - #### createHermitePolynomial

          public static PolynomialFunction createHermitePolynomial(int degree)

      Create a Hermite polynomial.

      Hermite polynomials are orthogonal polynomials. They can be defined by the following recurrence relations:

            H0(X)   = 1
            H1(X)   = 2X
            Hk+1(X) = 2X Hk(X) - 2k Hk-1(X)

      Parameters:
        `degree` - degree of the polynomial
      Returns:
        Hermite polynomial of specified degree

    - #### createLaguerrePolynomial

          public static PolynomialFunction createLaguerrePolynomial(int degree)

      Create a Laguerre polynomial.

      Laguerre polynomials are orthogonal polynomials. They can be defined by the following recurrence relations:

                  L0(X)   = 1
                  L1(X)   = 1 - X
            (k+1) Lk+1(X) = (2k + 1 - X) Lk(X) - k Lk-1(X)

      Parameters:
        `degree` - degree of the polynomial
      Returns:
        Laguerre polynomial of specified degree

    - #### createLegendrePolynomial

          public static PolynomialFunction createLegendrePolynomial(int degree)

      Create a Legendre polynomial.

      Legendre polynomials are orthogonal polynomials. They can be defined by the following recurrence relations:

                  P0(X)   = 1
                  P1(X)   = X
            (k+1) Pk+1(X) = (2k+1) X Pk(X) - k Pk-1(X)

      Parameters:
        `degree` - degree of the polynomial
      Returns:
        Legendre polynomial of specified degree

    - #### createJacobiPolynomial

          public static PolynomialFunction createJacobiPolynomial(int degree,
                                                  int v,
                                                  int w)

      Create a Jacobi polynomial.

      Jacobi polynomials are orthogonal polynomials. They can be defined by the following recurrence relations:

                  P0vw(X)   = 1
                  P-1vw(X)  = 0
            2k(k + v + w)(2k + v + w - 2) Pkvw(X) =
            (2k + v + w - 1)[(2k + v + w)(2k + v + w - 2) X + v2 - w2] Pk-1vw(X)
            - 2(k + v - 1)(k + w - 1)(2k + v + w) Pk-2vw(X)

      Parameters:
        `degree` - degree of the polynomial
        `v` - first exponent
        `w` - second exponent
      Returns:
        Jacobi polynomial of specified degree

    - #### shift

          public static double[] shift(double[] coefficients,
                       double shift)

      Compute the coefficients of the polynomial `Ps(x)` whose values at point `x` will be the same as the those from the original polynomial `P(x)` when computed at `x + shift`. Thus, if `P(x) = Σi ai xi`, then

              Ps(x)
              = Σi bi xi

              = Σi ai (x + shift)i

      Parameters:
        `coefficients` - Coefficients of the original polynomial.
        `shift` - Shift value.
      Returns:
        the coefficients `bi` of the shifted polynomial.

Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.