类 PolynomialFunction

java.lang.Object
org.hipparchus.analysis.polynomials.PolynomialFunction
所有已实现的接口:
Serializable, UnivariateDifferentiableFunction, FieldUnivariateFunction, UnivariateFunction
直接已知子类:
SmoothStepFactory.SmoothStepFunction

public class PolynomialFunction extends Object implements UnivariateDifferentiableFunction, FieldUnivariateFunction, Serializable
不可变的实数系数多项式函数表示。

霍纳法则 用于计算函数值。

另请参阅:
  • 构造器详细资料

    • PolynomialFunction

      public PolynomialFunction(double[] c) throws MathIllegalArgumentException, NullArgumentException
      使用给定系数构造多项式。系数数组的第一个元素是常数项。高次系数依次跟随。结果多项式的次数是数组中最后一个非空元素的索引,如果所有元素都为空,则为0。

      构造函数复制输入数组并将副本分配给系数属性。

      参数:
      c - 多项式系数。
      抛出:
      NullArgumentException - 如果 cnull
      MathIllegalArgumentException - 如果 c 为空。
  • 方法详细资料

    • value

      public double value(double x)
      计算给定参数的函数值。

      返回的值为

      coefficients[n] * x^n + ... + coefficients[1] * x + coefficients[0]

      指定者:
      value 在接口中 UnivariateFunction
      参数:
      x - 应计算函数值的参数。
      返回:
      给定点处多项式的值。
      另请参阅:
    • degree

      public int degree()
      返回多项式的次数。
      返回:
      多项式的次数。
    • getCoefficients

      public double[] getCoefficients()
      返回系数数组的副本。

      对返回的副本进行的更改不会影响多项式的系数。

      返回:
      系数数组的新副本。
    • evaluate

      protected static double evaluate(double[] coefficients, double argument) throws MathIllegalArgumentException, NullArgumentException
      使用给定系数的霍纳法则在参数处评估多项式。
      参数:
      coefficients - 要评估的多项式的系数。
      argument - 输入值。
      返回:
      多项式的值。
      抛出:
      MathIllegalArgumentException - 如果 coefficients 为空。
      NullArgumentException - 如果 coefficientsnull
    • value

      public <T extends Derivative<T>> T value(T t) throws MathIllegalArgumentException, NullArgumentException
      计算函数的值。
      指定者:
      value 在接口中 UnivariateDifferentiableFunction
      类型参数:
      T - 字段元素的类型
      参数:
      t - 应计算函数值的点
      返回:
      抛出:
      MathIllegalArgumentException - 如果 coefficients 为空。
      NullArgumentException - 如果 coefficientsnull
    • value

      public <T extends CalculusFieldElement<T>> T value(T t) throws MathIllegalArgumentException, NullArgumentException
      计算函数的值。
      指定者:
      value 在接口中 FieldUnivariateFunction
      类型参数:
      T - 字段元素的类型
      参数:
      t - 应计算函数值的点
      返回:
      函数的值。
      抛出:
      MathIllegalArgumentException - 如果 coefficients 为空。
      NullArgumentException - 如果 coefficientsnull
      从以下版本开始:
      1.3
    • add

      将多项式添加到实例。
      参数:
      p - 要添加的多项式。
      返回:
      一个新的多项式,为实例和 p 的和。
    • subtract

      public PolynomialFunction subtract(PolynomialFunction p)
      从实例减去多项式。
      参数:
      p - 要减去的多项式。
      返回:
      一个新的多项式,为实例减去 p
    • negate

      public PolynomialFunction negate()
      取实例的负。
      返回:
      所有系数取反的新多项式
    • multiply

      public PolynomialFunction multiply(PolynomialFunction p)
      将实例乘以多项式。
      参数:
      p - 要乘以的多项式。
      返回:
      一个新的多项式,等于此乘以 p
    • differentiate

      protected static double[] differentiate(double[] coefficients) throws MathIllegalArgumentException, NullArgumentException
      返回具有给定系数的多项式的导数系数。
      参数:
      coefficients - 要求导数的多项式的系数。
      返回:
      导数的系数或如果系数长度为1则为 null
      抛出:
      MathIllegalArgumentException - 如果 coefficients 为空。
      NullArgumentException - 如果 coefficientsnull
    • antiDerivative

      public PolynomialFunction antiDerivative()
      返回此多项式的反导数,其中常数项为0。
      返回:
      一个多项式,其导数具有与此多项式相同的系数
    • integrate

      public double integrate(double lower, double upper)
      返回给定区间上此多项式的定积分。

      [lower, upper] 必须描述一个有限区间(两者都不能是无穷大,lower 必须小于或等于 upper)。

      参数:
      lower - 积分的下界
      upper - 积分的上界
      返回:
      给定区间上此多项式的积分
      抛出:
      MathIllegalArgumentException - 如果边界未描述一个有限区间
    • polynomialDerivative

      public PolynomialFunction polynomialDerivative()
      作为 PolynomialFunction 返回导数。
      返回:
      导数多项式。
    • toString

      public String toString()
      返回多项式的字符串表示形式。

      表示面向用户。项按最低次数优先显示。不显示乘法符号,系数等于一和空项(除非多项式为0,在这种情况下显示0常数项)。具有负系数的项的加法被替换为具有正系数的项的减法,除了第一个显示的项(即,对于常数负多项式,我们显示-3,但如果负系数不是第一个显示的,则显示1 - 3 x + x^2)。

      覆盖:
      toString 在类中 Object
      返回:
      多项式的字符串表示形式。
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 Object
    • equals

      public boolean equals(Object obj)
      覆盖:
      equals 在类中 Object