Кубический сплайн — функция, область определения которой разбита на конечное число отрезков, на каждом из которых она совпадает с некоторым кубическим многочленом (полиномом).
Описание
Функция
задана на отрезке
, разбитом на части
,
. Кубическим сплайном дефекта 1 (разность между степенью и гладкостью сплайна) называется функция
, которая:
- на каждом отрезке
является многочленом степени не выше третьей;
- имеет непрерывные первую и вторую производные на всём отрезке
;
- в точках
выполняется равенство
, т. е. сплайн
интерполирует функцию
в точках
.
Для однозначного задания сплайна перечисленных условий недостаточно, для построения сплайна необходимо наложить дополнительные требования — граничные условия:
- "Естественный сплайн" — граничные условия вида:
;
- Непрерывность второй производной — граничные условия вида:
;
- Периодический сплайн — граничные условия вида:
и
.
Теорема: Для любой функции
и любого разбиения отрезка
на части
существует ровно один естественный сплайн
, удовлетворяющий перечисленным выше условиям.
Эта теорема является следствием более общей теоремы Шёнберга-Уитни об условиях существования интерполяционного сплайна.
Построение
На каждом отрезке
функция
есть полином третьей степени
, коэффициенты которого надо определить. Запишем для удобства
в виде:

тогда

Условия непрерывности всех производных до второго порядка включительно
записываются в виде



а условия интерполяции в виде

Обозначим
Отсюда получаем формулы для вычисления коэффициентов "Естественного сплайна":
;
;
;
;
- причем
и
.
Если учесть, что
, то вычисление
можно провести с помощью метода прогонки для трёхдиагональной матрицы.
Компьютерный код
Cubic Interpolation: C#-библиотека с открытым исходным кодом кубической интерполяции сплайном по алгоритму, изложенному Carl de Boor в своей книге. Автор: Вадим А. Онучин, Valex Corp. [1]
Примечания
Литература
- de Boor, Carl. A Practical Guide to Splines. — New York: Springer-Verlag, 1978.
- Роджерс Д., Адамс Дж. Математические основы машинной графики. — М.: Мир, 2001. — ISBN 5-03-002143-4.
- Костомаров Д. П., Фаворский А. П. Вводные лекции по численным методам.
- Волков Е. А. Глава 1. Приближение функций многочленами. § 11. Сплайны // Численные методы. — Учеб. пособие для вузов. — 2-е изд., испр.. — М.: Наука, 1987. — С. 63-68. — 248 с.
Ссылки