- •А. Б. Дюбуа, с. Н. Машнина, с. А. Нелюхин
- •Введение
- •Элементы теории погрешностей
- •Абсолютная, относительная погрешности
- •Значащие, верные цифры. Округление чисел
- •Погрешности результата арифметических операций
- •Погрешности значения функции
- •Полиномиальные интерполяции
- •Форма Лагранжа
- •Конечноразностные формулы
- •Диагональная таблица разностей
- •Первый интерполяционный многочлен Ньютона
- •Второй интерполяционный многочлен Ньютона
- •Центральные интерполяционные формулы
- •Выводы и примеры на интерполирование
- •Обратное интерполирование
- •Интерполяцияс кратными узлами. Полиномы Эрмита
- •Сплайн – интерполяция
- •Контрольные вопросы и задачи
- •Литература
Сплайн – интерполяция
Интерполяция на больших отрезках, т.е. с относительно большим количеством узловых точек, имеет дополнительные трудности. С одной стороны, при больших расстояниях между узловыми точками точность очень мала, а с другой стороны, интерполяционные многочлены высокого порядка на концах отрезка значительно колеблются, что существенно искажает поведение функции. Это становится особенно важно при последующем дифференцировании.
Отчасти при решении таких задач оказывает помощь кусочная интерполяция более низкого порядка: интерполяция осуществляется по небольшому количеству узловых точек отрезка, а затем многочлены объединяют в общую интерполяционную функцию. При этом в точках стыковки обычно терпит разрыв уже первая производная.
Для получения интерполяционных формул с гладкими производными имеет смысл применить т.н. сплайн-интерполяцию функции. В приложениях часто бывает достаточно применить кубическую сплайн-интерполяцию.
Определение. Кубическим сплайном, соответствующим непрерывной на отрезке таблично заданной функции:
i |
0 |
1 |
... |
... |
n-1 |
n |
xi |
x0 |
x1 |
… |
… |
xn-1 |
xn |
yi |
y0 |
y1 |
… |
… |
yn-1 |
yn |
и узлам называется функцияудовлетворяющая следующим условиям:
На каждом частичном сегменте функцияявляется многочленом третьей степени;
Значения функции в узлах интерполяции равны значениям функции:;
Функция , ее первая и вторая производные непрерывны в узловых точках.
По определению кубический сплайн можно представить в виде
где на каждом частичном сегменте есть многочлен степени не выше третьей:
(45)
где - неизвестные коэффициенты (всего 4n – неизвестных).
Используя условие (2), определяем n – неизвестных коэффициентов:
(46)
Таким образом, необходимо определить 3n – неизвестных коэффициентов .
Условие непрерывности в точкахприводит к равенствам:
Или в соответствии с (45) и с (46)
(47)
Обозначив длину интервала как
,
перепишем (47) с учетом (45)
(48)
Дифференцируя (45) и накладывая условие непрерывности первой производной в узлах, получаем ещеn- уравнений
(49)
Далее непрерывность второй производной , дает нам основание записать
(50)
Совокупность уравнений (48)-(50) образует систему (3n-2) – уравнений относительно 3n- неизвестных .
Для её однозначного решения необходимо добавить два недостающих уравнений, которые можно получить задав условия на краях интервала. В частности, можно потребовать нулевой кривизны первой производной функции на краях интервала, то есть или с учетом (47)
(51)
Таким образом мы получили систему 3n- уравнений (48-51) относительно 3n- неизвестных .
Из уравнения (48) выразим :
(52)
Понижая индекс суммирования на единицу
(53)
и вычитая (52) из (53), далее подставляя полученную разность в (49), после простых преобразований получим
(54)
Из уравнения (50) имеем:
(55)
Подставляя (55) в (54), получим
(56)
Неизвестные координаты находим из последнего уравнения. Подставив их в (55) определим, а затем с помощью (52) и.
Таким образом, задачу можно считать решенной.
Пример 7. Построить сплайн-интерполяцию функции по таблице
i |
0 |
1 |
2 |
3 |
xi |
0 |
2 |
4 |
6 |
yi |
1 |
1/9 |
1/81 |
1/729 |
с дополнительными условиями . Найти с помощью интерполяции значение функциипри.
Решение.
Учитывая, что , система (56) сводится к двум уравнениям:
Решение этой системы будет
Далее находим по (55) значения коэффициентов :
И, наконец, определим по (52) коэффициенты :
Значения коэффициентов суть значения таблично заданной функции:
Таким образом, можно считать сплайн-интерполяцию построенной в виде
Для нахождения значения интерполирующей функции в заданной точке заметим, что, и поэтому используем многочлен:.
Пример 8. Построить сплайн-интерполяцию функции по таблице
i |
0 |
1 |
2 |
3 |
xi |
-1 |
0 |
1 |
2 |
yi |
1/2 |
1 |
2 |
4 |
с дополнительными условиями . Найти с помощью интерполяции значение функциипри.
Решение.
Так как дополнительные краевые условия аналогичны предыдущему примеру, вновь имеем , но, учитывая, чтосоставим систему (56):
Решение этой системы будет
Значения коэффициентов ,:
Таким образом, можно считать сплайн-интерполяцию построенной в виде
Для нахождения значения интерполирующей функции в заданной точке заметим, что, и поэтому используем многочлен:.
Сравнивая примеры 7 и 8 обратим внимание на следующее: погрешность в последнем явно меньше. Связано это в первую очередь с тем, что интервал выбран в два раза меньше. Можно показать, для случая равноотстоящих узлов
где - промежуток интерполяции.
Интерполяция сплайнами сопряжена с немалым объемом вычислительной работы по сравнению с другими видами интерполяции. Однако эта трудность легко решается с помощью ЭВМ.