scipy.interpolate.

CubicHermiteSpline#

класс scipy.interpolate.CubicHermiteSpline(x, y, dydx, ось=0, экстраполяция=None)[источник]#

Кусочно-кубический интерполятор для подгонки значений и первых производных (гладкость C1).

Результат представлен как PPoly экземпляр.

Параметры:
xarray_like, форма (n,)

1-D массив, содержащий значения независимой переменной. Значения должны быть вещественными, конечными и строго возрастающими.

yarray_like

Массив, содержащий значения зависимой переменной. Он может иметь произвольное количество измерений, но длина вдоль axis (см. ниже) должна соответствовать длине x. Значения должны быть конечными.

dydxarray_like

Массив, содержащий производные зависимой переменной. Он может иметь произвольное количество измерений, но длина вдоль axis (см. ниже) должна соответствовать длине x. Значения должны быть конечными.

осьint, необязательный

Ось, вдоль которой y предполагается изменяющимся. Это означает, что для x[i] соответствующие значения — np.take(y, i, axis=axis). По умолчанию 0.

экстраполяция{bool, 'periodic', None}, опционально

Если bool, определяет, следует ли экстраполировать точки за пределами диапазона на основе первого и последнего интервалов или возвращать NaN. Если 'periodic', используется периодическая экстраполяция. Если None (по умолчанию), устанавливается в True.

Атрибуты:
xndarray, форма (n,)

Точки останова. The same x который был передан конструктору.

cndarray, форма (4, n-1, …)

Коэффициенты полиномов на каждом сегменте. Задние размерности соответствуют размерам y, исключая axis. Например, если y является одномерным, тогда c[k, i] является коэффициентом для (x-x[i])**(3-k) на отрезке между x[i] и x[i+1].

осьint

Ось интерполяции. Та же ось, которая была передана в конструктор.

Методы

__call__(x[, nu, extrapolate])

Вычислить кусочно-полиномиальную функцию или её производную.

derivative([nu])

Создать новый кусочно-полиномиальный объект, представляющий производную.

antiderivative([nu])

Создать новый кусочно-полиномиальный объект, представляющий первообразную.

integrate(a, b[, extrapolate])

Вычислить определённый интеграл по кусочно-полиномиальной функции.

solve([y, разрыв, экстраполяция])

Найти вещественные решения уравнения pp(x) == y.

roots([discontinuity, extrapolate])

Найти вещественные корни кусочно-полиномиальной функции.

Смотрите также

Akima1DInterpolator

Интерполятор Akima 1D.

PchipInterpolator

PCHIP 1-D монотонный кубический интерполятор.

CubicSpline

Кубический сплайн-интерполятор данных.

PPoly

Кусочно-полиномиальная функция в терминах коэффициентов и точек разрыва

Примечания

Если вы хотите создать сплайн более высокого порядка, соответствующий производным более высокого порядка, используйте BPoly.from_derivatives.

Ссылки