Интерполяционный многочлен Лагранжа
Интерполяционная формула Лагранжа используется для произвольно заданных узлов интерполирования.
Пусть в точках x0, x1, …, xn таких, что a£ x0<…< xn£b, известны значения функции y=f(x), т.е. на отрезке [a, b] задана табличная (сеточная) функция
x | x0 | x1 | … | xn |
y | y0 | y1 | … | yn |
Требуется построить некоторую функцию Pn(x) степени не выше n, имеющую в заданных узлах x0, x1, …, xn те же значения, что и функция f(x). С этой целью представим Pn(x) в следующем виде:
где Сi – некоторая константа, которая определяется из следующего уравнения:
.
В этом случае для многочлена:
Подставляя выражение для константы Сi в исходную зависимость полинома для каждого i=0,1,2,…, n следующее значение многочлена:
,
Подставляя значение Pn(x) для всех точек от 0 до n, получим следующее выражение для многочлена Лагранжа:
Пример 4.1.1. Построить интерполяционный полином для функции y=sin x.
Возьмем сетку, состоящую из трех точек: x0=0; x1= ; x2= , выпишем соответствующие этим аргументам значения функции sin x: y0=0; y1= ; y2=1.
Построим по этой таблице интерполяционный полином второй степени, использую формулу Лагранжа:
.
Проверяем, что в точках сетки этот полином принимает нужные значения. Оценим погрешность интерполирования, сравнив значения sin x и интерполяционного полинома в точке х= .
.
Значительная величина погрешности определяется тем, что на отрезке длиной мы взяли грубую сетку, состоящую всего из трех точек. Чтобы улучшить точность интерполирования, нужно либо увеличить число точек n и повысить соответственно степень интерполяционного полинома Pn(x), либо уменьшить длину исходного отрезка.
Дата добавления: 2016-06-15; просмотров: 3024;