Rbf#
- класс scipy.interpolate.Rbf(*args, **kwargs)[источник]#
Класс для интерполяции функций с помощью радиальных базисных функций из разбросанных N-D данных в M-D область (устаревший).
Наследие
Этот класс считается устаревшим и больше не будет получать обновления. Хотя в настоящее время у нас нет планов по его удалению, мы рекомендуем использовать более современные альтернативы в новом коде.
Rbfявляется устаревшим кодом, для нового использования используйтеRBFInterpolatorвместо этого.- Параметры:
- *argsмассивы
x, y, z, …, d, где x, y, z, … — координаты узлов, а d — массив значений в узлах
- функцияstr или callable, опционально
Радиальная базисная функция, основанная на радиусе r, заданном нормой (по умолчанию евклидово расстояние); по умолчанию ‘multiquadric’:
'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. Другие ключевые аргументы, переданные внутрь, также будут доступны.
- эпсилонfloat, опционально
Регулируемая константа для гауссовых или мультиквадратичных функций - по умолчанию приблизительное среднее расстояние между узлами (что является хорошим началом).
- сглаживатьfloat, опционально
Значения больше нуля увеличивают гладкость аппроксимации. 0 используется для интерполяции (по умолчанию), в этом случае функция всегда проходит через узловые точки.
- normstr, callable, optional
Функция, возвращающая «расстояние» между двумя точками, с входными данными в виде массивов позиций (x, y, z, …) и выходным массивом расстояний. Например, по умолчанию: 'euclidean', так что результат представляет собой матрицу расстояний от каждой точки в
x1к каждой точке вx2. Для дополнительных опций см. документацию scipy.spatial.distances.cdist.- modestr, optional
Режим интерполяции, может быть '1-D' (по умолчанию) или 'N-D'. Когда он '1-D', данные d будет рассматриваться как 1-D и сглаживаться внутренне. Когда это 'N-D', данные d предполагается массивом формы (n_samples, m), где m — размерность целевой области.
- Атрибуты:
- Nint
Количество точек данных (определяемое входными массивами).
- dindarray
Одномерный массив значений данных в каждой из координат данных xi.
- xindarray
Двумерный массив координат данных.
- функцияstr или callable
Радиальная базисная функция. См. описание в разделе Parameters.
- эпсилонfloat
Параметр, используемый функциями гауссовой или мультиквадратичной. См. Параметры.
- сглаживатьfloat
Параметр сглаживания. См. описание в разделе Параметры.
- normstr или callable
Функция расстояния. См. описание в разделе Параметры.
- modestr
Режим интерполяции. См. описание в разделе Параметры.
- узлыndarray
Одномерный массив значений узлов для интерполяции.
- Aвнутреннее свойство, не используйте
Методы
__call__(*args)Вызвать self как функцию.
Смотрите также
Примеры
>>> import numpy as np >>> 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,)