Интерполяционный полином в форме Лагранжа


Пусть на отрезке [a, b] задана одномерная сетка

hx = {xi / xi = xi – 1 + hi, hi > 0, i = 1, 2, 3, …, n; x0 = a, xn = b},

в узлах xi которой заданы yi = f(xi), i = 0, 1, 2, …, n – соответствующие значения функции f(x).

Будем искать интерполяционный полином

Pn(x) = a0 + a1x + a2x2 + … + anxn (3.2.1)

в виде

(3.2.2)

Для выполнения условий интерполяции по узлам сетки hx

Pn(xi) = yi, i = 0, 1, 2, …, n (3.2.3)

достаточно, чтобы

(3.2.4)

Действительно, если функции Ck(x), k = 0, 1, 2, …, n удовлетворяют условиям (3.2.4), то и полином Pn(x) в виде (3.2.2) будет удовлетворять условиям интерполяции (3.2.3).

Так как интерполяционный полином Pn(x) является полиномом степени n, то с учетом (3.2.2) функции Ck(x), k = 0, 1, 2, .., n можно задавать полиномами той же степени.

С учетом условий (3.2.4) будем определять Ck(x), k = 0, 1, 2, …, n
в виде

(3.2.5)

Очевидно, что при таком задании функций Ck(x), k = 0, 1, 2, …, n
условия (3.2.4) будут выполнены.

Подставив (3.2.5) в (3.2.2), получим следующее выражение для Pn(x), x Î (a, b):

(3.2.6)

Введем в рассмотрение функцию w(x):

w(x) = (xx0)(xx1)(xx2)(xx3) … (xxn). (3.2.7)

Очевидно, что w(x) является полиномом степени n + 1. Продифференцировав w(x), найдем выражение для w¢(x) в узлах сетки hx:

w¢(xk) = (xkx0)(xkx1) … (xkxk – 1)(xkxk + 1) … (xkxn),

k = 0, 1, 2, …, n. (3.2.8)

Подставив (3.2.7) и (3.2.8) в (3.2.6), перепишем выражение для интерполяционного полинома в виде

3.2.9)

Полином в виде (3.2.9) называют интерполяционным полиномом в форме Лагранжа.

Существенно, что рассмотренный подход к построению интерполяционного полинома не требует решения системы линейных уравнений (3.1.3). При интерполяции таблично заданной функции с использованием интерполяционного полинома в форме Лагранжа удобно пользоваться матрицей вида

(3.2.10)

где xk, k = 0, 1, 2, …, n – узлы сетки hx.

Произведение элементов, находящихся на главной диагонали матрицы Аh(x), позволяет вычислить значение w(x) в точке x, а произведение элементов k-й строки (исключая диагональный элемент) этой матрицы – значения w¢(xk), k = 0, 1, 2, …, n. В результате достаточно легко найти значения коэффициентов

(3.2.11)

для интерполяционного полинома в форме Лагранжа.

Процесс интерполяции таблично заданной на отрезке [a, b] функции в заданную точку x* Î (a, b) с помощью интерполяционного полинома в форме Лагранжа можно представить в виде следующего алгоритма:

0. На отрезке [a, b] задать одномерную сетку

hx = {xi / xi = xi – 1 + hi, hi > 0, i = 1, 2, 3, …, n; x0 = a, xn = b}

и значения yi = f(xi) в узлах сетки xi, i = 0, 1, 2, …, n.

Задать x* Î (a, b).

1. Положить k: = 0, S: = 0.

2. Вычислить элементы матрицы Аh(x) для заданной сетки hx и x = x*.

3. Вычислить значение w(x*) как произведение диагональных элементов матрицы Аh(x).

4. Вычислить значение w¢(xk), как произведение всех элементов k-й строки матрицы Аh(x), за исключением диагонального элемента.

Рассчитать значение коэффициента

5. Рассчитать r = Ck(x*) f(xk).

6. Положить S: = S + r.

7. Если k = n, перейти к выполнению п. 9.

8. Положить k: = k +1, перейти к выполнению п. 4.

9. Процесс завершен. Полученное значение S и есть результат интерполяции табличных данных в точку x*.

Для визуальной оценки качества интерполирования желательно вычислить значения интерполяционного полинома Pn(x) с достаточно малым шагом по переменной x и построить его график на отрезке [a, b], что позволит наглядно сопоставить его с табличными данными.

В заключение отметим ряд характерных особенностей интерполирования данных с помощью интерполяционного полинома в форме Лагранжа.

1. Интерполяционный полином в форме Лагранжа удобно использовать, когда есть необходимость интерполяции в точку x* различных функций, таблично заданных на одной и той же сетке. В этом случае коэффициенты Ck(x*) достаточно вычислить лишь один раз при интерполировании первой функции. В связи с этим целесообразно запоминать расчетные значения коэффициентов Ck(x*) в процессе вычислений.

2. Как уже было сказано ранее, не рекомендуется использовать интерполяционные полиномы выше 6-го порядка: в этом случае при их построении может быть использовано в совокупности не более семи узлов сетки, находящихся на оси Ох с обеих сторон от точки x* Î (a, b).

3. Имеет место следующая оценка точности полиномиальной интерполяции:

(3.2.12)

где Mn + 1 – верхняя граница значения модуля (n + 1)-й производной функции f(x) на отрезке [a, b].

В соответствии с (3.2.12) погрешность интерполяции будет равна нулю, если интерполируемая функция представляет собой полином, степень которого не превышает n.

4. Интерполяционный полином в форме Лагранжа часто оказывается удобным для проведения различных теоретических исследований в области вычислительной математики.



Дата добавления: 2021-07-22; просмотров: 372;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.