类 FieldPolynomialFunction<T extends CalculusFieldElement<T>>

java.lang.Object
org.hipparchus.analysis.polynomials.FieldPolynomialFunction<T>
类型参数:
T - 字段元素的类型
所有已实现的接口:
CalculusFieldUnivariateFunction<T>
直接已知子类:
SmoothStepFactory.FieldSmoothStepFunction

public class FieldPolynomialFunction<T extends CalculusFieldElement<T>> extends Object implements CalculusFieldUnivariateFunction<T>
不可变的实数系数多项式函数表示。

使用霍纳法则来评估函数。

从以下版本开始:
1.5
  • 构造器详细资料

    • FieldPolynomialFunction

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

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

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

    • value

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

      返回的值为

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

      参数:
      x - 应计算函数值的参数。
      返回:
      给定点处多项式的值。
      另请参阅:
    • value

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

      返回的值为

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

      指定者:
      value 在接口中 CalculusFieldUnivariateFunction<T extends CalculusFieldElement<T>>
      参数:
      x - 应计算函数值的参数。
      返回:
      给定点处多项式的值。
      另请参阅:
    • getField

      public Field<T> getField()
      获取实例所属的Field
      返回:
      实例所属的Field
    • degree

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

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

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

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

      protected static <T extends CalculusFieldElement<T>> T evaluate(T[] coefficients, T argument) throws MathIllegalArgumentException, NullArgumentException
      使用给定系数的霍纳法则来评估参数处的多项式。
      类型参数:
      T - 字段元素的类型
      参数:
      coefficients - 要评估的多项式的系数。
      argument - 输入值。
      返回:
      多项式的值。
      抛出:
      MathIllegalArgumentException - 如果coefficients为空。
      NullArgumentException - 如果coefficientsnull
    • add

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

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

      public FieldPolynomialFunction<T> negate()
      反转实例。
      返回:
      所有系数取反的新多项式
    • multiply

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

      protected static <T extends CalculusFieldElement<T>> T[] differentiate(T[] coefficients) throws MathIllegalArgumentException, NullArgumentException
      返回具有给定系数的多项式的导数系数。
      类型参数:
      T - 字段元素的类型
      参数:
      coefficients - 要求导数的多项式的系数。
      返回:
      导数的系数或null,如果系数长度为1。
      抛出:
      MathIllegalArgumentException - 如果coefficients为空。
      NullArgumentException - 如果coefficientsnull
    • antiDerivative

      public FieldPolynomialFunction<T> antiDerivative()
      返回此多项式的反导数,常数项为0。
      返回:
      其导数具有与此多项式相同系数的多项式
    • integrate

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

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

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

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

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

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

      public FieldPolynomialFunction<T> polynomialDerivative()
      返回一个FieldPolynomialFunction作为导数。
      返回:
      导数多项式。