Задание.
1) Построить интерполяционный многочлен Ньютона. Начертить график и отметить на нем узлы интерполяции. Вычислить значения в точке х=1.25.
xi
1 1.5 2 2.5 3 3.5
yi
0.5 2.2 2 1.8 0.5 2.25
2) Построить интерполяционный многочлен Лагранжа. Начертить график и отметить на нем узлы интерполяции. Вычислить значение в точке х=1.2.
xi
0 0.25 1.25 2.125 3.25
yi
5.0 4.6 5.7 5.017 4.333
3) Выполнить интерполяцию сплайнами третьей степени. Построить график и отметить на нем узлы интерполяции.
Постановка задачи интерполяция.
Пусть известные значения функции образуют следующую таблицу:
x0
x1
x2
...
Xn-1
xn
y0
y1
y2
...
yn-1
yn
При этом требуется получить значение функции f в точке x, принадлежащей
отрезку [x0..xn] но не совпадающей ни с одним значением xi.Часто при этом не известно аналитическое выражение функции f(x), или оно не пригодно для вычислений.
В этих случаях используется прием построения приближающей функции F(x), которая очень близка к f(x) и совпадает с ней в точках x0, x1, x2,... xn. При этом нахождение приближенной функции называется интерполяцией, а точки x0,x1,x2,...xn - узлами интерполяции. Обычно интерполирующую ищут в виде полинома n степени:
Pn(x)=a0xn+a1xn-1+a2xn-2+...+an-1x+an
Для каждого набора точек имеется только один интерполяционный многочлен, степени не больше n. Однозначно определенный многочлен может быть представлен в различных видах. Рассмотрим интерполяционный многочлен Ньютона и Лагранжа.
Интерполяционная формула Лагранжа.
Формула Лагранжа является наиболее общей, может применяться к таким узлам интерполяции, что расстояние между соседними узлами не постоянная величина.
Построим интерполяционный полином Ln(x) степени не больше n, и для которого выполняются условия Ln(xi)=yi . Запишем его в виде суммы:
Ln(x)=l0(x)+ l1(x)+ l2(x)+...+ ln(x), (1)
где lk(xi)= yi, если i=k, и lk(xi)= 0, если i≠k;
Тогда многочлен lk(x) имеет следующий вид:
lk(x)= (2)
Подставим (2) в (1) и перепишем Ln(x) в виде:
Если функция f(x), подлежащая интерполяции, дифференцируема больше чем n+1 раз, то погрешность интерполяции оценивается следующим образом:
где0<θ<1 (3)
Интерполяционная формула Ньютона.
Построение интерполяционного многочлена в форме Ньютона применяется главным образом когда разность xi+1-xi=h постоянна для всех значений x=0..n-1.
Конечная разность k-го порядка:
Δyi=yi+1-yi
Δ2yi= Δyi+1- Δyi=yi+2-2yi+1+yi
………………………………
Δkyi=yi+k-kyi+1-k+k(k-1)/2!*yi+k-2+...+(-1)kyi
Будем искать интерполяционный многочлен в виде:
Pn(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+...+an(x-x0)(x-x1)...(x-xn-1)
Найдем значения коэффициентов a0, a1, a2, ...,an:
Полагая x=x0, находим a0=P(x0)=y0;
Далее подставляя значения x1, x2, ...,xn получаем:
a1=Δy0/h
a2=Δ2y0/2!h2
a3=Δ3y0/3!h3
....................
an=Δny0/n!hn
Таким образом:
Pn(x)=y0+ Δy0/h*(x-x0)+ Δ2y0/2!h2*(x-x0)(x-x1)+...+ Δny0/n!hn*(x-x0)(x-x1)...(x-xn-1) (1)
Практически формула (1) применяется в несколько ином виде:
Возьмем: t=(x-x0)/h, тогда x=x0+th и формула (1) переписывается как:
Pn(x)=y0+tΔy0+t(t-1)/2! Δ2y0+...+t(t-1)...(t-n+1)/n!Δny0 (2)
Формула (2) называется интерполяционной формулой Ньютона.
Погрешность метода Ньютона оценивается следующим образом:
(3)
Интерполяция сплайнами.
При большом количестве узлов интерполяции сильно возрастает степень интерполяционных многочленов, что делает их неудобными для проведения вычислений.
Высокой степени многочленов можно избежать, разбив отрезок интерполирования на несколько частей, с построением в каждой части своего интерполяционного полинома. ............