scipy.interpolate.Rbf

class scipy.interpolate.Rbf(*args, **kwargs)[源代码]

从N维散乱数据到M-D域函数的径向基函数插值类。

注解

Rbf 是遗留代码,新用法请使用 RBFInterpolator 取而代之的是。

参数
*args阵列

x,y,z,.,d,其中x,y,z,.是节点的坐标,d是节点处的值数组

function字符串或可调用,可选

径向基函数,基于范数给定的半径r(默认值为欧几里得距离);默认值为‘multiquric’:

'multiquadric': sqrt((r/self.epsilon)**2 + 1)
'inverse': 1.0/sqrt((r/self.epsilon)**2 + 1)
'gaussian': exp(-(r/self.epsilon)**2)
'linear': r
'cubic': r**3
'quintic': r**5
'thin_plate': r**2 * log(r)

如果可调用,则它必须接受2个参数(self,r)。epsilon参数将作为self.epsilon提供。传入的其他关键字参数也将可用。

epsilon浮动,可选

高斯或多二次曲面函数的可调整常数-默认为近似节点之间的平均距离(这是一个很好的开始)。

smooth浮动,可选

大于零的值会增加近似的平滑度。0表示插值(默认),在这种情况下,函数将始终通过节点。

norm字符串,可调用,可选

返回两点之间的“距离”的函数,输入为位置数组(x,y,z,.),输出为距离数组。例如,缺省值:‘欧几里得’,这样结果就是从中的每个点到的距离的矩阵 x1 到…的每一点 x2 。有关更多选项,请参阅的文档 scipy.spatial.distances.cdist

mode字符串,可选

插值模式,可以是‘1-D’(默认值)或‘N-D’。当它是“1-D”时,数据 d 将被视为一维,并在内部展平。当它是‘N-D’时,数据 d 假设是形状数组(n_sample,m),其中m是目标域的维度。

示例

>>> from scipy.interpolate import Rbf
>>> rng = np.random.default_rng()
>>> x, y, z, d = rng.random((4, 50))
>>> rbfi = Rbf(x, y, z, d)  # radial basis function interpolator instance
>>> xi = yi = zi = np.linspace(0, 1, 20)
>>> di = rbfi(xi, yi, zi)   # interpolated values
>>> di.shape
(20,)
属性
N集成

数据点的数量(由输入数组确定)。

dindarray

每个数据坐标处的数据值的一维阵列 xi

xindarray

数据坐标的二维数组。

function字符串或可调用

径向基函数。请参见参数下的说明。

epsilon浮动

高斯或多二次曲面函数使用的参数。请参见参数。

smooth浮动

平滑参数。请参见参数下的说明。

norm字符串或可调用

距离函数。请参见参数下的说明。

mode应力

插值的模式。请参见参数下的说明。

nodesndarray

用于插值的节点值的一维数组。

A内部属性,请不要使用

方法:

__call__ \(*参数)

将Self作为函数调用。