类 FieldPolynomialSplineFunction<T extends CalculusFieldElement<T>>
java.lang.Object
org.hipparchus.analysis.polynomials.FieldPolynomialSplineFunction<T>
- 类型参数:
-
T
- 字段元素的类型
- 所有已实现的接口:
-
CalculusFieldUnivariateFunction<T>
public class FieldPolynomialSplineFunction<T extends CalculusFieldElement<T>> extends Object implements CalculusFieldUnivariateFunction<T>
表示多项式样条函数。
一个多项式样条函数由一组插值多项式和一个升序的域结点数组组成,确定了样条函数由组成多项式定义的区间。假定这些多项式已经计算出以匹配另一个函数在结点处的值。值的一致性约束目前不由PolynomialSplineFunction
本身强制执行,但假定这些约束在传递给构造函数的多项式和结点之间成立。
注意:polynomials
属性中的多项式必须以结点为中心来计算样条函数的值。请参见下文。
多项式样条函数的定义域为[最小结点,最大结点]
。尝试在此范围之外的值处评估函数会生成IllegalArgumentExceptions。
对于参数x
的多项式样条函数的值计算如下:
- 搜索结点数组以找到
x
所属的段。如果x
小于最小结点或大于最大结点,则抛出IllegalArgumentException
。 - 设
j
为小于或等于x
的最大结点的索引。返回的值为polynomials[j](x - knot[j])
- 从以下版本开始:
- 1.5
-
构造器概要
构造器说明FieldPolynomialSplineFunction
(T[] knots, FieldPolynomialFunction<T>[] polynomials) 使用给定的段分隔符和插值多项式构造多项式样条函数。 -
方法概要
-
构造器详细资料
-
FieldPolynomialSplineFunction
public FieldPolynomialSplineFunction(T[] knots, FieldPolynomialFunction<T>[] polynomials) throws MathIllegalArgumentException, NullArgumentException 使用给定的段分隔符和插值多项式构造多项式样条函数。构造函数会复制两个数组,并将副本分配给结点和多项式属性。- 参数:
-
knots
- 样条段间隔分隔符。 -
polynomials
- 组成样条的多项式函数。 - 抛出:
-
NullArgumentException
- 如果输入数组中有一个为null
。 -
MathIllegalArgumentException
- 如果结点长度小于2。 -
MathIllegalArgumentException
- 如果polynomials.length != knots.length - 1
。 -
MathIllegalArgumentException
- 如果knots
数组不是严格递增的。
-
-
方法详细资料
-
getField
获取实例所属的Field
。- 返回:
-
实例所属的
Field
-
value
计算函数的值。有关计算函数值算法的详细信息,请参见FieldPolynomialSplineFunction
。- 参数:
-
v
- 应计算函数值的点。 - 返回:
- 值。
- 抛出:
-
MathIllegalArgumentException
- 如果v
在样条函数的定义域之外(小于最小结点或大于最大结点)。
-
value
计算函数的值。有关计算函数值算法的详细信息,请参见FieldPolynomialSplineFunction
。- 指定者:
-
value
在接口中CalculusFieldUnivariateFunction<T extends CalculusFieldElement<T>>
- 参数:
-
v
- 应计算函数值的点。 - 返回:
- 值。
- 抛出:
-
MathIllegalArgumentException
- 如果v
在样条函数的定义域之外(小于最小结点或大于最大结点)。
-
getN
public int getN()获取样条段的数量。也是多项式数量和结点数量减1。- 返回:
- 样条段的数量。
-
getPolynomials
获取插值多项式数组的副本。它返回数组的新副本。对副本的更改不会影响多项式属性。- 返回:
- 插值多项式。
-
getKnots
获取结点的数组副本。它返回数组的新副本。对副本的更改不会影响结点属性。- 返回:
- 结点。
-
isValidPoint
指示点是否在插值范围内。- 参数:
-
x
- 点。 - 返回:
-
如果
x
是有效点,则为true
。
-
polynomialSplineDerivative
获取多项式样条函数的导数。- 返回:
- 导数函数。
-