- •Тема 9. Интерполирование функций.
- •В матричном виде эта система может быть записана в виде
- •Затем умножая при помощи функции мумнож получим
- •Разности второго порядка - это
- •Аналитически такая зависимость имеет вид
- •Интерполирующая сплайн-функция будет иметь вид
- •Изобразив на одной координатной плоскости все четыре графика, получим
- •Тема 10. Среднеквадратическое приближение функций.
- •После преобразований система (11.3) примет еще более простой вид
Аналитически такая зависимость имеет вид
(10.13)
Пример 4. Для таблично заданной функции из примера 1 произвести кусочно-линейную интерполяцию.
Путем несложных расчетов можно найти значения коэффициентов k и b для каждого из четырех интервалов. Получим
k1 = -4, k2 = 3, k3 = 3, k4 = 2,
b1 = 5, b2 = -2, b3 = -2, b4 = 0.
Отсюда, окончательно получим
.
Локальная интерполяция с использованием сплайн-функций, позволяет построить гладкую (несколько раз дифференцируемую) интерполирующую функцию. Используется интерполяция сплайн-функциями второго и третьего порядков. Рассмотрим интерполяцию сплайн-функциями второго порядка, как более простую, и ограничимся случаем равномерности шага по переменной x, т. е. положим xi = a + ih (i = 0, 1, … , n).
На каждом интервале [xi-1 , xi] (i = 1, 2, … , n) строят интерполирующую функцию в виде полинома второго порядка вида
.
(10.14)
Очевидно, что ai = Si (xi) = yi, (i = 1, 2, … , n). Для определения значений остальных коэффициентов используют следующие два условия :
непрерывность интерполирующей функции - для этого должно выполняться условие равенства двух полиномов в средних узлах интерполяции, т.е.
Si (xi) = Si+1 (xi) (i = 1, 2, … , n-1), (10.15)
гладкость интерполирующей функции - для этого должно выполняться условие равенства производных двух полиномов в средних узлах интерполяции, т.е.
S’i (xi) = S’i+1 (xi) (i = 1, 2, … , n-1). (10.16)
Уравнения (10.15) и (10.16) вместе с уравнением
S1(x0) = y0 , (10.17)
которое задает условие прохождения интерполирующей функции через самый левый узел интерполяции, представляют собой систему из 2n-1 линейных алгебраических уравнений относительно 2n неизвестных bi и ci (i = 1, 2, … , n). По этой системе, задав произвольно один из ее коэффициентов, можно определить значения всех остальных.
Введя искусственный коэффициент b0, по формуле b0 = b1 - hc1, после преобразований системы (10.15), (10.16), (10.17) получим формулу для рекуррентных вычислений коэффициентов полиномов
.
(10.18)
Задавшись произвольным значением искусственного коэффициента b0, который можно трактовать как значение производной интерполирующей функции в самом левом узле интерполяции, мы постепенно определим значения всех коэффициентов всех интерполирующих полиномов.
Пример 5. Дана таблично заданная функция :
i |
0 |
1 |
2 |
3 |
x |
-2 |
-1 |
0 |
1 |
y |
-1 |
0 |
0 |
1 |
Произвести ее интерполирование
способом кусочно-линейной интерполяции
сплайн-функцией второго порядка.
Выполняя интерполирование способом кусочно-линейной интерполяции, аналогично предыдущему примеру, получим
.
Выполнняя интерполирование сплайн-функцией второго порядка, получим
h=1; a0 = -1, a1 = 0, a2 = 0, a3 = 1;
b1 = 2 - b0, b2 = -(2 - b0), b3 = 4 - b0,
c1 = 2 - 2b0, c2 = -2(2 - b0), c3 = 6 - 2b0.
a) положим b0=0. Тогда
b1 = 2, b2 = -2, b3 = 4, c1 = 2, c2 = -4, c3 = 6.
