cupyx.scipy.interpolate.KroghInterpolator#
- class cupyx.scipy.interpolate.KroghInterpolator(xi, yi, axis=0)[源代码]#
给定点的插值多项式。
该多项式通过所有 (xi, yi) 对。可以额外指定每个点 xi 的若干阶导数;这通过重复值 xi 并将导数指定为连续的 yi 值来实现。允许计算多项式及其所有导数的值。出于数值稳定性的考虑,此函数不计算多项式的系数,尽管可以通过评估所有导数来获取它们。
- 参数:
xi (cupy.ndarray, 长度 N) – x 坐标,必须按升序排序
yi (cupy.ndarray) – y 坐标,当一个 xi 连续出现两次或更多次时,对应的 yi 表示导数值
axis (int, 可选) – yi 数组中对应于 x 坐标值的轴。
方法
- __call__(x)[源代码]#
计算插值函数的值
- 参数:
x (cupy.ndarray) – 要计算插值函数值的点
- 返回值:
y – 插值结果。形状由原始数组中的插值轴替换为 x 的形状确定
- 返回类型:
注意
输入值 x 必须可以转换为 float 值,例如 int 或 float。
- derivative(x, der=1)[源代码]#
在点 x 计算多项式的一阶导数
- 参数:
x (cupy.ndarray) – 要计算导数的点或点集
der (integer, 可选) – 要提取的导数阶数。这个数字包含函数值作为 0 阶导数
- 返回值:
d – 在 x 点处插值的导数。d 的形状由原始数组中的插值轴替换为 x 的形状确定
- 返回类型:
注意
这是通过计算所有直到所需阶数的导数(使用 self.derivatives())然后丢弃其余部分来实现的。
- derivatives(x, der=None)[源代码]#
在点 x 计算多项式的多阶导数。
该函数在点 x 处产生一个包含所有导数值的数组。
- 参数:
x (cupy.ndarray) – 要计算导数的点或点集
der (int 或 None, 可选) – 要提取的导数阶数;None 表示所有可能非零的导数(即等于点数的阶数)。这个数字包含函数值作为 0 阶导数
- 返回值:
d – 包含导数的数组;d[j] 包含 j 阶导数。d[j] 的形状由原始数组中的插值轴替换为 x 的形状确定
- 返回类型:
- __eq__(value, /)#
返回 self==value。
- __ne__(value, /)#
返回 self!=value。
- __lt__(value, /)#
返回 self<value。
- __le__(value, /)#
返回 self<=value。
- __gt__(value, /)#
返回 self>value。
- __ge__(value, /)#
返回 self>=value。